Commit graph

407 commits

Author SHA1 Message Date
Benoît Minisini
cfd564e4a8 [DEVELOPMENT ENVIRONMENT]
* NEW: Merge of the database manager CSV import dialog.
* NEW: When editing a connection, the database charset can be ignored, i.e. 
  string fields are assumed to be encoded in UTF-8.
* BUG: Be read-only when editing a system table or a SQL request.
* NEW: A new way of showing selected controls on forms. Maybe a little less 
  easier, but faster anyway.
* NEW: A new cool & useless animation on the welcome dialog.

[GB.DB]
* NEW: You can initialize a Connection object at creation by passing a 
  "database URL" to the constructor. For example: 
  "mysql://root@localhost/database" or "sqlite:///home/benoit/sqlite.db".
  This is not tested yet!
* NEW: Connection.IgnoreCharset is a new boolean property. It just stores
  the value, and do nothing with it. It's up to you to use the information
  later if you need.

[GB.DB.FORM]
* NEW: DataView does not extract Blob value anymore. It just displays 
  "BLOB" in the cell with a darker background.

[GB.GTK]
* NEW: Indent is new container boolean property. When set, an indentation 
  of Desktop.Scale pixels is added to the layout.

[GB.QT]
* NEW: Indent is new container boolean property. When set, an indentation 
  of Desktop.Scale pixels is added to the layout.

[GB.QT4]
* NEW: Indent is new container boolean property. When set, an indentation 
  of Desktop.Scale pixels is added to the layout.

[GB.QT4]
* OPT: Some optimizations in the Editor for very long lines. Fix a bug in 
  Qt that updated two lines when it was asked for one only.


git-svn-id: svn://localhost/gambas/trunk@2128 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-07-17 01:29:39 +00:00
Benoît Minisini
3ed7a93385 [INTERPRETER]
* BUG: When a component cannot be loaded, only show its name in the error 
  message, not the full path.

[GB.FORM.MDI]
* BUG: Keep the hide/show sequence of windows newly inserted into a 
  Worskpace. Otherwise the IDE becomes slow at startup!

[GB.QT4]
* BUG: Now message boxes return the accurate button index.



git-svn-id: svn://localhost/gambas/trunk@2122 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-07-14 23:25:52 +00:00
Benoît Minisini
0ac184012a [DEVELOPMENT ENVIRONMENT]
* NEW: Database manager integration continues. You can create, edit and 
  remove tables now. You cannot rename them yet, nor modify their contents.
* BUG: Fix popup menu activation in text editor.
* NEW: Almost any character is allowed now in the name of directories 
  storing source files.

[GB.DB.FORM]
* NEW: DataSource.Reset() is a new method that clears the internal 
  metadata cache. That method is dynamic because it is intended to only
  reset the metadata associated with the DataSource. At the moment all the
  metadata is dropped.

[GB.FORM]
* NEW: TableView.Save() now returns a boolean that will tell you if the 
  Save event has been cancelled.
* BUG: TableView should manage arrow keys correctly if the current editor 
  is a read-only ComboBox.

[GB.FORM.MDI]
* OPT: Toolbars do no useless layout anymore when in design mode.

[GB.QT4]
* BUG: The Message class has been fixed.
* BUG: Fix the behaviour of TabStrip when all its page are hidden.


git-svn-id: svn://localhost/gambas/trunk@2115 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-07-14 02:24:54 +00:00
Benoît Minisini
d3501bf140 [DEVELOPMENT ENVIRONMENT]
* NEW: Work continues on integrating the database manager.
* NEW: Some cosmetic changes in the way controls are drawing on the form
  editor.
* NEW: Panels with Border property set to None are now drawn with a light 
  border.
* BUG: Fix the "Show tab" button and menu.

[INTERPRETER]
* NEW: _attach is a new dynamic special method that is called when an 
  object is attached to or detached from its event observer. The first 
  argument of this method is the event observer, and the second argument 
  the event handler prefix.

[COMPILER]
* NEW: An expression can be a NEW instruction now. Beware that it does not 
  work inside braces.

[GB.DB]
* BUG: Fix an error message in the sqlite handler.

[GB.DB.FORM]
* NEW: DataSource.Table can now be any SQL query. The Filter property is 
  ignored in that case.
* BUG: Setting DataSource.Table to NULL correctly resets the DataSource and
  its children.
* NEW: DataView automatically adjusts the height of its rows to the 
  contents.
* NEW: DataSource.CacheSize is a new property to set the number of rows 
  stored in the internal DataSource cache. When this property is set to 
  zero, the cache size takes its default value (64 rows).

[GB.DB.SQLITE2]
* BUG: Fix a crash in datatype mapping.

[GB.DB.SQLITE3]
* BUG: Fix a crash in datatype mapping.

[GB.QT4]
* BUG: Window.AutoResize property works as expected now.
* OPT: Some optimizations in GridView.
* NEW: GridView.Rows[].Visible returns if a specific row is visible.
* NEW: GridView.Rows[].EnsureVisible ensures that a specific row is 
  visible.
* BUG: Draw.Style.Panel draws the same thing as a panel border now.
* BUG: Window.Closed always returns the accurate value now.


git-svn-id: svn://localhost/gambas/trunk@2108 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-07-12 21:49:13 +00:00
Benoît Minisini
a3d6ba73e5 [INTERPRETER]
* NEW: Do not use "boolean" anymore. Use "bool" instead.

[COMPILER]
* NEW: Do not use "boolean" anymore. Use "bool" instead.



git-svn-id: svn://localhost/gambas/trunk@2091 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-07-08 19:57:50 +00:00
Benoît Minisini
2308a3b1b9 [INTERPRETER]
* BUG: Exist("") now correctly returns FALSE when running an executable.


git-svn-id: svn://localhost/gambas/trunk@2088 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-07-07 16:37:56 +00:00
Benoît Minisini
d0b3aecc0b [DEVELOPMENT ENVIRONMENT]
* NEW: Project source files are now stored in the ".src" project 
  sub-directory.
* NEW: Project source files can be organized from the project treeview by 
  creating directories, moving source files with drag and drop or copy and
  paste.
* NEW: The hall of fame now uses some sort of blur effect.
* BUG: The breakpoint list should be accurate in all situations now.
* NEW: Showing the bottom status bar is now an entry in the "View" menu.

[INTERPRETER]
* BUG: Fix a possible crash in database component classes having 
  sub-collections, like Result.Fields.

[COMPILER]
* NEW: Support for projects whose sources are stored in the ".src" 
  sub-directory.

[GB.GTK]
* BUG: Frame.Font now works correctly.
* BUG: If the Control.Font property is set with a family name, the other 
  boolean properties of the font are reset.

[GB.NET]
* BUG: Fix a possible crash in the Socket class at connection.

[GB.QT]
* BUG: If the Control.Font property is set with a family name, the other 
  boolean properties of the font are reset.

[GB.QT4]
* BUG: If the Control.Font property is set with a family name, the other 
  boolean properties of the font are reset.
* NEW: TreeView and ColumnView got a new property, ParentKey, that returns 
  the key of the current item parent.
* BUG: Menu shortcuts are correctly disabled now, when a parent menu is 
  disabled.


git-svn-id: svn://localhost/gambas/trunk@2063 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-07-03 20:15:26 +00:00
Benoît Minisini
940d5f83ad [GB.GUI]
* NEW: Use gb.qt4 when the current desktop is KDE4.

[GB.QT4]
* BUG: Watcher now correctly catches the destruction of its watched 
  control.


git-svn-id: svn://localhost/gambas/trunk@2053 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-06-27 22:02:18 +00:00
Benoît Minisini
32bf31484c [DEVELOPMENT ENVIRONMENT]
* BUG: Correctly center the option dialog at startup.

[INTERPRETER]
* BUG: Fix compilation on 64 bits systems.

[GB.FORM]
* BUG: Side panel buttons were implemented differently to have a good look 
  in all GUI components.

[GB.QT4.EXT]
* NEW: Editor.ShowString() is a new method to define a string that will be 
  highlighted everywhere it is found.


git-svn-id: svn://localhost/gambas/trunk@2027 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-06-18 23:47:56 +00:00
Benoît Minisini
0e7ea449b5 [INTERPRETER]
* BUG: Freeing a collection does not crash anymore if a collection item is 
  removed during the process.
* BUG: Static variables are correctly inherited now.


git-svn-id: svn://localhost/gambas/trunk@2023 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-06-17 14:13:50 +00:00
Benoît Minisini
b6097b30d7 [INTERPRETER]
* NEW: Some enhancements in memory allocation debugging.

[GB.QT]
* BUG: Form.Load() method now really work, by using reparenting. The fix 
  may be backported to Gambas 2.

[GB.QT4]
* BUG: Window.Mask and Window.Picture work correctly now.
* BUG: TextArea background is accurate now.
* BUG: Mouse event properties of the Mouse class now return the expected 
  value.
* BUG: Tray icons now work correctly.
* BUG: Form.Load() method now really work.
* BUG: Windows are correctly closed.


git-svn-id: svn://localhost/gambas/trunk@2020 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-06-16 00:17:25 +00:00
Benoît Minisini
349424f629 [DEVELOPMENT ENVIRONMENT]
* NEW: Use the online help if an help page is not found locally.
* BUG: The editor procedure combo-box now keeps the focus when it is 
  opened.

[GB.QT]
* BUG: Fix the Clipboard class.

[GB.QT4]
* BUG: Clipboard.Copy() now works correctly if the mimetype is not 
  specified.
* BUG: Closing the last window does not quit the application unexpectedly 
  anymore.


git-svn-id: svn://localhost/gambas/trunk@2012 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-06-10 22:41:11 +00:00
Benoît Minisini
36742ae3ac [DEVELOPMENT ENVIRONMENT]
* BUG: Some fixes in real-time search highlighting.

[INTERPRETER]
* BUG: Fix the behaviour of the file descriptor watch manager.
* NEW: All streams now have a Tag property.

[EXAMPLES]
* NEW: ServerSocket and ClientSocket examples were modified to test the new
  event of the Socket class.

[GB.GTK]
* BUG: Fix the behaviour of the file descriptor watch manager.

[GB.NET]
* NEW: Socket now has a Write event. This event is raised after something 
  has been written on the socket, *and* if writing is possible again.

[GB.QT]
* BUG: Fix the behaviour of the file descriptor watch manager.


git-svn-id: svn://localhost/gambas/trunk@2004 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-06-06 23:31:48 +00:00
Benoît Minisini
0c14eb0bdb [DEVELOPMENT ENVIRONMENT]
* NEW: Remove the project stack size option.

[INTERPRETER]
* NEW: Make the stack grow as needed. Note that the stack will never 
  shrink.

[GB.DEBUG]
* BUG: This component now compiles correctly.


git-svn-id: svn://localhost/gambas/trunk@1987 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-05-27 18:42:48 +00:00
Benoît Minisini
f532a37249 [CONFIGURATION]
* NEW: WARNING! The bytecode has changed, so every project needs to be
  recompiled.

[WEB SITE MAKER]
* NEW: Some more translations.

[INTERPRETER]
* NEW: Assign() is a new function. It is like Eval(), except that the
  expression can be an assignment.

[GB.EVAL]
* NEW: Implementation of the new Assign() function.
* NEW: The Expression.Compile() method takes a new optional boolean 
  argument that indicates if we are compiling an assignment or not.

[GB.NET.CURL]
* BUG: A asynchronous transfer that ends do not stop the other ones 
  anymore.


git-svn-id: svn://localhost/gambas/trunk@1986 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-05-26 22:34:39 +00:00
Benoît Minisini
637b19afb9 [INTERPRETER]
* NEW: Do not call the "_init" static initializer of exported classes at
  component load. Do it when the class is used for the first time.


git-svn-id: svn://localhost/gambas/trunk@1977 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-05-25 13:43:44 +00:00
Benoît Minisini
cf2d76daca [CONFIGURATION]
* NEW: WARNING! The bytecode has changed, so every project needs to be
  recompiled.

[DEVELOPMENT ENVIRONMENT]
* NEW: A new project option to use the terminal emulator of the current 
  desktop instead of the built-in output window.
* BUG: "svn update" is now run non-interactive.

[WIKI CGI SCRIPT]
* NEW: {html ... } is a new section to put verbatim HTML inside a page.

[INTERPRETER]
* BUG: Fix a possible bug in the FreeBSD way of opening a pseudo-terminal
  when running an external process.
