Commit graph

1222 commits

Author SHA1 Message Date
gambas
e3f941c7e2 Use a dedicated stream for locks, and ignore Application.Busy when displaying a message box.
[DEVELOPMENT ENVIRONMENT]
* OPT: Don't load the help browser form immediately to speed up IDE starting.

[INTERPRETER]
* NEW: Use a dedicated stream for locks, so that the File object returned by LOCK cannot be used for reading or writing the locked file.

[GB.GTK]
* NEW: Ignore Application.Busy when displaying a message box.

[GB.GTK3]
* NEW: Ignore Application.Busy when displaying a message box.

[GB.QT4]
* NEW: Ignore Application.Busy when displaying a message box.

[GB.QT5]
* NEW: Ignore Application.Busy when displaying a message box.
2017-12-18 13:02:39 +01:00
gambas
2bb28545a5 LOCK instruction now can be used on existing files without clearing them.
[INTEPRRETER]
* NEW: LOCK instruction now can be used on existing files without clearing them.
2017-12-17 21:21:29 +01:00
gambas
dfb179b549 Component.Version now returns the full version of libraries.
[INTERPRETER]
* NEW: Component.Version now returns the full version of libraries.
2017-11-25 06:02:46 +01:00
gambas
8bf14d2a7e New properties for knowing if a component is a user library, and for getting its version.
[INTERPRETER]
* NEW: Component.Library is a new property that returns if a component is actually a user library.
* NEW: Component.Version is a new property that returns the version number of a loaded component. If the component is a user library, you get the version number of that library. Otherwise you get the current Gambas version.
2017-11-25 05:40:12 +01:00
gambas
9519c3dc52 Implement string comparison based on MATCH operator with the gb.Match constant.
[INTERPRETER]
* NEW: gb.Match is a new constant that indicates a string comparison using the PCRE MATCH operator.
* BUG: The gb.Descent flag could be erased when sorting objects implementing the '_compare' special method.
2017-10-21 01:19:27 +02:00
gambas
b8bb7e60c1 Fix internal renaming of overridden classes, and use the '^' character instead of '>' to name them.
[INTERPRETER]
* BUG: Fix internal renaming of overridden classes, and use the '^' character instead of '>' to name them.
2017-10-12 13:48:52 +02:00
gambas
e6495bcc5b READ instruction with a negtive length argument works correctly again.
[INTERPRETER]
* BUG: READ instruction with a negtive length argument works correctly again.
2017-10-10 18:49:15 +02:00
gambas
55a1701759 Correctly attach newly created objects.
[INTERPRETER]
* BUG: Correctly attach newly created objects.
* BUG: Lof() should work correctly now on streams having a specific implementation of Lof() function.
2017-10-05 23:18:19 +02:00
gambas
6018b475b6 Oct$() is a new functions that converts an integer to its octal representation.
[COMPILER]
* NEW: Oct$() is a new functions that converts an integer to its octal representation.

[INTERPRETER]
* NEW: Oct$() is a new functions that converts an integer to its octal representation.
2017-10-05 04:11:00 +02:00
gambas
12d51ca863 New syntax for octal numbers: "&Oxxx".
[COMPILER]
* NEW: New syntax for octal numbers: "&Oxxx".

[INTERPRETER]
* NEW: New syntax for octal numbers: "&Oxxx".

[GB.EVAL]
* NEW: New syntax for octal numbers: "&Oxxx".
2017-10-05 03:17:13 +02:00
gambas
57820e6d44 Val() and Eval() now correctly read binary and hexadecimal numbers with the maximum number of digits.
[INTERPRETER]
* BUG: Val() and Eval() now correctly read binary and hexadecimal numbers with the maximum number of digits.
2017-10-05 03:01:44 +02:00
Benoît Minisini
86f8104bd4 Merge branch 'rework-stream-interface' into 'master'
Rework the interpreter stream management

See merge request gambas/gambas!15
2017-09-30 18:43:25 +00:00
gambas
6cdcb477fc Array construction operator now accepts class names as Variants.
[INTERPRETER]
* BUG: Array construction operator now accepts class names as Variants.
2017-09-29 04:14:08 +02:00
gambas
2953ea8d85 Fix error management that could lead to other potential crashes.
[INTERPRETER]
* BUG: Fix error management that could lead to other potential crashes.
2017-09-28 02:05:43 +02:00
gambas
8a30ff0ec3 Fix a crash when an error occurs inside a constructor that is called from another constructor.
[INTERPRETER]
* BUG: Fix a crash when an error occurs inside a constructor that is called from another constructor.
2017-09-28 01:20:35 +02:00
gambas
b17c977502 Fix internal stream buffer management, and STREAM_read_max() function.
[INTERPRETER]
* BUG: Fix internal stream buffer management, and STREAM_read_max() function.
2017-09-27 14:15:23 +02:00
gambas
aa67ba1309 Rework the stream interface, so that the stream read & write methods just have to actually read or write the data.
[INTERPRETER]
* NEW: Rework the stream interface, so that the stream read & write methods just have to actually read or write the data.
2017-09-27 02:48:00 +02:00
gambas
a489f435e7 gb.notify: don't crash anymore when releasing watches.
[INTERPRETER]
* NEW: Add an API that returns the first element of a hash table.

[GB.NOTIFY]
* BUG: Don't crash anymore when releasing watches.
2017-09-21 18:15:37 +02:00
gambas
82c94e87a4 Dir() does not loop indefinitely anymore when browsing an archive file with a void pattern.
[INTERPRETER]
* BUG: Dir() does not loop indefinitely anymore when browsing an archive file with a void pattern.
2017-09-09 01:31:57 +02:00
gambas
7d6cf08a4b Some fixes in Format$() function.
[INTERPRETER]
* BUG: Translate comments in english.
* BUG: Take '\' escape character into account correctly in format strings.
* BUG: Remove undocumented feature in format strings.
2017-08-30 20:40:17 +02:00
gambas
21bf519dc9 Don't use CLOCK_MONOTONIC_RAW if the constant is not defined.
[INTERPRETER]
* BUG: Don't use CLOCK_MONOTONIC_RAW if the constant is not defined.
2017-08-28 22:08:48 +02:00
gambas
f8358c6fa1 Initialize pseudo-terminal with ICRNL too.
[INTERPRETER]
* BUG: Initialize pseudo-terminal with ICRNL too.
2017-08-28 19:04:25 +02:00
gambas
359471cc30 Initialize master terminal of processes run inside a pseudo-terminal before forking.
[INTEPRETER]
* NEW: Initialize master terminal of processes run inside a pseudo-terminal before forking.
2017-08-26 13:11:59 +02:00
gambas
f45192abb2 Fix pseudo-terminal management again. Now processes run through a terminal set the ECHO flag, and do not clear the OCRNL flag.
[INTERPRETER]
* NEW: Initialize pseudo-terminals with ECHO and don't clear OCRNL flag. This is not compatible with previous versions, as now, by default, printing a NL will become CR+NL through the pseudo-terminal.
  But I didn't succeed in modifying the pseudo-terminal reliably once the child has started. It sometimes fails silently.
* NEW: Check the result of tcsetattr() carefully, as it returns an error only if none of the flags has been set, not just one.

[GB.TERM]
* NEW: Check the result of tcsetattr() carefully, as it returns an error only if none of the flags has been set, not just one.

[GB.FORM.TERMINAL]
* OPT: TerminalView: Reorder some tests in escape codes analyze.
* NEW: TerminalView: The mouse wheel now sends up and down keys when we are not in mouse mode, and if there is nothing to scroll.
2017-08-23 18:10:58 +02:00
gambas
f05e6bc0ca Fix the TerminalView control again, and the way processes are run in pseudo-terminals.
[DEVELOPMENT ENVIRONMENT]
* BUG: Terminal: Replace "\n" by "\r\n" when sending text to the output terminal.

[INTERPRETER]
* NEW: When a process is run with a pseudo-terminal, don't set the ECHO flag, and clear the ONLCR flag.
  That way, the data printed on the standard output is the same as when the process is not run in a pseudo-terminal.

[GB.FORM.TERMINAL]
* BUG: TerminalView: Output filter now works correctly when it receives incomplete data.
* OPT: TerminalViews: Resize the terminal less often when the terminal view is resized.
* NEW: TerminalView: When a process is run inside the terminal, set the ECHO and ONLCR flags automatically.
2017-08-22 13:20:26 +02:00
gambas
ba37aa6da7 Fix pseudo-terminal initialization when running an external process with Exec or Shell.
[INTERPRETER]
* BUG: Fix pseudo-terminal initialization when running an external process with Exec or Shell.

[COMPILER]
* BUG: Fix a typo in 'gbc_trans.h' header.
2017-08-21 13:57:40 +02:00
gambas
91de2cccd5 Flush the process outputs when it stops immediately after having been launched.
[INTERPRETER]
* BUG: Flush the process outputs when it stops immediately after having been launched.
2017-08-21 01:45:59 +02:00
gambas
38a60179aa Fix Process.Wait() (remove debugging messages). 2017-08-18 13:19:10 +02:00
gambas
e1a5412f4f Fix Process.Wait()
[INTERPRETER]
* BUG: Process.Wait() does not freeze anymore when the child process actually ends before checking the end of the process just after having run it.
2017-08-18 13:15:03 +02:00
Tobias Boege
48c951987b [CONFIGURATION]
* NEW: Add (short) commit hash and branch name to gb{a,c,i,x}3 --version when compiled from git
2017-08-15 11:58:48 +02:00
Benoît Minisini
a3410b006f [INTERPRETER]
* NEW: Collection.First is a new property that returns the key of the first element of the collection, or NULL if the collection is void.
* NEW: Collection.Last is a new property that returns the key of the last element of the collection, or NULL if the collection is void.


git-svn-id: svn://localhost/gambas/trunk@8174 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2017-08-08 12:33:47 +00:00
Benoît Minisini
986e7eeb85 [INTERPRETER]
* NEW: Add an API that allows to create an array class before instanciating it.

[GB.DBUS]
* BUG: When marshalling from DBus to Gambas, create the array classes before instanciating them.


git-svn-id: svn://localhost/gambas/trunk@8173 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2017-08-07 13:51:33 +00:00
Benoît Minisini
d42a49b57d [CONFIGURATION]
* NEW: Switch version to 3.10.90.

[GB.DB]
* NEW: Connection.TimeZone is new property that will allow to define the default timezone of dates stored in the database we are connected to. Not implemented yet.


git-svn-id: svn://localhost/gambas/trunk@8168 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2017-07-24 18:53:33 +00:00
Benoît Minisini
5189530aaf [INTERPRETER]
* BUG: Don't raise events just after a process has been started and has just been terminated. Postpone them.


