Commit graph

66 commits

Author SHA1 Message Date
Benoît Minisini
f0a5c6867d Fix compilation on Alpine again.
[CONFIGURATION]
* BUG: Fix compilation on Alpine again.
2023-08-04 14:43:22 +02:00
Benoît Minisini
8210240eb9 Support for e2k architecture.
[CONFIGURATION]
* NEW: Support for e2k architecture.

[INTERPRETER]
* NEW: Support for e2k architecture.
2023-08-04 13:39:55 +02:00
Benoît Minisini
d431251e2c New component switcher for choosing between QT4 or QT5 extension component.
[DEVELOPMENT ENVIRONMENT]
* NEW: Support for 'gb.gui.qt.ext' component.

[GB.GUI.QT.EXT]
* NEW: New component switcher for choosing between QT4 or QT5 extension component.
2023-07-09 19:35:54 +02:00
Benoît Minisini
246cf40553 Don't use '-O3'. It makes benchmarks sometimes slower than using '-O2'.
[CONFIGURATION]
* BUG: Do not use the default CFLAGS forces by autotools. Either use the CFLAGS provided on the command-line, or the default ones of the project.

[INTERPRETER]
* OPT: Don't use '-O3'. It makes benchmarks sometimes slower than using '-O2'.

[COMPILER]
* OPT: Optimize variable initialization.
2023-01-10 21:55:25 +01:00
Benoît Minisini
0b7c342e8e Add Md5(), Sha1(), Sha256() and Sha512() functions.
[CONFIGURATION]
* NEW: Update 'README' and 'README.md' files.

[COMPILER]
* NEW: Add Md5(), Sha1(), Sha256() and Sha512() functions.

[INTERPRETER]
* NEW: Add Md5(), Sha1(), Sha256() and Sha512() functions.

[GB.HASH]
* NEW: This is a new component that implements the Md5(), Sha1(), Sha256() and Sha512() functions.
  The code comes from BusyBox.
2022-09-13 02:48:11 +02:00
Benoît Minisini
415de7b257 Update configuration files to autoconf 2.71.
[CONFIGURATION]
* NEW: Update configuration files to autoconf 2.71.
2022-09-03 13:24:51 +02:00
gambas
01a1df3b33 Move 'gb.form.htmlview' source code directory at the top, so it is compiled after the components its project requires.
[CONFIGURATION]
* BUG: Move 'gb.form.htmlview' source code directory at the top, so it is compiled after the components its project requires.
2021-10-31 17:55:55 +01:00
gambas
f5db84f9a2 Integrate 'gumbo' library inside the component.
[GB.FORM.HTMLVIEW]
* NEW: Integrate 'gumbo' library inside the component, so that the component has no depency anymore and compile on all systems.
  Consequently, the component source code moved to the '/main/lib' directory.
2021-10-28 01:27:55 +02:00
Laurent Carlier
82fbda28e8
Detect git/svn version with a macro instead of creating a header file 2021-03-31 09:26:49 +02:00
gambas
3e0b760dc6 Work on web browser components continue. New QT/GTK+ web browser switcher component.
[GB.GTK3.WEBVIEW]
* NEW: WebView: Add Title and Zoom properties.
* NEW: WebView: Add History property and history support.

[GB.GUI]
* NEW: Enhance debugging messages.

[GB.GUI.OPENGL]
* NEW: Fix debugging messages.

[GB.GUI.QT]
* NEW: Enhance debugging messages.

[GB.GUI.WEBVIEW]
* NEW: New QT/GTK+ web browser switcher component.

[GB.QT5.WEBVIEW]
* NEW: WebView: Add Title and Zoom properties.
* NEW: WebView: Add History property and history support.
2020-09-23 01:06:18 +02:00
gambas
fd5ec670e1 Add man pages.
[CONFIGURATION]
* NEW: Add man pages.

[INTERPRETER]
* NEW: Use 'time_t' in GB.MakeDateFromTime API.

[WIKI CGI SCRIPT]
* NEW: Add a command-line option to print the package table.
2020-06-20 04:56:22 +02:00
gambas
5004f20609 Move 'gb.test' sources in '/main/lib'.
[INTERPRETER]
* NEW: Remove the now useless testing specific code.
* NEW: 'gbx3 -T' now just loads the 'gb.test' component and calls Test.Main() passing it the '-T' option argument.

