* NEW: The RAISE instruction now can raise events defined in a parent
class.
* NEW: Timer: The Trigger method now does nothing if there is an already
pending trigger. This behaviour is not backward-compatible, so it may be
removed if problems arise.
[COMPILER]
* NEW: The RAISE instruction now can raise events defined in a parent
class.
[GB.DRAW]
* NEW: Implement standard operators in Point and PointF classes.
* NEW: Automatic conversion between Point and PointF.
* NEW: 'CDraw.c' and 'CDraw.h' source files have been renamed as 'cdraw.c'
and 'cdraw.h'.
* NEW: Rect.Center() and RectF.Center() are two new methods that return the
center of the rectangle.
[GB.FORM]
* NEW: FileChooser: tar archives now can be uncompressed.
git-svn-id: svn://localhost/gambas/trunk@5359 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Don't declare virtual classes now present in the *.list files.
[INFORMER]
* BUG: Put virtual classes in *.list files so that the IDE is aware of
their existence.
git-svn-id: svn://localhost/gambas/trunk@5336 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Support for the help comments integrated into the *.info files by
the compiler.
* NEW: Use the help comments stored in libraries and display them in them
help tooltips.
* BUG: Remove duplicates in the automatic completion list.
* BUG: The symbol syntax displayed in the help now correctly follows the
"Keywords in uppercase" setting.
* NEW: Class help comments are now help comments located at the beginning
of the source file that starts with three quotes and a space: `''' `.
[COMPILER]
* NEW: Support for help comments on public symbols. They are automatically
integrated into the *.info information files.
git-svn-id: svn://localhost/gambas/trunk@5311 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix scrolling of code editor procedure list.
* BUG: Automatic local variable declaration now works correctly when a
method named "Get" is called inside the analyzed expression.
[COMPILER]
* NEW: "[]" now is compiled to return a array with no elements.
[INTERPRETER]
* BUG: Array with no elements can be casted to any other array datatype.
[GB.GUI.BASE]
* BUG: Fix visibility of expanded TreeView items.
[GB.QT4.EXT]
* NEW: When the Editor loses the focus, it does not scroll to the cursor
position automatically anymore.
git-svn-id: svn://localhost/gambas/trunk@5266 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix compilation of Gambas.
[DEVELOPMENT ENVIRONMENT]
* NEW: Change the proportional font size list in the option dialog. Use a
5% size increment.
[INFORMER]
* NEW: gbi3 now displays include warning only if the GBI_DEBUG environment
variable is set to "1".
[GB.FORM]
* NEW: Add a FontChooser Border property.
* BUG: Support for Underline and Strikeout come back in FontChooser.
[GB.GUI.BASE]
* NEW: ScrollArea now raise a Resize event when the client area is resized
because of changes in scrollbars visibility.
* BUG: Changing a TreeView item property now correctly refreshes the view.
* OPT: The height of TreeView rows is now refreshed correctly.
[GB.QT4]
* BUG: The menu bar height is correctly refreshed if the application font
changes.
git-svn-id: svn://localhost/gambas/trunk@5257 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: The name of GridView controls is now always visible in the form
editor.
[INTERPRETER]
* NEW: Support for new QUIT syntax.
* NEW: Do not display overriding prefix in class names.
[COMPILER]
* NEW: QUIT now can takes an optional argument which is the program return
value.
[GB.ARGS]
* BUG: The "--version" option is not "----version" anymore
* NEW: If an error occurs, returns 1 as exit value and not 0.
[GB.FORM]
* BUG: GridView is correctly updated now when the Border property is set.
git-svn-id: svn://localhost/gambas/trunk@5246 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix symbol table search that could sometimes fail with non ASCII
characters.
[ARCHIVER]
* NEW: Add '.public' directory to executables.
* NEW: A new '-i' option not to display warnings when an information file
include fails.
git-svn-id: svn://localhost/gambas/trunk@5230 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Error messages are correctly printed when warnings are disabled.
git-svn-id: svn://localhost/gambas/trunk@5223 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Some little redesign of the welcome dialog.
* NEW: Remove the "Alternate" theme color.
[COMPILER]
* NEW: New WebPage syntaxes: <<Include>>, <</Include>>, <%/%>, <<--->>.
[GB.EVAL]
* NEW: Highlight.Alternate has been deprecated.
[GB.EVAL.HIGHLIGHT]
* NEW: Support for the new WebPage syntaxes.
[GB.QT4.EXT]
* NEW: Editor: The alternate background is automatically computed.
* NEW: Editor: Brace highlighting now works on alternate background.
* NEW: Highlight.Alternate has been deprecated.
git-svn-id: svn://localhost/gambas/trunk@5177 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Use Terminus as default fixed font if it is installed on the system.
* BUG: Don't load a component description if that component has the same
name as the current project. This is a temporary incorrect fix!
[INTERPRETER]
* BUG: Fix Classes enumeration.
[GB.DESKTOP]
* BUG: Fix X11 client message sending routine on 64 bits OS.
* BUG: Fix all DesktopWindow properties that read or change the state of
the window.
[GB.GTK]
* NEW: Fonts.Exist() is a new method that returns if a specific font family
exists.
[GB.QT4]
* NEW: Fonts.Exist() is a new method that returns if a specific font family
exists.
git-svn-id: svn://localhost/gambas/trunk@5171 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Pressing SHIFT with the RETURN key prevents automatic variable
declaration.
* BUG: Automatic variable declaration takes TRY into account.
* BUG: Automatic variable declaration now understands more expressions.
* NEW: Add a filter to the example tab of the open project dialog.
[INTERPRETER]
* NEW: String.UCaseFirst() is a new method that capitalize the first letter
of an UTF-8 string.
[COMPILER]
* NEW: If a function argument is enclosed with braces, then no warning is
emitted if it overrides a global symbol.
[GB.FORM]
* BUG: Transparent SidePanel controls do not eat one pixel of their
contents anymore.
* NEW: TabPanel draws its focus highlight differently.
* NEW: ScrollArea now draws a shadow only if the corresponding scrollbar is
visible.
git-svn-id: svn://localhost/gambas/trunk@5128 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Make one warning for each symbol kind that is overridden.
[GB.DB.FORM]
* BUG: Fix warnings.
[GB.DESKTOP]
* BUG: Fix some warnings.
[GB.EVAL.HIGHLIGHT]
* BUG: Correctly rewrite the following keywords with no spurious space
after: TRUE, FALSE, NULL, +INF, -INF.
[GB.FORM]
* BUG: Fix warnings.
[GB.FORM.MDI]
* BUG: Fix warnings.
[GB.WEB]
* BUG: Fix warnings.
git-svn-id: svn://localhost/gambas/trunk@5125 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Support for compiler warnings.
* BUG: Fix all detected warnings.
[COMPILER]
* NEW: A new compiler option '-w' to let it emit warnings.
* NEW: Emit warnings for unused variables, arguments, functions and for
local symbols that override global symbols. Public symbols are of course
not taken into account.
* NEW: If an argument is surrounded by braces, no warning will be emitted
if the argument is not used.
[GB.EVAL]
* NEW: OPTIONAL keyword is always followed by a space now when rewriting
Gambas code.
git-svn-id: svn://localhost/gambas/trunk@5122 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Last change was not a good idea. Local variables should be able to
override global variables. When the compiler will be able to emit
warnings, that could make a good warning of course...
git-svn-id: svn://localhost/gambas/trunk@5115 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix compilation of WebPage having UTF-8 characters inside.
[INTERPRETER]
* BUG: A background task automatically closes the file descriptor of every
other tasks.
* BUG: A task cannot create sub-tasks.
* NEW: There is an hard limit of simultaneous 256 background tasks now.
That should prevent fork bombing.
* BUG: Process.Kill does not try to wait for the task completion, and
return immediately.
* BUG: Fix events flushing at task termination.
[GB.EVAL.HIGHLIGHT]
* BUG: Fix WebPage highlighting.
[GB.WEB]
* BUG: The session cookie is now only accessible to the current CGI script.
* NEW: Response.SendFile() can set the content-type according to the file
extension, if no content-type has been specified.
git-svn-id: svn://localhost/gambas/trunk@5096 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Standardize the help text of all command-line tools.
[DEVELOPMENT ENVIRONMENT]
* BUG: Packager: library executables are installed with the '.gambas'
extension, but not the standard executables, where the extension is
removed.
* BUG: Packager: ArchLinux packager now compiles the project correctly.
[GB.FORM]
* NEW: Draw SidePanel little arrows differently.
git-svn-id: svn://localhost/gambas/trunk@5061 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Try to avoir Application.Busy flickering in some dialogs.
[EXAMPLES]
* NEW: New Tablet event inspired by a project made by Ricardo Díaz Martín.
[GB.DRAW]
* NEW: Paint.DrawImage() takes a new optional argument that defines the
opacity of the drawing, between 0 and 1.
[GB.FORM]
* NEW: ScrollArea.Tablet is a new property that allows it to catch tablet
events.
[GB.GTK]
* BUG: Support for tablet events.
* BUG: Make mouse events in gb.gtk and gb.qt3 behave the same way.
* NEW: Mouse.State is a new property that return the state of all mouse
buttons as specified by the current mouse event.
* NEW: Mouse.Button now only returns the index of the button that triggered
the mouse event.
* BUG: Fix a typo in the name of the Pointer.YTilt property.
* BUG: DrawingArea.Tablet now works correctly when the DrawingArea is not
cached.
[GB.QT4]
* BUG: Mouse events from tablet now get accurate button information.
* BUG: Make mouse events in gb.gtk and gb.qt3 behave the same way.
* NEW: Mouse.State is a new property that return the state of all mouse
buttons as specified by the current mouse event.
* NEW: Mouse.Button now only returns the index of the button that triggered
the mouse event.
* BUG: Fix a typo in the name of the Pointer.YTilt property.
git-svn-id: svn://localhost/gambas/trunk@5057 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Support for imaginary number syntax. For example, using "3i" will
automatically load the gb.gsl component, create the corresponding complex
number and return it.
[COMPILER]
* NEW: Support for imaginary number syntax.
[GB.EVAL]
* NEW: Support for imaginary number syntax.
[GB.GSL]
* NEW: Support for imaginary number syntax.
* NEW: Vector class is now generic, and has two child classes: FloatVector
and ComplexVector, depending on the type of its elements.
* BUG: Support for arithmetic operators on Vector class has been removed.
It had too many problems.
git-svn-id: svn://localhost/gambas/trunk@4918 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Like can be used in a Case expression just after the Case keyword
only.
git-svn-id: svn://localhost/gambas/trunk@4900 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Make the internal "$load" form method private. Why was it public?
git-svn-id: svn://localhost/gambas/trunk@4846 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: ByRef keyword is now correctly forbidden in extern functions now.
* BUG: '...' syntax is now correctly forbidden in event description.
git-svn-id: svn://localhost/gambas/trunk@4797 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Support for variable number of arguments in extern functions.
* BUG: Fix use of static classes as extern function argument.
[COMPILER]
* NEW: Support for variable number of arguments in extern functions.
[GB.JIT]
* BUG: The GB_JIT environment variable has really no effect if it is
defined but a null string.
git-svn-id: svn://localhost/gambas/trunk@4796 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Handle the FAST keyword in function declaration.
[COMPILER]
* NEW: Each function can be declared individually FAST. The keyword must be
the first one on the line.
[GB.EVAL]
* NEW: Handle the FAST keyword in function declaration.
git-svn-id: svn://localhost/gambas/trunk@4769 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Switch to JIT compiler if available, and make it able to talk to gb.jit.
* BUG: GP must be NULL for new void stack frames.
[COMPILER]
* NEW: 'Fast' keyword means the class should be JIT-compiled.
[GB.JIT]
* NEW: JIT Compiler.
git-svn-id: svn://localhost/gambas/trunk@4759 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* OPT: Use Stream.Lines enumeration instead of LINE INPUT. It is a little bit
faster.
[COMPILER]
* BUG: Fix CASE LIKE syntax. Now all CASE LIKE arguments are compared with
the LIKE operator. Not just the first one.
[GB.FORM]
* NEW: FileChooser now can handle *.tgz archives.
* NEW: GridView: If the Grid property is FALSE, do not draw row and column
separators.
[GB.GTK]
* BUG: Fix cached drawing areas.
* BUG: Fix mouse event management for controls having scrollbars.
* BUG: Fix cursor management for DrawingArea.
git-svn-id: svn://localhost/gambas/trunk@4755 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Handle new format of profile files.
[INTERPRETER]
* NEW: ON ... GOTO and ON ... GOSUB instructions.
[WEBSITE MAKER]
* NEW: An explicit link button that displays the 'news' page.
[COMPILER]
* NEW: ON ... GOTO and ON ... GOSUB instructions.
[GB.DEBUG]
* NEW: New format for profile, more compact and faster to read.
git-svn-id: svn://localhost/gambas/trunk@4748 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Define the 'Exec' preprocessor constant when making an executable.
* BUG: Packager: Replace spaces with underscores when using the vendor name
as package name prefix.
* BUG: Packager: Fix "make uninstall" in autoconf packages.
[INTERPRETER]
* BUG: Allow to override native array classes without crashing.
[COMPILER]
* NEW: New '-x' option to define the 'Exec' preprocessor constant.
[EXAMPLES]
* NEW: MediaPlayer: Real-time seeking.
* NEW: MediaPlayer: Use gb.desktop to suspend the screen saver while
playing a media file.
git-svn-id: svn://localhost/gambas/trunk@4715 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Display the right line number if there was a parser error inside a
form class file.
git-svn-id: svn://localhost/gambas/trunk@4661 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Update the alternate background color of all themes.
[COMPILER]
* NEW: Support for <%: ... %> and <%! ... %> syntaxes in WebPage.
[GB.EVAL.HIGHLIGHT]
* NEW: Update WebPage highlighting, and handle the new syntaxes.
git-svn-id: svn://localhost/gambas/trunk@4569 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: New WebPage syntax for server-side comments: <%-- ... --%>.
[GB.FORM]
* BUG: Clicking inside a GridView now correctly gives it the focus.
* BUG: ButtonBox background is correctly drawn with gb.gtk.
[GB.GTK]
* BUG: Handle GTK+ events, but not Gambas posted routines when setting the
application busy cursor.
[GB.EVAL.HIGHLIGHT]
* NEW: Support for server-side comment syntax in WebPage highlight routine.
git-svn-id: svn://localhost/gambas/trunk@4568 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Error messages now can be displayed in normal text editors.
[COMPILER]
* NEW: Initial support of WebPage compilation.
git-svn-id: svn://localhost/gambas/trunk@4561 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Don't save cursor position during a text selection.
* NEW: Update error messages.
[COMPILER]
* NEW: CONST cannot have the STATIC keyword anymore.
[GB.QT4.EXT]
* NEW: Editor: Do not highlight the current line when losing the focus.
git-svn-id: svn://localhost/gambas/trunk@4539 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: GOSUB can be recursive now, by saving the control variables, and
restoring them on RETURN.
[COMPILER]
* NEW: GOSUB can be used on any top-level labels.
git-svn-id: svn://localhost/gambas/trunk@4534 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Use a dedicated control stack slot for each GOSUB subroutine.
* BUG: GOSUB labels now must be at top-level, and must be declared *after*
the GOSUB call. Consequently, recursion is not possible anymore.
git-svn-id: svn://localhost/gambas/trunk@4531 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: New GOSUB instruction. You return from a GOSUB with the RETURN
instruction alone. Consequently, you cannot exit from a 'SUB' with it if
there is a pending GOSUB. The GOSUB stack is only limited by the
available memory.
[COMPILER]
* NEW: New GOSUB instruction.
git-svn-id: svn://localhost/gambas/trunk@4530 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Don't print a line number greater than the number of lines in the
compiled file when displaying an error message.
git-svn-id: svn://localhost/gambas/trunk@4524 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Raise an error now when using TRY with GOTO, BREAK, CONTINUE or
STOP.
git-svn-id: svn://localhost/gambas/trunk@4523 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Take property synonymous into account.
* BUG: Pasting text as comments correctly converts tabulations into spaces.
[INTERPRETER]
* NEW: GB.RaiseBegin() and GB.RaiseEnd() are two new intepreter APIs that
allow to define a callback that will be called if an exception is raised
during a call to GB.Raise().
* BUG: CATCH and FINALLY correctly restore the stack pointer. Without that,
it is possible to use more stack than possible and to crash the
interpreter.
[COMPILER]
* NEW: A property now can has up to four different names. The syntax is:
"Property Name [ , Synonymous1, ..., Synonymous3 ] As Datatype".
[GB.DB]
* BUG: Table.Type property now correctly handle null table types.
[GB.DB.FORM]
* NEW: DataBrowser.Grid is a new property to define the grid visibility.
* BUG: The DataBrowser and DataView controls have been fixed. There is only
one problem to fix that depends on a gb.gtk bug.
[GB.DRAW]
* BUG: Setting Draw.Font to NULL does not crash anymore, and raise an error
instead.
[GB.FORM]
* NEW: The new GridView is finished and replaces the old one now.
* NEW: GridView.ShowCursor is a new property that displays a light cursor
around the current cell when set.
[GB.GTK]
* NEW: Font.Copy() is a new method to copy a font object.
* NEW: GTK+ GridView has been disabled.
* NEW: The Container Insert event has been renamed as NewChild.
[GB.QT4]
* NEW: Font.Copy() is a new method to copy a font object.
* NEW: Qt4 GridView has been disabled.
* NEW: The Container Insert event has been renamed as NewChild.
* BUG: If the DrawingArea Draw event handler raises an error, then the
interpreter should not crash anymore.
[GB.QT4.EXT]
* BUG: Fix an uninitialized field in Editor internal GLine class.
git-svn-id: svn://localhost/gambas/trunk@4503 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix a possible crash when the form editor gets a spurious resize
event whereas undo management has been uninitialized.
* NEW: Libraries now can have requirements exactly like components. This is
taken into account by the project property dialog.
[ARCHIVER]
* NEW: Put the '.component' file inside archives, so that the IDE can
extract libraries requirements from the executable.
[GB.FORM]
* NEW: Add two pixels to the height of the TabPanel tabbar.
git-svn-id: svn://localhost/gambas/trunk@4475 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix the form editor grid horizontal position.
[INTERPRETER]
* NEW: IsNan() is a new function that returns if a floating point value is
not a number.
* NEW: IsInf() is a new function that returns +1 if a floating point value
is +Inf, -1 if it is -Inf, and 0 if it is a normal number.
* NEW: Swap$() is a new function that swaps a string.
* NEW: The MkBool$(), MkShort$(), MkInt$()... functions come back!
[COMPILER]
* NEW: +Inf and -Inf are two new keywords for representing the
corresponding special floating values.
git-svn-id: svn://localhost/gambas/trunk@4435 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: More support for WebPage.
[COMPILER]
* NEW: Start supporting WebPage.
git-svn-id: svn://localhost/gambas/trunk@4427 867c0c6c-44f3-4631-809d-bfa615b0a4ec