git-svn-id: svn://localhost/gambas/trunk@8142 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2017-06-09 23:00:45 +00:00
Benoît Minisini
cbfcb9fb00 [INTERPRETER]
* BUG: Check if linking with 'librt' is needed to get monotonic clock.


git-svn-id: svn://localhost/gambas/trunk@8139 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2017-05-26 12:26:39 +00:00
Benoît Minisini
cfacf387ec [CONFIGURATION]
* NEW: Add a autoconf check for monotonic clock.

[INTERPRETER]
* BUG: Use a monotonic clock (if possible) to implement the WAIT instruction.


git-svn-id: svn://localhost/gambas/trunk@8138 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2017-05-26 00:20:40 +00:00
Benoît Minisini
c20cbb7972 [COMPILER]
* NEW: New instruction MOVE ... DOWNTO ... that renames a file and erase the destination atomically.

[INTERPRETER]
* NEW: New instruction MOVE ... DOWNTO ... that renames a file and erase the destination atomically.
* BUG: The signal handler now loops until the signal pipe is void.


git-svn-id: svn://localhost/gambas/trunk@8129 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2017-04-27 13:18:35 +00:00
Benoît Minisini
1184d41881 [INTERPRETER]
* BUG: Fix a possible bad serialization of arrays.
* BUG: Don't crash during the unserialisation of an array whose datatype has been incorrectly serialized. Raise an error instead.


git-svn-id: svn://localhost/gambas/trunk@8110 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2017-03-18 12:14:01 +00:00
Benoît Minisini
e68cad85c4 [INTERPRETER]
* NEW: Steam.Watch() is a new method that allows to watch/unwatch a stream for reading and/or writing after it has been opened.


git-svn-id: svn://localhost/gambas/trunk@8104 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2017-02-25 23:10:45 +00:00
Benoît Minisini
82eddfd5c9 [CONFIGURATION]
* NEW: Remove all 'depcomp' files. Apparently they are not used anymore by autoconf.

[INTERPRETER]
* BUG: Fix some gcc 6 warnings.

[GB.DEBUG]
* BUG: Fix some gcc 6 warnings.

[GB.GTK]
* BUG: Fix some gcc 6 warnings.
* BUG: Fix a ';' mistake in a focus management test.

[GB.GTK3]
* BUG: Fix some gcc 6 warnings.
* BUG: Fix a ';' mistake in a focus management test.

[GB.IMAGE]
* BUG: Fix some gcc 6 warnings.


git-svn-id: svn://localhost/gambas/trunk@8101 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2017-02-18 17:24:01 +00:00
Benoît Minisini
661accb890 [INTERPRETER]
* NEW: The GB.SystemHasForked() API now resets the pseudo-random number generator, and the signal handler management pipe.


git-svn-id: svn://localhost/gambas/trunk@8089 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2017-02-11 01:00:44 +00:00
Benoît Minisini
5e49bfbd90 [GB.DB.SQLITE2]
* BUG: Make component compile with gcc 6.

[INTERPRETER]
* BUG: Include <cmath> instead of <math.h> for components written in C++, so that they compile with gcc 6.

[GB.GTK]
* BUG: Make component compile with gcc 6.

[GB.GTK3]
* BUG: Make component compile with gcc 6.

[GB.QT4]
* BUG: Make component compile with gcc 6.

[GB.QT5]
* BUG: Make component compile with gcc 6.


git-svn-id: svn://localhost/gambas/trunk@8088 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2017-02-07 00:08:22 +00:00
Benoît Minisini
b225eba20f [CONFIGURATION]
* NEW: Update copyright year in all source files.


git-svn-id: svn://localhost/gambas/trunk@8056 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2017-01-13 03:29:42 +00:00
Benoît Minisini
f0f6dc3261 [INTERPRETER]
* BUG: Automatically restart mkfifo() and open() system calls when executing the PIPE instruction.


git-svn-id: svn://localhost/gambas/trunk@8053 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2017-01-13 03:22:35 +00:00
Benoît Minisini
6950a075f0 [INTERPRETER]
* BUG: Tasks do not inherit signal handler pipe anymore, they recreate it instead. Otherwise you have interferences with the parent process of the task, and some signals are lost.
* BUG: Buffered streams now take the internal stream flag "available_now" into account. No idea why that was disabled.
* BUG: Standard streams now set the internal stream flag "available_now" if they are not connected to a terminal. Which may not be necessarily accurate, so it is a temporary change.


git-svn-id: svn://localhost/gambas/trunk@8052 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2017-01-11 16:57:44 +00: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
c4d22f9d24 [INTERPRETER]
* BUG: Forbid continuing and stay in debugger when an unhandled error is raised. This prevent crashes when an error occurs during variable initialization.


git-svn-id: svn://localhost/gambas/trunk@8031 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-12-31 12:02:58 +00:00
Benoît Minisini
4e887b93b3 [INTERPRETER]
* BUG: Do not crash anymore when converting a pointer to an anonymous object. Raise an error instead.


git-svn-id: svn://localhost/gambas/trunk@8030 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-12-31 12:01:12 +00:00
Benoît Minisini
f2717c4ae8 [INTERPRETER]
* BUG: Remove debugging messages.


git-svn-id: svn://localhost/gambas/trunk@7998 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-11-27 02:44:07 +00:00
Benoît Minisini
7989d44979 [INTERPRETER]
* BUG: Close watched process input & outputs as soon as it is killed. Otherwise, running two processes using virtual terminals successively may fail.


git-svn-id: svn://localhost/gambas/trunk@7997 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-11-27 02:43:15 +00:00
Benoît Minisini
4aa7d6a268 [INTERPRETER]
* BUG: Debugger does not crash anymore when displaying a static collection-like object.


git-svn-id: svn://localhost/gambas/trunk@7995 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-11-24 23:58:11 +00:00
Benoît Minisini
1cf354061c [INTERPRETER]
* BUG: Make CStr() and CDate() mutually coherent, by internally converting to UTC dates only.


git-svn-id: svn://localhost/gambas/trunk@7983 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-11-18 14:50:40 +00:00
Benoît Minisini
5d34538e33 [INTERPRETER]
* BUG: Exec with a null program name does not crash anymore.


git-svn-id: svn://localhost/gambas/trunk@7939 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-10-28 10:12:09 +00:00
Benoît Minisini
97b8bc2056 [INTERPRETER]
* BUG: The translation file of the project is now always correctly loaded. That was a very old bug.


git-svn-id: svn://localhost/gambas/trunk@7919 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-10-01 22:32:42 +00:00
Benoît Minisini
4d50dead00 [INTERPRETER]
* BUG: Correctly call static event handlers when an event is raised.


git-svn-id: svn://localhost/gambas/trunk@7884 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-09-01 22:10:26 +00:00
Benoît Minisini
0b222b1a99 [INTERPRETER]
* BUG: Fix detection of errors occuring inside interpreter API.


git-svn-id: svn://localhost/gambas/trunk@7879 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-08-30 22:26:15 +00:00
Benoît Minisini
531e7c3e90 [GB.FORM]
* BUG: MenuButton: Take foreground color into account correctly.
* BUG: MenuButton: Clip text so that arrow is always clearly visible.
* BUG: MenuButton: Take the Design property into account correctly.


git-svn-id: svn://localhost/gambas/trunk@7864 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-08-26 00:21:27 +00:00
Benoît Minisini
e71801407c [INTERPRETER]
* NEW: Process.CloseInput() is a new method that explicitly closes the process input, as if you send a CTRL+D from the shell. This implements the old process stream closing behaviour that was removed in revision #7622.


git-svn-id: svn://localhost/gambas/trunk@7833 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-08-10 18:37:25 +00:00
Benoît Minisini
2a3ecf982d [DEVELOPMENT ENVIRONMENT]
* NEW: Project property dialog: New project arguments interface.
* NEW: Debugger: The project arguments is now selectable with a popup menu.
* BUG: Fix position history behaviour.

[INTERPRETER]
* NEW: Object.Type(), Object.Class() and Object.Is() now work with invalid objects.

[GB.FORM]
* NEW: Completion: Support for TextArea editor.
* NEW: Completion: Editor property is now writable.
* NEW: TableView: Raise a new Hide event when the editor is hidden.

[GB.FORM.EDITOR]
* NEW: TextEditor: CursorAt() is a new method that returns the cursor screen position from a line and a column.

[GB.GTK]
* NEW: TextBox: CursorAt() is a new method that returns the cursor screen position from a text position. The CursorPos property has been removed.
* NEW: ComboBox: CursorAt() is a new method that returns the cursor screen position from a text position. The CursorPos property has been removed.
* NEW: TextArea: CursorAt() is a new method that returns the cursor screen position from a text position. The CursorPos property has been removed.

[GB.GTK3]
* NEW: TextBox: CursorAt() is a new method that returns the cursor screen position from a text position. The CursorPos property has been removed.
* NEW: ComboBox: CursorAt() is a new method that returns the cursor screen position from a text position. The CursorPos property has been removed.
* NEW: TextArea: CursorAt() is a new method that returns the cursor screen position from a text position. The CursorPos property has been removed.

[GB.GUI.BASE]
* BUG: GridView: Newlines in cells with WordWrap property set are now taken into account correctly.

[GB.QT4]
* NEW: TextBox: CursorAt() is a new method that returns the cursor screen position from a text position. The CursorPos property has been removed.
* NEW: ComboBox: CursorAt() is a new method that returns the cursor screen position from a text position. The CursorPos property has been removed.
* NEW: TextArea: CursorAt() is a new method that returns the cursor screen position from a text position. The CursorPos property has been removed.

[GB.QT5]
* NEW: TextBox: CursorAt() is a new method that returns the cursor screen position from a text position. The CursorPos property has been removed.
* NEW: ComboBox: CursorAt() is a new method that returns the cursor screen position from a text position. The CursorPos property has been removed.
* NEW: TextArea: CursorAt() is a new method that returns the cursor screen position from a text position. The CursorPos property has been removed.


git-svn-id: svn://localhost/gambas/trunk@7825 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-07-18 03:01:59 +00:00
Benoît Minisini
2d5e1ac26a [INTERPRETER]
* BUG: The error backtrace is now reset only when raising a new error. Consequently, the information is now kept when an error is propagated.


git-svn-id: svn://localhost/gambas/trunk@7807 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-07-07 08:50:33 +00:00
Benoît Minisini
f01ea65084 [INTERPRETER]
* BUG: Fix a possible misuse of kill() when calling Process.Kill().


git-svn-id: svn://localhost/gambas/trunk@7792 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-05-31 12:11:35 +00:00
Benoît Minisini
9779e9b105 [INTERPRETER]
* NEW: The Stream class now can raise a Resize event. Only the standard input stream (File.In) can raise it.
* NEW: If the startup class defines an Application_Read() or an Application_Resize() event handler, then the standard input stream is attached to it with the "Application" event name, so that these event handlers are used. Otherwise, the standard input stream must be attached and watched manually.


