Commit graph

6982 commits

Author SHA1 Message Date
gambas
bfc88545c8 Correctly clear observer reference on the observed object when it is freed.
[INTERPRETER]
* BUG: Correctly clear observer reference on the observed object when it is freed.
* BUG: Clear environment variables set by the interpreter, as they can be read by the shared libraries exit routines after main() has been terminated.
2018-12-24 17:57:36 +01:00
gambas
76a15e14ff WebTextBox: Correctly synchronize text before raising Activate event.
[GB.WEB.FORM]
* BUG: WebTextBox: Correctly synchronize text before raising Activate event.
2018-12-23 19:37:56 +01:00
gambas
ffbacc3cee WebTextBox and WebTextArea Change event is now raised at each change, and WebButton.Immediate is a new property that allows the javascript code emitted by the Click event handler to be run by the 'onclick' event immediately.
[GB.WEB.FORM]
* NEW: WebButton: Add the Immediate property. If set, the Javascript code emitted by the Click event handler is executed immediately by the 'onclick' button event. Use this feature when some DOM method (like clipboard copy) works only in the context of a user interaction.
* BUG: WebTextBox: Optimize Change event.
* BUG: WebTextArea: Optimize Change event.
* NEW: WebTextBox: The Change event is now emitted a few milliseconds after each text change.
* NEW: WebTextArea: The Change event is now emitted  a few milliseconds after each text change.
2018-12-22 15:54:24 +01:00
gambas
87f88ac88b Fix Debug instruction.
[INTERPRETER]
* BUG: Fix Debug instruction.
2018-12-21 22:40:47 +01:00
gambas
fc41ff0b23 Assertion errors are now really not catchable anymore.
[INTERPRETER]
* BUG: Assertion errors are now really not catchable anymore.
2018-12-21 03:05:32 +01:00
gambas
a576b687db Make 'gb.pdf' compile when poppler version >= 0.72.
[GB.PDF]
* BUG: Make 'gb.pdf' compile when poppler version >= 0.72.
2018-12-21 02:48:20 +01:00
gambas
c2c18510e1 Assertion errors are now not catchable anymore. They always stop the program.
[INTERPRETER]
* BUG: Assertion errors are now not catchable anymore. They always stop the program.
2018-12-21 00:47:34 +01:00
gambas
da11a82b63 Add Copy() method to WebTextBox and WebTextArea, and fix margins of WebContainer using Row or Column arrangement.
[GB.WEB.FORM]
* BUG: Fix margins of WebContainer using Row or Column arrangement.
* NEW: The '~dump' request now displays the environment variables too.
* NEW: WebTextBox.Copy() is a new method that copies the control text to the clipboard. Works only with https.
* NEW: WebTextArea.Clear() is a new method that clears the control text.
* NEW: WebTextArea.Copy() is a new method that copies the control text to the clipboard. Works only with https.
2018-12-19 10:30:39 +01:00
gambas
d91451cf1e Assert is an new instruction that raises an error as soon as its boolean argument is FALSE.
[COMPILER]
* NEW: Assert is an new instruction that raises an error as soon as its boolean argument is FALSE. The associated bytecode is not emitted if the '-x' option is specified.

[INTERPRETER]
* NEW: Assert is an new instruction that raises an error as soon as its boolean argument is FALSE.

[GB.DEBUG]
* BUG: Fix a potential array overflow.
2018-12-16 00:35:46 +01:00
gambas
22577f48ae Fix compilation by not using global variables as loop variables.
[GB.MYSQL]
* BUG: Fix compilation by not using global variables as loop variables.
2018-12-14 05:19:58 +01:00
gambas
f9aa750a1b Update error messages and take new compiler message prefix into account.
[DEVELOPMENT ENVIRONMENT]
* NEW: Update error messages.
* NEW: Update French translation.
* NEW: Take new compiler message prefix into account.
2018-12-14 05:19:28 +01:00
gambas
26117d0fc9 [COMPILER]
* BUG: Compiler messages are prefixed with 'gbc3:', not just 'gbc:'.
* NEW: Make loop variable errors more accurate.
2018-12-14 05:16:24 +01:00
gambas
a1f96a549c Allow loop variables to be declared inside the loop syntax.
[COMPILER]
* NEW: Allow loop variables to be declared inside the loop syntax.
* NEW: Consequently, FOR EACH now can only use local variables.