* NEW: External process can have a custom environment.
* BUG: Some forgotten FreeBSD patch.
* NEW: The hidden "-f" option now takes as argument the name of the debug
  fifo file without the extension. This is needed as now the IDE can put
  a terminal emulator between the debugged process and itself.

[COMPILER]
* NEW: New syntax for the EXEC and SHELL instruction. Now the WITH keyword
  can introduce an array of string, each of one being an environment 
  variable "NAME=VALUE".

[GB.DEBUG]
* NEW: Debug.Start() now returns the name of the debug fifo, without the
  extension.


git-svn-id: svn://localhost/gambas/trunk@1971 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-05-22 14:52:36 +00:00
Benoît Minisini
a282449a85 [INTERPRETER]
* BUG: Arguments passed by reference do not crash randomly anymore.


git-svn-id: svn://localhost/gambas/trunk@1964 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-05-18 12:00:48 +00:00
Benoît Minisini
2b8528bae1 [INTERPRETER]
* BUG: Fix the warning message displayed when a locale cannot be loaded.

[WEB SITE MAKER]
* NEW: All pages are now translatable.


git-svn-id: svn://localhost/gambas/trunk@1958 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-05-15 21:23:01 +00:00
Benoît Minisini
a83d81f98d [CONFIGURATION]
* BUG: FreeBSD patches.

[INTERPRETER]
* BUG: FreeBSD patches.

[COMPILER]
* NEW: Support for FreeBSD getopt_long().

[ARCHIVER]
* NEW: Support for FreeBSD getopt_long().

[INFORMER]
* NEW: Support for FreeBSD getopt_long().

[SCRIPTER]
* BUG: The <%...%> markups are now taken into account everywhere inside a 
  server page.

[WIKI CGI SCRIPT]
* BUG: Speeds up the rename function.

[GB.COMPRESS.ZLIB]
* BUG: Do not include the Linux specific header <bits/wordsize.h> anymore.

[GB.DB.ODBC]
* BUG: Removed some compilation warnings.

[GB.GTK]
* BUG: ComboBox now raises focus events.
* BUG: Newly opened windows are now correctly shown at the specified 
  position.
* BUG: DrawingArea.Clear() does not erase the border anymore if the 
  DrawingArea is cached.
* BUG: Hiding a row or a column does not prevent the mouse wheel to work 
  anymore in the GridView control.

[GB.QT]
* BUG: Compound controls like ComboBox should not raise spurious focus 
  events anymore.
* BUG: Fix a possible crash in GridView repaint.

[GB.QT4]
* BUG: Compound controls like ComboBox should not raise spurious focus 
  events anymore.


git-svn-id: svn://localhost/gambas/trunk@1955 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-05-15 17:57:29 +00:00
Benoît Minisini
fdabd0c98c [CONFIGURATION]
* NEW: The gb.qte component has been removed.

[DEVELOPMENT ENVIRONMENT]
* NEW: Support for modules in project file deletion.

[INTERPRETER]
* BUG: Format$() now checks its second argument correctly when it is an 
  integer.
* BUG: Exported classes for components written in Gambas are now correctly 
  loaded when inheritance between them is used.

[GB.DRAW]
* BUG: Some properties of the Draw class didn't correctly check that a 
  drawing device was opened.

[GB.FORM.MDI]
* NEW: The Toolbar control now raises a Configure event when its 
  configuration has changed.

[GB.GTK]
* BUG: Fix Draw.Picture() and Draw.Image() on transparent pictures.
* BUG: Correctly initialize the foreground and background colors at 
  Draw.Begin().

[GB.QT]
* BUG: Fix Draw.Picture() and Draw.Image() on transparent pictures.

[GB.QTE]
* NEW: This component has been removed.


git-svn-id: svn://localhost/gambas/trunk@1939 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-05-01 16:27:45 +00:00
Benoît Minisini
d48356d59d [DEVELOPMENT ENVIRONMENT]
* NEW: Now each database driver has its own component, so that you can 
  explicitely check it. This way, these dependencies are taken into account
  when making a binary package.
* NEW: Starting support for WebPage classes, and other kind of forms.

[WIKI CGI SCRIPT]
* BUG: Symbol pages are never cached, so that refreshing a 2.0 symbol page 
  does not break a 3.0 symbol page.

[INTERPRETER]
* NEW: gb.IgnoreCase is a new property that is a synonymous of gb.Text.
* NEW: gb.UseLanguage is a new property that is a synonymous of gb.Language.

[GB.DB.*]
* NEW: All database drivers now have a *.component file, and is visible in 
  the IDE project property dialog.


git-svn-id: svn://localhost/gambas/trunk@1926 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-04-10 21:19:32 +00:00
Benoît Minisini
ed62e2dc78 [DEVELOPMENT ENVIRONMENT]
* BUG: Store autoconf extra tests in the .project file, not in its own 
  hidden file anymore.
* NEW: Add KDE4 as possible icon theme.
* BUG: The packager wizard logic has been fixed.

[INTERPRETER]
* NEW: The Array class has now almost all standard array methods. They all 
  use Variant as array contents datatype, internally converting values to
  the real array datatype.
* NEW: Quote$() now keeps characters whose code is greater as 126 unquoted.

[COMPILER]
* NEW: '\b' and '\f' are two new escaped sequences in strings.
* BUG: Move some debugging breakpoint instructions so that the debugger 
  breaks at the right line when there is an error during an IF or a CASE 
  instruction.

[GB.EVAL]
* NEW: '\b' and '\f' are two new escaped sequences in strings.

[GB.FORM]
* NEW: Some new stock icons.

[GB.QT.EXT]
* NEW: Editor.Lines[].GetInitialState() fills the Highlight properties
  (State, Tag and AlternateState) with the initial state of a line.

[GB.WEB]
* NEW: JSON is a new class that can encode and decode the JSON format.


git-svn-id: svn://localhost/gambas/trunk@1925 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-04-08 10:11:16 +00:00
Benoît Minisini
eb4ed0212c [INTERPRETER]
* BUG: Array.Clear() now does not crash anymore on multi-dimensional 
  arrays. It just voids the array contents. Array.Clear() behaviour on 
  single dimensional arrays did not change: it removes all elements from
  the array.

[GB.GTK]
* BUG: TextLabel.Adjust() now works as expected.


git-svn-id: svn://localhost/gambas/trunk@1892 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-03-02 11:36:42 +00:00
Benoît Minisini
e1712973c2 [DEVELOPMENT ENVIRONMENT]
* 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
2009-02-17 01:51:25 +00:00
Benoît Minisini
50d190496d [INTERPRETER]
* BUG: Printing a debugging expression with an array class name only 
  inside does not crash the interpreter anymore.
* OPT: Object[].Find() and Object[].Exist() were optimized. They do not 
  check and use the _compare special method anymore. They use the object
  address directly.

[GB.QT4]
* BUG: Clipboard.Format does not crash anymore if there is nothing in the
  clipboard.
* BUG: Do not process events just after a menu popup has been hidden.


git-svn-id: svn://localhost/gambas/trunk@1874 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-02-16 21:39:07 +00:00
Benoît Minisini
4401efa276 [GB.FORM]
* NEW: The Balloon shape has been redesigned.
* BUG: The Balloon should not flicker anymore.

[GB.GTK]
* BUG: Image.Draw() now works correctly if X or Y are negative.
* NEW: WindowType is a new static class that defines constants for the 
  Window Type property. The old constants that were located in the Window
  class have been removed.

[GB.NET]
* BUG: UdpSocket.TargetPort returns the accurate value now.

[GB.QT]
* BUG: The Window.Mask property works correctly now.
* BUG: Draw.Image() and Draw.Picture() now work correctly on transparent 
  pictures.
* NEW: WindowType is a new static class that defines constants for the 
  Window Type property. The old constants that were located in the Window
  class have been removed.
* NEW: The arrangement design has been redesigned. Some arrangement bugs 
  were fixed by the way.

[GB.QT4]
* NEW: WindowType is a new static class that defines constants for the 
  Window Type property. The old constants that were located in the Window
  class have been removed.
* NEW: The arrangement design has been redesigned. Some arrangement bugs 
  were fixed by the way.


git-svn-id: svn://localhost/gambas/trunk@1873 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-02-15 23:49:07 +00:00
Benoît Minisini
e2c952c375 [DEVELOPMENT ENVIRONMENT]
* BUG: UTF-8 characters are allowed in project data file names now.

[INTEPRETER]
* NEW: Allocation debugging messages can be redirected to a log file.

[GB.DB.FORM]
* BUG: DataBrowser FBrowser form does not incorrectly override Form.Panel 
  anymore.

[GB.GTK]
* BUG: TabStrip.Font now behaves as expected.
* BUG: GridView Row and Column properties can be set independently.
* BUG: Fix the container arrangement and the ClientX / ClientY properties.

[GB.FORM]
* OPT: FileView redraws were delayed so that they are optimized.
* BUG: Balloon tried to not take the focus.

[GB.QT]
* BUG: Fix the GridView last column stretching.

[GB.QT4]
* NEW: The AutoResize property of Button, ToolButton and ToggleButton 
  controls were implemented.
* BUG: Button, ToolButton and ToggleButton now behave correctly when their
  font change.
* OPT: Arrangement was optimized.
* BUG: TabStrip ClientX, ClientY, ClientWidth and ClientHeight properties 
  now return accurate values.

[GB.QT4.EXT]
* BUG: Editor now draws non-highlighted lines correctly.


git-svn-id: svn://localhost/gambas/trunk@1868 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-02-12 16:43:25 +00:00
Benoît Minisini
30c9618d6b [INTERPRETER]
* BUG: Fix a string memory leak.


git-svn-id: svn://localhost/gambas/trunk@1863 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-02-06 17:40:15 +00:00
Benoît Minisini
264a4f1cbd [INTERPRETER]
* BUG: Remove stderr redirection.


git-svn-id: svn://localhost/gambas/trunk@1862 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-02-06 12:07:52 +00:00
Benoît Minisini
d6b1f777da [INTERPRETER]
* NEW: Temporarily disable memory leak warning message.


git-svn-id: svn://localhost/gambas/trunk@1861 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-02-06 12:05:39 +00:00
Benoît Minisini
1fa019cd45 [INTERPRETER]
* BUG: Correctly close streams i.e. ignore only standard streams.


git-svn-id: svn://localhost/gambas/trunk@1860 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-02-05 14:53:16 +00:00
Benoît Minisini
c2e1eb9778 [INTERPRETER]
* BUG: Buffered streams now correctly handle interrupted system calls.

[GB.CAIRO]
* BUG: Cairo.Scale() now scales.


git-svn-id: svn://localhost/gambas/trunk@1859 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-02-05 13:52:52 +00:00
Benoît Minisini
3207ea9c1f [INTERPRETER]
* BUG: Fix a backtrace memory leak in error management.
* BUG: Fix a memory leak in process streams.

[GB.FORM]
* BUG: Some bug fixes in DatePicker. It does not work correctly with 
  gb.gtk yet!

[GB.GTK]
* BUG: Fix the container arrangement and the ClientX / ClientY properties.
* BUG: A form is not its own event observer if one was specified at 
  instanciation time.

[GB.QT]
* OPT: The container arrangement is now triggered the same way as in 
  gb.gtk. No Qt event filter is used anymore.

[GB.QT4]
* OPT: The container arrangement optimization from gb.qt has been partially
  applied to gb.qt4.


git-svn-id: svn://localhost/gambas/trunk@1858 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-02-04 22:51:20 +00:00
Benoît Minisini
d3ea790600 [EXAMPLES]
* BUG: Fix PdfViewer example as the PdfDocument.Picture property does not 
  exist anymore.

[INTERPRETER]
* BUG: MOD works again with Long values.

[GB.CAIRO]
* BUG: Fix CairoMatrix.Translate() declaration.
* BUG: Correctly release device and pattern at Cairo.End().
* BUG: Automatically call Cairo.End() as many time as needed at program 
  exit.


git-svn-id: svn://localhost/gambas/trunk@1849 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-02-02 21:16:58 +00:00
Benoît Minisini
52525b957a [INTERPRETER]
* BUG: Fix symbol overriding validation on 64 bits OS.


git-svn-id: svn://localhost/gambas/trunk@1847 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-02-02 14:53:45 +00:00
Benoît Minisini
7b8d19516e [INTERPRETER]
* BUG: Do not close standard file descriptor during exit.


