Commit graph

2276 commits

Author SHA1 Message Date
gambas
a908cbcecd ButtonBox: Fix some margin, according to the previous fix to Style metric properties.
[GB.FORM]
* NEW: ButtonBox: Fix some margin, according to the previous fix to Style metric properties.
2018-09-04 16:18:53 +02:00
gambas
ee674d9068 Many fixes to the GTK+3 components, and rewrite the SpinBox control in Gambas.
[GB.GTK]
* NEW: Remove the native SpinBox implementation.
* BUG: Add specific fixes for breeze and oxygen themes.

[GB.GTK3]
* NEW: Remove the native SpinBox implementation.
* BUG: ComboBox: Fix rendering.
* BUG: ComboBox: Use a GtkBox instead of the deprecated GtkAlignment.
* BUG: Style: Fix some paint methods and metric properties.
* BUG: Add specific fixes for breeze and oxygen themes.

[GB.GUI.BASE]
* NEW: SpinBox: New implementation of the control in Gambas.
* BUG: ProgressBar: Fix rendering with GTK+ components.

[GB.QT4]
* NEW: Remove the native SpinBox implementation.
* NEW: RadioButton: Fill the widget when the background color is set.
* BUG: Style: Fix some metric properties.

[GB.QT5]
* NEW: Remove the native SpinBox implementation.
* NEW: RadioButton: Fill the widget when the background color is set.
* BUG: Style: Fix some metric properties.
2018-09-04 15:56:23 +02:00
gambas
847dcd8ebf Remove other files that should not be tracked by git. 2018-09-01 12:23:05 +02:00
gambas
9ffe91c294 Remove files that should not be tracked by git. 2018-09-01 12:21:57 +02:00
gambas
dde015e828 Update some project and component configuration files. 2018-09-01 12:17:56 +02:00
gambas
5b7b62dea3 TableView: The cell editor now takes the color and font properties of the edited cell.
[GB.FORM]
* BUG: TableView: The cell editor now takes the color and font properties of the edited cell.
2018-09-01 12:01:56 +02:00
gambas
7e392841d5 FileChooser: After having uncompressed a file, calls the event loop before refreshing the views so that the possible inotify events are processed.
[GB.FORM]
* NEW: FileChooser: After having uncompressed a file, calls the event loop before refreshing the views so that the possible inotify events are processed.
2018-09-01 00:49:45 +02:00
gambas
a73c2ed412 Add three new color constants for syntax highlighting: Escape, Label and Constant.
[COMPILER]
* NEW: Rename a macro constant to avoid a symbol clash when compiling the interpreter.

[INTERPRETER]
* NEW: Get rid of a macro trick in 'gbx_eval.h' header.

[GB.EVAL]
* NEW: Highlight: Add three new color constants for syntax highlighting: Escape, Label and Constant.
* NEW: Rename some source files.
* NEW: Rename some constants.
* NEW: Gambas syntax highlighter now use the three new contants for escape characters in strings, for labels, and for language contants (True, False, Null, +Inf and -Inf).

[GB.EVAL.HIGHLIGHT]
* NEW: Support for the new syntax highlighting color constants.

[GB.FORM.EDITOR]
* NEW: Support for the new syntax highlighting color constants.
2018-08-31 15:58:53 +02:00
gambas
7e3f84d1e5 [GB.FORM.EDITOR]
* BUG: TextEditor: Fix automatic completion of string delimiters.
* BUG: TextEditor: Add single quote to HTML and WebPage string delimiters.
2018-08-31 02:11:44 +02:00
gambas
bde635a666 TextEditor: Automatic brace completion is more clever now.
[GB.FORM.EDITOR]
* NEW: TextEditor: Automatic brace completion is more clever now.
2018-08-28 17:07:35 +02:00
Benoît Minisini
f0dfa829e7 Merge branch 'master' into 'master'
Fix some minor issues found while packaging for Debian without Qt4

See merge request gambas/gambas!30
2018-08-23 18:02:12 +00:00
gambas
ccce7ad1b7 Add an option to close the tabs with the middle mouse button instead of using little close buttons.
[DEVELOPMENT ENVIRONMENT]
* NEW: Add an option to close the tabs with the middle mouse button instead of using little close buttons.

[GB.FORM]
* NEW: TabPanel: The middle mouse button does not close tabs anymore. It is now a feature only implemented in the Workspace control.