git-svn-id: svn://localhost/gambas/trunk@7785 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-05-22 22:03:16 +00:00
Benoît Minisini
d15a425953 [DEVELOPMENT ENVIRONMENT]
* NEW: Finish the redesign of the debug panel.

[INTERPRETER]
* BUG: Fix a stack mismatch leading to a crash in Eval() when an "Unknown symbol" error occurs.

[GB.FORM]
* BUG: SidePanel: The Hide event is now raised after the SidePanel has been actually hidden.


git-svn-id: svn://localhost/gambas/trunk@7754 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-05-04 01:38:46 +00:00
Benoît Minisini
89339bf9d5 [INTERPRETER]
* BUG: Don't raise the write callback associated with a watched file descriptor if the read callback has disabled it.


git-svn-id: svn://localhost/gambas/trunk@7748 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-04-27 00:05:54 +00:00
Benoît Minisini
3ce6340a09 [INTERPRETER]
* NEW: GB.GetArrayType() is a new API that returns the datatype of the elements of an array class.


git-svn-id: svn://localhost/gambas/trunk@7746 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-04-15 21:11:19 +00:00
Benoît Minisini
5366f3391e [INTERPRETER]
* BUG: Fix the GB.Every() API that does not crash anymore.


git-svn-id: svn://localhost/gambas/trunk@7739 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-04-13 19:57:48 +00:00
Benoît Minisini
f73ceed778 [INTERPRETER]
* NEW: Stream.Term.Width and Stream.Term.Height are two new properties that return the size of the terminal associated with the stream, if any.
* NEW: As soon as the terminal size is read on any stream with the previous properties, the SIGWINCH signal is watched, and the Application_Resize() public method of the startup class is called each time this signal is catched, meaning that the terminal has been resized.


git-svn-id: svn://localhost/gambas/trunk@7735 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-04-10 13:10:25 +00:00
Benoît Minisini
ebe3fdaf0c [INTERPRETER]
* BUG: Subst$() now does not crash anymore when its result is a void string.


git-svn-id: svn://localhost/gambas/trunk@7726 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-04-06 13:19:14 +00:00
Benoît Minisini
ff7bbe8a21 [DEVELOPMENT ENVIRONMENT]
* NEW: Add 'gb.form.terminal' to the component list.
* NEW: New component status icons.

[INTERPRETER]
* BUG: Correctly export Stream.Term description.
* NEW: Stream.Term.FlowControl is a new property that allows to set or retrieve if flow control is enabled on a terminal stream.

[GB.GTK]
* NEW: Change the name of 'NewChild' event argument.

[GB.GTK3]
* NEW: Change the name of 'NewChild' event argument.

[GB.QT4]
* NEW: Change the name of 'NewChild' event argument.

[GB.QT5]
* NEW: Change the name of 'NewChild' event argument.

[GB.FORM.TERMINAL]
* NEW: Support for the 'Set title' command.
* NEW: TerminalView now emits the Title event when the terminal requests a title change.
* NEW: Support for flow control. When output is suspended, the terminal contents becomes darker.
* BUG: Correctly update the scrollbar when switching between screens.


git-svn-id: svn://localhost/gambas/trunk@7714 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-04-03 10:54:21 +00:00
Benoît Minisini
d7e88bf641 [INTERPRETER]
* BUG: Fix a possible crash in String.Code().

[GB.FORM.TERMINAL]
* OPT: Compress the attribute array associated with each line.
* OPT: Drawing line routine uses the JIT compiler.



git-svn-id: svn://localhost/gambas/trunk@7701 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-03-31 19:06:03 +00:00
Benoît Minisini
79a4ea2a70 [INTERPRETER]
* BUG: Fix a crash on one error message thrown incorrectly.

[GB.FORM.TERMINAL]
* OPT: Optimize drawing routine. Still slow, but less flicker.
* NEW: TerminalView: Add a blink property that enables or disables cursor blink.

[GB.GTK]
* BUG: Use cairo_paint() instead of cairo_fill() when Paint.Operator is not Paint.OperatorOver. Is it a Cairo bug?

[GB.GTK3]
* BUG: Use cairo_paint() instead of cairo_fill() when Paint.Operator is not Paint.OperatorOver. Is it a Cairo bug?


git-svn-id: svn://localhost/gambas/trunk@7698 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-03-31 09:25:11 +00:00
Benoît Minisini
342848f9e1 [INTERPRETER]
* NEW: Stream.Term.Echo is a new property that allows to enable or disable the terminal echo mode.

[GB.FORM.EDITOR]
* NEW: Screen management splitted from TerminalView. TerminalView has two screens now. Switch between screens is not implemented yet.


git-svn-id: svn://localhost/gambas/trunk@7674 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-03-27 08:54:02 +00:00
Benoît Minisini
83f7f6677e [INTERPRETER]
* NEW: Stream.IsTerm is a new property that returns if a stream is a terminal.
* NEW: Stream.Term.Resize() is a new method that resizes a terminal.


git-svn-id: svn://localhost/gambas/trunk@7669 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-03-26 13:09:20 +00:00
Benoît Minisini
625888d44d [INTERPRETER]
* NEW: Timer: The constructor now takes the delay as optional parameter. And if that delay is specified, the timer is automatically started.

[GB.FORM.TERMINAL]
* NEW: TerminalView: internal control that only deals with displaying the terminal contents.


git-svn-id: svn://localhost/gambas/trunk@7664 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-03-25 13:06:09 +00:00
Benoît Minisini
31625057b2 [INTERPRETER]
* BUG: Fix declaration of CLASS_DESC_SYMBOL structure. The JIT compiler does not crash anymore.


git-svn-id: svn://localhost/gambas/trunk@7663 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-03-23 23:31:42 +00:00
Benoît Minisini
bd22007651 [INTERPRETER]
* BUG: Ignore EINPROGRESS and EAGAIN error codes when closing a file descriptor.


git-svn-id: svn://localhost/gambas/trunk@7658 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-03-23 02:58:13 +00:00
Benoît Minisini
1db9d8df47 [INTERPRETER]
* NEW: Add a symbol table optimization that is disabled because it's not worth it.
* OPT: Force inlining of functions in symbol tables routines.
* OPT: A little optimization on routine string argument extraction.


git-svn-id: svn://localhost/gambas/trunk@7650 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-03-20 18:29:12 +00:00
Benoît Minisini
4c3370908c [COMPILER]
* NEW: Work on internal expression datatype analyze has continued.
* OPT: Compiling syntax trees is faster now.

[INTERPRETER]
* OPT: Analyzing objects a method or a property applies to is faster now.
* NEW: Remove an unused method in table symbol implementation.


git-svn-id: svn://localhost/gambas/trunk@7647 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-03-20 01:27:31 +00:00
Benoît Minisini
214ce4f43e [INTERPRETER]
* BUG: Collection methods now always update the Key property, being called normally or from the debugger.
* BUG: The debugger now sends the current key when enumerating collection keys.


git-svn-id: svn://localhost/gambas/trunk@7627 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-03-11 23:44:26 +00:00
Benoît Minisini
cd9324c68e [INTERPRETER]
* BUG: Correctly detect error when closing a process stream.
* BUG: Ignore EBADF errors when closing a stream. It means that the underlying file descriptor has already been closed.


git-svn-id: svn://localhost/gambas/trunk@7624 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-03-08 20:24:24 +00:00
Benoît Minisini
a3ada1b09d [INTERPRETER]
* BUG: Undo r7620 change.


git-svn-id: svn://localhost/gambas/trunk@7623 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-03-08 20:05:45 +00:00
Benoît Minisini
6cee32287c [INTERPRETER]
* BUG: Now raise an error when a stream cannot be closed, instead of silently ignoring it.


git-svn-id: svn://localhost/gambas/trunk@7622 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-03-08 20:04:55 +00:00
Benoît Minisini
222a77cf16 [INTERPRETER]
* BUG: Close a buffered stream even if fclose() fails. Temporary fix.


git-svn-id: svn://localhost/gambas/trunk@7620 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-03-08 18:46:40 +00:00
Benoît Minisini
f2f26687a9 [INTERPRETER]
* BUG: Remove a debugging message.


git-svn-id: svn://localhost/gambas/trunk@7613 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-02-25 23:19:39 +00:00
Benoît Minisini
056190b68d [INTERPRETER]
* BUG: DateDiff() correctly returns zero when asking for the number of days between two timestamps having the same date.



git-svn-id: svn://localhost/gambas/trunk@7612 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-02-25 23:09:51 +00:00
Benoît Minisini
61064b6f6e [INTERPRETER]
* BUG: Week() now works correctly outside of UTC.


git-svn-id: svn://localhost/gambas/trunk@7611 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-02-25 22:59:49 +00:00
Benoît Minisini
a282de2f75 [INTERPRETER]
* BUG: Libraries are also searched in the current directory without version or vendor, for backward-compatibility.


git-svn-id: svn://localhost/gambas/trunk@7606 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-02-21 10:49:15 +00:00
Benoît Minisini
91c76c32a9 [INTERPRETER]
* BUG: Correctly handle the current component interpreter variable when an error occurs.


git-svn-id: svn://localhost/gambas/trunk@7603 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-02-14 16:15:31 +00:00
Benoît Minisini
41b9cc5e36 [INTERPRETER]
* NEW: Library specific path can be relative now. It is then relative to the project executable path.
* NEW: Libraries are now searched in the '~/.local/share/gambas3/lib' directory even if we are not in debugging mode.


git-svn-id: svn://localhost/gambas/trunk@7602 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-02-10 21:45:33 +00:00
Benoît Minisini
f34f52b928 [INTERPRETER]
* NEW: New library management.

[COMPILER]
* NEW: New library management.


git-svn-id: svn://localhost/gambas/trunk@7592 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-02-01 02:18:49 +00:00
Benoît Minisini
8afaad6c00 [INTERPRETER]
* BUG: Case insensitive comparison is now coherent whether natural comparison is specified or not.


git-svn-id: svn://localhost/gambas/trunk@7587 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-01-25 23:28:18 +00:00
Benoît Minisini
39ed4dd89e [INTERPRETER]
* NEW: Support for custom expression evaluators.

[GB.EVAL]
* NEW: You can now inheriting the Expression class to create a custom expression evaluator. You have to reimplement three methods: IsSubr(), that returns if a Gambas subroutine is allowed;
  IsIdentifier() that returns if a specific identifier is known; GetValue() that returns the value of an identifier. All other methods you add to the class become your specific subroutine,
  provided that you allow it in the IsIdentifier() method.


git-svn-id: svn://localhost/gambas/trunk@7545 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-01-03 16:44:24 +00:00
Benoît Minisini
66f5c498d2 [INTERPRETER]
* BUG: Shell$() does not try to convert into current locale anymore.


