* BUG: Destructors now can safely raise errors. If these errors are
ignored, the object is released anyway.
git-svn-id: svn://localhost/gambas/trunk@4506 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Do not try to handle Home and End keys in editors.
* BUG: Fix the translation of error messages made by the debugger.
* NEW: Update error message list.
[INTERPRETER]
* NEW: Chmod, Chown and Chgrp were implemented.
* NEW: Stat.Auth is a new property that returns the file mode as a string,
using the format of the 'chmod' shell command.
* NEW: Rmdir raises a specific 'Directory is not empty' error now, when
trying to remove a non-empty directory.
[COMPILER]
* NEW: Chmod <path> To <mode> was implemented. <mode> is a string having
the same format as the 'chmod' shell command.
* NEW: Chown <path> To <user> was implemented. <user> is the name of the
user as defined in the /etc/passwd file.
* NEW: Chgrp <path> To <group> was implemented. <user> is the name of the
group as defined in the /etc/group file.
git-svn-id: svn://localhost/gambas/trunk@4400 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* OPT: Don't use glibc memcmp() to compare strings. My own routine is a
little faster according to valgrind.
* OPT: The UTF-8 String class routines Left(), Mid() and Right() have been
optimized. The positions of the first 256 characters of the last string
processed by the String class are cached.
* OPT: Some native methods can be called like any other native subroutines.
But that can be used only inside the interpreter, not in a component.
* OPT: The '&' operator is faster now when it takes two arguments only (the
most frequent case).
git-svn-id: svn://localhost/gambas/trunk@4106 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* OPT: Optimize some string functions by not using arguments passed by
reference.
* OPT: Integrate the "=" operator function into the main execution loop to
save one function call.
* OPT: Optimize string comparison functions on x86 and x64_64 architectures
by comparing eight bytes in one shot.
git-svn-id: svn://localhost/gambas/trunk@4104 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: When checking inheritance, ignore the case of the "_new" special
method name.
[GB.REPORT]
* BUG: Fix some bad method overrides.
git-svn-id: svn://localhost/gambas/trunk@4067 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix PayPal link.
* BUG: Fix default font in style sheets.
[INTERPRETER]
* BUG: Now an inherited method checks that it has the same signature as the
parent method. This check is not done for a native class inherting
another native class. C/C++ programmers are supposed to know what they
are doing. :-)
[GB.DB.FORM]
* BUG: Rename all Refresh() methods as Update() in all controls, so that
the Refresh() method inherited from Control is not badly overridden.
* NEW: Change the way DataView chooses the height of a row.
[GB.GTK]
* NEW: Control.Refresh() now takes no argument.
* NEW: DrawingArea.Refresh() keeps taking four optional arguments
describing the sub-rectangle to refresh.
[GB.QT4]
* NEW: Control.Refresh() now takes no argument.
* NEW: DrawingArea.Refresh() keeps taking four optional arguments
describing the sub-rectangle to refresh.
git-svn-id: svn://localhost/gambas/trunk@4064 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Generate project help pages in temporary files so that the help
browser can put them in its history.
[GB.QT4.WEBKIT]
* BUG: The default user agent is returned when no specific user agent has
been set.
git-svn-id: svn://localhost/gambas/trunk@4060 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: The startup class icon is now just drawn with a dark outline.
* NEW: Error messages updated.
* NEW: French translation updated.
[INTERPRETER]
* NEW: Inheritance is stricter now: the child symbol must have exactly the
same kind than the parent symbol.
* BUG: A child method must return the same datatype as its parent method
now.
* NEW: Gambas 3 executable mime description file and icon have been renamed
so that they do not conflict with Gambas 2 files.
[GB.FORM]
* BUG: IconView.Find() has been renamed as IconView.FindAt(), to avoid the
conflict with the inherited UserControl.Find() method.
[GB.FORM.MDI]
* BUG: Workspace.Children has been renamed as Workspace.Windows, because
the Workspace.Children property was in conflict with the inherited
Container.Children property.
[GB.GTK]
* NEW: ListView, TreeView and ColumnView Find() method has been renamed as
'FindAt' to match the IconView class.
[GB.IMAGE]
* NEW: Color.SetRGB() and Color.SetHSV() are two new methods that takes a
color as an integer, modifies one of its component, and returns it. They
are faster than using the ColorInfo class.
* NEW: Color.GetAlpha() returns the alpha component of a color from its
integer value.
[GB.QT4]
* NEW: ListView, TreeView and ColumnView Find() method has been renamed as
'FindAt' to match the IconView class.
git-svn-id: svn://localhost/gambas/trunk@4015 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Abort if a native class declares the same symbol twice.
* NEW: Two more standard error messages declared in gambas.h
git-svn-id: svn://localhost/gambas/trunk@3989 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Remove a debugging message in the connection editor.
[INTERPRETER]
* NEW: '_property' is a new special method that must return TRUE when an
unknown symbol (stored in Param.Name) is a property. If that special
method is not implemented, all unknown symbols are methods.
* NEW: Remove the deprecated constant gb.Text.
* NEW: Param.Property has been removed.
[COMPILER]
* NEW: Handle the new '_property' special method. That method must be
public, dynamic, takes no argument, and must return a boolean.
git-svn-id: svn://localhost/gambas/trunk@3915 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Do not crash anymore when an error is raised inside the constructor
of the automatic instance of an auto-creatable class.
git-svn-id: svn://localhost/gambas/trunk@3777 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Key[] does not print GTK+ warning anymore when getting a null
string as argument.
* BUG: Mouse.Blank cursor works as expected now.
git-svn-id: svn://localhost/gambas/trunk@3547 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Gambas2 to Gambas3 project converter. Only forms and project
structure are converted at the moment, as before.
* NEW: Update compiler error messages list.
[INTERPRETER]
* BUG: Activate the automatic instance just after its creation, but
before calling the constructors, so that they can reference it without
trying to create it recursively again and again.
git-svn-id: svn://localhost/gambas/trunk@3397 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Code indentation routine correctly handles structures now.
[INTERPRETER]
* NEW: Object.LastEventName has been deprecated, and replaced by
the Param.EventName property.
* BUG: IsFloat() is now a synonymous for IsNumber().
* BUG: Intrinsic functions description has been updated.
[COMPILER]
* NEW: "\e" is a new string escape sequence equivalent to "\x1B".
[GB.FORM]
* NEW: Use the new Control.Proxy property instead of internal observers
inside compound controls (ValueBox, ButtonBox, MenuButton).
[GB.GTK]
* NEW: Control.Proxy is a new property that allows to define a control
proxy that will handle focus, key and mouse events in original control's
place.
[GB.QT4]
* NEW: Control.Proxy is a new property that allows to define a control
proxy that will handle focus, key and mouse events in original control's
place.
git-svn-id: svn://localhost/gambas/trunk@3387 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Button to "flattr" Gambas.
[INTERPRETER]
* BUG: Fix some possible uses of unitialized values.
[COMPILER]
* BUG: Fix a possible crash when having 63 arguments passed by reference
to a function.
[GB.DB.SQLITE3]
* BUG: Detect integer primary key whatever the case used to write
"integer".
[GB.GTK]
* BUG: Page setup is enabled in printer configuration dialog now.
[GB.QT4]
* BUG: The font size of printed texts is now correct.
git-svn-id: svn://localhost/gambas/trunk@3344 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: The argument of Byte@(), Short@()... functions now can be a string.
Then the address of the string in memory is used.
* BUG: Structures allocated with the NEW operator are correctly freed now.
* NEW: READ and WRITE now can deal with structures and embedded arrays.
* NEW: Dir?() synonymous has been removed.
git-svn-id: svn://localhost/gambas/trunk@3322 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: "Save project as" now uses a dialog box that allows to choose the
project new name.
* NEW: CSV file import dialog now can ignore the file first lines.
* NEW: CSN file import dialog now saves its contents in the setting file.
[INTERPRETER]
* BUG: Correctly remove '\t' from error messages, as that character is used
by the debugger as separator.
* BUG: Release invalid automatic instances again.
[GB.DB.FORM]
* OPT: Use a transaction when deleting many rows in DataView.
[GB.DB.POSTGRESQL]
* BUG: Remove a debugging message.
[GB.GTK]
* BUG: Changing the stack order of a control now correctly triggers a
parent arrangement.
[GB.QT4]
* BUG: Changing the stack order of a control now always triggers a parent
arrangement.
git-svn-id: svn://localhost/gambas/trunk@3225 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: The search window now can browse in all source files only.
* BUG: The search list is correctly refreshed for project text files.
* NEW: The debug panel has been slightly redesigned. Local and global
variables lists are always sorted now.
[INTERPRETER]
* BUG: Do not try to run the "_exit" special method if the class load
has previously failed.
* BUG: Do not release the automatic instance when is it invalid.
* BUG: Check that the automatic instance is valid before using it.
git-svn-id: svn://localhost/gambas/trunk@3215 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: System.FirstDayOfWeek is a new property that allows to define the
first day of the week if the default is not accurate. The default value
is gb.Sunday for english countries and gb.Monday otherwise.
* NEW: The Week() function now use the default first day of the week.
[GB.FORM]
* NEW: DateChooser now takes System.FirstDayOfWeek into account.
git-svn-id: svn://localhost/gambas/trunk@3151 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: 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: 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: 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: 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
* 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
* NEW: Object file format has changed, so bytecode version has been
incremented, and all projects must be recompiled. Yes, again!
[INTERPRETER]
* OPT: Optimizations in comparison operators.
* OPT: Optimize symbol lookup tables.
[COMPILER]
* OPT: Optimize symbol lookup tables.
[GB.EVAL]
* BUG: Gambas source code is correctly highlighted again.
* NEW: Quoted identifiers (those between '{' and '}') are highlighted more
intelligently now.
git-svn-id: svn://localhost/gambas/trunk@2971 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Bytecode version has been increased, and so all projects must be
recompiled.
[INTERPRETER]
* OPT: Objects that do not raise events do not allocate the event
management structure anymore. That save four pointers by object.
* NEW: Structure management is done, and embedded (static) structures are
handled too.
* BUG: Static array management was fixed.
* NEW: All functions synonymous whose name ends with a question mark have
been removed.
[COMPILER]
* OPT: Some optimization again.
* BUG: EXTERN declarations compile again.
[GB.DB.SQLITE2]
* BUG: Fix a misuse of GB.NewString().
git-svn-id: svn://localhost/gambas/trunk@2970 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: More work on structure support.
* BUG: Fix optimization in error management.
[COMPILER]
* OPT: More optimizations. The Gambas 3 compiler is faster to compile the
Gambas 3 IDE than the Gambas 2 compiler to compile the Gambas 2 IDE,
which is smaller!
* NEW: Do not compute variable position and size, as it is done by the
interpreter anyway.
[GB.EVAL]
* NEW: Use the same optimizations as the compiler in the parser.
[GB.XML.RPC]
* BUG: The component compiles again.
git-svn-id: svn://localhost/gambas/trunk@2964 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Use GB.ReturnNewZeroString() instead of GB.ReturnNewString() now.
All components using the old syntax should be fixed now.
* NEW: Start to manage structures.
git-svn-id: svn://localhost/gambas/trunk@2957 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Do not compile database manager anymore, it has been deprecated.
* BUG: Compile the gb.dbus component.
[INTERPRETER]
* NEW: Pointer is a real datatype now.
* NEW: Static arrays came back. They are now like real array classes,
except that they are not resizable.
* NEW: IsPointer() is a new function that tells if an expression is a
pointer.
* NEW: All XXXX?() function synonymous were removed. Use the IsXXXX()
version instead.
* NEW: Remove now useless source files.
[COMPILER]
* NEW: Static arrays came back, with actually the same syntax as before.
[EXAMPLES]
* BUG: Fix the examples according to the new array syntax.
git-svn-id: svn://localhost/gambas/trunk@2949 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Do not show a form in the treeview if no component implements its
family.
[INTERPRETER]
* NEW: Detect overridden classes, and automatically convert the return
datatype of Gambas and native functions using an overridden class.
* NEW: Convert overridden classes in the NEW instruction.
git-svn-id: svn://localhost/gambas/trunk@2912 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: The container arrangement is now displayed with a little icon on the
top right corner, only when the mouse cursor is inside the container.
[INTERPRETER]
* BUG: Event handlers defined in inherited class are called correctly now,
without crashing.
git-svn-id: svn://localhost/gambas/trunk@2806 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Prevent a crash if during a _free special method, an element is
removed from a collection being freed.
git-svn-id: svn://localhost/gambas/trunk@2789 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Allow a dynamic class to inherit a native static class without
crashing.
[GB.FORM]
* OPT: Try to do a little less file browsing when loading stock icons.
git-svn-id: svn://localhost/gambas/trunk@2716 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Correctly save ListBox having exactly 31 items defined from the IDE.
[INTERPRETER]
* BUG: Now when a method call fails when checking arguments, the arguments
are correctly released.
[GB.QT4]
* NEW: The Window background picture is now drawn differently, and not
propagated anymore.
git-svn-id: svn://localhost/gambas/trunk@2582 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Remove the libtoolize "--install" flag in the reconf script, as it
breaks the "main" source sub-directory. We must add an option to this
script to handle that flag correctly.
[DEVELOPMENT ENVIRONMENT]
* BUG: Correctly display errors raised at program startup.
[EXAMPLES]
* BUG: The Notepad example has been fixed.
[GB.DRAW]
* NEW: Work continue on the Paint class.
git-svn-id: svn://localhost/gambas/trunk@2514 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: The IDE now uses the WebKit component to display an online help
directly into the automatic completion popup. The online help management
is quick and dirty at the moment.
* NEW: The option dialog is being redesigned. Not finished yet...
* NEW: Some cosmetic changes in the user control that displays the
information about a project. Not perfect yet.
[WIKI CGI SCRIPT]
* NEW: The wiki now sends the "Last-Modified", "Expires" and
"Cache-Control: max-age" headers with the HTML pages.
* NEW: Adding "?help" to an URL returns the page for the IDE online help.
[INTERPRETER]
* BUG: Try to stop breaking strict aliasing rules. This way the interpreter
should behave better on ARM architecture.
* BUG: Remove a possible crash when calling a constructor.
[GB.DRAW]
* NEW: The deprecated properties Draw.ForeColor and Draw.BackColor have
been removed.
[GB.NET]
* BUG: Do not watch the SerialPort file descriptor for reading if there is
no Read event handler.
[GB.QT4.WEBKIT]
* NEW: WebSettings.Cache.Path is a new property to define the directory
used for storing the disk cache contents. If this property is not
defined, no cache will be used.
* NEW: WebView.Cached is a new property to tell if the web browser will use
the disk cache. The WebSettings.Cache.Path *must* be defined before
setting that property.
* NEW: WebView.HTML is not read-only anymore.
git-svn-id: svn://localhost/gambas/trunk@2460 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Work continues on integrating the database manager.
* NEW: Some cosmetic changes in the way controls are drawing on the form
editor.
* NEW: Panels with Border property set to None are now drawn with a light
border.
* BUG: Fix the "Show tab" button and menu.
[INTERPRETER]
* NEW: _attach is a new dynamic special method that is called when an
object is attached to or detached from its event observer. The first
argument of this method is the event observer, and the second argument
the event handler prefix.
[COMPILER]
* NEW: An expression can be a NEW instruction now. Beware that it does not
work inside braces.
[GB.DB]
* BUG: Fix an error message in the sqlite handler.
[GB.DB.FORM]
* NEW: DataSource.Table can now be any SQL query. The Filter property is
ignored in that case.
* BUG: Setting DataSource.Table to NULL correctly resets the DataSource and
its children.
* NEW: DataView automatically adjusts the height of its rows to the
contents.
* NEW: DataSource.CacheSize is a new property to set the number of rows
stored in the internal DataSource cache. When this property is set to
zero, the cache size takes its default value (64 rows).
[GB.DB.SQLITE2]
* BUG: Fix a crash in datatype mapping.
[GB.DB.SQLITE3]
* BUG: Fix a crash in datatype mapping.
[GB.QT4]
* BUG: Window.AutoResize property works as expected now.
* OPT: Some optimizations in GridView.
* NEW: GridView.Rows[].Visible returns if a specific row is visible.
* NEW: GridView.Rows[].EnsureVisible ensures that a specific row is
visible.
* BUG: Draw.Style.Panel draws the same thing as a panel border now.
* BUG: Window.Closed always returns the accurate value now.
git-svn-id: svn://localhost/gambas/trunk@2108 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Do not use "boolean" anymore. Use "bool" instead.
[COMPILER]
* NEW: Do not use "boolean" anymore. Use "bool" instead.
git-svn-id: svn://localhost/gambas/trunk@2091 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Some enhancements in memory allocation debugging.
[GB.QT]
* BUG: Form.Load() method now really work, by using reparenting. The fix
may be backported to Gambas 2.
[GB.QT4]
* BUG: Window.Mask and Window.Picture work correctly now.
* BUG: TextArea background is accurate now.
* BUG: Mouse event properties of the Mouse class now return the expected
value.
* BUG: Tray icons now work correctly.
* BUG: Form.Load() method now really work.
* BUG: Windows are correctly closed.
git-svn-id: svn://localhost/gambas/trunk@2020 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Do not call the "_init" static initializer of exported classes at
component load. Do it when the class is used for the first time.
git-svn-id: svn://localhost/gambas/trunk@1977 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: The Balloon shape has been redesigned.
* BUG: The Balloon should not flicker anymore.
[GB.GTK]
* BUG: Image.Draw() now works correctly if X or Y are negative.
* NEW: WindowType is a new static class that defines constants for the
Window Type property. The old constants that were located in the Window
class have been removed.
[GB.NET]
* BUG: UdpSocket.TargetPort returns the accurate value now.
[GB.QT]
* BUG: The Window.Mask property works correctly now.
* BUG: Draw.Image() and Draw.Picture() now work correctly on transparent
pictures.
* NEW: WindowType is a new static class that defines constants for the
Window Type property. The old constants that were located in the Window
class have been removed.
* NEW: The arrangement design has been redesigned. Some arrangement bugs
were fixed by the way.
[GB.QT4]
* NEW: WindowType is a new static class that defines constants for the
Window Type property. The old constants that were located in the Window
class have been removed.
* NEW: The arrangement design has been redesigned. Some arrangement bugs
were fixed by the way.
git-svn-id: svn://localhost/gambas/trunk@1873 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Add a debugging message when there is a symbol override error.
git-svn-id: svn://localhost/gambas/trunk@1839 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: The [...] syntax can create specialized arrays. For example,
"[[1,2],[3,4]]" now returns an Integer[][] object.
* NEW: The internal CLASS structure has been reorganized.
git-svn-id: svn://localhost/gambas/trunk@1787 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Bytecode version has been incremented. All projects must be
recompiled!
[DEVELOPMENT ENVIRONMENT]
* BUG: Rewrite code that used badly overridden symbols.
[INTERPRETER]
* BUG: Check that the overridding symbol is compatible with the overridden
one. For example, a static method can be overridden by a static method
only, a constant can be overriden by a static property, and so on.
* NEW: A new error message for badly overridden symbols.
* NEW: Tr$() is a new function that translates its argument and returns it.
[GB.GTK]
* BUG: Rewrite code that used badly overridden symbols. Affected classes
are: Window, TabStrip,
[GB.FORM.MDI]
* BUG: Translate action descriptions in the action configuration dialog.
* NEW: Sort actions by description in the action configuration dialog.
* NEW: Automatically remember action configuration dialog size.
* BUG: Fix authorized shortcuts in the shortcut edit dialog.
* BUG: Rewrite code that used badly overridden symbols. Workspace is the
only affected class.
[GB.SETTINGS]
* NEW: LoadWindow() and SaveWindow() are two new public methods to load
and save window position by specifying the settings key.
[GB.QT]
* BUG: Rewrite code that used badly overridden symbols. Affected classes
are: Window, TabStrip,
git-svn-id: svn://localhost/gambas/trunk@1759 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: A new project runtime option to print the stack backtrace on error.
[GB.WEB]
* BUG: Storing arrays inside Session works correctly now.
git-svn-id: svn://localhost/gambas/trunk@1650 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Do not use <pre> markups, they cannot break lines.
[DEVELOPMENT ENVIRONMENT]
* NEW: Replace anonymous object arrays by template arrays.
* NEW: A button that clears the shortcut in the menu editor.
* NEW: When evaluating expression in the console, a semi-colon at the end
of the expression prevents the end newline to be printed, like in the
PRINT instruction.
* NEW: CTRL+G in the console makes it flash.
* OPT: Remove the CCoolTabs class, that was not used anymore.
* NEW: The main selected control is unselectable in the form editor now.
* NEW: Selected controls can be resized by pressing CTRL and an arrow key.
* NEW: Some form editor shortcuts have been changed to not conflict with
the previous feature.
* BUG: Fix the horizontal position of the automatic completion.
* BUG: Look in project classes before component classes in automatic
completion.
[INTERPRETER]
* BUG: Fix the memory allocation debug routines.
* BUG: When instanciating a template array class, search for element class
symbol locally first.
* BUG: Template arrays now correctly release their elements.
* NEW: Update copyright year in gb_common.h header file.
[COMPILER]
* BUG: Manage .list and .info files incrementally, so that they are up to
date even when the project is not fully compiled.
* BUG: Float and Single constants are correctly written in the .info file.
[GB.QT.EXT]
* BUG: Fix some painting artifacts in Editor.
* BUG: In Editor, Undo and Redo now should always work correctly when a
line is rewritten.
* NEW: In Editor, when a line is rewritten, the Change event is always
emitted.
* NEW: The Editor is cleared now when it prints a CTRL+L character.
* NEW: The Editor flashes now when it prints a CTRL+G character.
git-svn-id: svn://localhost/gambas/trunk@1576 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Enhance and fix support for template array classes.
[COMPILER]
* BUG: Enhance and fix support for template array classes.
[GB.EVAL]
* NEW: Support for template array classes.
git-svn-id: svn://localhost/gambas/trunk@1531 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Some clean-up in the acinclude.m4 file.
[DEVELOPMENT ENVIRONMENT]
* NEW: Small changes in the project property dialog layout.
* BUG: When opening a project, the packager information is correctly reset.
[WIKI CGI SCRIPT]
* NEW: Simplified chinese translation updated.
* NEW: Support for albanian language.
* NEW: New web site look.
[INTERPRETER]
* BUG: Really really fix the bit manipulation functions.
* NEW: Support for types object arrays. For example: Label[] for an array
of Labels.
[COMPILER]
* NEW: Support for types object arrays.
* BUG: Do not store the source file full path into object files, so that
rmplint does not cry.
[GB.GTK]
* BUG: Fix the tray icon management. Now GTK+ icons work on Gnome and KDE,
and are fully transparent!
* BUG: Tray icons are correctly refreshed when the icon is changed.
[GB.QT]
* BUG: Fix the menu shortcut management.
* BUG: Tray icons are correctly refreshed when the icon is changed.
git-svn-id: svn://localhost/gambas/trunk@1529 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Use colorgcc if it is present. Beware that ccache removes the
colors.
[DEVELOPMENT ENVIRONMENT]
* BUG: Fix the output console search.
* BUG: When making a package, ignore the charset translation errors while
printing the commands output.
* NEW: Support for the Khmer language.
[WIKI CGI SCRIPT]
* NEW: Support for the macedonian language.
[INTERPRETER]
* BUG: Fix the interpreter for gcc 4.3.
* NEW: Prints the gcc version used for compiling the interpreter when
running 'gbx2 -h'.
* BUG: Fix the initialization of standard input/output streams.
[COMPILER]
* BUG: Fix a compilation warning on FILE_set_chown.
[GB.GTK]
* BUG: Initialize correctly the gControl class.
* BUG: Draw.Tile now works correctly.
* BUG: Fix the vertical alignment management.
* BUG: The alignment of a GridView cell with a picture only is correct now.
[GB.QT]
* BUG: Choose the right moc executable when both QT3 and QT4 are installed
on the system.
* BUG: Fix the system tray icons for KDE 3.5.10. :-)
* BUG: The alignment of a GridView cell with a picture only is correct now.
git-svn-id: svn://localhost/gambas/trunk@1493 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Enhance the behaviour of the console text search.
* BUG: Enhance and fix the behaviour of the ESCAPE key.
* BUG: Renamed controls like DataControl are correctly refreshed inside the
form editor.
[INFORMER]
* NEW: When creating all information files in one shot, child processes are
used instead of loading all components in the same process.
[INTERPRETER]
* BUG: RInStr() third argument is now correctly taken into account in all
cases.
* BUG: Fix a bug in inheritance with classes written in Gambas overriding
symbols whose name begins with 'P', 'R' or 'M'.
[GB.DB.FORM]
* BUG: Setting DataBrowser.Control property to FALSE works again.
[GB.QT]
* BUG: Menu shortcuts are automatically enabled when the menu is shown.
[GB.QT.EXT]
* NEW: When the focus is set on an Editor, the cursor is ensured to be
visible.
git-svn-id: svn://localhost/gambas/trunk@1462 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix the title of the search list window.
* NEW: Support for hebrew translations.
[INTERPRETER]
* BUG: Do not free the classes before the _free() special methods are
executed.
[GB.FORM]
* BUG: Fix the default event declaration of ValueBox.
[GB.QT]
* BUG: GridView.Clear now correctly refreshes the GridView.
git-svn-id: svn://localhost/gambas/trunk@1452 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Little changes in the hall of fame animation.
[INTERPRETER]
* NEW: Do not warn against circular references when the program aborts
because of an error.
[COMPILER]
* NEW: The error message displayed when you try to return a value in a
procedure is more explicit now.
[GB.FORM.MDI]
* BUG: When a MDI child window is activated, the focus is set on it unless
one of its child control already has the focus.
[GB.GTK]
* BUG: Fix Application.Busy when forms are embedded.
* BUG: ComboBox does not raise the Click event anymore when its Text
property changes.
* BUG: Fix the management of Window Activate and Deactivate events.
* BUG: Fix the management of GotFocus and LostFocus events.
* BUG: SetFocus is correctly honored when used inside the Open event
handler of an embedded form.
* BUG: Desktop.Scale is now computed the same way as in gb.qt.
[GB.QT]
* BUG: SetFocus is correctly honored when used inside the Open event
handler of an embedded form.
git-svn-id: svn://localhost/gambas/trunk@1436 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* OPT: Do not set Project ColumnView AutoResize property to TRUE. Use a
very wide column instead to optimize redrawing.
* BUG: Fix a tooltip in the subversion conflict dialog.
* NEW: The component tab of the project property dialog has been
redesigned. Now you have to double click on a component to get
information on it.
* NEW: Property editing is now locked only if a specific toggle button is
pressed. This button is located on the right top of the property sheet.
[INTERPRETER]
* BUG: Handle the evaluation of Eval() expressions the same way as any
other code. Otherwise, stack can be leaked when there is an exception
inside.
* NEW: The foreign function interface is now optional.
* BUG: The use of array accessors is now correctly checked.
[GB.DB.SQLITE2]
* BUG: Reading floating point values and other values do not depend on the
locale anymore.
* NEW: Remove useless code.
[GB.DB.SQLITE3]
* BUG: Reading floating point values and other values do not depend on the
locale anymore.
* NEW: Remove useless code.
[GB.GTK]
* BUG: Fix uninitialized variables in ggridview.cpp and gmainwindow.cpp.
[GB.QT]
* OPT: ScrollView layout process is delayed.
[GB.SETTINGS]
* BUG: Do not use Array datatype incorrectly anymore.
git-svn-id: svn://localhost/gambas/trunk@1368 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Link with libgettextlib only with OpenBSD. Otherwise, on Linux,
there is a symbol comflict with the libxml used by fontconfig, and you
get spurious fontconfig warnings, and weird fonts or no font at all!
[DEVELOPMENT ENVIRONMENT]
* NEW: Use the new image methods for the hall of fame animation.
* BUG: Text editor does not flash anymore when being resized.
* BUG: The virtual control are now drawn bigger in Dekstop.Scale is too
small.
[EXAMPLES]
* BUG: Fix many examples according to the new way of calculating
Desktop.Scale.
[INTERPRETER]
* BUG: Symbol polymorphism is now correctly handled when the inheritance
depth is greater than two!
[GB.GTK]
* NEW: Image.MakeGray() is a new method that makes an image use gray
colors only.
* NEW: Image.MakeTransparent() is a new method that intelligently replace
a color by transparency.
[GB.FORM]
* NEW: Add a slider for setting the alpha color component.
* BUG: Correctly cancel an impossible rename operation in the DirView
control.
[GB.QT]
* NEW: Image.MakeGray() is a new method that makes an image use gray
colors only.
* NEW: Image.MakeTransparent() is a new method that intelligently replace
a color by transparency.
[GB.QT.EXT]
* BUG: In Editor, always draw function expanders with the foreground color.
git-svn-id: svn://localhost/gambas/trunk@1308 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: English and french tips were updated. A new tip was added.
* NEW: Files that were opened at project close are automatically reopened
when the project is loaded again.
* NEW: A warning message is displayed when the GNU translation tools are
not installed.
* BUG: The code editor method combo-box is correctly updated now.
* BUG: Some fixes in the automatic completion.
* BUG: Replace points by dash in the name of packages generated by the IDE
packager.
* NEW: Updated russian translation
* NEW: Updated french translation
[DATABASE MANAGER]
* NEW: Updated russian translation
[EXAMPLES]
* BUG: Fixed the Gravity and the GameOfLife examples so that they do not
use public form controls anymore.
[INTERPRETER]
* OPT: Many optimizations in the string substitution routines, the
internal datatype conversions, the INPUT and LINE INPUT instructions, the
error messages generation, the object and string reference counting, and
the memory allocation routines.
* NEW: Opening a device file in direct mode (FOR READ/WRITE) is now
automatically non blocking.
* OPT: Lof() now only tries its different methods (ioctl and lseek) once.
* BUG: Val() now ignores thousand separators characters at the end of the
number.
* NEW: A new flag for enabling the stack trace generation at each error.
[GB.DEBUG]
* BUG: The gb.debug component interface declaration was not 64-bits aware.
[GB.EVAL]
* BUG: The Highlight.Purge() method now correctly deals with non-ASCII
characters.
[GB.FORM]
* BUG: TableView.Edit() does not raise a "read-only combo-box" error
anymore.
[GB.FORM.DIALOG]
* BUG: Dialog buttons now are never cut.
[GB.GTK]
* BUG: Cached drawing areas are correctly redrawn now.
* BUG: Loading big images now works correctly. There is apparently a bug
in the GTK+ image loader, and I found a workaround.
* BUG: Message boxes correctly display the text of their buttons now.
[GB.QT]
* BUG: The Open, and initial Move and Resize event of embedded forms are
now always raised when you call the Show method or if you set the Visible
property. Before, it was raised when the embedded form was actually
shown.
[GB.SETTINGS]
* NEW: Settings are now stored in ~/.config/gambasX, where X is the
gambas version number.
* BUG: Strings are correctly quoted inside the settings file now.
[GB.WEB]
* NEW: Application.Protocol is a new property that allows to tell the
component that the protocol is not necessarily "http".
git-svn-id: svn://localhost/gambas/trunk@1153 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Automatically search libraries in lib64 before searching in lib.
* BUG: Fixed the $FFI_LIB test in main/configure.ac.
[DEVELOPMENT ENVIRONMENT]
* BUG: Tips of the days are displayed correctly again.
[INTERPRETER]
* BUG: Val() now takes the thousand separator into account when this
separator is a space character.
* BUG: Removed the 64 bits warning.
* BUG: Fixes the 'lib64' problem. Now components are searched in the 'lib64'
directory on 64 bits OS. If they are not stored in 'lib64', then the
default 'lib' directory is used.
* NEW: Passing argument by reference is not allowed anymore if not
explicitely specified in the method declaration.
[COMPILER]
* NEW: Passing argument by reference is not allowed anymore if not
explicitely specified in the method declaration.
[INFORMER]
* BUG: Fixes the 'lib64' problem. Now components are searched in the 'lib64'
directory on 64 bits OS. If they are not stored in 'lib64', then the
default 'lib' directory is used.
git-svn-id: svn://localhost/gambas/trunk@1108 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Revert strlcpy/strlcat/snprintf, they are not really needed, and introduce potentially more bugs.
git-svn-id: svn://localhost/gambas/trunk@1080 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: The Scripting example was fixed.
[INTERPRETER]
* NEW: The error management was redesigned.
[GB.DB]
* NEW: Database driver can declare a set of character that are allowed in a
database name.
[GB.DB.SQLITE2]
* NEW: '.' is allowed in database names now.
[GB.DB.SQLITE3]
* NEW: '.' is allowed in database names now.
git-svn-id: svn://localhost/gambas/trunk@1038 867c0c6c-44f3-4631-809d-bfa615b0a4ec
[CONFIGURATION]
* NEW: 64 bits port.
[EXAMPLES]
* BUG: Fixed the AnalogWatch example.
[WIKI CGI SCRIPT]
* NEW: Some little cosmetic changes.
[INTERPRETER]
* NEW: The extern function implementation has been redesigned and is now
based on libffi, so that it works on 64 bits system. Because of a flaw in
the compiler design, projects that use the Pointer datatype must be
recompiled to be used on a 64 bits system. This flaw will be fixed in
Gambas 3.
* OPT: Put some tables into read-only memory. About 1000 bytes are saved
for each running interpreter, except the first one.
* BUG: Does not crash anymore if a component cannot be loaded.
* NEW: Spanish translation updated.
* NEW: A new interpreter API for returning a pointer.
[COMPILER]
* BUG: Correctly compiles LONG constants inside code.
[GB.DEBUG]
* BUG: Compiles and links the gb.debug components with the thread
libraries.
[GB.DB.SQLITE3]
* BUG: Getting the primary index of a table without primary index is safe
now.
[GB.GTK]
* BUG: Modified the GLib priority of watched descriptors, as the main loop
could enter in a loop in which user interface events were not managed.
* BUG: Message boxes use application title without crashing now.
[GB.OPENGL]
* BUG: Disable dead code.
[GB.QT.EXT]
* BUG: TextEdit.TextWidth and TextEdit.TextHeight were not declared as
read-only properties.
[GB.XML.XSLT]
* BUG: XSLT class is now declared as being not creatable.
git-svn-id: svn://localhost/gambas/trunk@1006 867c0c6c-44f3-4631-809d-bfa615b0a4ec
- acinclude.m4: update libtool macros with libtool 1.5.24 ones, this seem to fix some problems
with configure script under OpenBSD, Linux seems to be still working 8p
- gbx_library.c: Remove lt_dlopen_flag use, as it doesn't seem to be anymore available
in libltdl. XX_LAZY seems to be the default behaviour if available.
- others: Replacement of strcpy() with strlcpy(), as strcpy isn't available because tag as
non secure.
- Perhaps other changes !
git-svn-id: svn://localhost/gambas/trunk@909 867c0c6c-44f3-4631-809d-bfa615b0a4ec