git-svn-id: svn://localhost/gambas/trunk@1846 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-02-02 13:04:04 +00:00
Benoît Minisini
4d91620b03 [INTERPRETER]
* BUG: Some 64 bits fixes.

[COMPILER]
* BUG: Fix how two error messages are printed.


git-svn-id: svn://localhost/gambas/trunk@1845 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-02-02 11:34:23 +00:00
Benoît Minisini
d9b01cf9f1 [INTERPRETER]
* BUG: Add a debugging message when there is a symbol override error.


git-svn-id: svn://localhost/gambas/trunk@1839 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-01-31 15:54:28 +00:00
Benoît Minisini
084f682161 [INTERPRETER]
* BUG: Fix the arithmetic operations on Boolean, Byte and Short, so that 
  everything is correctly truncated.


git-svn-id: svn://localhost/gambas/trunk@1836 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-01-30 01:16:03 +00:00
Benoît Minisini
98dfd94c5a [DEVELOPMENT ENVIRONMENT]
* BUG: Replace "Image provider" feature by "Image loading and saving" 
  feature in the project property dialog.

[INTERPRETER]
* NEW: Collection[""] does not raise a "void key" error anymore. It just 
  returns NULL.
* BUG: The Collection array accessor error management is not disturbed by 
  the debugger anymore. This fix a possible interpreter crash.


git-svn-id: svn://localhost/gambas/trunk@1832 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-01-29 16:11:30 +00:00
Benoît Minisini
e945a9faa6 [INTERPRETER]
* NEW: Requesting a component interface automatically loads the component 
  now.
* NEW: The Image and Picture functions in the interpreter API were removed.

[GB.DRAW]
* NEW: A new function in the Draw interface to get the size of a picture.
  This function replaces the removed Picture interpreter API.

[GB.IMAGE]
* NEW: This is a new component that manages images in memory. It implements 
  the Image class, can create images of many formats (RGB, RGBA, BGRA...) 
  and convert image data between different formats. This component replaces
  the previous interpreter Image API. All components were ported to this
  new image management system by loading this component automatically.
  Beware that the Image constructor has changed! The transparent property
  has been removed, and there is an optional color argument that is used
  for initializing the image data. Moreover, many classes (Webcam, 
  PdfDocument...) that have an Image property lost their Picture property.
  Now to get a Picture, you must use the Image property and then convert
  the Image to a Picture.

[GB.QT]
* BUG: As now the Image class overrides the one located in gb.image, it 
  must be declared early, at least earlier than the Picture class.


git-svn-id: svn://localhost/gambas/trunk@1803 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-01-16 23:12:10 +00:00
Benoît Minisini
c4c631ecb9 [CONFIGURATION]
* NEW: Remove the gb.image.info component.
* NEW: Start removing the gb.image component.

[DEVELOPMENT ENVIRONMENT]
* BUG: Code editor and text editor now arrange their contents correctly 
  when the toolbar size changes.
* BUG: The picture of a form action is the Icon property, not the Picture 
  property.

[INTERPRETER]
* BUG: The _compare special method now is not called anymore if one of the 
  compared object references is null.

[GB.GTK]
* NEW: Control.Drag() and Drag() now return the drop destination.

[GB.FORM.MDI]
* NEW: The toolbar icon size can be changed.
* BUG: Actions that exist on different forms are correctly loaded.
* NEW: The cursor keys can be used now in the shortcut configuration dialog 
  to move the gridview current row. Consequently, you cannot use them as 
  shortcuts.

[GB.NET]
* BUG: Serial port devices are now watched for reading, not for writing. So 
  the callback will not be called permanently.

[GB.QT]
* NEW: The Arrange event is now raised just before a container is arranged, 
  not after. Moreover, it cannot called recursively anymore.

[GB.QT4]
* NEW: Control.Drag() and Drag() now return the drop destination.
* NEW: Container.Children.Clear() is a new method that destroys all 
  children of a container.
* NEW: Utility windows now use their initial size as minimum size.
* BUG: Do not loop indefinitely when arranging the contents of a 
  ScrollView.


git-svn-id: svn://localhost/gambas/trunk@1797 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-01-13 00:42:55 +00:00
Benoît Minisini
82e21c25f3 [INTERPRETER]
* BUG: Always load a class from the component it is located into.


git-svn-id: svn://localhost/gambas/trunk@1793 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-01-09 14:07:56 +00:00
Benoît Minisini
3b15dde6c1 [DEVELOPMENT ENVIRONMENT]
* BUG: Pasting more than one control works again.
* BUG: Save actions associated with any control now.

[INTERPRETER]
* BUG: Do not try to raise an event if the source control is invalid.

[GB.FORM]
* NEW: Stock.GetSize() is a new method that returns the pixel size of an 
  icon given its string size: "small", "medium", "big", and so on...
* BUG: Workaround the ballon corner drawing bugs.

[GB.FORM.MDI]
* NEW: The toolbar configuration dialog is finished. But that only works 
  at the moment if you do not show/hide toolbar buttons explicitely.

[GB.QT]
* NEW: The drag & drop frame is now one pixel wide.
* NEW: Drag() and Control.Drag() now returns where the control was dropped, 
  or NULL if the drag & drop was cancelled or the drop destination a 
  foreign widget.
* BUG: The arrangement algorithm enumerates correctly container children 
  now.
* BUG: Do not loop indefinitely when arranging the contents of a 
  ScrollView.
* NEW: Add the Action property to TextBox, ComboBox, SpinBox, ProgressBar
  and Slider controls. You may want to put them in a Toolbar.


git-svn-id: svn://localhost/gambas/trunk@1790 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-01-07 01:59:48 +00:00
Benoît Minisini
450b87b792 [INTERPRETER]
* NEW: [...] now returns an object array if its two arguments are objects 
  from different classes.


git-svn-id: svn://localhost/gambas/trunk@1788 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-01-05 11:53:53 +00:00
Benoît Minisini
da334a98dd [INTERPRETER]
* NEW: The [...] syntax can create specialized arrays. For example, 
  "[[1,2],[3,4]]" now returns an Integer[][] object.
* NEW: The internal CLASS structure has been reorganized.


git-svn-id: svn://localhost/gambas/trunk@1787 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-01-05 11:38:03 +00:00
Benoît Minisini
f106372a34 [INTERPRETER]
* BUG: Really converts the argument to a string in Html$(), Quote$(), 
  Shell$() and Unquote$().


git-svn-id: svn://localhost/gambas/trunk@1786 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-01-05 10:31:11 +00:00
Benoît Minisini
a0ec1ab2d6 [INTERPRETER]
* BUG: Html$() now automatically converts its argument to a string.


git-svn-id: svn://localhost/gambas/trunk@1785 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-01-05 10:25:50 +00:00
Benoît Minisini
4270c30d20 [DEVELOPMENT ENVIRONMENT]
* NEW: Actions lists are now written directly in *.form files. The 
  compiler will copy them into *.action files in the '.action' project 
  directory.

[WIKI CGI SCRIPT]
* NEW: The "?view" argument in URLs is now kept through links.

[INTERPRETER]
* BUG: Paths beginning with "../" now work correctly with executables.
* BUG: Fix a crash when using Dir() on relative paths.

[COMPILER]
* NEW: Now the compiler automatically generates *.action files from the 
  *.form file contents.

[GB.FORM.MDI]
* BUG: Support for the new action file format in the action configuration 
  dialog.
* BUG: Bad shortcuts are correctly handle in the action configuration 
  dialog now.


git-svn-id: svn://localhost/gambas/trunk@1782 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-01-04 18:55:25 +00:00
Benoît Minisini
1f0a8eb04e [INTERPRETER]
* BUG: Raising an error with an incorrect message does not crash anymore.

[DEVELOPMENT ENVIRONMENT]
* BUG: A warning is displayed now when a component project has no exported 
  class.
* BUG: Instead of displaying an error, an unreadable *.component file now 
  just displays a warning.
* NEW: In the project property dialog, split the component list between 
  standard components and user components.
* BUG: Quote correctly strings again in *.po generated files. Translations 
  are not corrupted anymore!

[GB.FORM]
* NEW: Label and Separator children are not selectable anymore in the 
  ListContainer control.

[GB.QT4]
* BUG: ScrollView scrollbars are came back.


git-svn-id: svn://localhost/gambas/trunk@1780 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-01-04 11:55:37 +00:00
Benoît Minisini
e3b1014b8f [INTERPRETER]
* BUG: Dir() and RDir() work again on relative paths.


git-svn-id: svn://localhost/gambas/trunk@1771 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-01-02 17:15:07 +00:00
Benoît Minisini
802a28b2d6 [CONFIGURATION]
* 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
2009-01-02 00:05:38 +00:00
Benoît Minisini
57491bc71c [INTERPRETER]
* BUG: If loading a class has failed, do not try to load it twice. Raise 
  an error instead.


git-svn-id: svn://localhost/gambas/trunk@1760 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-01-01 14:46:02 +00:00
Benoît Minisini
f7889c1147 [CONFIGURATION]
* NEW: Bytecode version has been incremented. All projects must be 
  recompiled!

[DEVELOPMENT ENVIRONMENT]
* BUG: Rewrite code that used badly overridden symbols.

[INTERPRETER]
* BUG: Check that the overridding symbol is compatible with the overridden 
  one. For example, a static method can be overridden by a static method 
  only, a constant can be overriden by a static property, and so on.
* NEW: A new error message for badly overridden symbols.
* NEW: Tr$() is a new function that translates its argument and returns it.

[GB.GTK]
* BUG: Rewrite code that used badly overridden symbols. Affected classes 
  are: Window, TabStrip, 

[GB.FORM.MDI]
* BUG: Translate action descriptions in the action configuration dialog.
* NEW: Sort actions by description in the action configuration dialog.
* NEW: Automatically remember action configuration dialog size.
* BUG: Fix authorized shortcuts in the shortcut edit dialog.
* BUG: Rewrite code that used badly overridden symbols. Workspace is the
  only affected class.

[GB.SETTINGS]
* NEW: LoadWindow() and SaveWindow() are two new public methods to load
  and save window position by specifying the settings key.

[GB.QT]
* BUG: Rewrite code that used badly overridden symbols. Affected classes 
  are: Window, TabStrip, 


git-svn-id: svn://localhost/gambas/trunk@1759 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-01-01 13:42:17 +00:00
Benoît Minisini
abdd0a0866 [DEVELOPMENT ENVIRONMENT]
* NEW: Start assigning actions to everything.
* NEW: Action shortcuts can be configured.
* NEW: Project actions are automatically saved in the .action directory.
* BUG: Signature of native arrays is correct now.

[INTERPRETER]
* BUG: GB_LoadFile() does not leak file descriptors anymore.
* NEW: Relative paths starting with "../" allows to open files located in 
  the main archive from a component.

[ARCHIVER]
* NEW: Store the ".action" directory in the archive.

[GB.DB]
* BUG: Correctly check that table name are not void in Create(), Find(), 
  Edit() and Delete() methods.

[GB.FORM]
* NEW: A new stock icon named "shortcut". Mmm... Should be named 
  "keyboard".

[GB.FORM.MDI]
* NEW: Support for automatic configuration of action shortcuts.
* NEW: Action.Configure() is a new method that opens a dialog for 
  configuring shortcuts. Shortcut configuration is stored in the 
  application setting files, under the '[gb.form.mdi/Shortcuts]' slot.

[GB.QT]
* NEW: Action[].Shortcut is a new property for setting or getting the 
  shortcut of an action.
* BUG: Correctly opens startup forms again.


git-svn-id: svn://localhost/gambas/trunk@1758 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-12-31 15:55:40 +00:00
Benoît Minisini
7323ee03a3 [CONFIGURATION]
* BUG: Fix the configuration of gb.image.info.

[INTERPRETER]
* NEW: The GB.LoadFile() and GB.ReleaseFile() API have changed. Now they 
  always use memory mapping instead of loading the file in memory.

[GB.IMAGE.INFO]
* BUG: Now ImageStat() works with the "~" shortcut in path names.


git-svn-id: svn://localhost/gambas/trunk@1748 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-12-28 22:41:55 +00:00
Benoît Minisini
85246fbaaa [CONFIGURATION]
* NEW: Upgrade libtool autoconf macros and libltdl sources to the 1.5.26 
  version.