[GB.TEST]
* NEW: Move 'gb.test' sources in '/main/lib'.
* NEW: 'gb.test' has now a part written in C that allows him to load project classes on demand.
2020-05-25 21:24:28 +02:00
gambas
a8bd754627 Fix optional inotify library detection.
[CONFIGURATION]
* BUG: Fix optional inotify library detection.
2018-11-21 01:49:12 +01:00
gambas
bd8a5fc56e Optionally link to libnotify on non-Linux systems.
[CONFIGURATION]
* BUG: Optionally link to libnotify on non-Linux systems.
2018-11-21 00:11:42 +01:00
gambas
5c5eede209 Now configure should really fail only if a component is actually disabled.
[CONFIGURATION]
* BUG: Now configure should really fail only if a component is actually disabled.
2018-10-01 14:00:08 +02:00
gambas
aa6b7825d8 Do not disable 'gb.crypt' if libcrypt is not found. Let's suppose it is located in the C system library, as on some systems based on musl and busybox.
[CONFIGURATION]
* NEW: Fix some messages

[GB.CRYPT]
* NEW: Do not disable the component if libcrypt is not found. Let's suppose it is located in the C system library, as on some systems.
2018-09-29 04:40:24 +02:00
gambas
d3a145655a Fix compilation of gb.pdf on old gcc, by checking if the '-std=c++11' flag is available.
[INTERPRETER]
* NEW: Write the name of optional libraries in the warning message displayed when not found.

[GB.PDF]
* BUG: Fix compilation of gb.pdf on old gcc, by checking if the '-std=c++11' flag is available.
2018-09-01 20:05:44 +02:00
bgermann
e6028806a0 Fix libltdl workaround for NetBSD 2018-08-29 14:18:33 +02:00
gambas
83eed9707d Merge branch 'jit-with-c' 2018-06-13 00:45:19 +02:00
Laurent Carlier
a5a117fd33 Add a way to track configuration failures with CI
Disable it for main as it's expected.

=> GAMBAS_CONFIG_FAILURE=1 ./configure
.....
checking for gb.db.postgresql headers... no
configure: WARNING: Unable to find file: postgres.h
configure: WARNING: Unable to find file: pg_type.h
checking for gb.db.postgresql libraries... /usr/lib64/
configure: error: Failed to configure gb.db.postgresql
configure: error: ./configure failed for gb.db.postgresql
2018-06-12 16:27:31 +02:00
gambas
4e50dec11d Work continues on new JIT system. Translation is now done at runtime.
[INTERPRETER]
* OPT: String routines are now compiled with -O3.
* NEW: Don't display JIT debugging message unless GB_JIT_DEBUG is set to something different from zero.
* NEW: String whose length is greater than 256 now have a growth step of 256 bytes instead of 16.

[GB.JIT]
* NEW: Do many global optimizations as now the class metadata is fully available.
* NEW: Support for optional argument. Still buggy at the moment.
2018-06-09 22:42:35 +02:00
gambas
bf48f40f5c [DEVELOPMENT ENVIRONMENT]
* NEW: Add support for gb.gui.qt.opengl.
* NEW: Update french translation.

[GB.GUI.QT.OPENGL]
* NEW: New Qt OpenGL switcher component.
2017-08-29 00:42:58 +02:00
Benoît Minisini
d5f1ac948c [DEVELOPMENT ENVIRONMENT]
* NEW: Update french translation.
* NEW: Support for the new gb.term component.

[INTERPRETER]
* NEW: Add an API that returns the file descriptor associated with a specific stream.

[GB.TERM]
* NEW: New component for terminal management with an API very close to the one provided by the operating system.


git-svn-id: svn://localhost/gambas/trunk@8043 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2017-01-07 00:58:20 +00:00
Benoît Minisini
8647a12953 [CONFIGURATION]
* NEW: Search libffi in more directories to find it on CentOS.

[DEVELOPMENT ENVIRONMENT]
* NEW: Mark PlaceHolder properties as translatable.
* NEW: Make font smaller in autocompletion help.
* BUG: Reset class symbol list everytime its source file is modified.
* BUG: Form editor: Renaming a selected control does not crash anymore.
* NEW: Custom drawing for WebButton controls.
* NEW: Cleaning a project directory now deletes valgrind output files.
* NEW: "--cleanup" is a new command-line option to clean a project directory.