[INTERPRETER]
* OPT: A little optimization of integer loops. They are about 5% faster now.
2018-12-13 13:15:33 +01:00
gambas
5a6940e8e8 Code editor: Pretty printer now takes local variable declared anywhere into account.
[DEVELOPMENT ENVIRONMENT]
* NEW: Add new "illusion" background.
* BUG: Code editor: Pretty printer now takes local variable declared anywhere into account.
2018-12-13 01:28:27 +01:00
gambas
068274ea85 Fix compilation of control structures again.
[COMPILER]
* BUG: Fix compilation of control structures again.
2018-12-12 16:27:02 +01:00
gambas
c947cb1b40 Correctly compile structure controls mixed with variable declarations.
[COMPILER]
* BUG: Correctly compile structure controls mixed with variable declarations.
2018-12-12 01:40:44 +01:00
gambas
82a9dca733 Allow local variable declaration anywhere in the function.
[COMPILER]
* NEW: Allow local variable declaration anywhere in the function. The local symbol still has a function scope, but can be used after its declaration only.
2018-12-11 02:40:14 +01:00
gambas
cc2b05a4c9 Desktop.OpenTerminal now handles "Ubuntu:Gnome" desktop type.
[GB.DESKTOP]
* NEW: Desktop.OpenTerminal now handles "Ubuntu:Gnome" desktop type.
2018-12-11 02:23:16 +01:00
gambas
37ef8c2c1d Option dialog: Add an option to set if strings must be automatically closed in text or code editors.
[DEVELOPMENT ENVIRONMENT]
* NEW: Option dialog: Add an option to set if strings must be automatically closed in text or code editors.
* NEW: Update French translation.
* NEW: Update Gambas fonts.
2018-12-11 02:21:46 +01:00
gambas
eb36e0e17a TextEditor.CloseStrings is a new property that tells if strings should be automatically closed.
[GB.FORM.EDITOR]
* NEW: TextEditor.CloseStrings is a new property that tells if strings should be automatically closed.
2018-12-11 02:18:38 +01:00
gambas
43350ebfbd Connection.LastInsertId now raises an error instead of crashing when the connection is closed.
[GB.DB]
* BUG: Connection.LastInsertId now raises an error instead of crashing when the connection is closed.
2018-12-10 23:35:21 +01:00
gambas
0706d6d170 Remove the QT4 TextBox selection bug workaround. It prevents the selection method from working in some cases.
[GB.QT4]
* BUG: Remove the QT4 TextBox selection bug workaround. It prevents the selection method from working in some cases.

[GB.QT5]
* BUG: Remove the QT4 TextBox selection bug workaround. It prevents the selection method from working in some cases.
2018-12-10 22:39:07 +01:00
gambas
b897cec6cf Remove the include of <stdio.h> from JIT header file.
[GB.JIT]
* BUG: Remove the include of <stdio.h> from JIT header file.
2018-12-09 03:50:14 +01:00
gambas
6d9ba50c60 SpinBox: Setting the Border property now correctly refreshes the control.
[GB.GUI.BASE]
* BUG: SpinBox: Setting the Border property now correctly refreshes the control.
2018-12-09 03:49:41 +01:00
gambas
8d6e0f9c8f Form editor: Do not apply the Enabled property when the control is drawn with a DrawingArea.
[DEVELOPMENT ENVIRONMENT]
* BUG: Form editor: Do not apply the Enabled property when the control is drawn with a DrawingArea.
* NEW: Form editor: Always read SpinBox Min, Max and Value properties.
2018-12-09 03:48:18 +01:00
gambas
df275f7c9b Forgot to call JIT function when the call is dynamic, i.e. if the object owning the method has an anonymous datatype (Object or Variant).
[INTERPRETER]
* BUG: Forgot to call JIT function when the call is dynamic, i.e. if the object owning the method has an anonymous datatype (Object or Variant).

[GB.JIT]
* BUG: Save the initial stack pointer of a function in the function stack instead of using the interpreter stack.
2018-12-07 01:03:47 +01:00
gambas
1d639e4b27 String.Left() sometimes fails. Print a warning if such a case is detected.
[GB.FORM.TERMINAL]
* BUG: String.Left() sometimes fails. Print a warning if such a case is detected.
2018-12-07 01:02:49 +01:00
gambas
52c1243c35 Correctly set the stack pointer before raising an exception in JIT code.
[GB.JIT]
* BUG: Correctly set the stack pointer before raising an exception in JIT code.
2018-12-04 00:48:02 +01:00
gambas
4a033f5f06 Deleting a database should not crash anymore.
[GB.DB.SQLITE3]
* BUG: Deleting a database should not crash anymore.
2018-12-02 22:14:54 +01:00
gambas
784d27f7b6 Menu editor: Add a button for inserting a separator.
[DEVELOPMENT ENVIRONMENT]
* NEW: Menu editor: Insert new menu after by default now.
* NEW: Menu editor: Add a button for inserting a separator.
2018-12-02 20:01:07 +01:00
gambas
b3c305d8bf Control.Parent does not crash anymore.
[GB.GTK]
* BUG: Control.Parent does not crash anymore.