[DEVELOPMENT ENVIRONMENT]
* BUG: Control and window dimensions can go up to 4096x4096 pixels.
* BUG: When unchecking GUI components in a project, the edited forms are 
  automatically closed.
* BUG: Do not use the form icon on form class editors when refreshing the 
  project.
* BUG: In the icon editor, filling with a transparent color won't enter an 
  infinite loop anymore.
* BUG: Selecting the "Collection" word while debugging does not crash the 
  IDE anymore.
* NEW: Pressing Escape now closes a debugging window.
* BUG: The 'Minimize on run' option works correctly now.

[INTERPRETER]
* BUG: SUPER now works inside overriden static methods.

[GB.DB.ODBC]
* BUG: Handle ODBC drivers that can return the number of records in a 
  query better.

[GB.DEBUG]
* BUG: If there is an I/O error between a debugged process and the IDE, the
  process is aborted.
* BUG: Evaluating a class name returns better information now.

[GB.EVAL]
* BUG: Highlight.Analyze correctly handle code lines having non ASCII 
  characters inside.

[GB.FORM]
* BUG: The Balloon does not take the focus anymore.

[GB.FORM.MDI]
* NEW: Starting to enhance the Action class to provide shortcuts and 
  toolbar configuration dialog. Does nothing at the moment!

[GB.GTK]
* BUG: Fix a leak in font objects management.
* BUG: Picture.Load() yet loads an image, but internally converts it to 
  a pixmap. It speeds up following draws based on this picture.
* BUG: Startup forms hidden at design time are not shown automatically 
  anymore.
* NEW: The Action class is now shared with gb.qt by using a symbolic link.

[GB.IMAGE.INFO]
* NEW: New component to get information about an image file without having 
  to fully load it.

[GB.QT]
* BUG: Disable automatic extra indent of Labels.
* BUG: Startup forms hidden at design time are not shown automatically 
  anymore.
* BUG: Don't allow widgets to be destroyed while processing non-input 
  events.


git-svn-id: svn://localhost/gambas/trunk@1747 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-12-28 19:01:39 +00:00
Benoît Minisini
84fd13543e [INTERPRETER]
* NEW: A domain name '(none)' is ignored when forging the FQDN for 
  components that need it, like gb.net.smtp.


git-svn-id: svn://localhost/gambas/trunk@1721 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-12-01 00:30:11 +00:00
Benoît Minisini
d5b95b0453 [INTERPRETER]
* BUG: The interpreter does not crash anymore when adding an integer 
  constant to a string.


git-svn-id: svn://localhost/gambas/trunk@1716 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-11-24 20:43:51 +00:00
Benoît Minisini
047bf86985 [WIKI CGI SCRIPT]
* BUG: Adds a <p> markup automatically after symbol syntax boxes.

[INTERPRETER]
* BUG: Fix currency formats.

[GB.FORM]
* BUG: Fix a display glitch in the list of relative sizes in the font 
  dialog.

[GB.QT]
* BUG: Releases the internal font object when setting NULL to the font 
  property of a control.


git-svn-id: svn://localhost/gambas/trunk@1713 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-11-24 14:11:01 +00:00
Benoît Minisini
02ce200528 [INTERPRETER]
* BUG: Correctly handle interrupted system calls in streams defined 
  outside of the interpreter.
  
[GB.QT.EXT]
* BUG: Handle cursor moves correctly when procedures are folded.


git-svn-id: svn://localhost/gambas/trunk@1711 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-11-24 12:09:40 +00:00
Benoît Minisini
72889d9706 [INTERPRETER]
* BUG: A internal stream flag to know if data is immediately available. 
  File and memory streams have this flag set. Streams defined in component 
  do not have this flag set by default.


git-svn-id: svn://localhost/gambas/trunk@1708 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-11-22 12:58:36 +00:00
Benoît Minisini
4d36d22784 [CONFIGURATION]
* NEW: Increment bytecode version.

[INTERPRETER]
* NEW: New routine to deal with the new immediate collection operator. The
  bytecode has changed consequently.

[COMPILER]
* NEW: A new syntax to the array operator to create collections:
  [ <key>:<value>, <key>:<value> ... ]

[GB.EVAL]
* NEW: Implement the new syntax for creating collections.


git-svn-id: svn://localhost/gambas/trunk@1699 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-11-11 17:22:38 +00:00
Benoît Minisini
03800cc050 [INTERPRETER]
* NEW: Format() now pad numbers with spaces according to the number of '#' 
  characters before the decimal point.


git-svn-id: svn://localhost/gambas/trunk@1696 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-11-11 14:41:08 +00:00
Benoît Minisini
49d82ab1b4 [INTERPRETER]
* NEW: Remove a now useless source file.


git-svn-id: svn://localhost/gambas/trunk@1688 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-11-10 00:18:52 +00:00
Benoît Minisini
c91850d055 [INTERPRETER]
* OPT: Optimizations in string allocation.

[GB.DB]
* OPT: Optimization in query making. Storing big blobs inside a field in 
  now about twice faster.

[GB.DB.POSTGRESQL]
* BUG: Fix string quoting for postgresql >= 8.2.


git-svn-id: svn://localhost/gambas/trunk@1687 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-11-10 00:18:00 +00:00
Benoît Minisini
db6b81aa59 [INTERPRETER]
* OPT: Optimization in Replace() when the replace string is longer than 
  the search string. String[].Join() becomes faster too.


git-svn-id: svn://localhost/gambas/trunk@1683 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-11-08 23:42:08 +00:00
Benoît Minisini
155dab4b86 [INTERPRETER]
* BUG: Enumarting something inside a _next() enumerator method now is 
  safe.
  
[GB.SETTINGS]
* NEW: Settings.Keys is a new property that enumerates keys stored in a
  settings file. This property can be used like an array if you want to
  enumerate keys under a specific slot only.


git-svn-id: svn://localhost/gambas/trunk@1682 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-11-08 17:45:13 +00:00
Benoît Minisini
f8c4ccc0c5 [INTERPRETER]
* OPT: String[].Join() was optimized when there is no escape character 
  specified.
* OPT: Optimize Replace() when the replace string is shorter than the 
  pattern string.


git-svn-id: svn://localhost/gambas/trunk@1679 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-11-08 14:55:03 +00:00
Benoît Minisini
1082987744 [INTERPRETER]
* BUG: Fix the previous Replace() optimization.


git-svn-id: svn://localhost/gambas/trunk@1677 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-11-07 01:37:45 +00:00
Benoît Minisini
13082f47d7 [INTERPRETER]
* OPT: Replace() was optimized when the search pattern and the replace 
  pattern have the same length.


git-svn-id: svn://localhost/gambas/trunk@1675 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-11-07 01:16:13 +00:00
Benoît Minisini
4cff4ce26c [INTERPRETER]
* NEW: A new interpreter API for setting the endianness of a stream.
* NEW: Another new interpreter API for making a stream blocking or not.

[GB.FORM.MDI]
* NEW: Remove the useless toolbar handle.

[GB.NET]
* BUG: Fix the UdpSocket implementation.
* NEW: UdpSocket now uses an internal buffer, so that successive READs on 
  it work as expected. Beware that the remaining data is lost the next time
  the UdpSocket raises its Read event.



git-svn-id: svn://localhost/gambas/trunk@1669 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-11-04 23:53:39 +00:00
Benoît Minisini
11f6575f51 [CONFIGURATION]
* NEW: Update libtool to version 1.5.24

[INTERPRETER]
* BUG: Lof() returns the correct value for files opened for writing.
* BUG: Dir() and RDir() now work correctly on relative paths.

[GB.WEB]
* BUG: Read and write sessions inside a system lock to prevent two 
  processes from writing the same session at the same time, and then
  corrupting it.


git-svn-id: svn://localhost/gambas/trunk@1666 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-11-02 02:40:10 +00:00
Benoît Minisini
54e8d1093e [INTERPRETER]
* BUG: Fix an uninitialized flag in streams.
* BUG: Stack overflow raised when entering a function should not mix up 
  the interpreter anymore.

[GB.QTE]
* BUG: Fix compilation.


git-svn-id: svn://localhost/gambas/trunk@1664 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-10-30 23:32:38 +00:00
Benoît Minisini
f6ceba1017 [INTERPRETER]
* NEW: The LINE INPUT and INPUT algorithm now deal intelligently with 
  blocking streams.

[GB.NET]
* BUG: Fix stream implementation of SerialPort and Socket.
* NEW: Socket can be set blocking.


git-svn-id: svn://localhost/gambas/trunk@1659 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-10-30 00:54:18 +00:00
Benoît Minisini
6fc736d883 [DEVELOPMENT ENVIRONMENT]
* NEW: The EXEC and SHELL syntax has changed.

[INTERPRETER]
* NEW: Stream.Blocking is new property to set if reading from the stream
  is blocking or not.
* NEW: EXEC or SHELL used without the AS keyword creates a blocking
  process stream.

[COMPILER]
* NEW: EXEC or SHELL can be used with AS and without FOR.

[GB.QT]
* NEW: Toolbox windows are automatically transient for the current active 
  window.


git-svn-id: svn://localhost/gambas/trunk@1657 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-10-29 18:26:56 +00:00
Benoît Minisini
e87e085b3e [INTERPRETER]
* BUG: Silently ignore conversion errors inside String.Upper() and 
  String.Lower() methods.
  
[GB.GTK]
* BUG: Fix the Embedder Plug & Discard methods.

[GB.QT]
* BUG: Fix an uninitialized variable in the QtXEmbedContainer class.


git-svn-id: svn://localhost/gambas/trunk@1656 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-10-28 16:10:06 +00:00
Benoît Minisini
65e6bab6f2 [DEVELOPMENT ENVIRONMENT]
* NEW: A new project runtime option to print the stack backtrace on error.

[GB.WEB]
* BUG: Storing arrays inside Session works correctly now.


git-svn-id: svn://localhost/gambas/trunk@1650 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-10-23 14:09:48 +00:00
Benoît Minisini
9841e47829 [DEVELOPMENT ENVIRONMENT]
* NEW: Inserting a file in the project as symbolic link now tries to 
  create relative symbolic links.
* BUG: Fix an error when clicking on a broken link when inserting a new 
  file in the project.

[INTERPRETER]
* BUG: LINE INPUT does not prevent a following READ instruction from 
  reading all the bytes it wants anymore.


git-svn-id: svn://localhost/gambas/trunk@1647 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-10-21 13:03:03 +00:00
Benoît Minisini
7dabc871a2 [CONFIGURATION]
* BUG: Do not abort installation if a component written in gambas cannot 
  be installed.
* BUG: Disable colorgcc, libtool does not support it.

[DEVELOPMENT ENVIRONMENT]
* BUG: Print the real size of directory contents when getting information 
  on a project directory.

[WIKI CGI SCRIPT]
* BUG: Some fixes in 'example' section and in view mode.

[INTERPRETER]
* BUG: Fix illegal memory access in locale-aware string comparison.
* BUG: Fix a possible crash in String.UCase() and String.LCase().

[GB.FORM]
* BUG: SidePanel arrow buttons are correctly drawn with gb.gtk now.

[GB.GTK]
* BUG: Fix the Image.MakeTransparent() method.
* BUG: Fix the arrangement of ScrollView container.
* BUG: Fix the memory leak in the Picture class.
* BUG: Remove the Window resize event compression.
* BUG: Gridview cells are correctly refreshed now when their Picture or 
  Font property change.

[GB.NET.CURL]
* BUG: The Status property is correctly set after an error now.

[GB.QT]
* BUG: Correctly clears the internal closed flag when opening a Window.
* BUG: WAIT does not take 100% CPU anymore.

[GB.QT.EXT]
* BUG: In Editor, the cursor could disappear when clicking. Fix that.

[GB.XML]
* BUG: The management of XML nodes was incorrect, and so was redesigned.


git-svn-id: svn://localhost/gambas/trunk@1646 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-10-21 09:28:34 +00:00
Benoît Minisini
261de2bcdd [DEVELOPMENT ENVIRONMENT]
* BUG: Set the focus on the form when it becomes active.

[INTERPRETER]
* BUG: Fix locale-aware string comparisons, i.e. string comparisons that 
  use the gb.Language constant.

[GB.QT.EXT]
* BUG: In Editor, do not call the event loop when scrolling. That can 
  lead to infinite recursion.


git-svn-id: svn://localhost/gambas/trunk@1632 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-10-04 23:46:15 +00:00
Benoît Minisini
c6fb7ec834 [INTERPRETER]
* NEW: New substitution syntax to have more then nine arguments. The new
  syntax is '&{N}' where N is the argument index, between 1 and 63.