git-svn-id: svn://localhost/gambas/trunk@7542 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2016-01-02 11:11:52 +00:00
Benoît Minisini
a6f458e05c [INTERPRETER]
* NEW: _ready() is new special method that is called when an object construction is completly finished.

[COMPILER]
* NEW: Remove the call to _load() method in form constructors.

[GB.WEB.FORM]
* BUG: WebExpander: Remove a debugging message.
* NEW: WebForm.Debug is a new static property that, if set, dumps all exchanges between the server and the client in the browser console.
* NEW: Use the new _ready special method.
* NEW: WebLabel: Add the Border property.
* NEW: WebLabel: Alignment is a new property that defines the label horizontal alignment.
* NEW: A few changes in default style sheet.


git-svn-id: svn://localhost/gambas/trunk@7541 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-12-30 18:11:01 +00:00
Benoît Minisini
97ab7c0a3a [INTERPRETER]
* BUG: Correctly load optional exported classes at component loading.


git-svn-id: svn://localhost/gambas/trunk@7539 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-12-30 17:10:00 +00:00
Benoît Minisini
b9b46f3873 [CONFIGURATION]
* NEW: Add "-march=native" to the compilation flags. Maybe it could speed up then interpretrer a bit?

[DEVELOPMENT ENVIRONMENT]
* NEW: Connection editor: Update layout.
* NEW: Form editor: Clicking on the master selection selects the parent control.

[WEB SITE MAKER]
* NEW: Update for 3.8.4 version.

[GB.DB]
* BUG: Default values are now correctly taken into account by database templates.

[GB.DB.SQLITE3]
* BUG: Fix a possible uninitialized allocation of columns names.

[GB.UTIL]
* NEW: Class.Stat() class name argument now allows "../" in the name to search for classes in parent components.

[GB.WEB]
* NEW: Request.Language returns the main language requested by the HTTP client. This value can be directly assigned to System.Language.
* NEW: Session.Size returns the size of the session file in bytes.

[GB.WEB.FORM]
* NEW: Automatic management of favicon. The application favicon must be a file named "favicon.png" in the ".public" directory.
* NEW: The Align class for alignment constants.
* NEW: WebControl: Any control can raise a Message event now.
* NEW: The Message boxes now raise the "Message" event of the WebControl that opened the message box. If the event is not handled, then the event is raised by the WebForm of the control.
* NEW: The Select class for selection mode constants.
* BUG: WebComboBox: Define the default event.
* NEW: WebContainer: Indent is a new property that allows to add a left padding to the container.
* NEW: WebContainer: Extra children (those created after initialization) are now recreated with their event observer and event name, provided that the event observer is another WebControl.
* NEW: WebContainer: DeleteChildren() is a new method that deletes all container children.
* NEW: WebExpander: New container that implements an expander.
* NEW: WebForm: Teh application language now automatically switches to the language requested by the HTTP client.
* BUG: WebForm: Show() and ShowModal() method now raise the Open event.
* NEW: WebLabel: Add the Border property to the property list.
* NEW: WebLabel: Newlines in label text are automatically replaced by "<br>".
* NEW: WebTable: New control that implements an HTML table with automatic scrollbars. It gets its data through a Data event, and only displays the first hundred elements by default. A button allows to increase the number of displayed elements.
  The 'Mode' property allows to define the selection mode. When rows are selectable, an extra columns is added, with radion buttons on single selection mode, and checkboxes on multiple selection mode. The indexes of selected rows is returned by
  the 'Selection' property.
* BUG: Many fixes in the default stylesheet.


git-svn-id: svn://localhost/gambas/trunk@7536 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-12-27 18:16:32 +00:00
Benoît Minisini
e525d08dd7 [INTERPRETER]
* BUG: Object.Raise() now works correctly with events having arguments.


git-svn-id: svn://localhost/gambas/trunk@7486 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-11-21 05:00:27 +00:00
Benoît Minisini
8d24b22411 [DEVELOPMENT ENVIRONMENT]
* BUG: Fix the function that detects if a control needs a parent.
* BUG: When adding every new file to the subversion repository, the
  '.gambas' directory is now correctly ignored.

[COMPILER]
* NEW: The _load() special method is now called just after the initial form
  creation is finished.

[GB.WEB.FORM]
* NEW: Message is a new class for displaying message boxes.
* BUG: Fix management of control names.
* NEW: Implement the WebContainer.Delete() method and WebWindow.Delete()
  methods. Child controls are now automatically deleted if their parent is
  also deleted.
* NEW: WebControl.Show() and WebControl.Hide() are two new methods that are
  synonymous of the Visible property.
* NEW: WebControl acts now like an collection-like array, so that you can
  store user data associated with a control in the session.
* NEW: WebControl.Reset() is a new method to reset the control user data.
* NEW: WebForm.ShowModal() shows a form as a modal window.
* NEW: WebForm.Show() does not take an optional parent anymore. Windows are
  always shown in the current form.
* NEW: Windows with no initial size are centered.
* NEW: WebImage is a new control that displays an image.
* NEW: WebLabel is a new control that displays a one-line vertically
  centered label.
* NEW: WebTextArea is a new control that implements a multi-line text area.


git-svn-id: svn://localhost/gambas/trunk@7482 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-11-18 01:29:28 +00:00
Benoît Minisini
2a9836fead [INTERPRETER]
* OPT: Optimize access to objects whose class is "simple", i.e. without
  parent, children, special check method, and not virtual.
* OPT: Detect when automatic conversion is useless in arithmetic and
  comparison operators.
* OPT: Optimize a bit inequality comparison operators.


git-svn-id: svn://localhost/gambas/trunk@7476 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-11-14 04:29:43 +00:00
Benoît Minisini
7723b72e66 [INTERPRETER]
* OPT: Subroutine table is faster to access now.
* OPT: Don't browse temporary directory at end if no temporary file has
  been used.


git-svn-id: svn://localhost/gambas/trunk@7469 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-11-11 03:40:50 +00:00
Benoît Minisini
adcb15514f [INTERPRETER]
* NEW: Collection.Default is a new property that allows to define the
  default value returned by a collection when a key has no value. Note that
  assigning the default value does not clear the key. You have to
  explicitly assign NULL for that.


git-svn-id: svn://localhost/gambas/trunk@7468 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-11-11 01:55:37 +00:00
Benoît Minisini
e6bc6243e1 [INTERPRETER]
* BUG: Application.Dir is correctly declared now. Consequently, it will
  work with JIT compiler.


git-svn-id: svn://localhost/gambas/trunk@7467 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-11-11 01:25:40 +00:00
Benoît Minisini
e719e777b4 [DEVELOPMENT ENVIRONMENT]
* NEW: Image selection dialog has now more options, and can choose image
  inside the ".public" directory.
* NEW: Image selection now depends on form family.

[INTERPRETER]
* NEW: Timer.Restart() is a new method that stops and starts again a timer.

[GB.FORM.EDITOR]
* NEW: TextEditor: Image line cache is now limited by the visible height.
* BUG: TextEditor: Don't use image line cache for lines too high.

[GB.WEB]
* BUG: WebPage.ToString() now works correctly.

[GB.WEB.FORM]
* NEW: Generate webform style sheet recursively.
* NEW: WebButton can have an icon with the Image property.
* NEW: WebHtml control is now usable.
* NEW: WebContainer Arrangement, Margin and Spacing properties.
* NEW: WebControl Expand property.
* NEW: WebContainer boolean Border property is there just for debugging.
* NEW: WebForm.Title property.


git-svn-id: svn://localhost/gambas/trunk@7459 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-11-09 01:41:20 +00:00
Benoît Minisini
ce6b2c35b3 [GB.UTIL]
* NEW: Class.Stat() is a new static method that returns information about
  a project class without loading it. At the moment you only get the parent
  class name and if the class is exported.

[GB.WEB.FORM]
* NEW: A new embryo component that aims at providing web application GUI
  controls, web application automatic user management (login & register),
  and many other features not yet decided.


git-svn-id: svn://localhost/gambas/trunk@7457 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-11-08 03:11:47 +00:00
Benoît Minisini
8c51cc2d2c [INTERPRETER]
* BUG: Fix Variant to Boolean conversion.


git-svn-id: svn://localhost/gambas/trunk@7441 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-11-02 15:54:13 +00:00
Benoît Minisini
217f075c8b [INTERPRETER]
* OPT: Collection access is faster now.
* OPT: LINE INPUT and INPUT are faster now.
* OPT: Conversions to Boolean, from and to Variant are faster now.


git-svn-id: svn://localhost/gambas/trunk@7440 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-11-02 03:24:44 +00:00
Benoît Minisini
26d137d850 [INTERPRETER]
* OPT: Some optimization in native array accessors.
* BUG: Fix a compilation warning.


git-svn-id: svn://localhost/gambas/trunk@7439 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-10-31 01:49:40 +00:00
Benoît Minisini
5a3264a97d [INTERPRETER]
* BUG: Ensure better entropy when initializing pseudo-random number 
  generator.
* NEW: Ensure a better hash key seed for hash tables.


git-svn-id: svn://localhost/gambas/trunk@7427 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-10-19 19:30:17 +00:00
Benoît Minisini
061bb35502 [INTERPRETER]
* BUG: Prevent the use of seed 0 for the random-number generator, by 
  replacing it by -1 if Randomize 0 is requested.


git-svn-id: svn://localhost/gambas/trunk@7426 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-10-18 21:10:13 +00:00
Benoît Minisini
9e5924c628 [INTERPRETER]
* BUG: Fix File.IsHidden() method for paths having "." or ".." element 
  inside.


git-svn-id: svn://localhost/gambas/trunk@7418 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-10-17 18:40:29 +00:00
Benoît Minisini
bc6493120e [INTERPRETER]
* NEW: File.IsHidden() is a new static method that returns if a path is 
  hidden, i.e. if its filename or one of its directory components starts 
  with a dot.

[GB.FORM]
* NEW: Setting an hidden path to a DirChooser or FileChooser automatically 
  toggles the ShowHidden property if needed.


git-svn-id: svn://localhost/gambas/trunk@7414 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-10-17 01:59:12 +00:00
Benoît Minisini
01a2b34270 [DEVELOPMENT ENVIRONMENT]
* NEW: Project exported control icons are thiner.

[INTERPRETER]
* NEW: Release classes having an array class if that array class has no 
  instance.

[GB.GUI.BASE]
* NEW: _Gui._Quit is a new method called by the GUI components during their
  "quit" hook. At the moment it releases Drag.Icon picture and voids the 
  Picture cache.


git-svn-id: svn://localhost/gambas/trunk@7403 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-10-10 02:02:12 +00:00
Benoît Minisini
bc5933f905 [INTERPRETER]
* BUG: Fix a crash when trying twice accessing a collection without the 
  good number of arguments.