[GB.WEB.FORM]
* NEW: Let the IDE draw WebButton controls.
* NEW: Draw WebHtml controls using TextLabel.
* NEW: Draw WebScrollView controls using ScrollView.


git-svn-id: svn://localhost/gambas/trunk@7820 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-07-15 15:13:10 +00:00
Benoît Minisini
417bfb8685 [INTERPRETER]
* NEW: GB.GetReturnValue() is a new interpreter API that returns a pointer
  to the internal GB_VALUE slot where GB.ReturnXXX() functions store the
  return value.
* NEW: Allow a component to declare a GB_AFTER_INIT() exported method that
  is called just after all the components declared in the project are 
  completely loaded.
  
[GB.DBUS]
* NEW: DBus._HasSystemTray() is a new method that returns if the DBus 
  system tray is present. That method is used by the 'gb.gui.trayicon'
  component to know if 'gb.dbus.trayicon' must be loaded.
* BUG: Fix xml introspection analysis.

[GB.DBUS.TRAYICON]
* BUG: Remove debugging messages.
* BUG: TrayIcon icon data is sent correctly now.

[GB.GUI.TRAYICON]
* NEW: New component that you must check if you want to have system tray
  icons. It loads 'gb.dbus', use DBus._HasSystemTray() to know if it can
  load 'gb.dbus.trayicon'. Otherwise it tells the current GUI component to
  declare the old system tray implementation classes.

[GB.GTK]
* NEW: Let the new 'gb.gui.trayicon' deals with the dbus stuff, but keep
  the old system tray icon and use them on demand.

[GB.GTK3]
* NEW: Let the new 'gb.gui.trayicon' deals with the dbus stuff, but keep
  the old system tray icon and use them on demand.

[GB.QT4]
* NEW: Let the new 'gb.gui.trayicon' deals with the dbus stuff, but keep
  the old system tray icon and use them on demand.

[GB.QT5]
* NEW: Let the new 'gb.gui.trayicon' deals with the dbus stuff, but keep
  the old system tray icon and use them on demand.


git-svn-id: svn://localhost/gambas/trunk@7170 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-07-03 22:18:58 +00:00
Benoît Minisini
b688648728 [DEVELOPMENT ENVIRONMENT]
* NEW: Use the new QT4/QT5 switcher components.
* NEW: Support for QT5 component.

[GB.FORM]
* NEW: New syntaxes in 'icon.map' file that allows to specify different 
  icons for small or big sizes.
* NEW: New 'user' and 'group' icons.

[GB.FORM.STOCK]
* NEW: New 'user' and 'group' icons.

[GB.GUI.QT]
* NEW: New QT4/QT5 switcher component.

[GB.GUI.QT.WEBKIT]
* NEW: New QT4/QT5 WebKit switcher component.

[GB.QT4]
* BUG: Remove a debugging message in Style.Name property.
* BUG: Trigger pending focus and activate events before showing a modal 
  dialog.

[GB.QT5]
* BUG: Remove a debugging message in Style.Name property.
* BUG: Trigger pending focus and activate events before showing a modal 
  dialog.



git-svn-id: svn://localhost/gambas/trunk@7101 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-05-28 10:08:13 +00:00
Benoît Minisini
5e76433eeb [CONFIGURATION]
* NEW: Do not use deprecated autoconf macros anymore.
* NEW: The version information is now located in the 'version.m4' file in
  the source root directory.


git-svn-id: svn://localhost/gambas/trunk@6230 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-04-05 21:22:43 +00:00
Tobias Boege
00200dbece [CONFIGURATION]
* OPT: Move gb.inotify to main/lib.



git-svn-id: svn://localhost/gambas/trunk@6036 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-12-30 11:29:15 +00:00
Benoît Minisini
c0d038b9f2 [DEVELOPMENT ENVIRONMENT]
* NEW: ImageEditor: Invert the current selected shape reverses its points 
  order. Selection offset has been implemented on top of the new 
  gb.clipper component. Many bug fixes.

[GB.CLIPPER]
* NEW: This a new component based on the "Clipper" library. At the moment,
  it only allows to offset a group of polygons from a specified pixel 
  delta.


git-svn-id: svn://localhost/gambas/trunk@5788 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-12 01:50:46 +00:00
Benoît Minisini
26a85ce106 [CONFIGURATION]
* NEW: The trunk version is now generated at compilation time through 
  custom rules and a generated include in the Makefile.am file.