git-svn-id: svn://localhost/gambas/trunk@1628 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-10-04 14:07:53 +00:00
Benoît Minisini
bd1662716a [INTERPRETER]
* NEW: Make a dedicated tag field in the internal Gambas stream structure.
  That makes the component code cleaner.
* BUG: Void arguments does not trim argument list anymore in the EXEC 
  instruction.

[GB.NET]
* BUG: Setting SerialPort parity should not strip the eighth bit of data 
  bytes anymore.
* BUG: Fix SerialPort error messages.

[GB.NET.CURL]
* BUG: The component was redesigned to fix a crash in stream methods is 
  synchronous mode.


git-svn-id: svn://localhost/gambas/trunk@1627 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-10-04 12:31:49 +00:00
Benoît Minisini
2e9ad6e391 [DEVELOPMENT ENVIRONMENT]
* NEW: The look of container controls and embedder was modified.
* BUG: Displaying the property help on virtual controls does not crash 
  anymore.

[WIKI CGI SCRIPT]
* NEW: Changed the look of "only in 3.0" sections.

[INTERPRETER]
* BUG: Handle correctly additions between a small integer constant and a 
  string, by converting the string to a floating point number.

[GB.DESKTOP]
* BUG: DesktopWindow.State property and state methods are not public 
  anymore.
* NEW: DesktopWindow.MoveResize() method was removed, and now Move() takes
  Width and Height optional parameters.


git-svn-id: svn://localhost/gambas/trunk@1619 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-10-01 13:31:32 +00:00
Benoît Minisini
5acae8e8bb [WIKI CGI SCRIPT]
* NEW: Do not use <pre> markups, they cannot break lines.

[DEVELOPMENT ENVIRONMENT]
* NEW: Replace anonymous object arrays by template arrays.
* NEW: A button that clears the shortcut in the menu editor.
* NEW: When evaluating expression in the console, a semi-colon at the end 
  of the expression prevents the end newline to be printed, like in the 
  PRINT instruction.
* NEW: CTRL+G in the console makes it flash.
* OPT: Remove the CCoolTabs class, that was not used anymore.
* NEW: The main selected control is unselectable in the form editor now.
* NEW: Selected controls can be resized by pressing CTRL and an arrow key.
* NEW: Some form editor shortcuts have been changed to not conflict with
  the previous feature.
* BUG: Fix the horizontal position of the automatic completion.
* BUG: Look in project classes before component classes in automatic 
  completion.

[INTERPRETER]
* BUG: Fix the memory allocation debug routines.
* BUG: When instanciating a template array class, search for element class 
  symbol locally first.
* BUG: Template arrays now correctly release their elements.
* NEW: Update copyright year in gb_common.h header file.

[COMPILER]
* BUG: Manage .list and .info files incrementally, so that they are up to 
  date even when the project is not fully compiled.
* BUG: Float and Single constants are correctly written in the .info file.

[GB.QT.EXT]
* BUG: Fix some painting artifacts in Editor.
* BUG: In Editor, Undo and Redo now should always work correctly when a 
  line is rewritten.
* NEW: In Editor, when a line is rewritten, the Change event is always 
  emitted.
* NEW: The Editor is cleared now when it prints a CTRL+L character.
* NEW: The Editor flashes now when it prints a CTRL+G character.


git-svn-id: svn://localhost/gambas/trunk@1576 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-09-21 23:22:07 +00:00
Benoît Minisini
efc688455c [CONFIGURATION]
* BUG: Some bugs fixes coming from Gentoo.

[DEVELOPMENT ENVIRONMENT]
* BUG: Some fixes in the case of signature symbols.

[WIKI CGI SCRIPT]
* BUG: Try to display the language bar in Firefox the same way as in 
  Konqueror.

[INTERPRETER]
* BUG: Collection[] now correctly raises an error when the key is null.

[GB.GTK]
* BUG: Fix the use of the gambas part in the TreeView class.

[GB.NET.CURL]
* BUG: Successive calls to the Get() or Put() methods should not make the 
  interpreter crash at exit anymore.


git-svn-id: svn://localhost/gambas/trunk@1554 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-09-13 15:35:13 +00:00
Benoît Minisini
7f12844128 [DEVELOPMENT ENVIRONMENT]
* NEW: Support for template array classes in automatic completion.

[INTERPRETER]
* BUG: LIE INPUT and INPUT work correctly on tty streams.

[GB.DB]
* NEW: Add an API that allows a driver function to get the current 
  database when it does not get it from its arguments.

[GB.DB.POSTGRESQL]
* BUG: Fix blob support for some encodings, and when PostgreSQL version is
  greater or equal than 8.2.

[GB.DB.SQLITE3]
* BUG: Field values are not truncated anymore.

[GB.FORM]
* NEW: MessageLabel is a new control made by David Villalobos Cambronero.
  It is a TextLabel that changes its background color for indicating a 
  warning, an error, and so on.

[GB.FORM.MDI]
* NEW: Workspace.ButtonPosition is a new property that allows to put the 
  tab close button on the left or on the right.

[GB.GTK]
* BUG: Speeds up the combo-box control as much as I can. Slowness seems to 
  be a GTK+ feature. :-/

[GB.QT]
* BUG: Fix crash when setting a shortcut on a top-level menu.


git-svn-id: svn://localhost/gambas/trunk@1548 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-09-09 11:03:47 +00:00
Benoît Minisini
d38d3910d4 [INTERPRETER]
* BUG: Enhance and fix support for template array classes.

[COMPILER]
* BUG: Enhance and fix support for template array classes.

[GB.EVAL]
* NEW: Support for template array classes.


git-svn-id: svn://localhost/gambas/trunk@1531 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-08-31 23:45:47 +00:00
Benoît Minisini
50e6bd3583 [CONFIGURATION]
* NEW: Some clean-up in the acinclude.m4 file.

[DEVELOPMENT ENVIRONMENT]
* NEW: Small changes in the project property dialog layout.
* BUG: When opening a project, the packager information is correctly reset.

[WIKI CGI SCRIPT]
* NEW: Simplified chinese translation updated.
* NEW: Support for albanian language.
* NEW: New web site look.

[INTERPRETER]
* BUG: Really really fix the bit manipulation functions.
* NEW: Support for types object arrays. For example: Label[] for an array 
  of Labels.

[COMPILER]
* NEW: Support for types object arrays.
* BUG: Do not store the source file full path into object files, so that 
  rmplint does not cry.

[GB.GTK]
* BUG: Fix the tray icon management. Now GTK+ icons work on Gnome and KDE, 
  and are fully transparent!
* BUG: Tray icons are correctly refreshed when the icon is changed.

[GB.QT]
* BUG: Fix the menu shortcut management.
* BUG: Tray icons are correctly refreshed when the icon is changed.


git-svn-id: svn://localhost/gambas/trunk@1529 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-08-31 00:32:21 +00:00
Benoît Minisini
99730a185f [CONFIGURATION]
* NEW: Use colorgcc if it is present. Beware that ccache removes the 
  colors.

[DEVELOPMENT ENVIRONMENT]
* BUG: Fix the output console search.
* BUG: When making a package, ignore the charset translation errors while 
  printing the commands output.
* NEW: Support for the Khmer language.

[WIKI CGI SCRIPT]
* NEW: Support for the macedonian language.

[INTERPRETER]
* BUG: Fix the interpreter for gcc 4.3.
* NEW: Prints the gcc version used for compiling the interpreter when 
  running 'gbx2 -h'.
* BUG: Fix the initialization of standard input/output streams.

[COMPILER]
* BUG: Fix a compilation warning on FILE_set_chown.

[GB.GTK]
* BUG: Initialize correctly the gControl class.
* BUG: Draw.Tile now works correctly.
* BUG: Fix the vertical alignment management.
* BUG: The alignment of a GridView cell with a picture only is correct now.

[GB.QT]
* BUG: Choose the right moc executable when both QT3 and QT4 are installed 
  on the system.
* BUG: Fix the system tray icons for KDE 3.5.10. :-)
* BUG: The alignment of a GridView cell with a picture only is correct now.


git-svn-id: svn://localhost/gambas/trunk@1493 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-08-14 19:42:27 +00:00
Laurent Carlier
cc8399d17e Code cleanup, remove obsolete and uneeded specific OpenBSD code.
git-svn-id: svn://localhost/gambas/trunk@1491 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-08-08 14:41:57 +00:00
Benoît Minisini
0eb9507c52 [DEVELOPMENT ENVIRONMENT]
* BUG: Do not abort if you try to open a dead symbolic link.

[INTERPRETER]
* BUG: Fix base object structure size when compiling with gcc 4.3 on a 64 
  bits system.

[INFORMER]
* BUG: The informer now can be run without argument from anywhere.

[GB.FORM]
* NEW: The ListContainer refreshes itself before raising the Click event.


git-svn-id: svn://localhost/gambas/trunk@1481 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-07-22 21:31:17 +00:00
Benoît Minisini
5562f8f75e [INTERPRETER]
* BUG: Observers don't raise events anymore if their parent is invalid, 
  like other objects do.

[GB.FORM]
* NEW: FileView now display image preview if the image size is up to 64 Kb.

[GB.QT.EXT]
* BUG: Blended procedure separation is now correctly refreshed when the 
  font size changes.


git-svn-id: svn://localhost/gambas/trunk@1474 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-07-19 21:53:22 +00:00
Benoît Minisini
7eb12dff51 [DEVELOPMENT ENVIRONMENT]
* NEW: Enhance the behaviour of the console text search.
* BUG: Enhance and fix the behaviour of the ESCAPE key.
* BUG: Renamed controls like DataControl are correctly refreshed inside the
  form editor.

[INFORMER]
* NEW: When creating all information files in one shot, child processes are
  used instead of loading all components in the same process.

[INTERPRETER]
* BUG: RInStr() third argument is now correctly taken into account in all 
  cases.
* BUG: Fix a bug in inheritance with classes written in Gambas overriding 
  symbols whose name begins with 'P', 'R' or 'M'.

[GB.DB.FORM]
* BUG: Setting DataBrowser.Control property to FALSE works again.

[GB.QT]
* BUG: Menu shortcuts are automatically enabled when the menu is shown.

[GB.QT.EXT]
* NEW: When the focus is set on an Editor, the cursor is ensured to be 
  visible.


git-svn-id: svn://localhost/gambas/trunk@1462 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-07-17 23:45:32 +00:00
Benoît Minisini
3b12a492ef [DEVELOPMENT ENVIRONMENT]
* BUG: Fix the title of the search list window.
* NEW: Support for hebrew translations.

[INTERPRETER]
* BUG: Do not free the classes before the _free() special methods are 
  executed.

[GB.FORM]
* BUG: Fix the default event declaration of ValueBox.

[GB.QT]
* BUG: GridView.Clear now correctly refreshes the GridView.


git-svn-id: svn://localhost/gambas/trunk@1452 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-07-16 10:12:13 +00:00
Benoît Minisini
abbcd6c930 [DEVELOPMENT ENVIRONMENT]
* NEW: Draw project details in gray.

[INTERPRETER]
* BUG: Fix the management of standard input, standard output and standard 
  error streams.
  
[GB.DRAW]
* BUG: Draw.Begin() now correctly raises an error if the device is a static
  class that is not drawable. This bug was fixed by using "Draw" for the 
  interface name of drawable objects and "StaticDraw" for the interface 
  name of drawable classes like Printer.

[GB.FORM]
* NEW: File dialogs now remember the last used directories in the directory
  combo-box.

[GB.GTK]
* NEW: Font strikeout and underline are used when drawing Buttons.

[GB.QT.EXT]
* BUG: Uses "StaticDraw" to specify the drawing interface of the Printer 
  class.


git-svn-id: svn://localhost/gambas/trunk@1446 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-07-10 21:49:11 +00:00
Benoît Minisini
6ca5126595 [DEVELOPMENT ENVIRONMENT]
* NEW: Little changes in the hall of fame animation.

[INTERPRETER]
* NEW: Do not warn against circular references when the program aborts 
  because of an error.

[COMPILER]
* NEW: The error message displayed when you try to return a value in a 
  procedure is more explicit now.

[GB.FORM.MDI]
* BUG: When a MDI child window is activated, the focus is set on it unless 
  one of its child control already has the focus.