git-svn-id: svn://localhost/gambas/trunk@7395 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-10-08 00:55:44 +00:00
Benoît Minisini
f073b22eae [DEVELOPMENT ENVIRONMENT]
* BUG: Correctly catch errors when reloading a file.

[INTERPRETER]
* BUG: Fix a possible crash when removing an element from an enumerated 
  collection.


git-svn-id: svn://localhost/gambas/trunk@7392 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-10-06 23:29:35 +00:00
Benoît Minisini
647c900268 [INTERPRETER]
* NEW: Relative paths beginning with ".../" always refer to files stored in 
  the main project archive.


git-svn-id: svn://localhost/gambas/trunk@7346 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-09-26 08:43:50 +00:00
Benoît Minisini
e838264954 [CONFIGURATION]
* BUG: Register mimetype icon with correct sizes.

[INTERPRETER]
* BUG: Fix Component.FindFromPath() method signature.


git-svn-id: svn://localhost/gambas/trunk@7340 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-09-25 18:35:44 +00:00
Benoît Minisini
dc46e9d20b [INTERPRETER]
* BUG: Val() correctly detect dates now, when the date or the time 
  separator is a space character.


git-svn-id: svn://localhost/gambas/trunk@7326 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-09-19 22:55:43 +00:00
Benoît Minisini
614e483598 [INTERPRETER]
* BUG: Task now ends with by calling _exit() instead of exit(). Because
  exit() calls the terminator of each loaded shared libraries, and that
  sometimes crashes.


git-svn-id: svn://localhost/gambas/trunk@7320 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-09-18 00:37:15 +00:00
Benoît Minisini
2395af1a33 [INTERPRETER]
* BUG: Fix thousand separator for locales like norwegian that return an 
  UTF-8 non-breaking space. Replace it by a normal space.


git-svn-id: svn://localhost/gambas/trunk@7318 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-09-16 22:51:31 +00:00
Benoît Minisini
991f685a3c [INTERPRETER]
* NEW: Component.FindFromPath() is a new method that returns the name of 
  the component a relative path belongs to.
* BUG: Fix the internal method that returns the component a relative path 
  belongs to.

[ARCHIVER]
* NEW: Better verbose mode.

[GB.GUI.BASE]
* NEW: Use the new Component.FindFromPath() method.

[GB.IMAGE]
* NEW: Color[].Luminance returns the luminance information of a color.


git-svn-id: svn://localhost/gambas/trunk@7309 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-09-14 10:53:02 +00:00
Benoît Minisini
4349d4b5bb [INTERPRETER]
* BUG: Fix interpretation of "../abc" paths.


git-svn-id: svn://localhost/gambas/trunk@7305 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-09-13 07:54:00 +00:00
Benoît Minisini
bdd864f41a [DEVELOPMENT ENVIRONMENT]
* BUG: Fix windows using icons not existing anymore.
* NEW: Add dark theme versions of some icons.

[INTERPRETER]
* NEW: "../xxx" now refers to a file located in the parent archive, not
  necessarily the main project archive. "../../xxx" refers to the 
  grand-parent archive, and so on. A component written in Gambas that 
  receives a relative path is supposed to prefix it with "../" if he wants 
  to access it. Please report any incompatibility!
* NEW: File.IsRelative() is a new method that returns if a file is 
  relative, i.e. if it does not starts with '/' or '~'.
  
[GB.FORM]
* NEW: The Stock class does not use the Picture cache anymore. It is 
  useless as normally the Stock class is accessed from the Picture[]
  method.

[GB.FORM.MDI]
* BUG: When browsing actions, do not try to load an icon for actions that
  do not have one.

[GB.GTK]
* NEW: Remove the Picture[] array accessor and the Picture.Flush() method.
  They are now implemented in the 'gb.gui.base' component.
  
[GB.GTK3]
* NEW: Remove the Picture[] array accessor and the Picture.Flush() method.
  They are now implemented in the 'gb.gui.base' component.
  
[GB.GUI.BASE]
* NEW: The Picture[] array accessor and the Picture.Flush() method are now 
  implemented in that component.
* NEW: Remove support for theme specific icons.
* NEW: Add support for right-to-left specific icons. For example, if an
  icon is named 'abc-ltr.png', then it will be considered as a 
  'left-to-right' icon, and the 'abc-rtl.png' icon will be used if the 
  current langauge is right-to-left written.
* NEW: Add support for dark theme specific icons. An icon named 
  'abc-dark.png' will be the dark theme version of the 'abc.png' icon.

[GB.QT4]
* NEW: Remove the Picture[] array accessor and the Picture.Flush() method.
  They are now implemented in the 'gb.gui.base' component.
* NEW: Message boxes do not support theme specific icons automatically 
  anymore.
  
[GB.QT5]
* NEW: Remove the Picture[] array accessor and the Picture.Flush() method.
  They are now implemented in the 'gb.gui.base' component.
* NEW: Message boxes do not support theme specific icons automatically 
  anymore.


git-svn-id: svn://localhost/gambas/trunk@7304 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-09-12 23:21:44 +00:00
Benoît Minisini
8d5317452a * Fake commit for r7251.
[INTERPRETER]
* BUG: GB.SubstString() API now can take a void substitution string. It 
  returns NULL instead of doing a segfault. Consequently, 
  RegExp.Replace() from gb.pcre can take a null replace string without 
  crashing.


git-svn-id: svn://localhost/gambas/trunk@7261 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-09-01 23:25:20 +00:00
Benoît Minisini
9c04684084 [INTERPRETER]
* BUG: Debugger: Displaying a dynamic variable in a static context does not
  crash anymore.


git-svn-id: svn://localhost/gambas/trunk@7258 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-08-30 14:39:38 +00:00
Benoît Minisini
b8eaa08cf3 git-svn-id: svn://localhost/gambas/trunk@7251 867c0c6c-44f3-4631-809d-bfa615b0a4ec 2015-08-30 00:56:56 +00:00
Benoît Minisini
98a31d1bc6 [INTERPRETER]
* BUG: New routine to compute the localized time/date formats and 
  separators.


git-svn-id: svn://localhost/gambas/trunk@7244 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-08-27 17:18:59 +00:00
Benoît Minisini
5a99bd0f7b [INTERPRETER]
* BUG: Fix multi-dimensional arrays size check.


git-svn-id: svn://localhost/gambas/trunk@7233 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-08-22 11:04:14 +00:00
Benoît Minisini
eaf08bce5e [INTERPRETER]
* BUG: Correctly detect too large arrays.
* BUG: Array allocation incrementation now cannot be larger then 256 slots.


git-svn-id: svn://localhost/gambas/trunk@7232 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-08-21 18:49:33 +00:00
Benoît Minisini
48615ab311 [INTERPRETER]
* BUG: Array.Resize() now correctly raises an error if its argument is
  negative.


git-svn-id: svn://localhost/gambas/trunk@7231 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-08-21 00:40:14 +00:00
Adrien Prokopowicz
0a8f1d9072 [INTERPRETER]
* BUG: Fix DateDiff() day comparison when comparing two dates with 
  different times.

git-svn-id: svn://localhost/gambas/trunk@7224 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-08-14 09:57:54 +00:00
Benoît Minisini
6e3f844fe4 [INTERPRETER]
* BUG: Fix DateDiff() day comparison when comparing two dates with 
  different times.
* BUG: Timezone ten minutes validation now works.

git-svn-id: svn://localhost/gambas/trunk@7212 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-08-01 16:13:26 +00:00
Benoît Minisini
7a18201aa5 [INTERPRETER]
* BUG: Don't close an external library if requesting an unknown symbol on 
  it. Why having done that?


git-svn-id: svn://localhost/gambas/trunk@7191 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-07-29 19:43:16 +00:00
Benoît Minisini
5ecb973af4 [DEVELOPMENT ENVIRONMENT]
* BUG: Image editor: Don't load the image twice.
* NEW: Do not open the welcome dialog if a project directory has been 
  specified in program arguments.
* NEW: Farm client: Paint the software names the same way everywhere.
* BUG: If the workspace was filled before
  the main window is visible, then the QT5 backing store starts displaying
  garbage. The workaround was to always show the main window before trying 
  to load any file.
* NEW: Add the environment variables to the system information.

[WIKI CGI SCRIPT]
* BUG: Fix some HTML syntax errors.

[INTERPRETER]
* BUG: Add the Rand() syntax description.

[GB.DB.POSTGRESQL]
* BUG: If PostgreSQL version is greater than 9.0, then force the bytea 
  output format to 'escape', as it was before.

[GB.EVAL.HIGHLIGHT]
* NEW: The TextHighlighter.ToHtml() method now takes the 'Alternate' style
  flag into account, and the generated HTML is less verbose.
* BUG: The WebPage highlighting has been fixed.

[GB.FORM]
* BUG: Completion: Fix a possible crash.
* BUG: TabPanel: Fix a possible crash.

[GB.SDL2]
* NEW: Window.Handle is a new property that returns the window handle.


git-svn-id: svn://localhost/gambas/trunk@7188 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-07-27 03:54:57 +00:00
Benoît Minisini
f616f67bc1 [INTERPRETER]
* BUG: Support for UTF-8 date and time separators, used by Chinese for 
  example.


git-svn-id: svn://localhost/gambas/trunk@7180 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-07-11 22:44:09 +00:00
Benoît Minisini
5dc1e1d4c6 [INTERPRETER]
* BUG: Finally fixed! LINE INPUT internal buffer is now correctly reset 
  when SEEK is used.


git-svn-id: svn://localhost/gambas/trunk@7176 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-07-09 14:39:38 +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
005c733d8d [INTERPRETER]
* BUG: Fix Object.Raise() method.

[DEVELOPMENT ENVIRONMENT]
* BUG: Replace a possible error while filling the toolbox by a warning 
  message.

[GB.DBUS]
* NEW: DBusValues is a new class that must be used when a DBus method canonical
  return several values. It works like DBusVariant.
* NEW: DBus.SplitSignature is new method that allows to split a DBus signature.
* NEW: DBusNull class is renamed as _DBusNull.
  
[GB.DBUS.TRAYICON]
* NEW: TrayIcon popup menu is now exported through the DBusMenu protocol,
  so that it becomes usable on Unity. Consequently, the Menu event will be
  removed.

[GB.DESKTOP]
* NEW: Remove the Desktop.Type property.
* NEW: Add support for Unity.

[GB.GTK]
* NEW: Desktop.Type is now implemented in the GUI components.

[GB.GTK3]
* NEW: Desktop.Type is now implemented in the GUI components.

[GB.QT]
* NEW: Desktop.Type is now implemented in the GUI components.

[GB.QT5]
* NEW: Desktop.Type is now implemented in the GUI components.