[EXAMPLES]
* NEW: Use the new HttpClient Progress event and its properties in the 
  HttpGet networking example.


git-svn-id: svn://localhost/gambas/trunk@5676 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-05-25 13:23:39 +00:00
Benoît Minisini
1da147d6e5 [CONFIGURATION]
* NEW: The trunk version is now put in the 'config.h' file of the /main 
  source directory. No compilation flag is used anymore.
* NEW: All Gambad executables return the trunk revision number when they 
  are called with the '-V' option.

[GB.WEB]
* BUG: The Request.Fields property now can be read without reading the 
  value of a request field first.


git-svn-id: svn://localhost/gambas/trunk@5674 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-05-22 23:03:48 +00:00
Benoît Minisini
3721bbd95c [GB.DRAW]
* NEW: Remove geometry classes and put them in the gb.geom component.

[GB.GEOM]
* NEW: New hidden component that implements all geometry classes: Point,
  PointF, Rect and RectF.


git-svn-id: svn://localhost/gambas/trunk@5641 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-05-04 17:23:17 +00:00
Tobias Boege
4f57ded502 [CONFIGURATION]
* NEW: Rename gb.adt to gb.data
* NEW: Mark gb.data as "Unfinished"

[GB.DATA]
* OPT: Block all changes from my working copy until they are mature. The
  interface is considered to be stable (although some details in behaviour
  will change); this justifies the "unfinished" state.



git-svn-id: svn://localhost/gambas/trunk@5147 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-09-09 20:20:47 +00:00
Benoît Minisini
1741274a34 [INTERPRETER]
* NEW: Task.Value now raises an error if the background task has failed for
  any reason. Otherwise it normally returns the background task return 
  value.
* BUG: Background tasks do not interfere with the debugger anymore.

[GB.TASK]
* NEW: The component has been moved inside the interpreter.


git-svn-id: svn://localhost/gambas/trunk@5081 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-08-26 16:26:53 +00:00
Benoît Minisini
b8f6e09b8b [INTERPRETER]
* NEW: Add support for double-linked lists in the interpreter API.
* NEW: GB.Wait() is a new API that waits for a specific number of 
  milliseconds, exactly like the WAIT instruction (i.e. the event loop is
  run).
* NEW: GB.HasForked() is a new API that warns the interpreter that fork()
  has been called (he has to do some stuff).
* NEW: Remove the GB_POST_FUNC datatype from the API.

[GB.DBUS]
* BUG: Fix some compilation warnings.

[GB.TASK]
* NEW: gb.task is a new component that allows to run background tasks by
  "simply" forking the interpreter. Communication between the task and the
  main process has not been implemented yet.


git-svn-id: svn://localhost/gambas/trunk@5076 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-08-24 22:29:53 +00:00
Tobias Boege
f81c83c4f2 [CONFIGURATION]
* NEW: Move gb.adt to main/lib/adt. It doesn't have extra dependencies



git-svn-id: svn://localhost/gambas/trunk@5055 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-08-18 21:46:25 +00:00
Benoît Minisini
fa552f69c1 [DEVELOPMENT ENVIRONMENT]
* NEW: New gb.complex component

[INTERPRETER]
* BUG: Automatic array conversion now works with not yet loaded array 
  classes.

[GB.COMPLEX]
* NEW: New component that implements a rudimentary management of complex 
  numbers. This component is automatically loaded if a complex number
  constant is encountered and no loaded component can already handle 
  complex numbers.


git-svn-id: svn://localhost/gambas/trunk@4924 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-09 15:37:42 +00:00
Benoît Minisini
c47cd00a15 [INTERPRETER]
* BUG: libffi is correctly detected again.


git-svn-id: svn://localhost/gambas/trunk@4817 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-06-09 14:03:58 +00:00
Benoît Minisini
8ad1afe673 [CONFIGURATION]
* NEW: Print disabled components individually.

[GB.QT4]
* BUG: ComboBox background color is correctly handled now.


git-svn-id: svn://localhost/gambas/trunk@4739 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-05-18 01:19:15 +00:00
Benoît Minisini
8acbd755a2 [GB.GUI.OPENGL]
* NEW: That new switcher component chooses between gb.gtk.opengl and 
  gb.qt4.opengl according to the current desktop in use.