[GB.GTK]
* BUG: Fix Application.Busy when forms are embedded.
* BUG: ComboBox does not raise the Click event anymore when its Text 
  property changes.
* BUG: Fix the management of Window Activate and Deactivate events.
* BUG: Fix the management of GotFocus and LostFocus events.
* BUG: SetFocus is correctly honored when used inside the Open event 
  handler of an embedded form.
* BUG: Desktop.Scale is now computed the same way as in gb.qt.

[GB.QT]
* BUG: SetFocus is correctly honored when used inside the Open event 
  handler of an embedded form.


git-svn-id: svn://localhost/gambas/trunk@1436 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-06-26 09:49:06 +00:00
Benoît Minisini
9b46a269c7 [DEVELOPMENT ENVIRONMENT]
* NEW: Adds a popup menu to the console window.

[WIKI CGI SCRIPT]
* BUG: Display a message when accessing a symbol page that does not exist 
  in the current version.

[EXAMPLES]
* NEW: New Barcode example made by Charles Guerin and modified by me.

[INTERPRETER]
* NEW: New API for returning the fully-qualified domain name.
* BUG: Fix a bug in DateAdd() that made this function corrupt the next 
  date to string conversion, which then lead to other bad weird things.

[GB.DRAW]
* BUG: Fix Draw.Circle center that was shifted one pixel to the top left.

[GB.GTK]
* BUG: Window.Reparent() now works correctly when embedding or unembedding 
  a top-level window.
  
[GB.NET.SMTP]
* NEW: Do not use MIME parts when it is useless.
* BUG: Try to use the fully-qualified domain name when sending the EHLO 
  command to the SMTP server. That actually works only if the system domain
  name has been set to the DNS domain name.

[GB.PCRE]
* BUG: Fix crashes due to bad uses of interpreter API.

[GB.QT]
* BUG: Fix the drawing of the frame of cached DrawingArea controls.


git-svn-id: svn://localhost/gambas/trunk@1404 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-06-11 10:44:50 +00:00
Benoît Minisini
c47cb3d8e4 [DEVELOPMENT ENVIRONMENT]
* BUG: Fix some use of boolean value incrementing.

[INTERPRETER]
* BUG: Class declared with the 'Class' keyword are alwyas global.
* BUG: A stupid hack in gb.db requires that the value is always stored 
  just after the datatype in the VALUE and GB_VALUE structures.

[COMPILER]
* BUG: Class declared with the 'Class' keyword are alwyas global.

[GB.DESKTOP]
* NEW: Desktop.Passwords is a new property that allows to store and 
  retrieve passwords in the KDE wallet or the GNOME keyring, according to 
  the running desktop. Only KDE and GNOME are supported. I don't know if
  XFCE has something equivalent...
  
[GB.DESKTOP.GNOME]
* NEW: This new component is automatically loaded by gb.desktop when the
  GNOME keyring is requested.

[GB.FORM]
* BUG: Fix some use of boolean value incrementing.

[GB.FORM.MDI]
* NEW: The Workspace popup menu now sort the windows by title.

[GB.QT]
* NEW: XEMBED support was upgraded to the 1.3 version of QtXEmbed classes.
* BUG: Fix some use of boolean value incrementing.


git-svn-id: svn://localhost/gambas/trunk@1373 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-05-13 12:52:06 +00:00
Benoît Minisini
a7e36985bb [INTERPRETER]
* NEW: Print a warning message when INC or DEC is used with a boolean.
* BUG: Make things compile without error.


git-svn-id: svn://localhost/gambas/trunk@1370 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-05-12 16:09:33 +00:00
Benoît Minisini
1ccfcf0760 [DEVELOPMENT ENVIRONMENT]
* NEW: The form editor has a new menu entry for transforming a control 
  into another control. For example, a Label into a TextLabel, or a HBox 
  into a VBox, and so on. The possible transformations are defined in the
  *.component file.
* BUG: Compiler errors that are not related to the compiled code are now 
  correctly displayed.
* BUG: Locked forms are correctly loaded, and the form tab title now 
  correctly shows the associated read-only state.
* BUG: The automatic completion can deal with multiple local variable 
  declarations on the same line now.

[INTERPRETER]
* BUG: Array.Insert() does not crash anymore if the inserted array is 
  NULL. It raises an error now.
  
[COMPILER]
* BUG: The owner and group of all files generated by the compiler 
  ('.startup', '.info', '.list', object files) are now set to the owner and 
  group of the '.project' file. This way, any project can be safely 
  compiled as root, without locking it for other users.


git-svn-id: svn://localhost/gambas/trunk@1369 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-05-11 18:07:16 +00:00
Benoît Minisini
2b88985b34 [DEVELOPMENT ENVIRONMENT]
* OPT: Do not set Project ColumnView AutoResize property to TRUE. Use a 
  very wide column instead to optimize redrawing.
* BUG: Fix a tooltip in the subversion conflict dialog.
* NEW: The component tab of the project property dialog has been 
  redesigned. Now you have to double click on a component to get 
  information on it.
* NEW: Property editing is now locked only if a specific toggle button is 
  pressed. This button is located on the right top of the property sheet.

[INTERPRETER]
* BUG: Handle the evaluation of Eval() expressions the same way as any 
  other code. Otherwise, stack can be leaked when there is an exception 
  inside.
* NEW: The foreign function interface is now optional.
* BUG: The use of array accessors is now correctly checked.

[GB.DB.SQLITE2]
* BUG: Reading floating point values and other values do not depend on the 
 locale anymore.
* NEW: Remove useless code.

[GB.DB.SQLITE3]
* BUG: Reading floating point values and other values do not depend on the 
  locale anymore.
* NEW: Remove useless code.

[GB.GTK]
* BUG: Fix uninitialized variables in ggridview.cpp and gmainwindow.cpp.

[GB.QT]
* OPT: ScrollView layout process is delayed.

[GB.SETTINGS]
* BUG: Do not use Array datatype incorrectly anymore.


git-svn-id: svn://localhost/gambas/trunk@1368 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-05-10 15:17:07 +00:00
Benoît Minisini
2a096fea20 [INTERPRETER]
* BUG: Fix a memory leak in the READ instruction when reading a string 
  with a negative length parameter.


git-svn-id: svn://localhost/gambas/trunk@1355 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-05-03 15:07:55 +00:00
Benoît Minisini
09369edfd1 [DEVELOPMENT ENVIRONMENT]
* NEW: Automically edit the 'Name' property when inserting a new control in
  a form.
* BUG: Defining the startup class correctly updates the .startup file.
* BUG: The form editor takes into account the new Border and Resizable 
  Window properties correctly now.
* BUG: Form editor window frame is drawn in a more polished way.
* NEW: Automatically focus on the last edited property when the form editor
  selection changes.
* BUG: Do not hide the debug window anymore when undocking the console.

[INTERPRETER]
* BUG: Getting information on a not yet loaded class does not crash the 
  debugger anymore.
  
[GB.FORM]
* NEW: Workspace.Orientation is a new property that allows to define the 
  orientation of the Workspace tabstrip.
* BUG: Fix the DatePicker button drawing routine in ValueBox.
  
[GB.GTK]
* BUG: Windows cannot get focus anymore.

[GB.NET.SMTP]
* NEW: Write a Content-Length header inside MIME parts.

[GB.QT]
* NEW: Do not automatically transform non catched key events into 
  accelator events.
* BUG: Draw.Style.Panel() works correctly now.

[GB.SETTINGS]
* NEW: Settings.Read and Settings.Write now always store control settings 
  in a slot based on the parent Window name, not the top-level one.


git-svn-id: svn://localhost/gambas/trunk@1332 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-04-21 23:15:48 +00:00
Benoît Minisini
b49c9fc644 [INTERPRETER]
* BUG: Static arrays can be used as local variables again.


git-svn-id: svn://localhost/gambas/trunk@1319 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-04-17 20:43:06 +00:00
Benoît Minisini
80f53ee771 [DEVELOPMENT ENVIRONMENT]
* NEW: Some little fixes in the hall of fame animations.
* BUG: Fix the layout of the property sheet text edit dialog.
* NEW: A new highlighting theme, named 'Quick'.
* NEW: The '(Scaled)' virtual property has been renamed as 'Scaled'.
* BUG: Fix the "quit" icon in the quit dialog.
* BUG: Correctly raise an error when making an executable fails for any 
  reason.
* BUG: Extract the property help better.

[WIKI CGI SCRIPT]
* BUG: Auto link now really makes one identical link between two titles.

[INTERPRETER]
* OPT: Optimization of additions of small integers.
* BUG: INC and DEC now toggle boolean values.
* NEW: Use the new '.startup' file to run a project. The old '.project' 
  file can be used for older projects. But its support will be removed in
  the final version.

[COMPILER]
* NEW: A '.startup' file is now created at each compilation. It contains an
  extract of the '.project' file with just what the interpreter needs to
  run the application.

[GB.GTK]
* BUG: Void items are correctly handled by ComboBox without crashing now.

[GB.EVAL]
* BUG: Quoted symbols, i.e. symbols between braces, are now correctly 
  colorized by using the identifier colors.

[GB.FORM]
* BUG: Removed the useless Tag property from the DatePicker control.
* BUG: Fix the height of the DateChooser toolbar.
* NEW: Wizard.ShowIndex is a new property that makes the wizard control
  automatically display the index of the current step. This index takes
  into account if some steps are disabled.

[GB.FORM.DIALOG]
* NEW: Dialog.SelectDate() is a new method that allows the user to select a
  date in a dialog box having a date chooser.

[GB.QT]
* BUG: You can now resize a non resizable window without having to change 
  its Border property first.

[GB.QT.EXT]
* BUG: Editor correctly goes to the end of file when pressing CTRL+END.
  Consequently, SelectAll() works correctly too now.
* NEW: Comments just before a procedure are now never folded.


git-svn-id: svn://localhost/gambas/trunk@1317 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-04-17 10:18:25 +00:00
Benoît Minisini
61ddf77277 [CONFIGURATION]
* BUG: Link with libgettextlib only with OpenBSD. Otherwise, on Linux, 
  there is a symbol comflict with the libxml used by fontconfig, and you
  get spurious fontconfig warnings, and weird fonts or no font at all!

[DEVELOPMENT ENVIRONMENT]
* NEW: Use the new image methods for the hall of fame animation.
* BUG: Text editor does not flash anymore when being resized.
* BUG: The virtual control are now drawn bigger in Dekstop.Scale is too 
  small.

[EXAMPLES]
* BUG: Fix many examples according to the new way of calculating 
  Desktop.Scale.

[INTERPRETER]
* BUG: Symbol polymorphism is now correctly handled when the inheritance 
  depth is greater than two!

[GB.GTK]
* NEW: Image.MakeGray() is a new method that makes an image use gray 
  colors only.
* NEW: Image.MakeTransparent() is a new method that intelligently replace
  a color by transparency.

[GB.FORM]
* NEW: Add a slider for setting the alpha color component.
* BUG: Correctly cancel an impossible rename operation in the DirView 
  control.

[GB.QT]
* NEW: Image.MakeGray() is a new method that makes an image use gray 
  colors only.
* NEW: Image.MakeTransparent() is a new method that intelligently replace
  a color by transparency.

[GB.QT.EXT]
* BUG: In Editor, always draw function expanders with the foreground color.


git-svn-id: svn://localhost/gambas/trunk@1308 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-04-11 22:36:53 +00:00
Benoît Minisini
5007436e68 [DEVELOPMENT ENVIRONMENT]
* BUG: Evaluating expressions in the output console works again.

[WIKI CGI SCRIPT]
* BUG: Allow "--" between two "==" for displaying an horizontal line.

[INTERPRETER]
* BUG: TRY correctly store the last error raised in the Error class.

[GB.EVAL]
* BUG: Evaluating "Error" does not crash anymore. It just raises an error.


git-svn-id: svn://localhost/gambas/trunk@1302 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-04-07 22:31:35 +00:00
Benoît Minisini
53b7de040f [CONFIGURATION]
* NEW: Add "-O1" optimization flag to the linker, and the "-z defs" flag
  that should make it warn then an undefined imported symbol is found.

[WIKI CGI SCRIPT]
* NEW: Adds a switch to display 2.0 or 3.0 symbols in the component help 
  pages.

[INTERPRETER]
* BUG: The binary and hexadecimal numbers with a '&' suffix are now 
  correctly extended to a Long unsigned constant if needed.