[GB.GTK3]
* BUG: Control.Parent does not crash anymore.
2018-11-29 23:55:09 +01:00
gambas
b4d3c7612a Really correctly initialize EC register to NULL before calling a compiled fast method.
[INTERPRETER]
* BUG: Really correctly initialize EC register to NULL before calling a compiled fast method.
2018-11-29 09:10:56 +01:00
gambas
1b0f9e48c5 Correctly initialize EC register to NULL before calling a compiled fast method.
[INTERPRETER]
* BUG: Correctly initialize EC register to NULL before calling a compiled fast method.
2018-11-29 02:11:24 +01:00
gambas
2b6164cce5 Rewrite the global position history to fix it.
[DEVELOPMENT ENVIRONMENT]
* BUG: Rewrite the global position history to fix it.
* NEW: Use the 'menu' icon for the 'hide menu bar' action.
* BUG: Farm client: Check that the 'sha256sum' program is installed before computing a download checksum.
2018-11-27 03:03:32 +01:00
gambas
08e62ac8bd Use the unsafe flag for JIT-compiled scripts.
[BENCHMARKS]
* NEW: Use the unsafe flag for JIT-compiled scripts.
2018-11-27 03:02:23 +01:00
gambas
4ee175d022 Redraw the project icon.
[SCRIPTER]
* NEW: Redraw the project icon.
2018-11-27 03:02:02 +01:00
gambas
f420eaaff1 TextEditor: Add LastLine and LastColumn properties.
[GB.FORM.EDITOR]
* NEW: TextEditor.LastLine is a new property that returns the line position just before a cursor move.
* NEW: TextEditor.LastColumn is a new property that returns the column position just before a cursor move.
2018-11-27 03:01:00 +01:00
gambas
3652b82b3e Let the caller always release the function arguments.
[GB.JIT]
* BUG: Let the caller always release the function arguments.
2018-11-27 02:59:21 +01:00
gambas
44fa1bb634 Do not add spurious spaces in rich text anymore.
[GB.GTK]
* BUG: Do not add spurious spaces in rich text anymore.

[GB.GTK3]
* BUG: Do not add spurious spaces in rich text anymore.
2018-11-26 12:09:34 +01:00
gambas
62d9bf8676 Void optional arguments are compiled correctly again.
[GB.JIT]
* BUG: Void optional arguments are compiled correctly again.
2018-11-26 11:54:39 +01:00
gambas
7fa5bd5220 Set the SP stack pointer before calling the conversion function to workaround the compiler optimizations and prevent a memory leak at function end if the conversion fails and an exception is raised.
[GB.JIT]
* BUG: Set the SP stack pointer before calling the conversion function to workaround the compiler optimizations and prevent a memory leak at function end if the conversion fails and an exception is raised.
2018-11-26 01:20:09 +01:00
gambas
6307eeba59 System information dialog: Make it work on FreeBSD.
[DEVELOPMENT ENVIRONMENT]
* BUG: System information dialog: Make it work on FreeBSD.
2018-11-24 21:38:47 +01:00
gambas
c0c1adaabc Correctly compile variable argument methods.
[GB.JIT]
* BUG: Correctly compile variable argument methods.
2018-11-24 21:33:18 +01:00
gambas
baaf962ab0 JIT now handles "no return value" errors correctly.
[INTERPRETER]
* BUG: Process.Wait() now handles error output correctly.

[GB.JIT]
* BUG: Display compiler error correctly.
* BUG: Handle "no return value" errors correctly.
2018-11-24 20:00:45 +01:00
gambas
112eb14529 Fix a typo with 'libinotify' in 'acinclude.m4'.
[CONFIGURATION]
* BUG: Fix a typo with 'libinotify' in 'acinclude.m4'.
2018-11-24 19:57:12 +01:00
gambas
96d4e71346 JIT now handles "no return value" errors correctly.
[INTERPRETER]
* BUG: Process.Wait() now handles error output correctly.

[GB.JIT]
* BUG: Display compiler error correctly.
* BUG: Handle "no return value" errors correctly.
2018-11-24 13:24:34 +01:00
gambas
7cd9c0b7ad Use 'volatile' to prevent the compiler from optimizing access to stack pointer in exception handling.
[GB.JIT]
* BUG: Use 'volatile' to prevent the compiler from optimizing access to stack pointer in exception handling.
2018-11-23 06:29:50 +01:00
gambas
a8bd754627 Fix optional inotify library detection.
[CONFIGURATION]
* BUG: Fix optional inotify library detection.
2018-11-21 01:49:12 +01:00
gambas
4250fb647d FreeBSD systems memory may be greater than 2GB.
[DEVELOPMENT ENVIRONMENT]
* BUG: FreeBSD systems memory may be greater than 2GB.
2018-11-21 00:12:21 +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