git-svn-id: svn://localhost/gambas/trunk@4719 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-05-06 21:09:42 +00:00
Benoît Minisini
7b76eb76f0 [INTERPRETER]
* NEW: Remove useless Qt 3 shared library preloading support.


git-svn-id: svn://localhost/gambas/trunk@3949 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-07-24 16:55:09 +00:00
Benoît Minisini
3fbd60c233 [CONFIGURATION]
* NEW: Check for missing mathematical function directly instead of relying 
  on operating system detection.


git-svn-id: svn://localhost/gambas/trunk@3166 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-08-31 08:54:51 +00:00
Benoît Minisini
3054690743 [CONFIGURATION]
* NEW: Print a summary of warning messages after each component 
  compilation.

[INTERPRETER]
* BUG: StrPtr() with a length argument now works correctly.
* NEW: Support for callbacks: when converting a function to a Pointer, an 
  internal closure is created with the libffi library. The pointer then can 
  be sent to any extern function as function pointer argument.
* BUG: Opening memory stream should work in all cases now.


git-svn-id: svn://localhost/gambas/trunk@3038 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-07-14 01:50:18 +00:00
Benoît Minisini
5d6905a13e [DEVELOPMENT ENVIRONMENT]
* NEW: The project tree popup menu now has the refresh action.

[GB.SIGNAL]
* NEW: New component to catch or ignore process signals.


git-svn-id: svn://localhost/gambas/trunk@3037 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-07-12 23:09:57 +00:00
Benoît Minisini
2b01ddc9aa [INTERPRETER]
* BUG: Search for libffi shared library inside gcc directories too.


git-svn-id: svn://localhost/gambas/trunk@2747 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-03-05 00:54:14 +00:00
Benoît Minisini
ac548e8734 [CONFIGURATION]
* BUG: Compile files with maximum optimization correctly.

[DEVELOPMENT ENVIRONMENT]
* BUG: Remove The Form_Close event handler in the FHelp form. It did 
  stupid things indirectly.

[WIKI CGI SCRIPT]
* NEW: Enhancements to support 2.0 and 3.0 descriptions on the same page.

[GB.FORM]
* NEW: Enhance the ColorChooser control.

[GB.FORM.MDI]
* BUG: Fix the Toolbar layout algorithm.

[GB.IMAGE]
* BUG: Image.Colorize() works again.

[GB.IMAGE.EFFECT]
* NEW: This component includes image filtering and effect routines. This is 
  the old gb.image component from Gambas 2. Everything is not working 
  correctly at the moment.

[GB.QT4]
* NEW: Color.LightForeground returns the light foreground color used for
  drawing separators and plain panel borders.
* BUG: Prevent crashes coming from the fact that Qt deletes child widgets 
  before emiting the destroy signal on the parent.


git-svn-id: svn://localhost/gambas/trunk@2296 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-09-01 01:14:13 +00:00
Benoît Minisini
96550473f7 [CONFIGURATION]
* NEW: Put custom autoconf macros in the "m4" directory.
* NEW: Drop libltdl.

[GB.IMAGE]
* NEW: Image.Resize() and Image.Mirror() has been put in common there.
* NEW: Image.Flip() has been removed.
* NEW: Image.Copy() and Image.Resize() now supports 24-bits images.

[GB.OPENGL]
* NEW: Depends on gb.image now.
* NEW: Texture images can have any format now.


git-svn-id: svn://localhost/gambas/trunk@2236 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-08-16 22:07:48 +00:00
Benoît Minisini
def84989aa [CONFIGURATION]
* NEW: Start replacing INCLUDE directive by *_CFLAGS in Makefile.am files.

[GB.EVAL]
* BUG: Fix a warning.


git-svn-id: svn://localhost/gambas/trunk@2215 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-08-04 19:14:17 +00:00
Benoît Minisini
abe941d919 [CONFIGURATION]
* NEW: Search libraries in /opt/local in the /main/configure.ac file, so 
  that things work better on MacOSX.


git-svn-id: svn://localhost/gambas/trunk@2087 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-07-07 11:53:20 +00:00
Laurent Carlier
541492e00c [CONFIGURATION]
* BUG: Use GB_COMPONENT_SEARCH() to check libffi availability.



git-svn-id: svn://localhost/gambas/trunk@2056 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-06-28 22:19:42 +00:00