* BUG: Fix an unitialized structure field in extern functions management.
git-svn-id: svn://localhost/gambas/trunk@3119 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix many array methods that crashed when taking abnormal 'start' or
'length' arguments. Now they raise errors.
git-svn-id: svn://localhost/gambas/trunk@3110 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: The debugger does not crash anymore when activated at startup.
[GB.FORM]
* BUG: The MenuButton now only reacts to the left mouse button.
[GB.GTK]
* BUG: Remove some debugging messages from ColumnView.Settings property.
* BUG: Do not try to get informations about a widget when a window is
needed and the widget is not yet realized.
* BUG: Fix the Control.Cursor property.
* BUG: Control.Hovered now returns FALSE when the control is not visible.
* BUG: Creating the menubar does not make all window children visible
anymore.
[GB.QT4]
* BUG: Control.Hovered now returns FALSE when the control is not visible.
git-svn-id: svn://localhost/gambas/trunk@3107 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: MenuButton has been redesigned to use a DrawingArea only.
[GB.GTK]
* BUG: Styles are better drawn now.
* BUG: Destroyed controls are not seen anymore when enumerating container
children.
* NEW: Control.Hovered is a new property that returns if the mouse cursor
is inside the control.
* NEW: Draw.Style.Button() gets a new optional boolean argument to tell if
we must draw a flat button.
* NEW: Draw.Style.Focus() has been removed.
[GB.QT4]
* NEW: Control.Hovered is a new property that returns if the mouse cursor
is inside the control.
* NEW: Draw.Style.Button() gets a new optional boolean argument to tell if
we must draw a flat button.
* NEW: Draw.Style.Focus() has been removed.
git-svn-id: svn://localhost/gambas/trunk@3106 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Correctly update the code editor menu when the project is running.
[GB.FORM.MDI]
* NEW: The Workspace.ButtonPosition property has been removed.
* NEW: The Workspace tabstrip now uses embedded close buttons.
[GB.IMAGE]
* NEW: The Image.Gray() method has been renamed as Image.Desaturate().
* NEW: The Image.Transparent() method has been renamed as Image.Erase().
[GB.IMAGE.EFFECT]
* NEW: The Image.Gray() and Image.Desaturate() methods have been removed.
git-svn-id: svn://localhost/gambas/trunk@3105 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: A new option to use utility windows or normal windows for option
dialog, search window and help browser.
[GB.DRAW]
* BUG: The Draw.Normal constant is correctly named now.
[GB.GTK]
* BUG: Draw plain borders the same way as in gb.qt4.
* NEW: Window.Type has been removed.
* NEW: Window.Utility is a new boolean property to tell the window manager
that the window is an utility.
[GB.IMAGE]
* BUG: Fix some image format management is many routines.
* NEW: Image.FillRect() now handles transparent colors.
[GB.QT4]
* NEW: Window.Utility is a new boolean property to tell the window manager
that the window is an utility.
git-svn-id: svn://localhost/gambas/trunk@3102 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Image.DrawAlpha() is a new method that replace the alpha components
of an image by the alpha components of another image, where the other
image is more transparent.
git-svn-id: svn://localhost/gambas/trunk@3101 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: New flags for Draw.Style states. Draw.Focus, for widgets having the
focus, and Draw.Hover for widgets flied over by the mouse.
git-svn-id: svn://localhost/gambas/trunk@3097 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: In Gambas, javascript, HTML and CSS editor, a button to insert
a color definition, or a color already defined in the current source
code.
* NEW: Allow links with title ([<link>|<title>]) in help comment syntax.
[GB.FORM]
* BUG: In FileView, file sizes are really written with 1 Kib = 1024 bytes.
* BUG: MenuButton has an Action property again.
* BUG: MenuButton raise its basic events.
[GB.IMAGE]
* BUG: COlor.Darker() works correctly for black, white and gray colors now.
[GB.IMAGE.IO]
* BUG: Image.Save() quality is correctly handled. For PNG format, the
quality is actually the compression level, between 0 and 9.
[GB.QT4.WEBKIT]
* NEW: WebFrame.HTML is a new property that returns the HTML contents of a
specific frame.
* NEW: WebFrame.Text is a new property that returns the text inside a
specific frame.
[GB.WEB]
* NEW: When the session is abandonned, the Session_Abandon() static public
method is called in the startup class.
git-svn-id: svn://localhost/gambas/trunk@3096 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: A menu button in the project property dialog to quickly insert
the "GB_GUI" environmental variable.
[GB.FORM]
* NEW: Enhancements in ButtonBox and MenuButton controls.
* NEW: MenuButton.Border is a new property to set if the MenuButton has a
border or not.
* NEW: If the MenuButto has no menu, it will raise its Click event if its
arrow button is clicked.
[GB.GTK]
* NEW: ToolButton are "transparent" now.
* NEW: Draw.Style.Box() is a new style API that draws a TextBox frame.
[GB.QT4]
* NEW: Draw.Style.Box() is a new style API that draws a TextBox frame.
git-svn-id: svn://localhost/gambas/trunk@3093 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Do not incorrectly use interpreter gb_error.h header file, it crashes!
git-svn-id: svn://localhost/gambas/trunk@3092 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: DateBox is a new control that can edit a date with a calendar popup.
It aims at replacing the DatePicker, and the ValueBox with date type.
* NEW: DateChooser layout is better with small sizes.
* NEW: DateChooser raises a Cancel event when you hit the Escape key.
[GB.GTK]
* BUG: Better management of window grabs.
* NEW: Window.ShowPupup() is a new method that shows a window as a popup.
It takes an optional X,Y screen position as arguments. If not specified,
the window is shown at the current cursor position.
* BUG: Now all controls catch basic events.
* BUG: Fix a crash when destroying controls.
[GB.QT4]
* NEW: Window.ShowPupup() is a new method that shows a window as a popup.
It takes an optional X,Y screen position as arguments. If not specified,
the window is shown at the current cursor position.
* NEW: TrayIcon got a PopupMenu property, like the Control class. But it
works only if the TrayIcon observer is a Window. The property has bot
been implemented in gb.gtk yet.
git-svn-id: svn://localhost/gambas/trunk@3088 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: READ and WRITE now correctly handle Pointer datatype.
* BUG: Classes inheriting an array class now work correctly.
[GB.FORM]
* NEW: FileChooser and DirChooser have a new ShowButton property that shows
OK and Cancel buttons inside the control. Clicking on the Cancel button
raises a new Cancel event.
* NEW: Bookmark management has been redesigned in file controls.
* NEW: MenuButton got an AutoResize property.
[GB.FORM.DIALOG]
* NEW: File dialogs now remember their geometry.
[GB.GTK]
* BUG: Fix duplicate Click event in CheckBox control.
* BUG: Correctly handle tristate Checkbox controls.
git-svn-id: svn://localhost/gambas/trunk@3076 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: The interpreter compiles now when extern functions are disabled.
git-svn-id: svn://localhost/gambas/trunk@3072 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Searching spaces now works in highlighted files.
* OPT: The result of grep has been cached, so that successive searches are
faster.
[GB.QT4.EXT]
* NEW: The Editor[].Purge() method replacing character can be passed as an
argument.
git-svn-id: svn://localhost/gambas/trunk@3069 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Correctly fix the management of return value in native function
calls.
git-svn-id: svn://localhost/gambas/trunk@3063 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Do not crash anymore when a native function returns one of its
argument.
* NEW: New interpreter API to enumerate a collection.
[GB.DBUS]
* NEW: Collection are fully supported now.
* NEW: The org.freedesktop.DBus.properties.GetAll() method has been
implemented.
* BUG: Correctly raise an error when calling a D-Bus method fails.
* BUG: Correctly release strings returned by D-Bus functions that must be
released.
git-svn-id: svn://localhost/gambas/trunk@3058 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix class header parsing in automatic completion.
[INTERPRETER]
* BUG: Class[].Signature has been implemented.
* BUG: Fix native method calling when some arguments must be converted.
* NEW: Two new interpreter APIs, GB.BorrowValue() and GB.ReleaseValue(), to
correctly manage values returned by GB.ReadValue().
[GB.DBUS]
* NEW: Support for exporting properties and methods. The GetAll() DBus
method has not been implemented yet, because marshalling Collection is
not supported yet. Sending signals is not supported yet too.
* NEW: The previous DBusObject class has been renamed as DBusProxy.
* NEW: A new DBusObject class. Each Gambas object that inherits DBusObject
is automatically exported through DBus.
* NEW: DBusSignal is a new class to catch DBus signals by giving its
interface name.
git-svn-id: svn://localhost/gambas/trunk@3047 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: New look for version specific documentation.
[INTERPRETER]
* NEW: Assign() has been removed, and replaced by Eval() with an expression
beginning with the LET keyword.
* NEW: New routines to read a value stored at a memory address: BoolPtr(),
BytePtr(), ShortPtr(), IntPtr(), LongPtr(), SinglePtr(), FloatPtr() and
PointerPtr().
[COMPILER]
* NEW: The LET keyword can be used to write an assignment expression. Of
course it is optional.
[GB.EVAL]
* NEW: The LET keyword can be used to evaluate an assignment.
* NEW: The Expression.Compile() method does not take any argument anymore.
git-svn-id: svn://localhost/gambas/trunk@3041 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Conversion between Integer or Long and Pointer is possible now.
* OPT: A little optimizations in extern function management.
git-svn-id: svn://localhost/gambas/trunk@3040 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Make the interpreter compile correctly.
* BUG: Some fixes in callback management.
git-svn-id: svn://localhost/gambas/trunk@3039 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Print a summary of warning messages after each component
compilation.
[INTERPRETER]
* BUG: StrPtr() with a length argument now works correctly.
* NEW: Support for callbacks: when converting a function to a Pointer, an
internal closure is created with the libffi library. The pointer then can
be sent to any extern function as function pointer argument.
* BUG: Opening memory stream should work in all cases now.
git-svn-id: svn://localhost/gambas/trunk@3038 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: The project tree popup menu now has the refresh action.
[GB.SIGNAL]
* NEW: New component to catch or ignore process signals.
git-svn-id: svn://localhost/gambas/trunk@3037 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Store package name in the .project file.
* NEW: Take libraries into account in package dependencies.
* BUG: Fix autotools packages. Components are now stored beside the
"Component=" entry in the .project file. The "Library=" entry is for
libraries!
[ARCHIVER]
* NEW: Stores the .project file into executables.
git-svn-id: svn://localhost/gambas/trunk@3036 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Arrays and structures can be sent to an extern function argument.
The extern function will receive the address of the data.
git-svn-id: svn://localhost/gambas/trunk@3035 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* 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
* 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
* 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
* 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
* 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
* 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: 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