git-svn-id: svn://localhost/gambas/trunk@7164 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-07-02 14:26:10 +00:00
Benoît Minisini
758c102283 [INTERPRETER]
* NEW: Object.Raise() is a new method that tells an object to raise one of 
  its events. You should have no use of that for real applications. :-)


git-svn-id: svn://localhost/gambas/trunk@7163 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-07-01 12:26:23 +00:00
Benoît Minisini
566e06abfe [INTERPRETER]
* BUG: Correctly fix the bug of revision #7147 in UTF-8 string management.


git-svn-id: svn://localhost/gambas/trunk@7157 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-06-29 15:30:00 +00:00
Benoît Minisini
930c7549d1 [INTERPRETER]
* NEW: Add a new GB.Component.Declare() API, that allows a component to
  dynamically register a class description.

[INFORMER]
* NEW: A component now can declare classes through a GB_OPTIONAL_CLASSES 
  public symbol. Theses classes are included into the information file,
  but are not automatically loaded as the ones defined through the 
  GB_CLASSES symbol.

[GB.FORM.STATUSICON]
* NEW: This component has been removed and replaced by gb.dbus.trayicon.
* NEW: This component now provide TrayIcon and TrayIcons classes that have
  exactly the same interface as the old ones.

[GB.DBUS]
* NEW: Remove the now useless DBusConnection.Raise(). The DBusConnection
  Register() and Unregister() are kept for backward-compatibility reason.
* NEW: Add DBus.Raise() and DBus[].Raise() to raise signals. At the moment,
  there is no difference between the two methods, as there no mean to
  indicate the sender raising a signal. I don't know yet how DBus decides
  which service sends a signal!

[GB.DBUS.TRAYICON]
* NEW: This component implements the tray icon DBus protocol. It is 
  automatically loaded by the GUI components.

[GB.GTK]
* NEW: Load the 'gb.dbus' and 'gb.dbus.trayicon' components if the current
  desktop is KDE >= 4. Otherwise, use the old TrayIcon implementation.
* BUG: Fix the old TrayIcon implementation, so that it matches the QT one.

[GB.GTK3]
* NEW: Load the 'gb.dbus' and 'gb.dbus.trayicon' components if the current
  desktop is KDE >= 4. Otherwise, use the old TrayIcon implementation.
* BUG: Fix the component name in deprecation warning messages.
* BUG: Fix the old TrayIcon implementation, so that it matches the QT one.

[GB.QT4]
* NEW: Load the 'gb.dbus' and 'gb.dbus.trayicon' components if the current
  desktop is KDE >= 4. Otherwise, use the old TrayIcon implementation.

[GB.QT5]
* NEW: Load the 'gb.dbus' and 'gb.dbus.trayicon' components if the current
  desktop is KDE >= 4. Otherwise, use the old TrayIcon implementation.


git-svn-id: svn://localhost/gambas/trunk@7154 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-06-29 01:46:51 +00:00
Benoît Minisini
29fe0bc6a6 [INTERPRETER]
* NEW: GB.GetProperty() API now returns the property value as a GB_VALUE 
  pointer, or NULL if the property could not be read.

[GB.DB.POSTGRESQL]
* BUG: Fix a compilation warning.

[GB.DBUS]
* NEW: DBusVariant.Signature is now a constant, not a property anymore.
* NEW: DBusVariant() static method has been removed.
* NEW: DBusVariant.Value is now writable.
* NEW: DBusVariant now can be inherited. Use the value of the Signature 
  constant for introspection of methods and properties using a child class
  of DBusVariant.
* BUG: Show the org.freedesktop.DBus.Peer interface in introspection.
* BUG: The org.freedesktop.DBus.Properties.GetAll method now works 
  correctly.
* BUG: Correctly handle array datatypes.
* BUG: Correctly marshall DBus structures and arrays.
* BUG: Correctly handle NULL values.

[GB.FORM.EDITOR]
* BUG: TextEditor: Better detect cursor position when clicking in the 
  editor with the mouse.

[GB.FORM.STATUSICON]
* NEW: New component that provides a StatusIcon that is a TrayIcon using 
  the Status Notifier DBus specification (i.e. the new protocol). It should
  only works with KDE at the moment.

[GB.IMAGE]
* NEW: Implement all possible image format conversions.


git-svn-id: svn://localhost/gambas/trunk@7150 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-06-27 21:26:32 +00:00
Benoît Minisini
fac11ebcef [INTERPRETER]
* BUG: Fix an infinite loop when a signal is catched and the signal pipe 
  has been closed.


git-svn-id: svn://localhost/gambas/trunk@7148 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-06-27 14:07:34 +00:00
Benoît Minisini
41fd170dee [INTERPRETER]
* BUG: The UTF-8 character to byte position conversion routine now should 
  work in all cases. Fix a corner case in String.Left(), String.Mid$(), 
  String.Right() that sometimes could return an incorrect result.


git-svn-id: svn://localhost/gambas/trunk@7147 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-06-26 13:18:39 +00:00
Benoît Minisini
5bd7b96a66 [DEVELOPMENT ENVIRONMENT]
* NEW: Profiler window: Add a new column for the average self time.

[INTERPRETER]
* OPT: Make faster implementations of the Find() and Exist() methods of the
  native array classes. Only Date[] and Variant[] use the old implementations.

[GB.FORM.EDITOR]
* BUG: TextEditor: Inserting and removing lines now work correctly when 
  wrap mode is enabled.
* OPT: TextEditor: Drawing and layouting optimizations.


git-svn-id: svn://localhost/gambas/trunk@7123 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-06-08 15:52:18 +00:00
Benoît Minisini
51b8688a26 [INTERPRETER]
* BUG: Correctly raise an error if a component cannot be found.


git-svn-id: svn://localhost/gambas/trunk@7109 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-06-03 01:26:06 +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
4c38879e22 [DEVELOPMENT ENVIRONMENT]
* BUG: Text editor: Compression correctly marks the file as modified.
* NEW: Take gb.qt5 into account in the help system.

[WIKI CGI SCRIPT]
* NEW: Take gb.qt5 into account.

[INTERPRETER]
* NEW: GB.Component.IsLoaded() is new interpreter API that returns if a
  specific component has been loaded.
* BUG: Running executables from an absolute path works again.

[GB.DESKTOP]
* BUG: DesktopWatcher: Use Desktop.Windows.FromHandle() instead of 
  Desktop.Windows[].

[GB.DESKTOP.X11]
* NEW: Support for gb.qt5.
  
[GB.FORM.EDITOR]
* BUG: TextEditor.Save() highlights the current line before saving.

[GB.QT5]
* NEW: Support for X11 event filter by translating xcb event into xlib 
  events.
* BUG: Cached DrawingArea works correctly now.


git-svn-id: svn://localhost/gambas/trunk@7099 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-05-27 01:00:39 +00:00
Benoît Minisini
8ca77b894a [INTERPRETER]
* BUG: Allow Gambas executables to be run through any relative paths.


git-svn-id: svn://localhost/gambas/trunk@7098 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-05-26 01:19:20 +00:00
Benoît Minisini
79a0071de2 [INTERPRETER]
* BUG: Sometimes String.Left(), String.Mid$() or String.Right() methods 
  could go past the end of their strings.


git-svn-id: svn://localhost/gambas/trunk@7088 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-05-18 16:03:54 +00:00
Benoît Minisini
7d88ebf7f6 [INTERPRETER]
* BUG: Prevent a possible infinite recursion when detaching objects.
* BUG: Don't crash if a standard stream has been freed. Raise an error 
  instead.


git-svn-id: svn://localhost/gambas/trunk@7085 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-05-15 13:17:18 +00:00
Benoît Minisini
914508d2ce [INTERPRETER]
* NEW: Don't panic if a received signal cannot be written to the signal 
  pipe. Just print a warning.


git-svn-id: svn://localhost/gambas/trunk@7074 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-05-10 13:18:00 +00:00
Benoît Minisini
6717974cdc [INTERPRETER]
* NEW: Object.Lock() and Object.Unlock() are now recursive, i.e. you must 
  call Object.Unlock() as many times as Object.Lock() to actually unlock an 
  object.


git-svn-id: svn://localhost/gambas/trunk@7044 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-04-19 13:43:33 +00:00
Benoît Minisini
d87c0668cb [INTERPRETER]
* BUG: Don't crash if a regular expression has a missing closing '}'.


git-svn-id: svn://localhost/gambas/trunk@7036 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-04-13 17:04:43 +00:00
Benoît Minisini
6db6ea879a [INTERPRETER]
* BUG: Shell$() now quotes quotes correctly.


git-svn-id: svn://localhost/gambas/trunk@6997 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-03-22 12:12:23 +00:00
Benoît Minisini
bd4f4931af [INTERPRETER]
* BUG: Do not read ahead file descriptors ready to read opened using the 
  ".xx" special name.


git-svn-id: svn://localhost/gambas/trunk@6995 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-03-20 06:48:04 +00:00
Benoît Minisini
3de004cff2 [INTERPRETER]
* BUG: Do not read ahead a ready to read file descriptor if we are in 
  direct mode and if the file is a not a regular file.


git-svn-id: svn://localhost/gambas/trunk@6994 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-03-19 23:23:47 +00:00
Benoît Minisini
0fbfdf5757 [INTERPRETER]
* BUG: Stream read ahead does not have to wait for the descriptor to be 
  ready for reading.


git-svn-id: svn://localhost/gambas/trunk@6993 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-03-19 13:50:35 +00:00
Benoît Minisini
d89262600b [INTERPRETER]
* BUG: Force the interpreter to link with the system thread library, 
  whatever the global linker configuration is.


git-svn-id: svn://localhost/gambas/trunk@6916 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-02-26 22:44:20 +00:00
Benoît Minisini
b1447607f2 [INTERPRETER]
* NEW: Add end-of-line format constants to the interpreter API.

[GB.QT4]
* BUG: If a control triggers the arrangement of its parent contents, the 
  delayed visibility is realized so that the control is taken into account 
  by the arrangement routine.

[GB.QT4.EXT]
* NEW: Editor.EndOfLine is a new property that defines which end-of-line 
  format (gb.Unix, gb.Windows or gb.Mac) is used when retrieving text from 
  the control.


git-svn-id: svn://localhost/gambas/trunk@6882 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-02-03 23:45:41 +00:00
Benoît Minisini
253093035e [INTERPRETER]
* NEW: The Task return value is now persistent (it is stored inside the 
  Task object).


git-svn-id: svn://localhost/gambas/trunk@6857 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-01-23 00:52:18 +00:00
Benoît Minisini
2599961aca [DEVELOPMENT ENVIRONMENT]
* NEW: Get rid of the new warnings.
* NEW: Support for arguments without a datatype in function signatures.
* NEW: [ALT] + any brace character is a new editor shrotcut that add or 
  remove braces around the current word. Same thing for [ALT] + [<] or [>].
