* OPT: Compile is now compiled with -O3 optimizations.
* OPT: Reserved words built-in symbol table is faster now.
* NEW: Initial support for expression datatype analyze. Some new errors are raised at compilation time, like using a string with the AND operator for example. The datatype analyzer is rougher than the IDE one because it is local to the compile class.
* OPT: Symbol table search is a bit faster.
git-svn-id: svn://localhost/gambas/trunk@7632 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
* BUG: Optional exported classes are now correctly inserted into '*.list' files.
git-svn-id: svn://localhost/gambas/trunk@7535 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
* NEW: When compiling changes the project information metadata, only reload
forms.
* NEW: Support for future webforms.
* NEW: About dialog: Mouse wheel now scrolls the text in both direction.
[COMPILER]
* NEW: Support for future webforms.
git-svn-id: svn://localhost/gambas/trunk@7407 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Forgot to put VERSION file in the source package file list.
[COMPILER]
* NEW: Trim the VERSION file before inserting into the ".startup" file.
git-svn-id: svn://localhost/gambas/trunk@7390 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
* NEW: Take into account the "Use 'VERSION' file" project option to compute
the actual version in the .startup file.
git-svn-id: svn://localhost/gambas/trunk@7288 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Syntax errors in constant declarations now give more detailed
messages.
git-svn-id: svn://localhost/gambas/trunk@7221 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
* BUG: Allow string constants longer than 255 characters when generating
*.info files.
[GB.FORM.EDITOR]
* NEW: TextEditor: Draw line ending spaces with dots.
* NEW: TextEditor.ShowSpaces is a new property that toggles the drawing of
spaces at the end of line.
* BUG: TextEditor: Don't crash anymore when calling the Clear method
(again).
git-svn-id: svn://localhost/gambas/trunk@7142 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: The string constants are now quoted in *.info files. Take that into
account.
* BUG: Disable code that uses the old Editor procedure floding feature.
* NEW: Make the option dialog smaller.
[WIKI CGI SCRIPT]
* NEW: The string constants are now quoted in *.info files. Take that into
account.
[COMPILER]
* BUG: The string constants are now quoted in *.info files.
[GB.FORM.MDI]
* BUG: Workspace: Disable some unused code.
[GB.QT4]
* OPT: Minimize X11 window properties changes.
[GB.QT5]
* BUG: Window SKipTaskbar, Stacking, Border... properties (all that rely on
Xlib calls) now work correctly.
* OPT: Minimize X11 window properties changes.
git-svn-id: svn://localhost/gambas/trunk@7092 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: gb.qt5 component.
[EXAMPLES]
* BUG: Fix WebBrowser example.
[INTERPRETER]
* NEW: Fix compilation of EXEC and SHELL for older bytecode versions.
[GB.DB.FORM]
* NEW: Display the busy mouse cursor while loading SQL data.
[GB.QT4]
* NEW: Support for QT5.
[GB.QT5]
* NEW: Initial version of the QT5 component. Not everything is working.
There is no Embedder and TrayIcon controls.
git-svn-id: svn://localhost/gambas/trunk@7062 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: A symbol followed by a point is never interpreted as a function if
it is used as a function name in the current class.
git-svn-id: svn://localhost/gambas/trunk@6856 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
* NEW: Modify the installation process so that it will be able to run the
'gbh3' tool to extract help from component source files. Not usable yet
as long as 'gbh3' depends on 'gb.pcre'.
[HELP EXTRACTOR]
* NEW: Move 'gbh3' project from '/app/src' to '/main/tools'.
* NEW: Add new options that are needed by the installation process.
git-svn-id: svn://localhost/gambas/trunk@6829 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Description of the gb.util.web component.
* NEW: A component/library project now can define if its information should
include the information of other components. This is useful if your
component includes another component at runtime that is hidden, or that
it does not depend on.
[INFORMER]
* NEW: Support for information include of components written in Gambas.
[GB.GUI.BASE]
* OPT: Border: Use Single instead of Float for properties. It saves some
memory space.
* NEW: Border: Properties for diaognal strikes.
* BUG: Border: Fix style syntax analyze.
[GB.UTIL.WEB]
* NEW: A new component that provides useful routines for web applications.
They were located in gb.web before.
[GB.WEB]
* NEW: 'gb.util.web' is now automatically loaded, to provide
backward-compatibility with Gambas 3.6 applications using 'gb.web'.
git-svn-id: svn://localhost/gambas/trunk@6812 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix a badly initialized variable in syntax tree analyze, that could
lead to spurious "Expression too complex" errors.
[GB.EVAL]
* BUG: Fix a badly initialized variable in syntax tree analyze, that could
lead to spurious "Expression too complex" errors.
git-svn-id: svn://localhost/gambas/trunk@6762 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
* NEW: USE now can be followed by a comma-separated list of component
names. That way the syntax is the same as what was implemented in the
gambas scripter 'gbs3'.
git-svn-id: svn://localhost/gambas/trunk@6649 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
* 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: Work continues on the publish dialog box. Now tags and dependencies
can be edited, and a new user can be registered.
[FARM SERVER]
* NEW: Server is almost finished. You can now download a software, vote
for it, and search the software database.
[COMPILER]
* BUG: Dump boolean constants in *.info files the same way as the informer.
[GB.NET.CURL]
* BUG: HttpForm is not a control, contrary to its parent class HttpClient.
git-svn-id: svn://localhost/gambas/trunk@6570 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix a typo in an offline help message.
* NEW: The option dialog was reorganized so that user identity information
has itw own panel.
* NEW: The user identity is now written inside translation files.
[COMPILER]
* NEW: Write meaningful information in generated translation files.
[GB.FORM]
* BUG: Wizard: Fix the layout of wizard step titles.
* NEW: Add a new icon named 'identity'.
[GB.FORM.STOCK]
* NEW: Add a new icon named 'identity'.
[GB.WEB]
* BUG: The deprecated URL.Encode() and URL.Decode() functions now correctly
call URL.Quote() and URL.Unquote().
git-svn-id: svn://localhost/gambas/trunk@6503 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
* NEW: Support for classes defined twice in a component: once in the native
part, once in the gambas part.
* NEW: Use the new Paint.TrimText() method.
[INFORMER]
* NEW: Support for classes defined twice in a component: once in the native
part, once in the gambas part.
[GB.GUI.BASE]
* NEW: Paint.TrimText() is a new API that trim a text according to a
specified rectangle, adding an ellipsis character at the end if needed.
[GB.NET.SMTP]
* BUG: Fix a circular reference when using a normal SMTP TCP session.
[GB.QT4]
* OPT: A little optimization when drawing rich text.
git-svn-id: svn://localhost/gambas/trunk@6427 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Support of GNU/kFreeBSD systems.
[DEVELOPMENT ENVIRONMENT]
* BUG: Fix a typo in english tips.
[INFORMER]
* NEW: Support of kFreeBSD.
[GB.DB.POSTGRESL]
* NEW: Check more directories when searching for libraries, so that it
works on debian systems.
[GB.V4L]
* NEW: Support of kFreeBSD.
git-svn-id: svn://localhost/gambas/trunk@6356 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
* OPT: Write in the bytecode file if a function uses the IsMissing() native
routine.
[INTERPRETER]
* OPT: Don't use a stack slot for missing arguments if the IsMissing()
function is not used.
git-svn-id: svn://localhost/gambas/trunk@6274 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: IsMissing() is a new function that returns if an optional argument
is missing. It always returns FALSE on a non-optional argument.
[INTERPRETER]
* NEW: Support for IsMissing().
git-svn-id: svn://localhost/gambas/trunk@6258 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Correctly raise a syntax error now when there is anything between
the left part of an assignment and the assignment operator.
git-svn-id: svn://localhost/gambas/trunk@6253 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Correctly drop arguments when using the new '...' symbol syntax.
[COMPILER]
* BUG: Correctly drop arguments when using the new '...' symbol syntax.
git-svn-id: svn://localhost/gambas/trunk@6252 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Support for the new '...' symbol usage in function calls.
[COMPILER]
* NEW: '...' can be used for passing all the variables arguments of the
current function to another function. The '...' symbol must be the last
argument of the function call.
git-svn-id: svn://localhost/gambas/trunk@6251 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: TabPanel.Moveable is a new property that makes tab button moveable
if set.
[GB.FORM.MDI]
* NEW: Workspace tab buttons are now moveable.
git-svn-id: svn://localhost/gambas/trunk@6239 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Raise an error if a function has too many arguments or too many
local variables.
git-svn-id: svn://localhost/gambas/trunk@6223 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Use the new wiki now.
[WIKI]
* BUG: Fix style sheet and class description layout.
* NEW: Inherited symbols links are in italic now.
* NEW: Automatic registration system.
* NEW: Use the new LOCK ... WAIT instruction.
* BUG: Some fixes in the old wiki conversion routine.
* NEW: The administrator account can see the recent changes.
[EXAMPLES]
* NEW: SmallWiki: Update the embedded markdown support from gb.markdown.
[COMPILER]
* NEW: The '#' character is now optional if possible (for example in the
'OUTPUT TO' instruction).
[GB.FORM]
* NEW: Some new icons.
[GB.FORM.STOCK]
* BUG: Fix all missing icons.
[GB.GTK]
* BUG: Fix incorrect translation when drawing inside a DrawingArea.
[GB.MEDIA]
* BUG: Fix inputs and outputs enumeration.
[GB.QT4]
* BUG: Correctly handle UTF-8 when displaying the error message.
[GB.WEB]
* NEW: WebPage.ToString() is a new method that generates the webpage and
returns it as a string.
* BUG: When creating a session, other sessions having the same prefix and
being older than 24 hours are automatically removed from disk.
git-svn-id: svn://localhost/gambas/trunk@6206 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix array creation operator when it has no arguments.
[INTERPRETER]
* BUG: Fix array creation operator when it has no arguments.
git-svn-id: svn://localhost/gambas/trunk@6114 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix maximum number of array declaration in the same class.
* NEW: Array and Collection constructor operator [ ... ] now can take any
number of arguments. It is only limited by the maximum function size,
which leads for example to about 32000 elements for a short array.
git-svn-id: svn://localhost/gambas/trunk@6110 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Allow a CASE expression list to spread among the next line provided
that the current line ends with a comma.
git-svn-id: svn://localhost/gambas/trunk@6084 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix compilation of NOT LIKE, NOT BEGINS and NOT ENDS operators when
they are not alone in an expression.
git-svn-id: svn://localhost/gambas/trunk@6041 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Undo one change of last revision: reading a stream from a memory
stream is a special case. It reads a null-terminated C string, and not a
serialized Gambas string.
* NEW: OPEN STRING is a new instruction that allows to use a string as a
stream. Writing to it appends the written data to the end of the string
at the moment.
* NEW: Closing a string stream returns the data written to the stream as a
new string.
[COMPILER]
* NEW: New OPEN STRING instruction.
* NEW: OPEN MEMORY and OPEN PIPE are synonymous of the MEMORY and PIPE
instructions alone.
[GB.EVAL]
* NEW: Highlight the new OPEN STRING instruction correctly.
git-svn-id: svn://localhost/gambas/trunk@5941 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Correctly raise a syntax error if the FOR EACH variable is not
immediately followed by the IN keyword.
git-svn-id: svn://localhost/gambas/trunk@5867 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Implement the "!xxx" syntax for the WITH ... END WITH control
structure.
git-svn-id: svn://localhost/gambas/trunk@5798 867c0c6c-44f3-4631-809d-bfa615b0a4ec