[GB.FORM.MDI]
* NEW: Workspace: CloseWithMouse is a new property. If set, the workspace tabs little close buttons are hidden, and the workspace tabs can be closed with a middle mouse click.
2018-08-14 22:46:41 +02:00
gambas
bc2c0490cf DesktopFile.FromMime() now follows the freedesktop search path specifications.
[GB.DESKTOP]
* BUG: DesktopFile.FromMime() now follows the freedesktop search path specifications.
2018-08-13 11:39:09 +02:00
gambas
3a49f9f3e9 Use the correct default value for XDG_DATA_DIRS environment variable.
[GB.DESKTOP]
* BUG: Use the correct default value for XDG_DATA_DIRS environment variable.
2018-08-10 11:54:30 +02:00
gambas
e76cdd33d6 Take multiline strings into account in javascript syntax highlighting and javascript editor mode.
[GB.EVAL.HIGHLIGHT]
* NEW: Take multiline strings into account in javascript syntax highlighting.

[GB.FORM.EDITOR]
* NEW: Take multiline strings into account in javascript mode.
2018-08-10 11:52:09 +02:00
Bastian Germann
2e488867a0 Use relative instead of absolute symbolic links
[GB.FORM.STOCK]
* Use relative instead of absolute symbolic links
2018-08-03 20:08:46 +02:00
bgermann
cc505e3fee Use 'gb.gui' component instead of 'gb.qt4*' components
[GB.CHART]
* Use 'gb.gui' component instead of 'gb.qt4*' components
2018-08-03 04:26:12 +02:00
gambas
5a61b7d436 TextEditor: Entering a bracket, a brace... while part of the current line is selected now automatically encloses the selected text.
[GB.FORM.EDITOR]
* NEW: TextEditor: Entering a bracket, a brace... while part of the current line is selected now automatically encloses the selected text.
2018-07-21 16:09:03 +02:00
gambas
a36359b190 DataCheckBox: Its default value is now correctly set to NULL.
[GB.DB.FORM]
* BUG: DataCheckBox: Its default value is now correctly set to NULL.
2018-07-21 15:42:24 +02:00
gambas
5b5356c2a8 IconView: Clicking on an item in multiple selection mode correctly makes it the current item.
[GB.GUI.BASE]
* NEW: IconView: Improve and normalize how items are draws between horizontal et vertical orientation.
* BUG: IconView: Clicking on an item in multiple selection mode correctly makes it the current item.
* OPT: IconView: Selecting items with the keyboard is faster now.
2018-07-21 14:22:54 +02:00
gambas
e3ca5b2e12 FileView: Invalidate directory cache every five second, or if an explicit reload is triggered.
[GB.FORM]
* NEW: FileView: A directory cache is now automatically invalidated every five second.
* NEW: FileView: ReloadAll() now invalidates the directory cache.
2018-07-21 09:27:37 +02:00
gambas
150f488f8c Fix renaming process of DirView and FileView controls.
[GB.FORM]
* BUG: DirView: Errors occuring during a renaming now display the balloon message on the renaming item.
* BUG: DirView: Forbid void directory names.
* BUG: FileView: Canceling an item rename now works as expected in icon mode, and correctly refreshes the view.
* BUG: FileView: Forbid void file names.
2018-07-17 23:11:43 +02:00
gambas
6e935d2efd IconView: Canceling the Rename event keeps the editor opened.
[GB.GUI.BASE]
* BUG: IconView: Hitting ENTER while renaming an item does not insert a newline in the item text.
* NEW: IconView: Canceling the Rename event keeps the editor opened.
2018-07-17 23:09:11 +02:00
gambas
8c34e888b5 TreeView: Canceling the Rename event keeps the editor opened.
[GB.GUI.BASE]
* NEW: TreeView: Canceling the Rename event keeps the editor opened.
2018-07-17 22:29:04 +02:00
gambas
9abaadc360 Some fixes in FileView and FileProperties.
[GB.FORM]
* BUG: FileView: Setting the Current property does nothing if the new value is the same as the old one.
* BUG: FileProperties: Correctly abort the directory size background task if the Path property is set.
* BUG: FileProperties: Don't fill the error tab if the directory size background task is aborted.
2018-07-15 23:10:41 +02:00
Tobias Boege
789ce931f7 IconView: always raise Click event when clicked
[GB.GUI.BASE]
* BUG: IconView: always raise Click event when clicked and not only when selection changes