* NEW: Property editor: Add a clear button. Replace the MenuButton by a
  normal ComboBox.

[INTERPRETER]
* NEW: Support for the new '*.list' file format.

[COMPILER]
* NEW: New '*.list' file format that marks classes having static elements.
* NEW: A warning is emitted when a class having static elements is 
  overriden by a declaration. This is suspicious.
* NEW: A symbol in a local variable declaration, or a global variable or 
  property declaration can now be surrounded by braces to prevent a 
  possible warning.

[GB.FORM]
* NEW: Get rid of the new warnings.
* NEW: TabPanel[].Closable is a new property that defines if a specific tab
  has a close button.

[GB.FORM.MDI]
* NEW: Workspace: Try to minimize flickering during resizing. Not very
  successful.


git-svn-id: svn://localhost/gambas/trunk@6838 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-01-16 00:31:59 +00:00
Benoît Minisini
35dbcb4b9d [INTERPRETER]
* BUG: Fix _call special method management again.


git-svn-id: svn://localhost/gambas/trunk@6810 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-01-04 23:41:09 +00:00
Benoît Minisini
90f04de1a9 [INTERPRETER]
* BUG: "create static" classes are now taken into account when using the 
  _call() special method.


git-svn-id: svn://localhost/gambas/trunk@6809 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-01-04 23:02:03 +00:00
Benoît Minisini
5e92876cad [EXAMPLES]
* NEW: LCDLabel now uses gb.sdl2.audio.

[GB.FORM]
* BUG: The ToolPanel buttons now takes Style.FrameWidth into account.

[GB.GTK]
* BUG: Remove a debugging message.

[GB.QT4]
* BUG: Do not delete open windows later when the event loop is finished. 
  This is not supported by QT.


git-svn-id: svn://localhost/gambas/trunk@6797 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-01-02 14:31:23 +00:00
Benoît Minisini
a5f2cb1575 [FARM SERVER]
* NEW: Software screenshot can be deleted by the client.

[INTERPRETER]
* NEW: The little interpreter sleep is now done inside the watch file 
  descriptor read callback only. So no need to implement it in each
  component event loop.

[GB.SDL2]
* BUG: The SDL event loop now calls the interpreter event loop so that 
  timers and watched file descriptor are correctly handled.


git-svn-id: svn://localhost/gambas/trunk@6792 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-01-02 03:44:30 +00:00
Benoît Minisini
cc08725fe4 [INTERPRETER]
* NEW: Do not stop watching a file descriptor that is ready to read but has 
  no data.
* NEW: Sleep up to 10 ms if the event loop is called too often.


git-svn-id: svn://localhost/gambas/trunk@6791 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-01-02 02:22:22 +00:00
Benoît Minisini
4faa9876bf [DEVELOPMENT ENVIRONMENT]
* BUG: Fix initial focus of welcome dialog.

[INTERPRETER]
* BUG: Release standard i/o File objects before cleaning up the classes, to 
  avoid an incorrect "circular reference" message.

[GB.GTK]
* NEW: Link to the pthread library explicitly.
* NEW: WAIT inside a keybord handler does not raise an error anymore. It 
  just print a warning message and does nothing.

[GB.GTK3]
* NEW: Link to the pthread library explicitly.
* NEW: WAIT inside a keybord handler does not raise an error anymore. It 
  just print a warning message and does nothing.

[GB.UTIL]
* NEW: Date.EasterDay returns the Easter day of a specific year.

[GB.QT4]
* NEW: Link to the pthread library explicitly.
* NEW: WAIT inside a keybord handler does not raise an error anymore. It 
  just print a warning message and does nothing.

[GB.QT4.EXT]
* NEW: Editor.Font property now can take any font in the IDE.


git-svn-id: svn://localhost/gambas/trunk@6754 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-12-20 15:24:00 +00:00
Benoît Minisini
3c8efd56e9 [CONFIGURATION]
* NEW: Update chinese translations.

[EXAMPLES]
* NEW: Add screenshots, switch to 1.0 version, and publish.

[INTERPRETER]
* NEW: Allow WAIT to raise errors.

[GB.DESKTOP]
* NEW: DesktopWindow.Geometry is a new property that returns the geometry 
  of the window inside as a rectangle.
* NEW: DesktopWindow.Frame is a new property that returns the geometry 
  of the window outside (with the frame) as a rectangle.
* NEW: DesktopWindow.GetScreenshot() is a new method that returns a 
  screenshot of a window, with or without the frame.
* BUG: DesktopWindow X, Y, Width and Height properties return the window
  geometry without the frame.

[GB.GTK]
* NEW: Raise an error if WAIT is called during a keyboard event.

[GB.GTK3]
* NEW: Raise an error if WAIT is called during a keyboard event.

[GB.QT4]
* NEW: Raise an error if WAIT is called during a keyboard event.


git-svn-id: svn://localhost/gambas/trunk@6746 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-12-16 22:15:59 +00:00
Benoît Minisini
b2eb17d344 [INTERPRETER]
* BUG: Correctly flush the output of a terminated child process.


git-svn-id: svn://localhost/gambas/trunk@6722 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-12-11 23:41:48 +00:00
Benoît Minisini
b4c89ab52b [INTERPRETER]
* BUG: Do read ahead for any watched file descriptor. It may break when 
  watching special device files, depending on its internal kernel driver 
  behaviour. We'll see.


git-svn-id: svn://localhost/gambas/trunk@6708 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-12-03 12:13:35 +00:00
Benoît Minisini
064ec73404 [INTERPRETER]
* BUG: 'Exec ... To' and 'Shell ... To' work correctly again.


git-svn-id: svn://localhost/gambas/trunk@6698 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-12-01 16:22:34 +00:00
Benoît Minisini
dfc8140da0 [INTERPRETER]
* BUG: The process error output callback now immediately closes its file 
  descriptor as soon as read() returns zero or an error, or if the Error
  event is not handled.


git-svn-id: svn://localhost/gambas/trunk@6694 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-12-01 11:51:27 +00:00
Benoît Minisini
1fcb7bd02e [INTERPRETER]
* BUG: Don't remove the possible watch when freeing the file. The file may 
  be closed, and the file descritor may have been reused!


git-svn-id: svn://localhost/gambas/trunk@6693 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-12-01 02:50:18 +00:00
Benoît Minisini
1a2901e961 [DEVELOPMENT ENVIRONMENT]
* NEW: Software farm: When installing a software, tags that are desktop 
  menu official categories are used for creating the '*.desktop' file. 
  Consequently, the menu entry shold go to an accurate location of the 
  desktop application menu.
* NEW: Software farm: Some little desgin fixes.
* NEW: Publishing dialog: Some little fixes.

[FARM SERVER]
* BUG: Fix two bugs in search software request.

[INTERPRETER]
* NEW: The data format 'u' displays all milliseconds digits as soon as 
  there is at least two 'u' characters, and not if there is exactly two 
  'u' characters only.

[GB.DESKTOP]
* NEW: DesktopFile.Categories is a new property to read or set the 
  categories of a desktop menu entry.


git-svn-id: svn://localhost/gambas/trunk@6692 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-12-01 00:47:48 +00:00
Benoît Minisini
89d56eb88f [DEVELOPMENT ENVIRONMENT]
* BUG: Don't crash when trying to download the offline help if 'wget' is 
  not installed on the system.
* BUG: Software farm: Don't create a '*.desktop' file if the software is a
  library or a component.
* NEW: Redesign the publish dialog by using a wizard.
* NEW: Use freedesktop categories as possible software tags.

[FARM SERVER]
* NEW: Add a 'size' field in the 'software' table, and an index to be able 
  to sort sotfwares by size later.

[INTERPRETER]
* BUG: Read data ahead before raising a Read event (on Process, File, or 
  any stream). Use the result of that read to detect EOF, as using the 
  stream end-of-file detection routine is not reliable.

[GB.FORM]
* BUG: FileProperties: Fix the media preview.

[GB.MEDIA.FORM]
* BUG: MediaView: Don't crash if the internal media player is not yet 
  initialized.


git-svn-id: svn://localhost/gambas/trunk@6691 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-30 22:41:41 +00:00
Benoît Minisini
03cd222bb8 [DEVELOPMENT ENVIRONMENT]
* NEW: Software farm: Software now can be safely installed or removed. The
  source checksum is checked, as well as the required components. Libraries
  and dependencies on other software are not yet taken into account. A
  '*.desktop' file is automatically created on installation now.

[INTERPRETER]
* NEW: Split() has a new behaviour when its escape argument has two 
  characters, the second one being the first splitting character. It uses
  the first character to escape splitting characters. For example,
  Split("a;b~;c;d",";","~;") returns ["a","b;c","d"].
* NEW: String[].Join() method handle the new Split syntax. 
  ["a","b;c","d"].Join(";","~;") returns "a;b~;c;d". Moreover, in the
  traditional escape syntax, the joined string are not escaped anymore if 
  they are void.

[GB.DESKTOP]
* NEW: DesktopFile.MimeTypes is a new property corresponding to the 
  'MimeType' entry of the '*.desktop' file.
* NEW: DesktopFile now can be used for creating or modifying '*.desktop' 
  files.


git-svn-id: svn://localhost/gambas/trunk@6689 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-30 00:30:32 +00:00
Benoît Minisini
25dc9cd30d [INTERPRETER]
* BUG: Retrieve the child process output correctly when it has terminated.
  No data should be lost anymore.
* NEW: Remove an unused internal stream method.


git-svn-id: svn://localhost/gambas/trunk@6687 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-29 15:29:10 +00:00
Benoît Minisini
40937ec321 [INTERPRETER]
* BUG: Process: Don't call the Read event if there is nothing to read.


git-svn-id: svn://localhost/gambas/trunk@6686 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-29 14:45:33 +00:00
Benoît Minisini
5796ac4e56 [DEVELOPMENT ENVIRONMENT]
* NEW: Software farm: Now softwares can be installed or removed. 
  Installation is not finished yet. Checksum, components and libraries are
  not checked. Desktop file is not created.
* NEW: Software farm: Design changes in the GUI.
* BUG: Offline help: The help timestamp is now used for detecting updates.
  File modification time is not used anymore as it is a localized time.
* BUG: Source archive files now ignore files named 'core'.

[INTERPRETER]
* BUG: SHELL now correctly resets the interpreter to '/bin/sh' if the 
  System.Shell property is reset to a null string.

[GB.DESKTOP]
* BUG: Desktop.NetworkAvailable now tries to find 'ifconfig' or 'ip' in 
  '/sbin' and '/usr/sbin' before relying on the PATH environment variable.


git-svn-id: svn://localhost/gambas/trunk@6685 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-29 14:20:31 +00:00
Benoît Minisini
996ff69d37 [INTERPRETER]
* BUG: Process: Don't check end of stream before calling the Read event. I
  don't remember what this test was supposed to fix, but for sure it leads
  to data loss if some data arrives just after the test.


