* 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
* 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
* 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
* 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
* 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
* 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
* BUG: Close a buffered stream even if fclose() fails. Temporary fix.
git-svn-id: svn://localhost/gambas/trunk@7620 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* 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
* 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
* 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
* 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
* 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
* 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
* BUG: Shell$() does not try to convert into current locale anymore.
git-svn-id: svn://localhost/gambas/trunk@7542 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* 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
* 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
* BUG: Object.Raise() now works correctly with events having arguments.
git-svn-id: svn://localhost/gambas/trunk@7486 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* BUG: Fix File.IsHidden() method for paths having "." or ".." element
inside.
git-svn-id: svn://localhost/gambas/trunk@7418 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
[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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* BUG: Allow Gambas executables to be run through any relative paths.
git-svn-id: svn://localhost/gambas/trunk@7098 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* NEW: Use the new WebSettings.Cache.Clear() method.
* BUG: Fix project lists layout when they are filtered.
[WIKI CGI SCRIPT]
* BUG: Workaround the thttpd cgi interface bug.
[INTERPRETER]
* NEW: A new API for browsing a directory recursively.
* NEW: Js$() is a new function that quotes javascript strings.
[GB.FORM]
* BUG: ColorChooser: Don't memorize custom colors spuriously.
[GB.GUI.BASE]
* BUG: GridView: Don't take hidden columns into account when layouting
expanded columns.
git-svn-id: svn://localhost/gambas/trunk@6447 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Set Cygwin Shared Library Extension to dll
[GB.JIT]
* NEW: Add conditional defines for Cygwin to allow compile:
Use finite in place of _finite, __isnand in place of __isnan
and __isinfd in place of __isinf.
* NEW: Remove jit_gambas_pass_dummy.cpp as this is no longer
required to compile with later versions of llvm. Also fixes
issue with Cygwin compile.
[GB.NET]
* NEW: Redefine TIOCOUTQ for Cygwin
[GB.SDL.SOUND]
* NEW: -lSDL needed for Cygwin linker
[INTERPRETER]
* NEW: Redefine FIONREAD for Cygwin
* NEW: Cygwin needs <strings.h> to avoid compiler issues when
redefining strcasecmp etc.
[DEVELOPMENT ENVIRONMENT]
* NEW: Make the environment Cygwin aware
git-svn-id: svn://localhost/gambas/trunk@6435 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: The stream available length function now correctly returns zero when
it fails.
git-svn-id: svn://localhost/gambas/trunk@6413 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: A new Task now resets the state of its standard output stream to
avoid side effects from its parent.
git-svn-id: svn://localhost/gambas/trunk@6412 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: FileChooser: Fix an infinite loop when trying to initialize the path
with an unknown file.
[GB.MEDIA.FORM]
* NEW: New component based on gb.media that includes a full media player
widget with controls.
[GB.NET.SMTP]
* NEW: SmtpClient is now a virtual control.
git-svn-id: svn://localhost/gambas/trunk@6408 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Add an gambas appdata file and install it in /usr/share/appdata.
[DEVELOPMENT ENVIRONMENT]
* BUG: ImageEditor: Fix a possible crash when pasting an image.
* BUG: Correctly detect if a project is handled by subversion or not.
[INTERPRETER]
* NEW: Replace the internal `class->state` variable by two boolean flags:
`class->loaded` and `class->ready`.
* NEW: Overriding a class that is the parent of other classes is possible
again. I don't remember what prevented that to work, so I want to see.
[GB.DEBUG]
* NEW: Propagate the changes in the interpreter class structure.
[GB.EVAL]
* NEW: Propagate the changes in the interpreter class structure.
[GB.GUI.AREA]
* BUG: GridView: Setting the background color correctly refreshes the
control.
[GB.JIT]
* NEW: Propagate the changes in the interpreter class structure.
[GB.NET.SMTP]
* NEW: Replace the old gb.net.smtp component written in C and Gambas by a
new component with the same name entirely written in Gambas.
* BUG: Fix the authentication process.
* BUG: Fix how the result of the EHLO command is read.
[GB.QT4.EXT]
* NEW: LCDNumber control is now put in a "Deprecated" tab in the IDE
control toolbar.
git-svn-id: svn://localhost/gambas/trunk@6403 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: When reading lines ending with a "Window" end-of-line sequence
(CR+LF), the LINE INPUT instruction could sometimes forget to remove the
first end-of-line character from the end of the line (CR).
git-svn-id: svn://localhost/gambas/trunk@6398 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Now the offline help on component symbols should be displayed
correctly in any case.
* NEW: Support for automatic session management.
* BUG: Some fixes in single file editing mode.
[INTERPRETER]
* NEW: Args.All is a new property that returns all the command-line
arguments as a string array. Not definitive: it may be removed in the
future.
[GB.GTK]
* NEW: Application.Restart is a new property that allows to define the
application restart command for the session manager. Beware that it has
no effect at the moment!
[GB.QT4]
* NEW: Support for automatic session management. Only gb.qt4 implements it
at the moment.
* NEW: Application.Restart is a new property that allows to define the
application restart command for the session manager.
git-svn-id: svn://localhost/gambas/trunk@6392 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix a crash when the first use of a class symbol recursively calls
the current function being executed.
git-svn-id: svn://localhost/gambas/trunk@6383 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix a crash when opening the help browser after the F2 key has been
hit.
[INTERPRETER]
* BUG: Fix a crash when running the Application_Error global error handler.
[GB.FORM]
* NEW: DirBox is a new control that allows to choose a directory from a
ButtonBox.
* NEW: DirBox, FontBox and DateBox are now put in the "Chooser" tab of the
IDE control toolbar.
git-svn-id: svn://localhost/gambas/trunk@6380 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Abs(True) now returns 1, and Abs(False) returns 0. It breaks the
rule of TypeOf(Abs(x)) = TypeOf(x), but it is more useful while being
backward compatible.
git-svn-id: svn://localhost/gambas/trunk@6332 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Opening a SQLite database file automatically creates a new
connection and open it in the database editor.
* NEW: Redesign the form menu editor.
* BUG: Fix copy & paste in the form menu editor.
* NEW: The IDE now can open a single extern file without any project. This
is done internally by creating a temporary fake project. The GUI tries to
adapt to that new mode, but this is not yet perfect.
[INTERPRETER]
* NEW: Args.Max is a new property that returns Args.Count - 1.
[GB.QT4]
* NEW: When several menus have the same shortcut, one is triggered instead
of displaying a warning message and doing nothing.
[GB.QT.EXT]
* NEW: Editor: CTRL+X now cut the current line if nothing is selected. If
you stay on the same line, cutted lines accumulate.
git-svn-id: svn://localhost/gambas/trunk@6324 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix the custom browser support.
* NEW: Add Chromimum to the list of browsers.
[INTERPRETER]
* NEW: GB.GetProperty() and GB.SetProperty() API now return TRUE when they
have raised an error. FALSE is everything was ok.
[GB.FORM.MDI]
* NEW: Redesign the shortcuts configuration dialog.
* NEW: Shortcuts now can be exported and imported.
[GB.GTK]
* BUG: DrawingArea: Clipping is correctly established now before raising
the Draw event.
* BUG: Keyboard events have been fixed. Key array accessor and Key.Code now
behave the same way as in gb.qt4.
* BUG: The Key.Meta property works correctly now.
* BUG: Now keyboard events seem to be sent twice by GDK. Found a workaround
for that new weird behaviour.
* BUG: Automatic window minimum size now works correctly.
* BUG: Windows can take focus as in gb.qt4.
[GB.GUI.BASE]
* BUG: GridView: Do not use Draw.Clip to preserve the clipping of the Draw
event. Otherwise you get drawing artifacts with gb.gtk.
* BUG: GridView: Setting the column width to -1 is taken into account by
the layout routine.
git-svn-id: svn://localhost/gambas/trunk@6306 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix a string leak in program exit routine.
* BUG: The Param class now can be used while debugging.
git-svn-id: svn://localhost/gambas/trunk@6295 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Raising an error during the program exiting is possible now.
* NEW: Raise an error if an _exit method loads a new class. This is now
forbidden!
[GB.SETTINGS]
* OPT: Settings.Clear() does not mark the settings file to be saved if
there is nothing to clear.
git-svn-id: svn://localhost/gambas/trunk@6293 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Making executable works again.
[INTERPRETER]
* BUG: Don't use vfork() if a process has a custom environment, use a
terminal or is run through a shell.
[GB.FORM]
* BUG: ValueBox.ReadOnly works as expected now.
git-svn-id: svn://localhost/gambas/trunk@6292 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Correctly load information files on component classes overriden by a
project class.
[INTERPRETER]
* BUG: Use vfork() only if a new process does not use a virtual terminal,
does not run in a shell, or use a specific environment.
git-svn-id: svn://localhost/gambas/trunk@6291 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* OPT: Define the TZ environment variable at startup if it not defined to
prevent the glibc to stat the '/etc/localtime' file again and again.
* OPT: Cache the last value of System.TimeZone during at most 10 minutes.
[GB.FORM]
* OPT: Implement a directory cache to minimize the number of calls to the
Stat() function.
[GB.SETTINGS]
* BUG: Do not mark the settings file as modified if the stored value is not
really changed.
git-svn-id: svn://localhost/gambas/trunk@6290 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Don't check conflict on project configuration file if that files
does not exist.
[INTERPRETER]
* OPT: Move the string splitting routine in its own file and optimize it.
[INFORMER]
* BUG: Remove unneeded parenthesis on a test.
[GB.CLIPPER]
* BUG: Remove an unused variable.
[GB.DESKTOP]
* BUG: Fix error message in DesktopMime.
[GB.FORM]
* BUG: MaskBox: Raise the Change event after moving the cursor, so that it
behaves exactly like a TextBox.
[GB.FORM.MDI]
* NEW: Workspace: Count the number of detached windows so that the "detach
current tab" menu entry is disabled when needed.
[GB.GTK]
* BUG: Window.Utility should work even if the window is mapped now.
[GB.GTK3]
* BUG: Window.Utility should work even if the window is mapped now.
[GB.NET.PO3]
* NEW: Add a void constructor to the Pop3Client class for the
documentation.
git-svn-id: svn://localhost/gambas/trunk@6285 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Rand() is a new function that returns an integer random number.
Rand(X) returns a integer random number between 0 and X included.
Rand(X,Y) returns a integer random number between X and Y included.
* BUG: System.TimeZone now returns the accurate value, i.e. the number of
seconds that must be *added* to go to UTC.
git-svn-id: svn://localhost/gambas/trunk@6282 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Add a small reserved area in the stack for the Eval() function, so
that the debugger can return the contents of a variable after a stack
overflow without raising a new stack overflow error and then crashing.
git-svn-id: svn://localhost/gambas/trunk@6276 867c0c6c-44f3-4631-809d-bfa615b0a4ec