[INTERPRETER]
* NEW: String value can be used like object.
* NEW: String[X] returns the X-th character of the string, 0 being the first one.
* NEW: String[X, N] returns N characters from the position X, 0 being the first one. IF N is strictly negative, then all characters from the position X, except the last N characters are returned.
* NEW: String.Len returns the length of the string.
[COMPILER]
* NEW: Allow the [] operator to be applied to a string.
[INTERPRETER]
* NEW: Jit is a new static class that allows to deal with the JIT compiler.
* NEW: Jit.Time is a new property that returns the time spent in JIT compilation, in seconds.
[GB.JIT]
* NEW: Support for the Jit.Time property.
* NEW: Stream.Term.Width and Stream.Term.Height are two new properties that return the size of the terminal associated with the stream, if any.
* NEW: As soon as the terminal size is read on any stream with the previous properties, the SIGWINCH signal is watched, and the Application_Resize() public method of the startup class is called each time this signal is catched, meaning that the terminal has been resized.
git-svn-id: svn://localhost/gambas/trunk@7735 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Stream.IsTerm is a new property that returns if a stream is a terminal.
* NEW: Stream.Term.Resize() is a new method that resizes a terminal.
git-svn-id: svn://localhost/gambas/trunk@7669 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Update copyright year to 2013.
[GB.FORM]
* NEW: ImageView is a new control that allows to view an image inside a
scrolled view, at different zoom levels.
* BUG: FileProperties now works correctly if 'gb.desktop' is not used.
* NEW: The FileProperties preview tab now uses an ImageView control and has
a toolbar to zoom the preview.
* BUG: Add the 'linux' and 'gnu' icon in the stock icon list.
git-svn-id: svn://localhost/gambas/trunk@5770 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Move the '.SubCollection' virtual class to the gb.db. component.
[GB.DB]
* NEW: Move the '.SubCollection' virtual class to the gb.db. component.
[GB.FORM]
* BUG: TabPanel: Fix the algorithm ensuring that the current tab is
visible.
git-svn-id: svn://localhost/gambas/trunk@5326 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Task.Value now raises an error if the background task has failed for
any reason. Otherwise it normally returns the background task return
value.
* BUG: Background tasks do not interfere with the debugger anymore.
[GB.TASK]
* NEW: The component has been moved inside the interpreter.
git-svn-id: svn://localhost/gambas/trunk@5081 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Split System and Application class implementation in tow different
source files.
* NEW: A trick to watch existing file descriptors: opening ".XX" in direct
mode, where "XX" is the file descritor value.
git-svn-id: svn://localhost/gambas/trunk@4132 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Classes coming from libraries are correctly taken into account in
automatic completion now.
* BUG: Fix the layout of the help window the first time it is shown.
* NEW: The recent files list should be correctly refreshed now if another
Gambas instance updates it.
[WEB SITE MAKER]
* NEW: Update for Gambas 2.23.1.
[WIKI CGI SCRIPT]
* BUG: The front page now is correctly version dependant.
* BUG: Do not add "v3" at the end of a link that has "v2" explicitely.
[INTEPRETER]
* NEW: Stream.Lines is a new property that allows to enumerate a stream
line by line until end of stream is reached.
[GB.SETTINGS]
* NEW: The Settings.Path property has been renamed as Settings.DefaultDir.
* NEW: Now Settings.Path returns the path of the settings file on the disk.
* BUG: Use a lock to prevent simultaneous writings of the same settings
file.
[GB.QT4.EXT]
* BUG: Fix how the cursor is ensured to be visible in the Editor class.
git-svn-id: svn://localhost/gambas/trunk@3866 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Don't show '$' in the dependencies combo-box of the component
property dialog.
[INTERPRETER]
* NEW: GB.Every() is a new API that allows a component to call a callback
regularly. Useful for polling something for example.
git-svn-id: svn://localhost/gambas/trunk@3429 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: 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
* 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
* 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: The ImageViewer example now uses the Paint class.
[INTERPRETER]
* NEW: Class.Symbols now returns a string array of all class public
symbols.
* NEW: Component.IsLoaded is a new static method to check if a specific
component has been loaded.
* NEW: Components.Load has been removed.
[GB.GTK]
* NEW: Cairo requirements have been added to the configure.ac file.
* NEW: The Container.Children.Clear method has been implemented.
[GB.GUI]
* NEW: Add gb.image requirement in the gb.gui component file.
[GB.QT4]
* BUG: DrawingArea scrollbars are correctly displayed again.
* BUG: DrawingArea internal cache is correctly resized with the control.
git-svn-id: svn://localhost/gambas/trunk@2606 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix the arrangement of the welcome dialog and the project property
component list.
* BUG: Undo now works on procedure declaration automatically inserted.
[INTERPRETER]
* BUG: Object.Lock(), Object.Unlock() and Object.IsLocked() now work as
expected on Observer objects.
[GB.QT]
* BUG: Label and TextLabel autoresize routine has been fixed.
* BUG: ScrollView now arrange its contents again when one of its scrollbars
is shown or hidden.
* BUG: Minimum size of window dialogs works again.
* BUG: Top-level windows now arrange its contents on resize events in all
cases as expected.
git-svn-id: svn://localhost/gambas/trunk@1875 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Bytecode version has been incremented again. All projects must be
recompiled!
[INTERPRETER]
* NEW: The Quote and UnQuote class were removed, and replaced by three new
functions: Quote$(), Shell$() and Unquote$().
* NEW: Html$() is a new function that does HTML quoting.
[GB.QT]
* NEW: The space between a gridview cell picture and its text is now
defined by the padding property.
[GB.WEB]
* NEW: The HTML class has been removed. Use the new Html$() subroutine
instead.
git-svn-id: svn://localhost/gambas/trunk@1763 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: The external gettext library is now used only on OpenBSD. If needed,
other systems can be added of course.
* BUG: Fix Qt moc detection for OpenBSD.
[DEVELOPMENT ENVIRONMENT]
* NEW: In the menu editor, a new menu is now inserted after the current
menu and not before.
[INTERPRETER]
* BUG: Object.Attach() and Object.Detach() now correctly deals with
Observer objects.
[COMPILER]
* NEW: When a form method declaration has no END keyword, the error
message is now accurate. It does not talk about the form definition
anymore.
[GB.GTK]
* BUG: The use of alternative input methods do not print warnings anymore.
git-svn-id: svn://localhost/gambas/trunk@1067 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* OPT: Native array optimizations are better. For arrays with one
dimension, reading is about 70% faster than gambas2, and writing 40%
faster.
* OPT: Collection array accessors were optimized too. Reading is about 50%
faster and writing 60% faster. Be careful: only the array accessors were
optimized, not the full hash table access, which is the slower part of
the process.
git-svn-id: svn://localhost/gambas/trunk@1036 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fixed the allocation of static arrays.
* BUG: Array classes array accessors now correctly check the number of
their argument when the array has just one dimension.
* OPT: Native array classes array accessors were optimized. For one
dimension arrays, reading is about 50% faster and writing 25% faster.
The gain is smaller for higher dimensions.
git-svn-id: svn://localhost/gambas/trunk@1035 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Support for installing control icons in native components.
[64 BITS]
* BUG: Fixed some uses of long datatype in the gb.qt.ext component, the
Splitter and the Container class of gb.qt.
* BUG: Fixed some declarations in the gb.net.curl component.
* NEW: Pointer[] is a new class that represents an array of Pointer values.
* BUG: All gb.qt, gb.gtk and gb.desktop methods that deal with X11 Window
identifiers now use Pointer and Pointer[] datatypes instead of Integer
and Integer[].
* BUG: The Embedder example was updated according to the change above.
[INTERPRETER]
* BUG: Fixed the static array management that was broken by the 64 bits
changes.
[GB.DEBUG]
* BUG: Debug.Write now does nothing if Debug.Start has not been called.
[GB.GTK]
* BUG: Fixed the implementation of the Message class that was broken.
* BUG: Fixed a crash in the Watcher class.
* BUG: Fixed the Image.Flip() and Image.Mirror() methods.
* BUG: Fixed a potential crash in timer management.
* NEW: The GridView Select event was implemented.
git-svn-id: svn://localhost/gambas/trunk@1033 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