git-svn-id: svn://localhost/gambas/trunk@6683 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-28 20:15:02 +00:00
Benoît Minisini
655f3474c7 [INTERPRETER]
* NEW: The process child errors raised before the exec() system call are 
  now catched in a separate function called by the compiler explicitly 
  after a SHELL or EXEC assignment.

[COMPILER]
* NEW: SHELL and EXEC assignments now call an hidden subroutine just after
  the assignment to immediately check for a possible child error.


git-svn-id: svn://localhost/gambas/trunk@6681 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-27 23:31:51 +00:00
Benoît Minisini
e4cd9bce1b [DEVELOPMENT ENVIRONMENT]
* BUG: Some fixes in the software farm window.

[INTERPRETER]
* NEW: Remove the GB.UnrefKeep() interpreter API, as it is not used 
  anymore.


git-svn-id: svn://localhost/gambas/trunk@6676 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-24 12:43:57 +00:00
Benoît Minisini
a607aaec6f [INTERPRETER]
* NEW: Apply the "close on exec" flag to all non-temporary file descriptors 
  opened by the interpreter.


git-svn-id: svn://localhost/gambas/trunk@6671 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-23 18:19:57 +00:00
Benoît Minisini
dd41b47ef3 [DEVELOPMENT ENVIRONMENT]
* NEW: The structure of databases is now stored in the *.connection files.
  It will be used for an automatic database initialization feature.

[WEBSITE MAKER]
* NEW: Update for 3.6.2.

[WIKI CGI SCRIPT]
* BUG: Fix the display of page without headers.
* NEW: Indexes are now displayed on two or more columns.

[INTERPRETER]
* NEW: New GB.AllocZero() API for allocating memory and filling it with 
  zeros.

[GB.DB.MYSQL]
* OPT: Cache metadata queries during 30 secondes to speed up things.

[GB.FORM]
* NEW: MenuButton displays a focus rectangle now.

[GB.GUI.BASE]
* BUG: ProgressBar now raises native control events.


git-svn-id: svn://localhost/gambas/trunk@6652 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-16 21:40:47 +00:00
Benoît Minisini
5b930daea7 [INTERPRETER]
* NEW: Support for the new USE instruction.

[COMPILER]
* NEW: A class header now can include USE "xxxx" declarations, where "xxxx"
  is a component name. It means that the specified component will be loaded
  when the class is initialized, the first time it is loaded.


git-svn-id: svn://localhost/gambas/trunk@6648 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-12 22:25:37 +00:00
Benoît Minisini
f98642e44a [SCRIPTER]
* BUG: Be more intelligent when parsing arguments. Now all arguments after 
  the first non option argument are sent to the script process.

[INTERPRETER]
* OPT: Remove a previous optimization that made benchmarks slower, contrary 
  to what valgrind tells. No idea why exactly, maybe a valgrind cache
  simulation problem.

[BENCHMARKS]
* NEW: Do less in the polynom benchmark, so that it runs about as long as
  the other benchmarks.


git-svn-id: svn://localhost/gambas/trunk@6621 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-09 22:06:07 +00:00
Benoît Minisini
c1010a0ff0 [INTERPRETER]
* OPT: Move some rare instructions (breakpoints & quit management) out of 
  the main interpreter loop.

[COMPILER]
* NEW: The parser now assumes that an identifier is a subroutine taking 
  some arguments only if it is followed by an open brace.

[GB.EVAL]
* NEW: The parser now assumes that an identifier is a subroutine taking 
  some arguments only if it is followed by an open brace.


git-svn-id: svn://localhost/gambas/trunk@6620 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-09 21:50:42 +00:00
Benoît Minisini
0c2a60085c [WIKI CGI SCRIPT]
* NEW: Help comments of component classes and symbols are now automatically 
  used for creating non-existing documentation pages.
* NEW: Images are clickable in editing mode. They point at the image wiki 
  page.

[INTERPRETER]
* NEW: Url$() is a new function to encode an URL.
* NEW: FromUrl$() is a new function to decode an URL.
* NEW: FromBase64$() is now a synonymous for UnBase64$().

[GB.MEDIA]
* BUG: MediaPipeline.Pause() does nothing if the media is not playing. That
  avoid some GStreamer bad behaviour.

[GB.MEDIA.FORM]
* NEW: MediaView: Remove the ShowVideo property, it is useless.
* NEW: MediaView: The URL property can receive a true URL or a file path.
  The conversion is automatically done.
* BUG: MediaView: Do pause or stop the media file only if it has sense.
* NEW: MediaView: Hide the video part if the control height is too low.


git-svn-id: svn://localhost/gambas/trunk@6617 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-09 15:25:46 +00:00
Benoît Minisini
6a2aba1cca [INTERPRETER]
* BUG: Fix array accessor optimization on multi-dimensional native arrays.


git-svn-id: svn://localhost/gambas/trunk@6615 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-07 17:43:54 +00:00
Benoît Minisini
0c9d0a4585 [INTERPRETER]
* OPT: Array accessors have been optimized. The 'sort' benchmark is now 25% 
  faster.


git-svn-id: svn://localhost/gambas/trunk@6605 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-02 23:09:04 +00:00
Benoît Minisini
daf59c1971 [INTERRPETER]
* BUG: The internal UTF-8 string position cache now works in all cases.


git-svn-id: svn://localhost/gambas/trunk@6591 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-10-30 16:13:10 +00:00
Benoît Minisini
d57578377c [DEVELOPMENT ENVIRONMENT]
* BUG: Don't use "sTable" as field name for the metadata table, because 
  apparently "STABLE" is a reserved word in PostgreSQL. Upgrade an already
  existing metadata table automatically.
* BUG: Don't crash when starting a search from a image or connection 
  editor.

[WEBSITE MAKER]
* NEW: Update for 3.6.

[GB.DB]
* NEW: Add support for databases like PostgreSQL that are not fully case 
  insensitive.

[GB.DB.POSTGRESQL]
* BUG: Automatically convert field names to lowercase when creating a 
  table.

[GB.GUI.BASE]
* BUG: IconView item renaming don't crash anymore.


git-svn-id: svn://localhost/gambas/trunk@6559 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-10-18 13:23:29 +00:00
Benoît Minisini
065e2c48b7 [DEVELOPMENT ENVIRONMENT]
* BUG: Clicking on the paste button correctly set the focus back to the 
  editor.

[WEBSITE MAKER]
* BUG: Fix pages not located in the wiki.

[EXAMPLES]
* BUG: PhotoTouch: Fix the example.

[COMPILER]
* NEW: Remove the Js$() function. Maybe it's not where it should be.

[INTERPRETER]
* NEW: Remove the Js$() function. Maybe it's not where it should be.
* BUG: Displaying a Result object in the debugger does not crash anymore.
* NEW: The GB.Realloc() API now calls GB.Alloc() if the pointer to 
  reallocate is null.

[GB.FORM]
* NEW: DateChooser: Make the time font size a little bit smaller.


git-svn-id: svn://localhost/gambas/trunk@6512 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-09-26 21:52:42 +00:00
Benoît Minisini
a3c59253f6 [INTERPRETER]
* BUG: The PUSH CHAR byte code now works correctly with ASCII code greater 
  than 127.


git-svn-id: svn://localhost/gambas/trunk@6481 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-09-16 01:10:58 +00:00
Benoît Minisini
db2cb04d55 [DEVELOPMENT ENVIRONMENT]
* BUG: Use System.Exist() to check that 'wget' is installed before trying 
  to download the documentation.

[INTERPRETER]
* NEW: System.Exist() is a new method that returns if a specific program 
  can be found in the PATH environment variable.
* NEW: System.Find() is a new method that returns the absolute path of a 
  specific program according to the PATH environment variable.

[GB.GUI.BASE]
* NEW: Paint.DrawTextShadow() and Paint.DrawRichTextShadow() default radius 
  is now Desktop.Scale divided by three.
* NEW: Paint.DrawTextShadow() and Paint.DrawRichTextShadow() now take a new
  default argument to define the shadow opacity. The default value is 50%.


git-svn-id: svn://localhost/gambas/trunk@6479 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-09-15 20:05:43 +00:00
Benoît Minisini
315ced02f5 [INTERPRETER]
* NEW: When running an external process, search the PATH environment 
  variable before forking, so that if the program does not exist, an error 
  is immediately raised.


git-svn-id: svn://localhost/gambas/trunk@6471 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-09-13 20:37:50 +00:00
Benoît Minisini
7e0011226b [INTERPRETER]
* NEW: System.Log() is a new method that send a message to the system log.
  Useful if you write a daemon.

[GB.FORM]
* NEW: New design of FileChooser and DirChooser.

[GB.GUI.BASE]
* BUG: Fix the automatic scrolling behaviour of GridView and all its 
  children classes.
* BUG: Fix new ligheter selection color of IconView.
* BUG: Fix automatic scrolling of newly expanded item in TreeView and 
  ColumnView.

[GB.GTK]
* BUG: Fix Style.ForegroundOf() method.

[GB.GTK3]
* BUG: Fix Style.BackgroundOf() method.

[GB.QT4]
* NEW: DrawingArea now raises a new Font event when its font changes.
* BUG: Controls now take the alpha component of foreground and background 
  colors into account.


git-svn-id: svn://localhost/gambas/trunk@6461 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-09-09 06:59:03 +00:00
Benoît Minisini
d67d170b61 [DEVELOPMENT ENVIRONMENT]
* BUG: Convert to uppercase or lowercase now works as expected in the code 
  editor.
* BUG: Fix the offline 'To Do' and 'Last Changes' page.

[INTERPRETER]
* NEW: Add GB_DECLARE_STATIC() macro to declare native classes, and use it 
  in many class declarations.

[GB.FORM]
* NEW: Add an history in the FileChooser and DirChooser controls.
* NEW: Add a 'link' stock icon.

[GB.GUI.BASE]
* BUG: IconView: Fix mouse handling during rubberband selection.
* NEW: IconView: Use a lighter selection colour.
* BUG: ScrollArea: Shadows are now correctly drawn whatever is done during 
  the Draw event it raises.


git-svn-id: svn://localhost/gambas/trunk@6458 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-09-07 21:21:14 +00:00
Benoît Minisini
9fdb68ffbe [INTERPRETER]
* BUG: Fix the 'Class' class declaration, so that is not virtual.


git-svn-id: svn://localhost/gambas/trunk@6455 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-09-06 16:53:40 +00:00
Benoît Minisini
765ed23eb6 [INTERPRETER]
* BUG: Take the "GB_VIRTUAL_CLASS()" declaration into account to decide if
  a native class is virtual or not. Don't just check the dot prefix in the 
  name.


git-svn-id: svn://localhost/gambas/trunk@6454 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-09-06 15:38:40 +00:00