See Gambas Bug #1358
2018-06-28 19:07:31 +02:00
gambas
6a23fa861a TreeView: Don't mess up multiple selection when automatic sorting is enabled.
[GB.GUI.BASE]
* BUG: TreeView: Don't mess up multiple selection when automatic sorting is enabled.
2018-06-26 18:50:38 +02:00
gambas
0c43cfced0 Add Session.Path property, and fix the write of session values for sqlite sessions.
[GB.WEB]
* BUG: Fix the write of session values for sqlite sessions.
* NEW: Session.Path is a new property that returns the path of the file where the session is stored.
2018-06-22 00:47:48 +02:00
gambas
5e2a99a0a0 Session: Exist() method now works correctly for sessions stored in sqlite databases.
[GB.WEB]
* BUG: Session: Exist() method now works correctly for sessions stored in sqlite databases.
2018-06-19 00:30:29 +02:00
gambas
b8198005db [BENCHMARKS]
* OPT: Little optimization in nbody benchmark.

[GB.JIT]
* BUG: Fix translation of loops.
* BUG: Fix label generation.
2018-06-13 16:55:25 +02:00
gambas
83eed9707d Merge branch 'jit-with-c' 2018-06-13 00:45:19 +02:00
gambas
6b8afd0617 [COMPILER]
* BUG: Fix Left, Mid and Right subroutines metadata.

[GB.JIT]
* BUG: Fix function arguments management.
* BUG: Functions returning objects work correctly now.
* BUG: Fix internal control variables management.
2018-06-13 00:38:18 +02:00
gambas
c671adfd6b Work continues on new JIT system.
[INTERPRETER]
* OPT: String searching (Instr, RInstr and Replace) has been made about 4x faster by searching the first occurence with memchr() and memrchr().

[GB.FORM.TERMINAL]
* BUG: Fix warning messages.

[GB.JIT]
* BUG: Fix byte, short and boolean pushing and popping routines.
* BUG: Fix string values referencing.
* BUG: Fix optional argument management.
* NEW: Optimization of bits management subroutines.

[GB.QT4]
* BUG: Delay hooks initialization, because now socket notifiers must not be used before creating the event loop.

[GB.QT5]
* BUG: Delay hooks initialization, because now socket notifiers must not be used before creating the event loop.
2018-06-11 18:56:39 +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
23be942b6a Work continues on the new JIT system.
[BENCHMARKS]
* NEW: Little meaningless changes.

[INTERPRETER]
* NEW: JIT: Support for FOR EACH loops.
* BUG: JIT: Handle function values that are put on stack before calling them.

[COMPILER]
* NEW: JIT: Optimization of mathematic functions.
* NEW: JIT: Support for FOR EACH loops.
* NEW: JIT: Remove successive POP_x() / PUSH_x().
* NEW: JIT: Optimization of DIV and MOD.
* NEW: JIT: Support of internal control local variables used by SELECT and FOR EACH.
* NEW: JIT: Support for SWAP.

[GB.JIT]
* NEW: Optimization of mathematic functions.
* NEW: Variants management.
* NEW: All conversions are handled now.
* NEW: FOR EACH loops are implemented.
2018-06-05 11:43:39 +02:00
gambas
23081e47c6 Work continues on new JIT system. The "Fractal" example runs!
[INTERPRETER]
* NEW: Implement return value of JIT methods.
* NEW: Support for calling '.' operator from a JIT method.

[COMPILER]
* BUG: JIT: Fix detection of native arrays.
* BUG: JIT: Delete translated file if a class has no fast method anymore.
* BUG: JIT: Prefix JIT method with "jit_" to avoid possible conflicts.
* BUG: JIT: Fix variable initialization.
* NEW: JIT: Complete datatype support.
* NEW: JIT: Support for SWAP.
* NEW: JIT: Support for array operators.
* BUG: JIT: Fix arithmetic operators.
* NEW: JIT: Implement ME and "." operator.
* NEW: JIT: Complete GOSUB / RETURN support.
* NEW: JIT: Support for DIV and MOD operators. Not optimized yet.

[ARCHIVER]
* NEW: Put JIT translation in the archive.

[GB.JIT]
* NEW: Complete datatype support. Variant is not supported yet.
* NEW: Complete GOSUB / RETURN support.
* NEW: Support for ME and '.' operator.
2018-06-02 17:59:47 +02:00
gambas
714b77a10d Work on new JIT system continues.
[CONFIGURATION]
* NEW: Add '.jit' directory to '.gitignore'.

[COMPILER]
* NEW: New '-j' option that disables just in time compilation.
* NEW: JIT: Support for private functions calls.
* NEW: JIT: Support for native arrays accessors.
* BUG: JIT: Fix loop support.
* NEW: JIT: Support for GOSUB.

