* BUG: Fix a crash is structure declaration analyze.
[INTERPRETER]
* NEW: Support for static array of structures. A static array of structure
'MyStruct' will create a temporary object whose class is '$MyStruct[]'.
That class does not inherit 'Array', and has only a few methods of the
Array class.
* NEW: Byte[].ToString() is a new method to convert a byte array to a
string. If no length is specified, ToString() assumes that the byte array
is a zero-terminated string.
* NEW: Byte[].FromString() is a new method that fills a byte array with the
contents of a string.
[COMPILER]
* NEW: Declaration of static arrays of structures is allowed.
git-svn-id: svn://localhost/gambas/trunk@3031 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Global search can be cancelled.
* NEW: The IDE does not try to open binary files anymore.
* NEW: Use the new TabStrip.TextFont property.
* NEW: The open project dialog has been redesigned.
[INTERPRETER]
* BUG: String.Left(), String.Mid() and String.Right() now return NULL on
truncated UTF-8 substrings.
git-svn-id: svn://localhost/gambas/trunk@3029 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Rewriting class names works now when the class name has only one
character.
git-svn-id: svn://localhost/gambas/trunk@3025 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: New code snippet to define a startup Main procedure.
* NEW: In the open project dialog, selecting a project directory now
displays the project contents inside a treeview, like the IDE does.
[GB.QT4]
* NEW: Some changes in the Font class: Font.Height is now a property that
returns the font height, and Font.Width has been removed. Now, to compute
the size of a text fragment, you must use Font.TextWidth() and
Font.TextHeight(). Moreover, two new methods, Font.RichTextWidth() and
Font.RichTextHeight() allow to compute the size of a rich text fragment.
* BUG: When showing a form, the initial focus should be correctly set in
all cases now.
[GB.GTK]
* NEW: Some changes in the Font class: Font.Height is now a property that
returns the font height, and Font.Width has been removed. Now, to compute
the size of a text fragment, you must use Font.TextWidth() and
Font.TextHeight(). Moreover, two new methods, Font.RichTextWidth() and
Font.RichTextHeight() allow to compute the size of a rich text fragment.
git-svn-id: svn://localhost/gambas/trunk@3024 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: TabStrip.TextFont is a new property that allows to define a specific
font for tabs labels.
[GB.GTK]
* NEW: TabStrip.TextFont is a new property that allows to define a specific
font for tabs labels.
git-svn-id: svn://localhost/gambas/trunk@3023 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: In about dialog, fade the scrolling text, as in the Firefox about
dialog.
* NEW: Clicking on a project treeview item expands it after the mouse
button has been released.
[GB.FORM]
* NEW: Clicing on a DirView item expands it after the mouse button has been
released.
[GB.QT4]
* NEW: A little fix in menu management.
git-svn-id: svn://localhost/gambas/trunk@3022 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Added a new class named Version, it simply return some info
about the server version.
git-svn-id: svn://localhost/gambas/trunk@3019 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: In Editor, do not highlight a line that is currently edited in
another editor sharing the same text.
git-svn-id: svn://localhost/gambas/trunk@3018 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Eof() (and other file functions) using a null stream will not crash
anymore.
git-svn-id: svn://localhost/gambas/trunk@3017 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: New API for marking an image as modified, and for synchronizing it
before reading it, when the temporary image owner needs it.
git-svn-id: svn://localhost/gambas/trunk@3016 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Replacing does not ignore the current selected text aynmore when it
matches.
git-svn-id: svn://localhost/gambas/trunk@3015 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: More work on system fonts, now system is correctly displayed.
git-svn-id: svn://localhost/gambas/trunk@3014 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Bytecode version has been incremented, so all projects need to be
recompiled!
[INTERPRETER]
* OPT: Many little optimizations.
* OPT: Avoid calls to setjmp() when it is possible.
* OPT: Do not encode the stack drop inside the CALL instruction.
Executables are a bit larger, but a little speed is gained.
[COMPILER]
* OPT: Do not encode the stack drop inside the CALL instruction.
Executables are a bit larger, but a little speed is gained.
git-svn-id: svn://localhost/gambas/trunk@3013 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Searching inside the console does not crash anymore.
* NEW: A little redesign of the project property editor. The "print stack
backtrace" option has been removed, as now the stack backtrace is always
printed.
git-svn-id: svn://localhost/gambas/trunk@3012 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Remove libsdl_image dependency, now Image class relies completly on the
gb.image.io component to load images.
Less dependencies is always better.
git-svn-id: svn://localhost/gambas/trunk@3011 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Add locking/unlocking internal api hooks, allowing Image class to be sure image is synced/locked
to get correct access to image datas, and tag if image is altered.
git-svn-id: svn://localhost/gambas/trunk@3010 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Cairo.DrawText() is a method that directly draws a text. I added it
because it does not behave like Cairo.Text() + Cairo.Fill().
git-svn-id: svn://localhost/gambas/trunk@3009 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* OPT: A little optimization in Split().
[GB.CAIRO]
* BUG: Cairo.Path() now creates a text path and does not draw anything,
like other drawing methods.
git-svn-id: svn://localhost/gambas/trunk@3008 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Correctly deals with unknown components in the project property
dialog.
[INTERPRETER]
* NEW: Error backtrace is now always printed.
* OPT: Some optimizations in mathematical routines.
[GB.IMAGE]
* NEW: Image.FillRect() is a new method that fills a rectangle with a
specified color.
git-svn-id: svn://localhost/gambas/trunk@3007 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Use a different color for unknown components.
I know the color is fluffy :-p
git-svn-id: svn://localhost/gambas/trunk@3006 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* OPT: Many optimizations. One is big (gcc is not really clever sometimes!),
and now Gambas is about 30% faster than interpreted Python when running
stupid benchmarks.
git-svn-id: svn://localhost/gambas/trunk@3005 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* OPT: Many optimizations again.
* BUG: Fix an unitialized variable in string to float conversion routine.
* BUG: Handle extern functions that return a pointer.
git-svn-id: svn://localhost/gambas/trunk@3003 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* OPT: Some optimizations again in memory allocator, object releasing
routine, arithmetic operators, class variable reader, line-by-line stream
reader, class symbol sort routine.
* BUG: Using constant strings inside variant, like database drivers, works
correctly again and does not crash the interpreter anymore.
git-svn-id: svn://localhost/gambas/trunk@2996 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Remove buggy code, now interlacing line and image drawing work.
git-svn-id: svn://localhost/gambas/trunk@2994 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: New methods Font.Width() and Font.Height(), to retreive respectivly
widht and height of text.
Now a default font (system font) is opened with New method,
but nothing is rendered yet.
git-svn-id: svn://localhost/gambas/trunk@2993 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Breakpoints are correctly reset when opening a new project.
[INTERPRETER]
* BUG: The GB.NewString(), GB.NewZeroString() and GB.TempString() API
signature has changed. All components have been updated accordingly.
* OPT: Many optimizations to speed up the interpreter.
[GB.EVAL]
* NEW: During syntax highlighting, the first character of class names is
automatically converted to uppercase.
git-svn-id: svn://localhost/gambas/trunk@2992 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Try to fix the floating-point precision/rounding bug. In other
words, 0.6 is now printed 0.6, and not 0.6000...001 anymore.
git-svn-id: svn://localhost/gambas/trunk@2988 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Disable line smoothing, as there is problem with intel driver.
A line of width equal to 1.0 isn't displayed with smoothing enabled.
git-svn-id: svn://localhost/gambas/trunk@2985 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Menu items have a better look now.
* BUG: Windows with Resizable set to FALSE work correctly now.
git-svn-id: svn://localhost/gambas/trunk@2984 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: StrPtr() now can take a second argument to specify the length of the
string we will read from memory. If that argument is not specified, the
string must ends with a zero character.
* OPT: Internal array management was optimized. It changes nothing for the
Gambas array class.
[COMPILER]
* OPT: Internal array management was optimized.
* BUG: Using embedded structure with a class that is not a structure now
raises an error.
git-svn-id: svn://localhost/gambas/trunk@2979 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Save report form coordinates as scaled.
* BUG: Correctly write scaled coordinates to form files again.
git-svn-id: svn://localhost/gambas/trunk@2978 867c0c6c-44f3-4631-809d-bfa615b0a4ec