[GB.DESKTOP]
* NEW: DesktopWatcher is a new class that watch property and dimension 
  changes on the root window or any other window.
* NEW: Desktop.Windows returns a pseudo-collection of all top-level 
  windows.
* NEW: DesktopWindow is a class that represents one specific top-level
  window.
* NEW: Desktop.ActiveWindow returns the id of the current active top-level
  window.
* NEW: Desktop.Showing returns or sets if the "show desktop" button is 
  active.
* NEW: Desktop.Current returns or sets the index of the current active 
  virtual desktop.
* NEW: Desktop.Count returns the number of virtual desktops.
* NEW: Desktop[Index] returns a virtual object that represents a virtual
  desktop.

[GB.EVAL]
* BUG: The long binary and hexadecimal numbers are correctly interpreted 
  now.
* BUG: Remove an apparently useless line of code that made the highlighter
  sometimes crash!

[GB.QT.EXT]
* BUG: The editor selection background is now drawn on top of the possible
  text background.


git-svn-id: svn://localhost/gambas/trunk@1292 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-04-05 13:06:08 +00:00
Benoît Minisini
e2e0c5b52e [DEVELOPMENT ENVIRONMENT]
* BUG: The "Show help property" option works correctly now.
* BUG: The splitter position of the debug window is correctly restored now.

[GB.DESKTOP]
* NEW: Many methods for dealing with windows properties, for watching them,
  for watching window changes... All are defined in the internal _Desktop
  class. They won't be public.

[GB.FORM]
* NEW: The Space key now raises the Activate event in the DateChooser 
  control.


git-svn-id: svn://localhost/gambas/trunk@1282 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-04-02 01:15:31 +00:00
Benoît Minisini
145de0854b [DEVELOPMENT ENVIRONMENT]
* NEW: You can open a terminal in the project directory now.
* NEW: The IDE now marks projects as Gambas 3 projects.
* NEW: Port Gambas2 fixes.

(INTERPRETER]
* NEW: New API for returning the type of a Gambas array.

[GB.DESKTOP]
* NEW: New internal methods for reading or writing a windows property, and
  for sending a client message to the root window.
* NEW: Desktop.Find() has been renamed to Desktop.FindWindow().
* NEW: Desktop.OpenTerminal() opens a terminal on a specified directory 
  according to the current desktop in use.

[GB.QT]
* BUG: Window id are really integers, not pointers.

[GB.GTK]
* BUG: Window id are really integers, not pointers.


git-svn-id: svn://localhost/gambas/trunk@1276 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-03-31 19:04:28 +00:00
Benoît Minisini
31f0d78532 [DEVELOPMENT ENVIRONMENT]
* NEW: Theme configuration was redesigned and enhanced.
* NEW: New option for setting the tabstrip title font size.
* NEW: The file information dialog was redesigned again.
* NEW: Some option names were changed.
* NEW: A new "Project" virtual folder in the project treeview. It is 
  exactly like the "Data" folder, except that the files and directories 
  stored inside are not included in the generated executable.
* NEW: As keywords are now displayed in lowercase by default, there is a 
  new option for displaying them in uppercase as before.
  
[INTERPRETER]
* NEW: Object.GetProperty() can return the value of a constant.
* NEW: Keywords are in lowercase by default, the first letter of the words 
  staying in uppercase.

[GB.EVAL]
* NEW: The Highlight.Analyze() method always return keywords in uppercase, 
  so that you can continue to easily do non case-sensitive comparisons.

[GB.QT]
* BUG: Changing the font of a TabStrip correctly refreshes its layout now.

[GB.QT.EXT]
* NEW: The Editor can force highlighted keywords to uppercase. It is only 
  done when drawing the keyword. The internal text is not changed.


git-svn-id: svn://localhost/gambas/trunk@1265 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-03-27 16:27:24 +00:00
Benoît Minisini
ec93789aaf [DEVELOPMENT ENVIRONMENT]
* NEW: Save and restore which procedures are folded.

[INTERPRETER]
* BUG: Creates a new GB.SubstStringAdd() API for making a difference 
  between substitution callbacks that return a string and those who call
  GB.SubstAdd() directly.

[GB.DB]
* BUG: Use the new GB.StringSubstAdd() API.

[GB.FORM]
* NEW: FileChooser and DirChooser got a new Reload() method that refreshes
  their contents.
  
[GB.QT.EXT]
* BUG: In Editor, a line must be colorized before knowing if it is a 
  "procedure" limit.


git-svn-id: svn://localhost/gambas/trunk@1261 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-03-26 16:28:18 +00:00
Benoît Minisini
8dc0172592 [INTERPRETER]
* BUG: Fixed an optimization in variants that was not 64-bits aware.


git-svn-id: svn://localhost/gambas/trunk@1230 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-03-23 00:51:50 +00:00
Benoît Minisini
32ae591a4c [INTERPRETER]
* BUG: Some values structures padding.


git-svn-id: svn://localhost/gambas/trunk@1229 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-03-22 23:52:49 +00:00
Benoît Minisini
fb43110a10 [INTERPRETER]
* BUG: NEW Observer(NULL) now raises an error, and does not crash anymore.
* BUG: Padding of values structures.


git-svn-id: svn://localhost/gambas/trunk@1228 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-03-22 21:34:50 +00:00
Benoît Minisini
a4707d329f [DEVELOPMENT ENVIRONMENT]
* BUG: Importing a form now correctly associates the imported pictures.

[INTERPRETER]
* BUG: Fixed some structure alignment issues.


git-svn-id: svn://localhost/gambas/trunk@1226 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-03-21 15:39:46 +00:00
Benoît Minisini
79e3644902 [INTERPRETER]
* NEW: Removes some warnings with uid_t on some systems.

[GB.EVAL]
* BUG: Removes the use of a non existing function.

[GB.DESKTOP]
* BUG: Try to enhance the detection of libXtst.


git-svn-id: svn://localhost/gambas/trunk@1220 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-03-21 02:05:59 +00:00
Benoît Minisini
b693e43d44 [INTERPRETER]
* BUG: Manages correctly missing flags in localeconv()


git-svn-id: svn://localhost/gambas/trunk@1217 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-03-21 01:28:13 +00:00
Benoît Minisini
de9ea5223d [INTERPRETER]
* BUG: Other non-defined mathematical function management.


git-svn-id: svn://localhost/gambas/trunk@1216 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-03-21 01:25:37 +00:00
Benoît Minisini
7053cc0b25 [INTERPRETER]
* BUG: Do not use long double mathematic functions if they do not exist. A
  workaround must be found!


git-svn-id: svn://localhost/gambas/trunk@1215 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-03-21 01:15:44 +00:00
Benoît Minisini
7643ace3f5 [INTERPRETER]
* NEW: Don't use lockf and F_TLOCK if it does not exist. A workaround will 
  have to be found!
  


git-svn-id: svn://localhost/gambas/trunk@1214 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-03-21 01:04:18 +00:00
Benoît Minisini
ac3111a9eb [INTERPRETER]
* BUG: Don't use FIONREAD if it does not exist. A workaround will have to 
  be found!


git-svn-id: svn://localhost/gambas/trunk@1213 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-03-21 00:55:43 +00:00
Benoît Minisini
c9dd8bcefe [INTERPRETER]
* BUG: Fixes the string management optimizations.
* OPT: Optimization of the string search function (InStr, RInstr).
* OPT: Optimization of the Split() function.
* OPT: Optimization of local variables initialization when entering a
  method.

[GB.NET.SMTP]
* BUG: Fixes the Makefile.am file so that the component compiles if the 
  glib library is installed in a non-standard directory.

[GB.QTE.EXT]
* BUG: Fixes the gb.qte.ext.component file.



git-svn-id: svn://localhost/gambas/trunk@1203 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-03-19 23:50:34 +00:00
Benoît Minisini
3d80d44a4a [WIKI CGI SCRIPT]
* BUG: Some little layout fixes.

[INTERPRETER]
* OPT: Read the user home directory only if the current uid has changed. 
  Otherwise, cache it into memory.
* OPT: String memory management has been optimized.
* OPT: Some little optimizations there and there.
* NEW: A new interpreter option, "-k", that prevents shared library to be
  unloaded until the process terminates. That can be useful when 
  debugging with valgrind.
* OPT: System.Language property was optimized.
* OPT: The gb_error.c file is now compiled with -O3.

[GB.GTK]
* BUG: Disable the management of input methods in TextBox and TextArea
  controls, so that the input methods are not disturbed. Consequently;
  SCIM and Bridged SCIM work again.
* BUG: You can read keyboard events properties in a Form KeyPress or 
  KeyRelease event handler correctly now.



git-svn-id: svn://localhost/gambas/trunk@1199 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-03-19 14:32:30 +00:00
Benoît Minisini
e6b94a0a86 [INTERPRETER]
* NEW: A new API that returns if the current language is right-to-left 
  written.

[GB.DRAW]
* NEW: New Draw.Style.* style drawing methods for drawing arrows, 
  check-boxes, option buttons, separators, focus rectangles, push buttons,
  panels, and splitter handles.
* NEW: Draw.Save() and Draw.Restore() are two new methods that save and
  restore the state of the current drawing properties.

[GB.GTK]
* NEW: Support for the style drawing methods.
* NEW: Support for Draw.Save() and Draw.Restore().

[GB.QT]
* NEW: Support for the style drawing methods.
* NEW: Support for Draw.Save() and Draw.Restore().


git-svn-id: svn://localhost/gambas/trunk@1191 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-03-18 10:04:10 +00:00
Benoît Minisini
9ccbaac697 [INTERPRETER]
* NEW: New API for returning the parent (event observer) of an object.

[COMPILER]
* BUG: Setting a property without having to use ME is possible now, if the
  property is defined in the same file of course.
* NEW: Mid$() can be used on the left side of an assignment.

[GB.FORM]
* BUG: ValueBox now reformats its contents after its Value property has 
  been set.

[GB.GTK]
* BUG: Composed keys are correctly handled again by KeyPress events, but
  the SCIM input method does not work yet.
* BUG: Form are their own event observer only if no event observer is 
  defined at form instanciation.
* BUG: The default tray icon is the same as gb.qt now.

[GB.QT]
* BUG: TrayIcon objects are correctly destroyed at program exit.
* BUG: Form are their own event observer only if no event observer is 
  defined at form instanciation.
* BUG: TrayIcon Width, Height, ScreenX and ScreenY properties do not crash
  anymore when the tray icon is hidden. They return zero instead.
  

git-svn-id: svn://localhost/gambas/trunk@1187 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-03-17 14:54:17 +00:00
Benoît Minisini
0a7ba84a28 [DEVELOPMENT ENVIRONMENT]
* BUG: Ensure that the property panel is correctly shown or hidden when the
  project is opened.
* NEW: Automatic completion is automatically inserted in all cases when
  pressing one of the following keys: '.','(','[','!'.

[INTERPRETER]
* BUG: Mid$("", 0) returns an error now.

[GB.GTK]
* BUG: The Font property management was fixed.
* BUG: The icon text alignment was fixed in the IconView control.

[GB.FORM]
* NEW: The FileChooser bookmark list was redesigned.

[GB.QT]
* BUG: Control.Handle returns a Pointer now.


git-svn-id: svn://localhost/gambas/trunk@1164 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-03-13 21:38:43 +00:00
Benoît Minisini
5f900c0b68 [DEVELOPMENT ENVIRONMENT]
* 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
2008-03-11 13:29:47 +00:00
Laurent Carlier
8526133fd7 [CONFIGURATION]
* NEW: Now GB_COMPONENT_PKG_CONFIG() macro accept an optional warning
  message.
* BUG: Add support for libffi through pkg-config when available.


git-svn-id: svn://localhost/gambas/trunk@1121 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-02-26 08:23:51 +00:00
Benoît Minisini
39ca9e0a69 [CONFIGURATION]
* BUG: Pass the -fsigned-char option to gcc so that gambas compiles on
  architectures where char is unsigned by default.

[INTERPRETER]
* BUG: Fixed the conversion from negative integer to string.


git-svn-id: svn://localhost/gambas/trunk@1110 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-02-25 15:34:04 +00:00
Benoît Minisini
a0ecaa77e6 [CONFIGURATION]
* BUG: Automatically search libraries in lib64 before searching in lib.
* BUG: Fixed the $FFI_LIB test in main/configure.ac.