[GB.JIT]
* NEW: GB_JIT_DEBUG is an environment variable that defines if JIT compilation debugging messages are printed.
* NEW: GB_JIT_CFLAGS is an environment variable that defines the JIT compilation flags. The default is "-O3".
* NEW: Support for native arrays accessors.
2018-06-01 03:50:42 +02:00
gambas
5219fc48d1 Work continues on new JIT system.
[COMPILER]
* BUG: JIT: Fix local variable referencing.
* NEW: JIT: Implement NEW operator and array accessors.

[INTERPRETER]
* NEW: Support for JIT NEW operator and array accessors.

[GB.JIT]
* NEW: Support for object datatypes.
* NEW: Implement NEW operator and array accessors.
2018-05-29 23:25:57 +02:00
gambas
83a2452acb Continue working on new JIT system.
[COMPILER]
* NEW: JIT: Support for FOR...TO...NEXT loops.
* NEW: JIT: Support for Len(), Left$(), Mid$(), and Right$().
* NEW: JIT: Subroutines return values are now hadled correctly.

[GB.JIT]
* NEW: Compile JIT code with -O3.
2018-05-29 03:43:23 +02:00
gambas
a2b64b190a Work on new JIT system continues.
[COMPILER]
* NEW: Internal initialization functions now can be JIT translated.
* NEW: Support of subroutine calling completed. Interpreter subroutines are called if there is no optimization implemented in the JIT translation.

[INTERPRETER]
* NEW: Remove old JIT stuff.

[GB.JIT]
* NEW: Use 'gambas.h' and 'gb.jit.h' to compile translated code.
2018-05-28 03:18:44 +02:00
gambas
540cda4531 C/C++ syntax highlighting: A backslash at the end of the line continues preprocessor definitions.
[GB.EVAL.HIGHLIGHT]
* BUG: C/C++ syntax highlighting: A backslash at the end of the line continues preprocessor definitions.
* BUG: Fix a warning.
2018-05-28 03:16:53 +02:00
gambas
d797a545b6 [COMPILER]
* NEW: Work on JIT continues...
* NEW: Better panic errors.

[INTERPRETER]
* NEW: Remove the old JIT stuff.
* NEW: Calls gb.jit at runtime if needed. If a fast function has no jit implementation, the bytecode version is used.
* NEW: Start defining the JIT interface needed by the JIT functions.
* NEW: The common static character buffer is now twice the size of the maximum symbol length, to avoid possible overflows.

[GB.JIT]
* NEW: Compilation starts to work.
* NEW: Debugging messages.
2018-05-26 16:50:00 +02:00
gambas
3c8c722989 New component for compiling JIT code at runtime.
[GB.JIT]
* NEW: New component for compiling JIT code at runtime.
2018-05-25 21:03:48 +02:00
gambas
502b403728 TextEditor: Shortcuts work again.
[GB.FORM.EDITOR]
* BUG: TextEditor: Shortcuts work again.
2018-05-24 17:41:49 +02:00
Benoît Minisini
df6bf93820 Merge branch 'master' into 'master'
This commit contains bug fix for the Chart component.

See merge request gambas/gambas!18
2018-05-13 21:20:21 +00:00
gambas
85376261ea DateBox: The time popup works correctly again.
[GB.FORM]
* BUG: DateBox: The time popup works correctly again.
2018-05-07 22:20:01 +02:00
Davidmue
f61ff5e8b6 This commit contains bug fix for the Chart component.
[GB.CHART]
* BUG: Fixed a bug in Chart class.
  A more complex calculated id is now used. This let us use more than one chart.
* BUG: Fixed a bug in _CSerie class.
  A call to an unexisting property Labels has been changed.
2018-05-05 11:02:05 +02:00
gambas
7239cbe35e SmtpClient: Fix the sent date header.
[GB.NET.SMTP]
* BUG: SmtpClient: Fix the sent date header.
2018-05-02 17:05:16 +02:00
gambas
20f650aa59 Shortcut configuration dialog: Use the Shortcut class and display action icons correctly.
[GB.FORM.MDI]
* NEW: Shortcut configuration dialog: Use the Shortcut class.
* BUG: Shortcut configuration dialog: Display action icons correctly.
2018-04-28 15:54:33 +02:00
gambas
93fe4c8ae2 Shortcut: Write modifier keys with the first letter capitalized only.
[GB.GUI.BASE]
* BUG: Shortcut: Write modifier keys with the first letter capitalized only.
2018-04-28 15:53:17 +02:00