[DEVELOPMENT ENVIRONMENT]
* BUG: Tips of the days are displayed correctly again.

[INTERPRETER]
* BUG: Val() now takes the thousand separator into account when this 
  separator is a space character.
* BUG: Removed the 64 bits warning.
* BUG: Fixes the 'lib64' problem. Now components are searched in the 'lib64' 
  directory on 64 bits OS. If they are not stored in 'lib64', then the 
  default 'lib' directory is used.
* NEW: Passing argument by reference is not allowed anymore if not 
  explicitely specified in the method declaration.

[COMPILER]
* NEW: Passing argument by reference is not allowed anymore if not 
  explicitely specified in the method declaration.

[INFORMER]
* BUG: Fixes the 'lib64' problem. Now components are searched in the 'lib64' 
  directory on 64 bits OS. If they are not stored in 'lib64', then the 
  default 'lib' directory is used.


git-svn-id: svn://localhost/gambas/trunk@1108 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-02-24 16:29:02 +00:00
Benoît Minisini
eff2990f0b [DEVELOPMENT ENVIRONMENT]
* NEW: 2.1 changes were merged.

[INTERPRETER]
* BUG: Static properties or methods returning virtual classes work again.
  Color[xxx] is one of them.


git-svn-id: svn://localhost/gambas/trunk@1091 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-02-21 14:13:47 +00:00
Benoît Minisini
a631253a53 [CONFIGURATION]
* NEW: Configuration is aborted if libffi library and headers are not 
  installed.

[WIKI CGI SCRIPT]
* NEW: New section for version-specific documentation.

[INTERPRETER]
* BUG: The gb.info file was wrong: Min() and Max() take only two arguments.
* NEW: New LastEventName property in the Object class that returns the 
  event name used by the last created object.

[GB.DB.FORM]
* NEW: DataControl raises the event of its internal editing control by 
  using the new Object class property defined above.

[GB.GTK]
* BUG: The X and Y properties of the Window class now return the same
  values as gb.qt.

[GB.QT]
* BUG: Prevents a crash when a trayicon is destroyed or hidden during a
  trayicon event handler.


git-svn-id: svn://localhost/gambas/trunk@1090 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-02-21 13:14:16 +00:00
Laurent Carlier
edb9e54bb4 [OPENBSD]
* BUG: Revert strlcpy/strlcat/snprintf, they are not really needed, and introduce potentially more bugs.



git-svn-id: svn://localhost/gambas/trunk@1080 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-02-18 23:07:24 +00:00
Benoît Minisini
1e791cee6b [CONFIGURATION]
* 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
2008-02-14 11:59:36 +00:00
Benoît Minisini
bd322efa9c [DEVELOPMENT ENVIRONMENT]
* BUG: Use TextEdit.RichText insted of TextEdit.Text.
* BUG: END SUB can be the end of a method. The class analyze now takes 
  that into account.

[HELP]
* BUG: Fixed the generated treeview.

[COMPILER]
* OPT: The NOT operator used just at the beginning of a conditional 
  expression is optimized. Consequently, an expression like 'IF NOT 2' is 
  now equivalent to 'IF 2 = 0' and not to 'IF (NOT 2) <> 0' as before. In
  other words, the boolean conversion is now done before the NOT, and not 
  after. The following instructions are concerned: IF, WHILE, UNTIL.
* NEW: BYREF is new keyword that is a more readable synonymous of '@'.

[GB.DB.FORM]
* BUG: Correctly manage data controls inside TabStrip-like containers.
* BUG: Setting the focus on a non-initialized DataControl does not raise 
  an error anymore.

[GB.GTK]
* BUG: HSplitter.Layout and VSplitter.Layout now work correctly. It is a 
  list of children widths, hidden children having a zero width.
* BUG: Window arrangement is done before the Open event is raised, as in 
  gb.qt.
* BUG: Keyboard, focus and mouse events now work correctly on Window and 
  DrawingArea controls.

[GB.QT]
* BUG: HSplitter.Layout and VSplitter.Layout now work correctly. It is a 
  list of children widths, hidden children having a zero width.
* BUG: Many warning fixes.
* BUG: Now the Control.Visible property works like in gb.gtk, i.e. it 
  returns if the control was not explicitely hidden.


git-svn-id: svn://localhost/gambas/trunk@1060 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-02-06 00:25:48 +00:00
Benoît Minisini
e4d7400aa3 [CONFIGURATION]
* NEW: Removed the out-of-date README.FEDORA and README.REDHAT files.

[EXAMPLES]
* BUG: Fixed the MoviePlayer example.
* BUG: Fixed the Clock example.

[WIKI CGI SCRIPT]
* NEW: More titles and less borders.

[INTERPRETER]
* BUG: Uses the accurate method prototypes for Byte, Short and Single array
  classes.
* BUG: Many fixes in the error management.

[GB.DB]
* BUG: Fixed many warnings and some 64 bits stuff in all database drivers.

[GB.DEBUG]
* NEW: More explicit error messages when the creation of debugger fifos 
  fails.

[GB.COMPRESS.ZLIB]
* BUG: Fixed the compilation on 64 bits OS.

[GB.CORBA]
* NEW: Fixed some warnings.

[GB.GTK]
* NEW: Fixed some warnings.

[GB.IMAGE]
* NEW: Fixed some warnings.

[GB.NET.SMTP]
* NEW: Fixed some warnings.

[GB.PDF]
* NEW: Fixed some warnings.

[GB.QT.KDE]
* NEW: Fixed some warnings.

[GB.SDL]
* NEW: Fixed some warnings.

[GB.SDL.SOUND]
* NEW: Fixed some warnings.

[GB.XML]
* NEW: Fixed some warnings.

[GB.XML.XLST]
* NEW: Fixed some warnings.



git-svn-id: svn://localhost/gambas/trunk@1055 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-02-02 10:54:13 +00:00
Benoît Minisini
7b01d12f31 [INTERPRETER]
* OPT: Optimizations in string comparison operators.
* OPT: Optimizations in string allocations.
* OPT: Optimizations in Left$(), Mid$(), Right$() and Len().
* OPT: Optimizations of calls to native methods when the number of 
  arguments is fixed, and when no argument conversion is needed.
* OPT: Optimizations of INPUT and LINE INPUT, by using an internal buffer
  instead of reading the stream one byte at a time.
* BUG: Fixed the new error management.
* BUG: Fixed a possible spurious error when reading a file from an archive.

[GB.EVAL]
* BUG: Use the same new error management than the interpreter.

[GB.QT]
* BUG: The DrawingArea control now should draw its border correctly without
  erasing its contents.


git-svn-id: svn://localhost/gambas/trunk@1041 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-01-27 14:00:04 +00:00
Benoît Minisini
9f4ee9e75e [EXAMPLES]
* BUG: The Scripting example was fixed.

[INTERPRETER]
* NEW: The error management was redesigned.

[GB.DB]
* NEW: Database driver can declare a set of character that are allowed in a
  database name.
  
[GB.DB.SQLITE2]
* NEW: '.' is allowed in database names now.

[GB.DB.SQLITE3]
* NEW: '.' is allowed in database names now.



git-svn-id: svn://localhost/gambas/trunk@1038 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-01-25 15:01:02 +00:00
Benoît Minisini
7cc9986bda [INTERPRETER]
* 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
2008-01-24 10:42:42 +00:00
Benoît Minisini
6ac9fbe05b [INTERPRETER]
* 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
2008-01-24 01:36:20 +00:00
Benoît Minisini
ec7ab0c811 [CONFIGURATION]
* 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
2008-01-23 19:56:18 +00:00
Benoît Minisini
96f68f5ce4 [INTERPRETER]
* BUG: Passing arguments by reference really works now.


git-svn-id: svn://localhost/gambas/trunk@1021 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-01-20 14:02:37 +00:00
Benoît Minisini
a2173e5752 [INTERPRETER]
* NEW: Object.SetProperty and Object.GetProperty now can deal with 
  public variables. 

[COMPILER]
* BUG: A better error message for expressions that cannot be passed by
  reference.

git-svn-id: svn://localhost/gambas/trunk@1017 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-01-19 20:59:09 +00:00
Benoît Minisini
074e2f98c7 [INTERPRETER]
* NEW: Arguments passed by reference were implemented.

[COMPILER]
* NEW: Arguments passed by reference were implemented.


git-svn-id: svn://localhost/gambas/trunk@1016 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-01-19 17:52:05 +00:00
Benoît Minisini
530c729927 [CONFIGURATION]
* NEW: Bytecode version is now 2.99.0.

[EXAMPLES]
* BUG: Fixed the TextEdit example according to the new TextEdit properties.

[INTERPRETER]
* NEW: VarPtr() is a function that returns a pointer to the contents of a
  variable. Only numeric variable that are local, dynamic or static can be 
  used.
* BUG: Fixed the loading of classes whose some variables are Pointer.
  
[COMPILER]
* NEW: VarPtr() is a function that returns a pointer to the contents of a
  variable. Only numeric variable that are local, dynamic or static can be 
  used.

[GB.EVAL]
* NEW: VarPtr() cannot be used with Eval().

git-svn-id: svn://localhost/gambas/trunk@1014 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-01-19 01:36:38 +00:00
Benoît Minisini
f5383f78e0 [DEVELOPMENT ENVIRONMENT]
* NEW: Put the stack backtrace list to the right.

[INTERPRETER]
* BUG: Fixed the Pointer datatype management.

[COMPILER]
* BUG: Fixed the Pointer datatype management. The object file format has 
  changed consequently. But now it can be run indifferently on 32 bits or
  64 bits systems.


git-svn-id: svn://localhost/gambas/trunk@1011 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-01-18 13:43:10 +00:00
Benoît Minisini
4c02c6d338 ******** Merged /branches/64bits r918:1003 into /trunk
[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
2008-01-17 21:39:26 +00:00
Laurent Carlier
7cc7c5eaaa Remove a lot of OS_OPENBSD check, move a lot of strcpy to strlcpy, strcat to strlcat and sprintf to snprintf. Only few of them are left.
git-svn-id: svn://localhost/gambas/trunk@919 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-01-06 20:06:44 +00:00
Benoît Minisini
beba6d9435 [64 BITS]
* NEW: Continue on fixing the use of long datatype.


git-svn-id: svn://localhost/gambas/trunk@917 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-01-06 18:49:23 +00:00
Benoît Minisini
72aabf1920 [CONFIGURATION]
* BUG: Try to detect correctly all X11 linking paramters.

[64 BITS]
* NEW: Start to remove all ambiguous datatypes.

[DEVELOPMENT ENVIRONMENT]
* NEW: The gambas2 project was renamed to gambas3.
* BUG: The completion and signature font sizes are now the default one.
* NEW: Add support for Basque language.

[WIKI CGI SCRIPT]
* BUG: The symbol pages work again, and inheritance between class belonging
  to different components now is taken into account correctly.

[SCRIPTER]
* NEW: The gbs2 project was renamed to gbs3.


git-svn-id: svn://localhost/gambas/trunk@914 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-01-05 14:07:21 +00:00
Laurent Carlier
19bf23a739 More work on OpenBSD port, it's need more work to be complete :-/
git-svn-id: svn://localhost/gambas/trunk@913 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-01-05 01:18:28 +00:00
Laurent Carlier
8a7e5a6c32 More work on OpenBSD portage:
- acinclude.m4: update libtool macros with libtool 1.5.24 ones, this seem to fix some problems
  with configure script under OpenBSD, Linux seems to be still working 8p
- gbx_library.c: Remove lt_dlopen_flag use, as it doesn't seem to be anymore available
  in libltdl. XX_LAZY seems to be the default behaviour if available.
- others: Replacement of strcpy() with strlcpy(), as strcpy isn't available because tag as
  non secure.
- Perhaps other changes !



git-svn-id: svn://localhost/gambas/trunk@909 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-01-03 20:44:46 +00:00
Laurent Carlier
4f8fafb4fa More work on OpenBSD port, it's not working yet due to linking problem but core looks like compiling fine without too much complains.
git-svn-id: svn://localhost/gambas/trunk@903 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2007-12-31 22:38:56 +00:00
Benoît Minisini
ba19f3c1dd * Copy https://gambas.svn.sourceforge.net/svnroot/gambas/2.0 to https://gambas.svn.sourceforge.net/svnroot/gambas/gambas
git-svn-id: svn://localhost/gambas/trunk@893 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2007-12-30 16:41:49 +00:00