Commit graph

1126 commits

Author SHA1 Message Date
Benoît Minisini
f269a0071d [DEVELOPMENT ENVIRONMENT]
* NEW: Use the new IconPanel container to implement the option dialog.

[GB.DRAW]
* BUG: Paint.DrawImage() width and height arguments are now optional.

[GB.FORM]
* NEW: IconView has support for right-to-left written languages.
* BUG: Setting the picture of an IconView item now correctly updates the
  IconView layout.
* NEW: IconPanel is a new multi-container based on an IconView.


git-svn-id: svn://localhost/gambas/trunk@3569 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-02-14 13:31:52 +00:00
Benoît Minisini
edb750d994 [GB.DRAW]
* NEW: CRect can be used as a function to create rectangles.
* NEW: Draw.ClipRect is a new property that returns or defines the clipping 
  rectangle. NULL means that the clipping is disabled.
* NEW: Paint.ClipRect is a new property that returns or defines the 
  clipping rectangle. NULL means that the clipping is disabled.

[GB.FORM]
* NEW: IconView uses the new ClipRect properties.


git-svn-id: svn://localhost/gambas/trunk@3568 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-02-13 23:03:20 +00:00
Benoît Minisini
01b28918b3 [GB.DRAW]
* NEW: Put the Rect class in the gb.draw component.

[GB.GTK]
* NEW: Remove the Rect class.
* BUG: Draw.Tile() works now.

[GB.QT4]
* NEW: Remove the Rect class.


git-svn-id: svn://localhost/gambas/trunk@3567 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-02-13 21:43:14 +00:00
Benoît Minisini
62ce9d905b [INTERPRETER]
* BUG: The SIGCHLD signal handler does not crash anymore.


git-svn-id: svn://localhost/gambas/trunk@3563 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-02-12 21:58:31 +00:00
Benoît Minisini
b7d101f636 [GB.IMAGE]
* NEW: Image.DrawAlpha() can work with images having different formats.


git-svn-id: svn://localhost/gambas/trunk@3562 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-02-12 18:59:14 +00:00
Benoît Minisini
10105e9feb [GB.IMAGE]
* NEW: Image.Format is a new property that returns the image internal 
  format as a string.
* BUG: Fix a possible crash that occurs when creating a temporary handle 
  needs a conversion.


git-svn-id: svn://localhost/gambas/trunk@3559 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-02-12 18:26:13 +00:00
Benoît Minisini
3eda9c5098 [INTERPRETER]
* BUG: Fix the SIGCHLD management, so that KDE 4.6 file dialogs do not hang 
  anymore.


git-svn-id: svn://localhost/gambas/trunk@3553 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-02-10 23:36:11 +00:00
Benoît Minisini
8cb70ddf70 [GB.GTK]
* BUG: Key[] does not print GTK+ warning anymore when getting a null 
  string as argument.
* BUG: Mouse.Blank cursor works as expected now.


git-svn-id: svn://localhost/gambas/trunk@3547 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-02-08 01:35:04 +00:00
Benoît Minisini
41b7b2a0f7 [GB.DEBUG]
* BUG: The debugger now correctly prints expression compilation errors.


git-svn-id: svn://localhost/gambas/trunk@3546 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-02-07 01:58:19 +00:00
Benoît Minisini
1daab792db [DEVELOPMENT ENVIRONMENT]
* BUG: CoordBox correctly returns decimal value in american format.

[GB.GTK]
* BUG: Printer.Print() now does not display a flashing configuration dialog 
  anymore.
* BUG: Printed font now have the correct size.

[GB.REPORT]
* BUG: ReportLabel now uses Font.Height to compute its height, because 
  Paint.DrawText aligns according to Font.Height and not 
  Paint.TextExtents().


git-svn-id: svn://localhost/gambas/trunk@3540 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-02-05 01:28:12 +00:00
Benoît Minisini
175dd81c1b [GB.IMAGE]
* BUG: Fix the Image.Clear() method.


git-svn-id: svn://localhost/gambas/trunk@3533 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-02-02 21:54:03 +00:00
Benoît Minisini
1a13bab4af [INTERPRETER]
* BUG: Error.Raise("") does not crash the interpreter anymore. It displays
  "Unknown error" instead.


git-svn-id: svn://localhost/gambas/trunk@3529 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-02-01 23:26:08 +00:00
Benoît Minisini
7f29aaf2ee [DEVELOPMENT ENVIRONMENT]
* BUG: Current edited line is not highlighted by force anymore after a 
  global search.

[GB.FORM]
* NEW: New IconView control entirely made in Gambas.
* NEW: ScrollArea.EnsureVisible() has been implemented.

[GB.GTK]
* NEW: Old IconView has been removed.
* BUG: Do not use the deprecated tooltip API anymore.
* NEW: TreeView, ColumnView and ListView SelectAll() method does not take 
  an argument anymore. It always select all items.
* NEW: TreeView, ColumnView and ListView UnselectAll() is a new method that
  unselect all items.
* BUG: Rect constructor has been fixed.
* BUG: Rect.Contains() method has been fixed.

[GB.IMAGE]
* NEW: Color.SetAlpha() is a new method that takes an integer color, change
  its alpha component, and return the modified integer color.

[GB.QT4]
* NEW: Old IconView has been removed.
* NEW: TreeView, ColumnView and ListView SelectAll() method does not take 
  an argument anymore. It always select all items.
* NEW: TreeView, ColumnView and ListView UnselectAll() is a new method that
  unselect all items.
* BUG: Rect constructor has been fixed.
* BUG: Rect.Contains() method has been fixed.
* BUG: Window default title is correctly converted from UTF-8.

[GB.QT4.EXT]
* NEW: Editor.HighlightAll is a new method to force the highlighting of the
  entire text.
* NEW: The Editor.Lines CollapseAll() and ExpandAll() methods were moved to
  the Editor class.


git-svn-id: svn://localhost/gambas/trunk@3513 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-01-30 00:55:59 +00:00
Benoît Minisini
c22083ba44 [GB.DRAW]
* NEW: Draw.Arc() is a new method to draw arcs.

[GB.GTK]
* BUG: Draw.Ellipse() now correctly draws a pie when filling is enabled.
* NEW: Implement Draw.Arc().

[GB.QT4]
* NEW: Implement Draw.Arc().


git-svn-id: svn://localhost/gambas/trunk@3500 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-01-28 02:42:42 +00:00
Benoît Minisini
16492cc5ee [DEVELOPMENT ENVIRONMENT]
* BUG: The procedure list geets the focus again when it is opened.

[GB.FORM]
* NEW: ScrollArea is a new Container widget that is a DrawingArea with
  scrolling capabilities.

[GB.GTK]
* NEW: Style is new static class whose properties return global information
  about the current style. At the moment, you have Style.ScrollbarSize and
  Style.ScrollbarSpacing.
* BUG: Scrollbar sliders size now follows the PageStep property.

[GB.QT4]
* NEW: Style is new static class whose properties return global information
  about the current style. At the moment, you have Style.ScrollbarSize and
  Style.ScrollbarSpacing.


git-svn-id: svn://localhost/gambas/trunk@3493 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-01-24 14:37:11 +00:00
Benoît Minisini
fce4691c9f [DEVELOPMENT ENVIRONMENT]
* NEW: The about dialog has been redesigned.
* NEW: The system information tab in the about box now detects the current 
  desktop.

[GB.DESKTOP]
* NEW: The following desktops should be detected now: WindowMaker, 
  Enlighnement.

[GB.GTK]
* NEW: Support for screen available geometry.


git-svn-id: svn://localhost/gambas/trunk@3464 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-01-17 16:07:50 +00:00
Benoît Minisini
a25c1a2514 [INTERPRETER]
* BUG: Clean up variable padding and alignment.


git-svn-id: svn://localhost/gambas/trunk@3463 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-01-17 02:18:40 +00:00
Benoît Minisini
8bac2ad504 [INTERPRETER]
* BUG: Fix some conversion from Single to other datatypes.


git-svn-id: svn://localhost/gambas/trunk@3460 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-01-16 22:04:17 +00:00
Benoît Minisini
bd4d73f42b [INTERPRETER]
* BUG: Fix the READ instruction when reading null strings.


git-svn-id: svn://localhost/gambas/trunk@3455 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-01-15 01:04:32 +00:00
Benoît Minisini
33177a678a [COMPILER]
* BUG: Normal arrays of structures are not supported. Display an error 
  message instead of compiling something that crashes the interpreter.


git-svn-id: svn://localhost/gambas/trunk@3454 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-01-15 00:58:56 +00:00
Benoît Minisini
7998ec6dc3 [INTERPRETER]
* BUG: Support for MkPointer$().
* NEW: Embedded arrays of structures array write accessor has been 
  implemented.


git-svn-id: svn://localhost/gambas/trunk@3453 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-01-13 18:56:52 +00:00
Benoît Minisini
224775b68e [INTERPRETER]
* NEW: Support for Pointer arithmetic (addition and substraction).


git-svn-id: svn://localhost/gambas/trunk@3452 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-01-10 22:56:30 +00:00
Benoît Minisini
eb6f0cbb79 [INTERPRETER]
* BUG: Raise an error instead of crashing now when reading memory at a 
  forbidden address with a <type>@() function.


git-svn-id: svn://localhost/gambas/trunk@3451 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-01-09 00:28:49 +00:00
Benoît Minisini
e30aee9dbe [COMPILER]
* NEW: '\0' is a new string escape character for Chr$(0).

[GB.DRAW]
* NEW: Several Draw.Begin() and/or Paint.Begin() on the same device can be 
  safely imbricated.

[GB.EVAL]
* NEW: '\0' is a new string escape character for Chr$(0).

[GB.FORM]
* NEW: ButtonBox.Alignment is a new property to define the alignment of its
  internal TextBox.
* NEW: New syntaxes for the MaskBox mask:
  - '<' just after a mask character and just before a separator means that 
    the text before will be right-aligned.
  - '!' marks the default cursor position when the MaskBox gets the focus.


git-svn-id: svn://localhost/gambas/trunk@3450 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-01-08 01:17:55 +00:00
Benoît Minisini
c654cb202a [INTERPRETER]
* BUG: Correctly read and write floating point numbers starting with
  0.00000000...
* BUG: The Stat.Perm[] property correctly returns execution permissions 
  now.


git-svn-id: svn://localhost/gambas/trunk@3439 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-01-04 02:35:48 +00:00
Benoît Minisini
f097f0a10b [INTERPRETER]
* BUG: Fix Format$().


git-svn-id: svn://localhost/gambas/trunk@3432 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-01-02 20:08:49 +00:00
Benoît Minisini
2b432beca0 [DEVELOPMENT ENVIRONMENT]
* BUG: Error raised inside form generated code are correctly displayed 
  again.

[INTERPRETER]
* NEW: The GB.Every() API now takes a pointer argument that will be passed
  to the callback.


git-svn-id: svn://localhost/gambas/trunk@3430 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-01-02 18:24:50 +00:00
Benoît Minisini
3ead02082c [DEVELOPMENT ENVIRONMENT]
* BUG: Don't show '$' in the dependencies combo-box of the component 
  property dialog.

[INTERPRETER]
* NEW: GB.Every() is a new API that allows a component to call a callback
  regularly. Useful for polling something for example.


git-svn-id: svn://localhost/gambas/trunk@3429 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-01-02 17:09:54 +00:00
Benoît Minisini
4a5908c37e [INTERPRETER]
* NEW: gb.Millisecond is a new date operation constant to deal with 
  milliseconds.
* NEW: Support for gb.Millisecond in DateDiff() and DateAdd().


git-svn-id: svn://localhost/gambas/trunk@3420 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-01-01 16:43:40 +00:00
Benoît Minisini
ad19937a82 [INTERPRETER]
* NEW: Add a gb.ShortNumber format to Format$().
* NEW: Use that format for converting Single to String.
* BUG: Check the internal conversion special class method everywhere an 
  object is converted.

[GB.DEBUG]
* NEW: Use gb.ShortNumber to display Single values.


git-svn-id: svn://localhost/gambas/trunk@3414 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-12-30 03:17:37 +00:00
Benoît Minisini
e0e71dc4f5 [CONFIGURATION]
* NEW: Qt 4.5.0 is now required to compile the gb.qt4 components.

[INTERPRETER]
* NEW: You can now define a non-creatable but auto-creatable class. It 
  means that you cannot instanciate the class, but you can use it
  statically.

[GB.GTK]
* NEW: Screens is a new pseudo-array of all screens.
* NEW: Screen is a new class that represents the geometry of a screen. The
  X, Y, Width and Height properties return the full geometry. The 
  AvailableX, AvailableY, AvailableWidth and AvailableHeight properties 
  return the geometry available to the windows. The screen class can be 
  used statically to get the geometry of the default screen.
  BEWARE: The available geometry is not yet implemented on gb.gtk!
* NEW: Window.Screen is a new property that returns the screen where most 
  of the window is located.
* NEW: Desktop.{X,Y,Width,Height} are four new properties that return the
  available geometry of the default screen. It is an equivalent of
  Screen.{AvailableX,AvailableY,AvailableWidth,AvailableHeight}.

[GB.QT4]
* NEW: Screens is a new pseudo-array of all screens.
* NEW: Screen is a new class that represents the geometry of a screen. The
  X, Y, Width and Height properties return the full geometry. The 
  AvailableX, AvailableY, AvailableWidth and AvailableHeight properties 
  return the geometry available to the windows. The screen class can be 
  used statically to get the geometry of the default screen.
* NEW: Window.Screen is a new property that returns the screen where most 
  of the window is located.
* NEW: Desktop.{X,Y,Width,Height} are four new properties that return the
  available geometry of the default screen. It is an equivalent of
  Screen.{AvailableX,AvailableY,AvailableWidth,AvailableHeight}.


git-svn-id: svn://localhost/gambas/trunk@3413 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-12-30 01:52:40 +00:00
Benoît Minisini
6cf9de6805 [INTERPRETER]
* BUG: Correctly convert negative floating point numbers again.


git-svn-id: svn://localhost/gambas/trunk@3411 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-12-29 15:25:29 +00:00
Benoît Minisini
cef5a8056b [COMPILER]
* NEW: PRINT can ends with a comma. In that case, a tab is printed, but no 
  newline.


git-svn-id: svn://localhost/gambas/trunk@3410 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-12-29 09:12:56 +00:00
Benoît Minisini
adf553d56b [INTERPRETER]
* NEW: Support for NOT LIKE, NOT BEGINS, NOT ENDS and NOT IS.

[COMPILER]
* NEW: New operators: NOT LIKE, NOT BEGINS, NOT ENDS and NOT IS.

[GB.EVAL]
* NEW: New operators: NOT LIKE, NOT BEGINS, NOT ENDS and NOT IS.


git-svn-id: svn://localhost/gambas/trunk@3407 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-12-29 08:21:51 +00:00
Benoît Minisini
c275829ddc [DEVELOPMENT ENVIRONMENT]
* BUG: The control rename algorithm should work better now.

[EXAMPLES]
* BUG: Fix ServerSocket and ClientSocket examples.

[INTERPRETER]
* BUG: WRITE and READ with a specified length of zero now does nothing.

[GB.NET]
* BUG: Closing a socket created by a ServerSocket does not crash anymore.

[GB.QT4]
* BUG: When a combo-box becomes read-only, the first item is automatically 
  selected if there was no current item.
* BUG: Window with no border can have focus now.



git-svn-id: svn://localhost/gambas/trunk@3404 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-12-28 21:58:42 +00:00
Benoît Minisini
47bec5f339 [DEVELOPMENT ENVIRONMENT]
* NEW: Enhance the import wizard. The list of conversions that are 
  automatically handled is in the wiki.

[WIKI CGI SCRIPT]
* BUG: Do allow '{' and '}' between '=='. But then allow lines to begin 
  with a slash, to escape those characters.
* BUG: Display correctly titles with a '#' inside.

[COMPILER]
* NEW: DownTo is a new keyword for decrementing For...Next loops. You can
  save some "Step -1" with it.

[GB.QT4]
* BUG: Fix a reference leak with DnD operations started outside of then
  application.


git-svn-id: svn://localhost/gambas/trunk@3402 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-12-28 02:24:20 +00:00
Benoît Minisini
326993f9b1 [COMPILER]
* BUG: False, True and Debug preprocessor constants work correctly now.


git-svn-id: svn://localhost/gambas/trunk@3401 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-12-27 14:35:06 +00:00
Benoît Minisini
3cf59d321a [DEVELOPMENT ENVIRONMENT]
* NEW: Files can be dropped from files managers to the project treeview.
  They are automatically inserted into the project then.

[WIKI CGI SCRIPT]
* BUG: '{' and '}' are not interpreted anymore between '=='.

[BENCHMARKS]
* NEW: Add Gambas/Perl/Python benchmarks to the repository.

[INTERPRETER]
* NEW: A Stop instruction encountered inside a component is not ignored
  anymore and stops the program.
* BUG: Fix the File.SetName, File.SetExt and File.SetBaseName methods.

[COMPILER]
* NEW: The preprocessor now undestands the False and True constants.

[GB.FORM]
* NEW: Clean up the Stock class icon loading algorithm.
* BUG: Fix the Gnome icon map.

[GB.FORM.STOCK]
* NEW: Support for svg stock icons.

[GB.QT4]
* BUG: Drag.Show() now works for DnD operations started outside of the 
  application.

[GB.GTK]
* BUG: Drag.Show() now works for DnD operations started outside of the 
  application.


git-svn-id: svn://localhost/gambas/trunk@3400 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-12-27 14:28:59 +00:00
Benoît Minisini
6a596a2aa6 [DEVELOPMENT ENVIRONMENT]
* NEW: Gambas2 to Gambas3 project converter. Only forms and project 
  structure are converted at the moment, as before.
* NEW: Update compiler error messages list.

[INTERPRETER]
* BUG: Activate the automatic instance just after its creation, but 
  before calling the constructors, so that they can reference it without
  trying to create it recursively again and again.


git-svn-id: svn://localhost/gambas/trunk@3397 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-12-24 12:20:11 +00:00
Benoît Minisini
b86a35e903 [DEVELOPMENT ENVIRONMENT]
* BUG: The project property dialog does not crash anymore when there is an
  hidden component in the component list described in the '.project' file.

[INTERPRETER]
* BUG: -2147483648 is a valid integer.

[COMPILER]
* BUG: -2147483648 is a valid integer.

[GB.QT4]
* NEW: DrawingArea.NoBackground is a new property that prevent the 
  DrawingArea to automatically refresh its background when you know that 
  you will paint it fully yourself.

[GB.GTK]
* NEW: DrawingArea.NoBackground is a new property that prevent the 
  DrawingArea to automatically refresh its background when you know that 
  you will paint it fully yourself.


git-svn-id: svn://localhost/gambas/trunk@3393 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-12-22 18:31:44 +00:00
Benoît Minisini
72aee6fbc1 [INTERPRETER]
* NEW: IsInteger(), IsLong(), IsFloat(), IsDate() and IsNumber() argument 
  now must be a string. There is no automatic conversion anymore.


git-svn-id: svn://localhost/gambas/trunk@3390 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-12-21 17:29:39 +00:00
Benoît Minisini
1bd45a5751 [INTERPRETER]
* NEW: Forgot to add two source files.


git-svn-id: svn://localhost/gambas/trunk@3388 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-12-21 14:35:39 +00:00
Benoît Minisini
cdcf6cdac9 [DEVELOPMENT ENVIRONMENT]
* BUG: Code indentation routine correctly handles structures now.

[INTERPRETER]
* NEW: Object.LastEventName has been deprecated, and replaced by 
  the Param.EventName property.
* BUG: IsFloat() is now a synonymous for IsNumber().
* BUG: Intrinsic functions description has been updated.

[COMPILER]
* NEW: "\e" is a new string escape sequence equivalent to "\x1B".

[GB.FORM]
* NEW: Use the new Control.Proxy property instead of internal observers
  inside compound controls (ValueBox, ButtonBox, MenuButton).

[GB.GTK]
* NEW: Control.Proxy is a new property that allows to define a control 
  proxy that will handle focus, key and mouse events in original control's 
  place.

[GB.QT4]
* NEW: Control.Proxy is a new property that allows to define a control 
  proxy that will handle focus, key and mouse events in original control's 
  place.


git-svn-id: svn://localhost/gambas/trunk@3387 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-12-21 14:05:42 +00:00
Benoît Minisini
776937cb72 [DEVELOPMENT ENVIRONMENT]
* NEW: Define preprocessor color for all highlighting themes.

[COMPILER]
* NEW: The maximum number of constants in a class is now 65536.

[INTERPRETER]
* NEW: The maximum number of constants in a class is now 65536.


git-svn-id: svn://localhost/gambas/trunk@3383 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-12-20 03:56:43 +00:00
Benoît Minisini
a79dead4f4 [INTERPRETER]
* BUG: The Val() and IsXXX() functions algorithm has been fixed. Now the 
  string is trimmed before being converted. Thousand separators are really 
  valid only to separate thousands. Extra non-space characters at the end
  of the string make the conversion fail.


git-svn-id: svn://localhost/gambas/trunk@3382 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-12-20 03:26:00 +00:00
Benoît Minisini
28ec164ea6 [INTERPRETER]
* NEW: Ceil() and Floor() functions.

[COMPILER]
* NEW: Ceil() and Floor() functions.


git-svn-id: svn://localhost/gambas/trunk@3378 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-12-19 13:56:34 +00:00
Benoît Minisini
291bf96ecc [COMPILER]
* BUG: Remove parser debugging messages.
* NEW: DEBUG is a new preprocessor symbol that returns if the compiler 
  generates debugging information.

[GB.QT4]
* BUG: Should compile with Qt 4.5.3 now.


git-svn-id: svn://localhost/gambas/trunk@3377 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-12-19 12:58:58 +00:00
Benoît Minisini
3b5cda0a80 [COMPILER]
* NEW: The preprocessor now understands three constants: SYSTEM, 
  ARCHITECTURE (or ARCH), and VERSION (or GAMBAS). The VERSION constants
  didn't change. The two others return a string that can be compare with
  equality or inequality operator. The comparison is not case sensitive.

[GB.EVAL]
* NEW: Comments are correctly highlighted in preprocessor lines.



git-svn-id: svn://localhost/gambas/trunk@3376 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-12-18 14:41:43 +00:00
Benoît Minisini
b38df04095 [DEVELOPMENT ENVIRONMENT]
* NEW: In icon editor, the width of the selection frame now follows the 
  zoom level.
* NEW: Support for preprocessor highlighting.

[COMPILER]
* NEW: Integrated preprocessor. The following commands are supported:
  #If <expr>, #Else If <expr>, #Else and #Endif. <expr> can be a 
  combination of constants (OS_LINUX, OS_FREEBSD, ARCH_X86, ARCH_X86...),
  parenthesis, 'And' & 'Or' operators, version test (VERSION >= "3.0").
  This is work in progress.

[GB.EVAL]
* NEW: A new highlighting color for the preprocessor.

[GB.QT4.EXT]
* NEW: A new highlighting color for the preprocessor in Editor control.


git-svn-id: svn://localhost/gambas/trunk@3374 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-12-18 04:27:59 +00:00
Benoît Minisini
6f440dc030 [DEVELOPMENT ENVIRONMENT]
* BUG: Fix the icon editor.

[INTERPRETER]
* NEW: If Stop Event is used during the Timer event, the timer is stopped.

[INFORMER]
* BUG: Fix a file descriptor leak.

[GB.DRAW]
* NEW: Draw.Zoom() now does not draw cell borders unless zoom is greater or 
  equal than 6.

[GB.DESKTOP]
* BUG: Fix a forgotten "break" in a switch statement when setting a window
  property with a string array.

[GB.QT4]
* BUG: Fix image leak in Clipboard.Copy() and Drag().
* BUG: Fix incorrect copy of image data when taking ownership of an image 
  object.
* NEW: Draw.Image() does not do a smooth transformation the image is 
  enlarged in both dimensions, and if the new size is a multiple of the old
  size.
* OPT: DrawingArea with the default background color now does not repaint
  its background before calling the Draw event.

[GB.QT4.EXT]
* BUG: Fix a bad test in GDocument::getLineFlag().


git-svn-id: svn://localhost/gambas/trunk@3368 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-12-15 15:55:16 +00:00
Benoît Minisini
725dca7623 [INTERPRETER]
* NEW: Collection.Copy() is a new method that returns a copy of a 
  collection.


git-svn-id: svn://localhost/gambas/trunk@3363 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-12-14 01:18:41 +00:00
Benoît Minisini
c5a29da470 [COMPILER]
* NEW: '%' is a new operator that is a synonymous for 'MOD'. It has its
  assignment operator shortcut '%=' too.


git-svn-id: svn://localhost/gambas/trunk@3362 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-12-13 23:46:01 +00:00
Benoît Minisini
09c9f29ce0 [INTERPRETER]
* BUG: Fix a possible compilation problem.


git-svn-id: svn://localhost/gambas/trunk@3361 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-12-13 14:38:58 +00:00
Benoît Minisini
278b393018 [DEVELOPMENT ENVIRONMENT]
* NEW: Exported project classes that are controls are now automatically 
  visible in the control toolbar.
* NEW: Compiling the project now automatically refreshes the control 
  toolbar when needed.

[INTERPRETER]
* BUG: File.SetExt() now works correctly with files whose name begins with
  a dot.

[GB.QT4]
* BUG: The frame width of raised or sunken borders used by some Container 
  classes now should correctly follow the style.


git-svn-id: svn://localhost/gambas/trunk@3352 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-12-09 03:15:42 +00:00
Benoît Minisini
a1c697eb93 [GB.SIGNAL]
* BUG: That component should be compiled correctly on FreeBSD now.


git-svn-id: svn://localhost/gambas/trunk@3350 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-12-08 17:15:18 +00:00
Benoît Minisini
1354ca2af7 [GB.DB.ODBC]
* BUG: Table existence should be checked correctly now.

[GB.DRAW]
* NEW: Paint.DrawImage() is a new utility function to paint an image 
  easily.

[GB.QT4]
* BUG: Printer.Count is now 1 by default.
* BUG: Found a workaround to the Qt bug #5114. Now the brush matrix is 
  taken into account when painting on a Printer object.


git-svn-id: svn://localhost/gambas/trunk@3347 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-12-07 01:20:40 +00:00
Benoît Minisini
26b363c96f [WIKI CGI SCRIPT]
* NEW: Button to "flattr" Gambas.

[INTERPRETER]
* BUG: Fix some possible uses of unitialized values.

[COMPILER]
* BUG: Fix a possible crash when having 63 arguments passed by reference 
  to a function.

[GB.DB.SQLITE3]
* BUG: Detect integer primary key whatever the case used to write 
  "integer".

[GB.GTK]
* BUG: Page setup is enabled in printer configuration dialog now.

[GB.QT4]
* BUG: The font size of printed texts is now correct.


git-svn-id: svn://localhost/gambas/trunk@3344 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-12-05 20:17:24 +00:00
Benoît Minisini
cf16f17a91 [INTERPRETER]
* BUG: Use isfinite() instead of deprecated finitef() functions.
* BUG: Replace "Static array" error message by "Embedded array".


git-svn-id: svn://localhost/gambas/trunk@3343 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-12-05 11:33:22 +00:00
Benoît Minisini
0f031c5741 [COMPILER]
* BUG: Define LLONG_MAX constant when it is not defined.


git-svn-id: svn://localhost/gambas/trunk@3338 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-11-30 15:03:47 +00:00
Benoît Minisini
521b2c933c [COMPILER]
* NEW: Remove the MkPtr$() synonymous.


git-svn-id: svn://localhost/gambas/trunk@3331 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-11-28 10:05:50 +00:00
Benoît Minisini
6a15492e9c [INTERPRETER]
* NEW: The scaring change. IsByte(), IsShort(), IsSingle(), IsString(), 
  IsPointer(), IsObject() and IsVariant() have been removed. IsNull() has
  been kept unchanged.
* NEW: IsInteger() now returns if a string can be converted to an Integer
  number.
* NEW: IsLong() now returns if a string can be converted to an Integer or a
  Long number.
* NEW: IsFloat() now returns if a string can be converted to a Float, but
  not an Integer or a Long.
* NEW: IsNumber() now returns if a string can be converted to an Integer, a
  Long or a Float.
* NEW: IsDate() now returns if a string can be converted to a Date.
* NEW: Str(True) and Str(False) now use the translation of the "True" and
  "False" string, if they exist in the current project.
* NEW: Val() now uses the translation of the "True" and "False" string, if 
  they exist in the current project.


git-svn-id: svn://localhost/gambas/trunk@3329 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-11-27 23:00:08 +00:00
Benoît Minisini
9d11c85ef4 [COMPILER]
* BUG: Correctly read long constants whose value is the lower possible Long 
  value.


git-svn-id: svn://localhost/gambas/trunk@3327 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-11-27 14:46:25 +00:00
Benoît Minisini
122e8ee9c9 [INTERPRETER]
* BUG: Fix the array conversion routine.


git-svn-id: svn://localhost/gambas/trunk@3326 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-11-27 01:40:19 +00:00
Benoît Minisini
d997caf779 [INTERPRETER]
* NEW: Automatic conversion between all array classes.


git-svn-id: svn://localhost/gambas/trunk@3325 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-11-27 01:27:23 +00:00
Benoît Minisini
697a40a046 [INTERPRETER]
* NEW: WRITE writes structures in one shot, by using an internal buffer. 
  This is useful for UDP socket, when the message size is the size of the 
  data sent in one shot.


git-svn-id: svn://localhost/gambas/trunk@3323 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-11-27 00:06:43 +00:00
Benoît Minisini
662e4282bf [INTERPRETER]
* NEW: The argument of Byte@(), Short@()... functions now can be a string.
  Then the address of the string in memory is used.
* BUG: Structures allocated with the NEW operator are correctly freed now.
* NEW: READ and WRITE now can deal with structures and embedded arrays.
* NEW: Dir?() synonymous has been removed.


git-svn-id: svn://localhost/gambas/trunk@3322 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-11-26 20:30:58 +00:00
Benoît Minisini
ab38b98a1c [COMPILER]
* NEW: Remove MkPtr$() and Ptr@().


git-svn-id: svn://localhost/gambas/trunk@3321 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-11-24 16:03:18 +00:00
Benoît Minisini
f7a157204b [INTERPRETER]
* NEW: Mem$() was replaced by MkBool$(), MkByte$(), and so on.

[COMPILER]
* NEW: Mem$() was replaced by MkBool$(), MkByte$(), and so on.
* NEW: CLng(), CSng(), CVar(), CPtr() abbreviations were removed.
* NEW: CBoolean() was added.


git-svn-id: svn://localhost/gambas/trunk@3320 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-11-24 16:00:39 +00:00
Benoît Minisini
8aacf23491 [COMPILER]
* BUG: Use the right symbol table.


git-svn-id: svn://localhost/gambas/trunk@3319 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-11-24 02:22:50 +00:00
Benoît Minisini
030523326f [INTERPRETER]
* NEW: Mem$() is a new function that returns a string from the internal 
  memory representation of a value.
* NEW: BoolPtr() has been replaced by Bool@(), BytePtr() has been replaced 
  by Byte@(), and so on...
* NEW: StrPtr() has been replaced by String@().

[EXAMPLES]
* NEW: Search support in the WebBrowser example.


git-svn-id: svn://localhost/gambas/trunk@3318 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-11-24 01:30:36 +00:00
Benoît Minisini
b9e53e58c4 [INTERPRETER]
* BUG: VarPtr() now correctly works on Date and Pointer variables.
* BUG: Addition works again on Date.
* NEW: Object.Address() is a new method that returns the memory address of 
  an object.


git-svn-id: svn://localhost/gambas/trunk@3307 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-11-22 10:10:56 +00:00
Benoît Minisini
8873a0e1cc [DEVELOPMENT ENVIRONMENT]
* BUG: Correctly handle all compiler error messages.

[INTERPRETER]
* NEW: Full management of the Single datatype.
* BUG: VarPtr() now works on Single local variables.
* BUG: Remove useless Tag property. It is defined in the Stream class now.
* BUG: Correctly free the Tag property in the Stream class.

[GB.GTK]
* BUG: Rich-text string management has been fixed. The ampersand character, 
  the "&amp;", "&gt;" and "&lt;" entites are correctly interpreted now.

[GB.NET.CURL]
* BUG: Remove useless Tag property. It is defined in the Stream class now.

[EXAMPLES]
* NEW: The WebBrowser example has a download manager now.


git-svn-id: svn://localhost/gambas/trunk@3296 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-11-16 01:49:18 +00:00
Benoît Minisini
453236f17f [DEVELOPMENTE ENVIRONMENT]
* BUG: A "=" character was missing in the menu file generated by the 
  Debian/Ubuntu packager.

[INTERPRETER]
* BUG: Fix two incorrect optional function declarations.


git-svn-id: svn://localhost/gambas/trunk@3286 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-11-08 15:57:25 +00:00
Benoît Minisini
63eefd927c [INTERPRETER]
* BUG: File.Load() now can read special files (like those in /proc) whose 
  size is zero even if they are not void.
* BUG: The native method error flag is not incorrectly propagated anymore
  when an error is raised.


git-svn-id: svn://localhost/gambas/trunk@3277 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-11-06 03:27:58 +00:00
Benoît Minisini
1a8c82215c [INTERPRETER]
* BUG: Fix startup current directory detection when running an archive.
* BUG: Using a Variant where a stream is requested does not crash the 
  interpreter anymore.


git-svn-id: svn://localhost/gambas/trunk@3276 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-11-03 20:28:54 +00:00
Benoît Minisini
8aac47f84d [EXAMPLES]
* BUG: Fix the Database example.

[INTERPRETER]
* BUG: Fix unchecked system calls.

[ARCHIVER]
* BUG: Prevent the archiver from putting the executable file into itself, 
  leading to a endless growing generated file.
* NEW: Files having the ".gambas" extension are now excluded from 
  executable archives.

[GB.DB.FORM]
* BUG: Remove the DataBrowser.Adjust property.


git-svn-id: svn://localhost/gambas/trunk@3272 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-10-31 22:05:29 +00:00
Benoît Minisini
aa1fe3bb1a [INTERPRETER]
* BUG: Variants can be constant strings (in database drivers for example). 
  So keep the constant string datatype when undoing the variant. 
  Otherwise, the constant string will be assumed to be a Gambas string, and 
  will be  deallocated, which leads to a crash.


git-svn-id: svn://localhost/gambas/trunk@3270 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-10-31 16:21:24 +00:00
Benoît Minisini
23dd0b0299 [DEVELOPMENT ENVIRONMENT]
* BUG: Do not search text inside form anymore.

[INTERPRETER]
* BUG: The startup class is not global anymore, so that it does not 
  conflict with anythign having the same name in components. The 
  interpreter API that was returning the startup class has been updated
  to reflect that change.
* BUG: File.Name("/a/b/") now returns a void string instead of returning 
  "b", to be coherent with File.Dir().

[GB.DESKTOP]
* NEW: Use the new API returning the startup class.

[GB.FORM]
* BUG: Setting DirView.Root with a path ending with a slash does not crash
  anymore.

[GB.GTK]
* NEW: Use the new API returning the startup class.

[GB.QT4]
* NEW: Use the new API returning the startup class.

[GB.SIGNAL]
* NEW: Use the new API returning the startup class.


git-svn-id: svn://localhost/gambas/trunk@3267 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-10-15 00:23:11 +00:00
Benoît Minisini
7c7d65612c [DEVELOPMENT ENVIRONMENT]
* BUG: Filter project tree view by files that need to be added to the 
  version control repository now works.
* BUG: Reset project tree view filter at project opening.

[GB.DEBUG]
* BUG: Use the reentrant collection enumeration API correctly.


git-svn-id: svn://localhost/gambas/trunk@3256 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-10-07 01:29:54 +00:00
Benoît Minisini
68ede3cb8b [INTERPRETER]
* BUG: Interpreter API for enumerating collections is now reentrant.

[GB.DBUS]
* NEW: Use the new collection enumerator function.


git-svn-id: svn://localhost/gambas/trunk@3255 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-10-06 12:03:27 +00:00
Benoît Minisini
ad2114ee88 [CONFIGURATION]
* BUG: Found a workaround for the AX_CFLAGS_GCC_OPTION macro bug in 
  autoconf 2.67.

[DEVELOPMENT ENVIRONMENT]
* BUG: Do not try to display wiki help for symbols located in libraries.
* NEW: A new project tree filter that shows files that must be added to the
  version control system.

[WIKI CGI SCRIPT]
* BUG: Use the correct language code for czech language.
* BUG: Be more clever with formatting characters having a space before or 
  after them.

[INTERPRETER]
* NEW: Serialization now detects circular references and raises an error.


git-svn-id: svn://localhost/gambas/trunk@3253 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-10-06 11:29:31 +00:00
Benoît Minisini
96082b6e2c [GB.DEBUG]
* NEW: The debugger now prints string values up to 65535 characters.


git-svn-id: svn://localhost/gambas/trunk@3249 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-10-03 19:22:14 +00:00
Benoît Minisini
fc60aacecc [DEVELOPMENT ENVIRONMENT]
* BUG: Fix a possible when opening the procedure list.

[INTERPRETER]
* NEW: The READ instruction can read arrays and collections with 
  'AS Object' as well as 'AS Variant'.

[GB.QT4]
* BUG: Minimizing modal windows does not crash anymore.


git-svn-id: svn://localhost/gambas/trunk@3246 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-09-28 17:05:10 +00:00
Benoît Minisini
4dc396ffe8 [DEVELOPMENT ENVIRONMENT]
* BUG: No error messages should be displayed anymore when refreshing the 
  search list.

[WIKI CGI SCRIPT]
* BUG: Fix formatting characters handling.

[INTERPRETER]
* NEW: WRITE and READ instructions can handle collections and arrays. Call
  that "serialization".

[GB.WEB]
* OPT: Replace session serialization code by the new powers of READ and 
  WRITE instructions.


git-svn-id: svn://localhost/gambas/trunk@3244 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-09-27 19:34:27 +00:00
Benoît Minisini
677321df65 [INTERPRETER]
* BUG: Handle too long path checks against archives without crashing.


git-svn-id: svn://localhost/gambas/trunk@3242 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-09-25 18:18:48 +00:00
Benoît Minisini
bddbc3a62a [INTERPRETER]
* BUG: Fix a compilation warning on 32 bits systems.

[GB.SDL]
* BUG: Fix a function that was not returning any value.


git-svn-id: svn://localhost/gambas/trunk@3239 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-09-24 13:52:23 +00:00
Benoît Minisini
ab132742d6 [CONFIGURATION]
* NEW: Print a resume after "make install".


git-svn-id: svn://localhost/gambas/trunk@3238 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-09-24 12:48:08 +00:00
Benoît Minisini
95b95fa8cc [CONFIGURATION]
* NEW: Start trying to display a resume at the end of installation.

[INTERPRETER]
* BUG: Extern functions now can handle up to 16 pointer or string 
  arguments.

[GB.GTK]
* BUG: Fix a infinite recursion in drag and drop management when draging
  TextBox or TextArea contents inside the same application.

[GB.QT]
* BUG: Do not propagate Drop events when there is a drop event handler.


git-svn-id: svn://localhost/gambas/trunk@3237 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-09-24 09:32:46 +00:00
Benoît Minisini
7b99389464 [INTERPRETER]
* BUG: Fix a possible crash in Val().
* BUG: Fix a possible crash when reading a non-existing key in a 
  Collection.


git-svn-id: svn://localhost/gambas/trunk@3234 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-09-23 01:34:15 +00:00
Benoît Minisini
c662af4ee8 [INTERPRETER]
* BUG: Format() with a void format string does not crash anymore.

[GB.IMAGE]
* BUG: Image.Colorize() does not invert red and blue anymore.


git-svn-id: svn://localhost/gambas/trunk@3232 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-09-21 23:49:32 +00:00
Benoît Minisini
e0e0fb1436 [DEVELOPMENT ENVIRONMENT]
* BUG: Circular inheritance should be detected correctly now.

[COMPILER]
* NEW: Change the format of error messages. The full source file path is 
  not printed anymore, only the file name.


git-svn-id: svn://localhost/gambas/trunk@3229 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-09-18 13:26:19 +00:00
Benoît Minisini
c0f29f9f90 [DEVELOPMENT ENVIRONMENT]
* NEW: "Save project as" now uses a dialog box that allows to choose the 
  project new name.
* NEW: CSV file import dialog now can ignore the file first lines.
* NEW: CSN file import dialog now saves its contents in the setting file.

[INTERPRETER]
* BUG: Correctly remove '\t' from error messages, as that character is used
  by the debugger as separator.
* BUG: Release invalid automatic instances again.

[GB.DB.FORM]
* OPT: Use a transaction when deleting many rows in DataView.

[GB.DB.POSTGRESQL]
* BUG: Remove a debugging message.

[GB.GTK]
* BUG: Changing the stack order of a control now correctly triggers a
  parent arrangement.

[GB.QT4]
* BUG: Changing the stack order of a control now always triggers a parent 
  arrangement.


git-svn-id: svn://localhost/gambas/trunk@3225 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-09-16 11:27:51 +00:00
Benoît Minisini
40e3647215 [GB.DB]
* BUG: The gb.db API DB.GetCurrentDatabase() should be reliable now, so 
  that database drivers using it do not crash anymore.


git-svn-id: svn://localhost/gambas/trunk@3223 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-09-16 00:57:35 +00:00
Benoît Minisini
0f5e37553a [GB.DB]
* BUG: Table.Indexes.Add() now does not corrupt index fields anymore.


git-svn-id: svn://localhost/gambas/trunk@3222 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-09-16 00:47:07 +00:00
Benoît Minisini
2fa5d15318 [DEVELOPMENT ENVIRONMENT]
* BUG: Fix procedure list crash.

[GB.IMAGE]
* NEW: Color merge algorithm has changed. Instead of using the middle of 
  RGB values, now it uses the middle of HSV values. It changes the value of
  Color.LightForeground and the color used for drawing Workspace default
  background.

[GB.QT4]
* BUG: Separator and plain borders now use the same color.
* BUG: ShowPopup() now works correctly if used on the same window several 
  times.


git-svn-id: svn://localhost/gambas/trunk@3217 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-09-15 01:49:26 +00:00
Benoît Minisini
0bec0b25cf [DEVELOPMENT ENVIRONMENT]
* NEW: The search window now can browse in all source files only.
* BUG: The search list is correctly refreshed for project text files.
* NEW: The debug panel has been slightly redesigned. Local and global
  variables lists are always sorted now.

[INTERPRETER]
* BUG: Do not try to run the "_exit" special method if the class load
  has previously failed.
* BUG: Do not release the automatic instance when is it invalid.
* BUG: Check that the automatic instance is valid before using it.


git-svn-id: svn://localhost/gambas/trunk@3215 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-09-14 13:01:47 +00:00
Benoît Minisini
210a396888 [DEVELOPMENT ENVIRONMENT]
* NEW: Do not store the svn revision in the .project file.
* NEW: Create a clever menu hierarchy when sorting recent files by path.

[INTERPRETER]
* BUG: Replace() correctly returns its first argument when its second
  argument is a void string.

[COMPILER]
* BUG: Remove a useless test.

[GB.FORM]
* NEW: Add a svg version of the GNU logo.
* BUG: Fix some stock icons in the Gnome map.

[GB.GTK]
* BUG: Fix possible crashes in three utility routines.
* BUG: Fix a crash in GridView.Rows[].Text property.

[GB.NET.SMTP]
* BUG: Fix an always true test.


git-svn-id: svn://localhost/gambas/trunk@3206 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-09-11 10:23:36 +00:00
Benoît Minisini
850d9febf9 [INTERPRETER]
* BUG: The Object[].Add() method signature is now correctly declared.


git-svn-id: svn://localhost/gambas/trunk@3190 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-09-07 01:18:04 +00:00
Benoît Minisini
0a659f3a9d [DEVELOPMENT ENVIRONMENT]
* BUG: Fix the help browser for classes whose name begins with an 
  underscore.
* BUG: Fix project loading when there are breakpoints set on non-existing 
  classes.

[INTERPRETER]
* BUG: Fix the behaviour of Eval() when the expression cannot be compiled.
* BUG: Error.Text does not crash anymore when the error message is void.

[COMPILER]
* BUG: Fix the parser behaviour when a non-terminated string is located at 
  the end of the file.

[GB.EVAL]
* BUG: Fix the parser behaviour when a non-terminated string is located at 
  the end of the expression.

[GB.GTK]
* BUG: Fix the behaviour of Label with AutoResize set.

[GB.QT4]
* BUG: Fix the behaviour of Label with AutoResize set.


git-svn-id: svn://localhost/gambas/trunk@3178 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-09-04 13:21:11 +00:00
Benoît Minisini
de73b5ff5c [GB.FORM]
* BUG: TableView keyboard navigation behave better with gb.gtk.

[GB.GTK]
* BUG: Read-only ComboBox controls do not lost focus events anymore.


git-svn-id: svn://localhost/gambas/trunk@3175 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-09-01 20:46:09 +00:00
Benoît Minisini
2a60608474 [WIKI CGI SCRIPT]
* BUg: Fix the handle of formatting characters.

[INTERPRETER]
* NEW: Sizeof() now takes a datatype constant (like gb.Integer) as 
  argument, and not an expression anymore.
* NEW: Object.Sizeof() returns the memory used by an object in bytes.


git-svn-id: svn://localhost/gambas/trunk@3170 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-08-31 12:02:08 +00:00
Benoît Minisini
3fbd60c233 [CONFIGURATION]
* NEW: Check for missing mathematical function directly instead of relying 
  on operating system detection.


git-svn-id: svn://localhost/gambas/trunk@3166 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-08-31 08:54:51 +00:00
Benoît Minisini
9a265c4201 [INTERPRETER]
* BUG: Last optimization was a bad idea.


git-svn-id: svn://localhost/gambas/trunk@3159 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-08-29 21:35:34 +00:00
Benoît Minisini
db20edec3e [INTERPRETER]
* OPT: Do not reset the native method error flag before calling a native 
  method, as it is reset just after. Maybe it works, maybe not...


git-svn-id: svn://localhost/gambas/trunk@3157 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-08-29 20:53:23 +00:00
Benoît Minisini
62c381c2f6 [DEVELOPMENT ENVIRONMENT]
* NEW: Handle compiler errors having column information.

[INTERPRETER]
* BUG: Manage errors from native methods differently.

[COMPILER]
* NEW: Return the column in error messages generated by the parser.

[GB.GTK]
* BUG: Make TabStrip behave like in gb.qt when inserting a new tab.


git-svn-id: svn://localhost/gambas/trunk@3156 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-08-29 20:51:10 +00:00
Benoît Minisini
df9646d42a [INTERPRETER]
* BUG: Remove file descriptor watch optimization, it does not work.


git-svn-id: svn://localhost/gambas/trunk@3152 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-08-28 15:00:39 +00:00
Benoît Minisini
84aa516fa4 [INTERPRETER]
* NEW: System.FirstDayOfWeek is a new property that allows to define the 
  first day of the week if the default is not accurate. The default value
  is gb.Sunday for english countries and gb.Monday otherwise.
* NEW: The Week() function now use the default first day of the week.

[GB.FORM]
* NEW: DateChooser now takes System.FirstDayOfWeek into account.


git-svn-id: svn://localhost/gambas/trunk@3151 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-08-28 12:33:05 +00:00
Benoît Minisini
a81fdbc669 [COMPILER]
* NEW: Support for CASE LIKE that compare the SELECT value with a regular 
  expression.


git-svn-id: svn://localhost/gambas/trunk@3147 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-08-27 22:02:51 +00:00
Benoît Minisini
6db743fc12 [GB.FORM]
* NEW: Polish the DirChooser/FileChooser bookmark button.

[GB.QT4]
* BUG: Send expected Leave and Enter events when a popup is closed.


git-svn-id: svn://localhost/gambas/trunk@3146 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-08-27 21:09:34 +00:00
Benoît Minisini
b61b4a108b [INTERPRETER]
* BUG: Prevent Process objects to try to raise their Read event when 
  they were killed.


git-svn-id: svn://localhost/gambas/trunk@3139 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-08-26 14:45:10 +00:00
Benoît Minisini
c1a2603c70 [INTERPRETER]
* BUG: Remove debugging message.


git-svn-id: svn://localhost/gambas/trunk@3133 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-08-25 11:35:34 +00:00
Benoît Minisini
19a21789e6 [INTERPRETER]
* OPT: Association between file descriptors and callbacks use a direct 
  index now.


git-svn-id: svn://localhost/gambas/trunk@3132 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-08-25 11:23:19 +00:00
Benoît Minisini
85b08d28ba [INTERPRETER]
* BUG: ARRAY_add_void() function now correctly adds a void element in the 
  array after an element has been previously removed. That bug made the 
  event loop mad in some cases!


git-svn-id: svn://localhost/gambas/trunk@3131 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-08-25 09:18:33 +00:00
Benoît Minisini
eb94949c92 [DEVELOPMENT ENVIRONMENT]
* NEW: More snippets for declaring local variables: "di" declares an 
  integer variable, "ds" a string variable...

[GB.IMAGE]
* NEW: Image.FillRect() ignores transparency. But a new Image.DrawRect() 
  method takes it into account now.

[GB.QT4]
* BUG: Mouse event properties are enabled now during a double click event 
  handler.

[GB.WEB]
* NEW: HTTP compression is automatically enabled if the response is 
  buffered, and if the HTTP client can handle it of course.


git-svn-id: svn://localhost/gambas/trunk@3128 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-08-24 10:56:55 +00:00
Benoît Minisini
9b7aa9c650 [INTERPRETER]
* BUG: Fix an unitialized structure field in extern functions management.


git-svn-id: svn://localhost/gambas/trunk@3119 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-08-15 14:47:18 +00:00
Benoît Minisini
abffa75889 [INTERPRETER]
* BUG: Fix many array methods that crashed when taking abnormal 'start' or 
  'length' arguments. Now they raise errors.


git-svn-id: svn://localhost/gambas/trunk@3110 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-08-14 20:51:42 +00:00
Benoît Minisini
13c7314713 [GB.GTK]
* BUG: Correctly release Menu tags.


git-svn-id: svn://localhost/gambas/trunk@3109 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-08-14 16:04:58 +00:00
Benoît Minisini
4f574b001e [INTERPRETER]
* BUG: The debugger does not crash anymore when activated at startup.

[GB.FORM]
* BUG: The MenuButton now only reacts to the left mouse button.

[GB.GTK]
* BUG: Remove some debugging messages from ColumnView.Settings property.
* BUG: Do not try to get informations about a widget when a window is 
  needed and the widget is not yet realized.
* BUG: Fix the Control.Cursor property.
* BUG: Control.Hovered now returns FALSE when the control is not visible.
* BUG: Creating the menubar does not make all window children visible 
  anymore.

[GB.QT4]
* BUG: Control.Hovered now returns FALSE when the control is not visible.


git-svn-id: svn://localhost/gambas/trunk@3107 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-08-14 13:28:27 +00:00
Benoît Minisini
25fd457dc8 [GB.FORM]
* NEW: MenuButton has been redesigned to use a DrawingArea only.

[GB.GTK]
* BUG: Styles are better drawn now.
* BUG: Destroyed controls are not seen anymore when enumerating container 
  children.
* NEW: Control.Hovered is a new property that returns if the mouse cursor
  is inside the control.
* NEW: Draw.Style.Button() gets a new optional boolean argument to tell if
  we must draw a flat button.
* NEW: Draw.Style.Focus() has been removed.

[GB.QT4]
* NEW: Control.Hovered is a new property that returns if the mouse cursor
  is inside the control.
* NEW: Draw.Style.Button() gets a new optional boolean argument to tell if
  we must draw a flat button.
* NEW: Draw.Style.Focus() has been removed.


git-svn-id: svn://localhost/gambas/trunk@3106 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-08-14 11:29:44 +00:00
Benoît Minisini
0fced172a7 [DEVELOPMENT ENVIRONMENT]
* BUG: Correctly update the code editor menu when the project is running.

[GB.FORM.MDI]
* NEW: The Workspace.ButtonPosition property has been removed.
* NEW: The Workspace tabstrip now uses embedded close buttons.

[GB.IMAGE]
* NEW: The Image.Gray() method has been renamed as Image.Desaturate().
* NEW: The Image.Transparent() method has been renamed as Image.Erase().

[GB.IMAGE.EFFECT]
* NEW: The Image.Gray() and Image.Desaturate() methods have been removed.


git-svn-id: svn://localhost/gambas/trunk@3105 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-08-13 19:57:06 +00:00
Benoît Minisini
b3351fb0e0 [DEVELOPMENT ENVIRONMENT]
* NEW: A new option to use utility windows or normal windows for option
  dialog, search window and help browser.

[GB.DRAW]
* BUG: The Draw.Normal constant is correctly named now.

[GB.GTK]
* BUG: Draw plain borders the same way as in gb.qt4.
* NEW: Window.Type has been removed.
* NEW: Window.Utility is a new boolean property to tell the window manager
  that the window is an utility.

[GB.IMAGE]
* BUG: Fix some image format management is many routines.
* NEW: Image.FillRect() now handles transparent colors.

[GB.QT4]
* NEW: Window.Utility is a new boolean property to tell the window manager
  that the window is an utility.


git-svn-id: svn://localhost/gambas/trunk@3102 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-08-13 10:43:37 +00:00
Benoît Minisini
93e19ca274 [GB.IMAGE]
* NEW: Image.DrawAlpha() is a new method that replace the alpha components 
  of an image by the alpha components of another image, where the other 
  image is more transparent.


git-svn-id: svn://localhost/gambas/trunk@3101 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-08-12 19:13:44 +00:00
Benoît Minisini
d9cae60bbe [GB.DRAW]
* NEW: New flags for Draw.Style states. Draw.Focus, for widgets having the 
  focus, and Draw.Hover for widgets flied over by the mouse.


git-svn-id: svn://localhost/gambas/trunk@3097 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-08-06 14:36:45 +00:00
Benoît Minisini
055e187a6a [DEVELOPMENT ENVIRONMENT]
* NEW: In Gambas, javascript, HTML and CSS editor, a button to insert 
  a color definition, or a color already defined in the current source 
  code.
* NEW: Allow links with title ([<link>|<title>]) in help comment syntax.

[GB.FORM]
* BUG: In FileView, file sizes are really written with 1 Kib = 1024 bytes.
* BUG: MenuButton has an Action property again.
* BUG: MenuButton raise its basic events.

[GB.IMAGE]
* BUG: COlor.Darker() works correctly for black, white and gray colors now.

[GB.IMAGE.IO]
* BUG: Image.Save() quality is correctly handled. For PNG format, the 
  quality is actually the compression level, between 0 and 9.

[GB.QT4.WEBKIT]
* NEW: WebFrame.HTML is a new property that returns the HTML contents of a 
  specific frame.
* NEW: WebFrame.Text  is a new property that returns the text inside a 
  specific frame.

[GB.WEB]
* NEW: When the session is abandonned, the Session_Abandon() static public 
  method is called in the startup class.


git-svn-id: svn://localhost/gambas/trunk@3096 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-08-06 11:49:57 +00:00
Benoît Minisini
c6593fc839 [DEVELOPMENT ENVIRONMENT]
* NEW: A menu button in the project property dialog to quickly insert 
  the "GB_GUI" environmental variable.

[GB.FORM]
* NEW: Enhancements in ButtonBox and MenuButton controls.
* NEW: MenuButton.Border is a new property to set if the MenuButton has a
  border or not.
* NEW: If the MenuButto has no menu, it will raise its Click event if its
  arrow button is clicked.

[GB.GTK]
* NEW: ToolButton are "transparent" now.
* NEW: Draw.Style.Box() is a new style API that draws a TextBox frame.

[GB.QT4]
* NEW: Draw.Style.Box() is a new style API that draws a TextBox frame.


git-svn-id: svn://localhost/gambas/trunk@3093 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-08-03 21:27:39 +00:00
Benoît Minisini
c6c3a38eb2 [GB.EVAL]
* BUG: Do not incorrectly use interpreter gb_error.h header file, it crashes!


git-svn-id: svn://localhost/gambas/trunk@3092 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-08-03 16:09:06 +00:00
Benoît Minisini
60ea7ae855 [INTERPRETER]
* BUG: Fix some crashes in error management. Maybe...
* BUG: Sorting with natural string comparison understands gb.Descent 
  correctly now.

[GB.WEB]
* BUG: CGI.Error() method should be more reliable now.


git-svn-id: svn://localhost/gambas/trunk@3091 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-08-03 11:00:42 +00:00
Benoît Minisini
68e1ec7d00 [GB.FORM]
* NEW: DateBox is a new control that can edit a date with a calendar popup.
  It aims at replacing the DatePicker, and the ValueBox with date type.
* NEW: DateChooser layout is better with small sizes.
* NEW: DateChooser raises a Cancel event when you hit the Escape key.

[GB.GTK]
* BUG: Better management of window grabs.
* NEW: Window.ShowPupup() is a new method that shows a window as a popup.
  It takes an optional X,Y screen position as arguments. If not specified, 
  the window is shown at the current cursor position.
* BUG: Now all controls catch basic events.
* BUG: Fix a crash when destroying controls.

[GB.QT4]
* NEW: Window.ShowPupup() is a new method that shows a window as a popup.
  It takes an optional X,Y screen position as arguments. If not specified, 
  the window is shown at the current cursor position.
* NEW: TrayIcon got a PopupMenu property, like the Control class. But it 
  works only if the TrayIcon observer is a Window. The property has bot
  been implemented in gb.gtk yet.


git-svn-id: svn://localhost/gambas/trunk@3088 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-08-02 19:36:37 +00:00
Benoît Minisini
8871738fb6 [INTERPRETER]
* BUG: READ and WRITE now correctly handle Pointer datatype.
* BUG: Classes inheriting an array class now work correctly.

[GB.FORM]
* NEW: FileChooser and DirChooser have a new ShowButton property that shows 
  OK and Cancel buttons inside the control. Clicking on the Cancel button
  raises a new Cancel event.
* NEW: Bookmark management has been redesigned in file controls.
* NEW: MenuButton got an AutoResize property.

[GB.FORM.DIALOG]
* NEW: File dialogs now remember their geometry.

[GB.GTK]
* BUG: Fix duplicate Click event in CheckBox control.
* BUG: Correctly handle tristate Checkbox controls.


git-svn-id: svn://localhost/gambas/trunk@3076 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-07-29 10:19:10 +00:00
Benoît Minisini
c994a602df [INTERPRETER]
* BUG: The interpreter compiles now when extern functions are disabled.


git-svn-id: svn://localhost/gambas/trunk@3072 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-07-26 18:10:51 +00:00
Benoît Minisini
dbf5d2237a [INTERPRETER]
* BUG: Fix the Pi() function when it takes an argument.


git-svn-id: svn://localhost/gambas/trunk@3070 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-07-26 00:07:47 +00:00
Benoît Minisini
9824b4bfce [DEVELOPMENT ENVIRONMENT]
* BUG: Searching spaces now works in highlighted files.
* OPT: The result of grep has been cached, so that successive searches are 
  faster.

[GB.QT4.EXT]
* NEW: The Editor[].Purge() method replacing character can be passed as an 
  argument.



git-svn-id: svn://localhost/gambas/trunk@3069 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-07-25 23:19:35 +00:00
Benoît Minisini
40263e9bd7 [INTERPRETER]
* BUG: Correctly fix the management of return value in native function 
  calls.


git-svn-id: svn://localhost/gambas/trunk@3063 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-07-21 11:45:28 +00:00
Benoît Minisini
7f88b776ab [INTERPRETER]
* BUG: Do not crash anymore when a native function returns one of its 
  argument.
* NEW: New interpreter API to enumerate a collection.

[GB.DBUS]
* NEW: Collection are fully supported now.
* NEW: The org.freedesktop.DBus.properties.GetAll() method has been
  implemented.
* BUG: Correctly raise an error when calling a D-Bus method fails.
* BUG: Correctly release strings returned by D-Bus functions that must be
  released.


git-svn-id: svn://localhost/gambas/trunk@3058 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-07-21 04:40:45 +00:00
Benoît Minisini
e509aab05f [DEVELOPMENT ENVIRONMENT]
* BUG: Fix class header parsing in automatic completion.

[INTERPRETER]
* BUG: Class[].Signature has been implemented.
* BUG: Fix native method calling when some arguments must be converted.
* NEW: Two new interpreter APIs, GB.BorrowValue() and GB.ReleaseValue(), to
  correctly manage values returned by GB.ReadValue().

[GB.DBUS]
* NEW: Support for exporting properties and methods. The GetAll() DBus 
  method has not been implemented yet, because marshalling Collection is 
  not supported yet. Sending signals is not supported yet too.
* NEW: The previous DBusObject class has been renamed as DBusProxy.
* NEW: A new DBusObject class. Each Gambas object that inherits DBusObject
  is automatically exported through DBus.
* NEW: DBusSignal is a new class to catch DBus signals by giving its 
  interface name.


git-svn-id: svn://localhost/gambas/trunk@3047 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-07-19 12:33:57 +00:00
Benoît Minisini
fe70d3a878 [COMPILER]
* NEW: Understand the 'CASE TO Expression' syntax.


git-svn-id: svn://localhost/gambas/trunk@3046 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-07-19 10:10:37 +00:00
Benoît Minisini
483530dcff [COMPILER]
* BUG: Be less tolerant with newlines in CASE expressions.


git-svn-id: svn://localhost/gambas/trunk@3045 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-07-19 09:53:34 +00:00
Benoît Minisini
a02e468016 [INTERPRETER]
* BUG: Array.Type property is back again.


git-svn-id: svn://localhost/gambas/trunk@3044 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-07-16 14:15:11 +00:00
Benoît Minisini
0bc1701225 [WIKI CGI SCRIPT]
* NEW: New look for version specific documentation.

[INTERPRETER]
* NEW: Assign() has been removed, and replaced by Eval() with an expression 
  beginning with the LET keyword.
* NEW: New routines to read a value stored at a memory address: BoolPtr(),
  BytePtr(), ShortPtr(), IntPtr(), LongPtr(), SinglePtr(), FloatPtr() and
  PointerPtr().

[COMPILER]
* NEW: The LET keyword can be used to write an assignment expression. Of
  course it is optional.

[GB.EVAL]
* NEW: The LET keyword can be used to evaluate an assignment.
* NEW: The Expression.Compile() method does not take any argument anymore.

git-svn-id: svn://localhost/gambas/trunk@3041 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-07-14 16:33:29 +00:00
Benoît Minisini
70abf8b89c [INTERPRETER]
* NEW: Conversion between Integer or Long and Pointer is possible now.
* OPT: A little optimizations in extern function management.


git-svn-id: svn://localhost/gambas/trunk@3040 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-07-14 11:55:32 +00:00
Benoît Minisini
2dda2135f8 [INTERPRETER]
* BUG: Make the interpreter compile correctly.
* BUG: Some fixes in callback management.


git-svn-id: svn://localhost/gambas/trunk@3039 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-07-14 01:57:13 +00:00
Benoît Minisini
3054690743 [CONFIGURATION]
* NEW: Print a summary of warning messages after each component 
  compilation.

[INTERPRETER]
* BUG: StrPtr() with a length argument now works correctly.
* NEW: Support for callbacks: when converting a function to a Pointer, an 
  internal closure is created with the libffi library. The pointer then can 
  be sent to any extern function as function pointer argument.
* BUG: Opening memory stream should work in all cases now.


git-svn-id: svn://localhost/gambas/trunk@3038 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-07-14 01:50:18 +00:00
Benoît Minisini
5d6905a13e [DEVELOPMENT ENVIRONMENT]
* NEW: The project tree popup menu now has the refresh action.

[GB.SIGNAL]
* NEW: New component to catch or ignore process signals.


git-svn-id: svn://localhost/gambas/trunk@3037 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-07-12 23:09:57 +00:00
Benoît Minisini
6a680716a9 [DEVELOPMENT ENVIRONMENT]
* NEW: Store package name in the .project file.
* NEW: Take libraries into account in package dependencies.
* BUG: Fix autotools packages. Components are now stored beside the 
  "Component=" entry in the .project file. The "Library=" entry is for 
  libraries!

[ARCHIVER]
* NEW: Stores the .project file into executables.


git-svn-id: svn://localhost/gambas/trunk@3036 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-07-11 23:13:11 +00:00
Benoît Minisini
46234d8dc7 [INTERPRETER]
* NEW: Arrays and structures can be sent to an extern function argument. 
  The extern function will receive the address of the data.


git-svn-id: svn://localhost/gambas/trunk@3035 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-07-09 11:16:49 +00:00
Benoît Minisini
32f6172c89 [DEVELOPMENT ENVIRONMENT]
* BUG: Fix a crash is structure declaration analyze.

[INTERPRETER]
* NEW: Support for static array of structures. A static array of structure 
  'MyStruct' will create a temporary object whose class is '$MyStruct[]'. 
  That class does not inherit 'Array', and has only a few methods of the 
  Array class.
* NEW: Byte[].ToString() is a new method to convert a byte array to a 
  string. If no length is specified, ToString() assumes that the byte array
  is a zero-terminated string.
* NEW: Byte[].FromString() is a new method that fills a byte array with the
  contents of a string.

[COMPILER]
* NEW: Declaration of static arrays of structures is allowed.


git-svn-id: svn://localhost/gambas/trunk@3031 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-07-07 22:06:05 +00:00
Benoît Minisini
4eee881fda [DEVELOPMENT ENVIRONMENT]
* NEW: Global search can be cancelled.
* NEW: The IDE does not try to open binary files anymore.
* NEW: Use the new TabStrip.TextFont property.
* NEW: The open project dialog has been redesigned.

[INTERPRETER]
* BUG: String.Left(), String.Mid() and String.Right() now return NULL on 
  truncated UTF-8 substrings.


git-svn-id: svn://localhost/gambas/trunk@3029 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-07-05 22:17:49 +00:00
Benoît Minisini
53560dd374 [INTERPRETER]
* BUG: Dir() and RDir() on "" or "." should be fixed now.


git-svn-id: svn://localhost/gambas/trunk@3028 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-07-05 19:06:11 +00:00
Benoît Minisini
e2d1dbe3e5 [GB.EVAL]
* BUG: Rewriting class names works now when the class name has only one 
  character.


git-svn-id: svn://localhost/gambas/trunk@3025 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-06-27 23:01:17 +00:00
Benoît Minisini
984d3c0dfd [INTERPRETER]
* BUG: Fix the custom realloc() internal routine on 64 bits systems.

[COMPILER]
* BUG: Fix the custom realloc() internal routine on 64 bits systems.


git-svn-id: svn://localhost/gambas/trunk@3021 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-06-24 01:14:12 +00:00
Benoît Minisini
3f9b5afe60 [INTERPRETER]
* BUG: Correctly handle extern functions that return nothing.


git-svn-id: svn://localhost/gambas/trunk@3020 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-06-23 18:03:04 +00:00
Benoît Minisini
f6a132504d [INTERPRETER]
* BUG: Eof() (and other file functions) using a null stream will not crash 
  anymore.


git-svn-id: svn://localhost/gambas/trunk@3017 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-06-21 18:26:38 +00:00
Benoît Minisini
6059d4dcb7 [GB.IMAGE]
* NEW: New API for marking an image as modified, and for synchronizing it 
  before reading it, when the temporary image owner needs it.


git-svn-id: svn://localhost/gambas/trunk@3016 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-06-19 12:38:28 +00:00
Benoît Minisini
727701cdeb [CONFIGURATION]
* NEW: Bytecode version has been incremented, so all projects need to be 
  recompiled!

[INTERPRETER]
* OPT: Many little optimizations.
* OPT: Avoid calls to setjmp() when it is possible.
* OPT: Do not encode the stack drop inside the CALL instruction. 
  Executables are a bit larger, but a little speed is gained.

[COMPILER]
* OPT: Do not encode the stack drop inside the CALL instruction. 
  Executables are a bit larger, but a little speed is gained.


git-svn-id: svn://localhost/gambas/trunk@3013 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-06-18 00:14:53 +00:00
Laurent Carlier
0b2beb5985 [GB.IMAGE]
* NEW: Add locking/unlocking internal api hooks, allowing Image class to be sure image is synced/locked
  to get correct access to image datas, and tag if image is altered.


git-svn-id: svn://localhost/gambas/trunk@3010 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-06-16 12:48:11 +00:00
Benoît Minisini
e1a7b5efcb [INTERPRETER]
* OPT: A little optimization in Split().

[GB.CAIRO]
* BUG: Cairo.Path() now creates a text path and does not draw anything, 
  like other drawing methods.


git-svn-id: svn://localhost/gambas/trunk@3008 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-06-16 10:25:21 +00:00
Benoît Minisini
be6bde730d [DEVELOPMENT ENVIRONMENT]
* BUG: Correctly deals with unknown components in the project property 
  dialog.

[INTERPRETER]
* NEW: Error backtrace is now always printed.
* OPT: Some optimizations in mathematical routines.

[GB.IMAGE]
* NEW: Image.FillRect() is a new method that fills a rectangle with a 
  specified color.


git-svn-id: svn://localhost/gambas/trunk@3007 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-06-15 06:54:38 +00:00
Benoît Minisini
aaf1044366 [INTERPRETER]
* OPT: Many optimizations. One is big (gcc is not really clever sometimes!), 
  and now Gambas is about 30% faster than interpreted Python when running 
  stupid benchmarks.


git-svn-id: svn://localhost/gambas/trunk@3005 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-06-13 20:25:34 +00:00
Benoît Minisini
390a19785c [INTERPRETER]
* BUG: Pointer are correctly managed in extern function calls now.


git-svn-id: svn://localhost/gambas/trunk@3004 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-06-13 15:00:32 +00:00
Benoît Minisini
a32166b185 [INTERPRETER]
* OPT: Many optimizations again.
* BUG: Fix an unitialized variable in string to float conversion routine.
* BUG: Handle extern functions that return a pointer.


git-svn-id: svn://localhost/gambas/trunk@3003 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-06-13 12:03:29 +00:00
Benoît Minisini
a01e8c1d72 [ARCHIVER]
* NEW: Ignore valgrind core files and callgrind output files when creating 
  an archive.


git-svn-id: svn://localhost/gambas/trunk@3002 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-06-13 11:04:57 +00:00
Benoît Minisini
405f8f89fe [INTERPRETER]
* OPT: Some optimizations again in memory allocator, object releasing 
  routine, arithmetic operators, class variable reader, line-by-line stream
  reader, class symbol sort routine.
* BUG: Using constant strings inside variant, like database drivers, works
  correctly again and does not crash the interpreter anymore.


git-svn-id: svn://localhost/gambas/trunk@2996 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-06-08 23:08:04 +00:00
Benoît Minisini
c52c9f0257 [INTERPRETER]
* OPT: Some optimizations again.

[COMPILER]
* BUG: Compile functions using ByRef correctly again.


git-svn-id: svn://localhost/gambas/trunk@2995 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-06-06 20:43:13 +00:00
Benoît Minisini
b3db598050 [DEVELOPMENT ENVIRONMENT]
* BUG: Breakpoints are correctly reset when opening a new project.

[INTERPRETER]
* BUG: The GB.NewString(), GB.NewZeroString() and GB.TempString() API 
  signature has changed. All components have been updated accordingly.
* OPT: Many optimizations to speed up the interpreter.

[GB.EVAL]
* NEW: During syntax highlighting, the first character of class names is
  automatically converted to uppercase.


git-svn-id: svn://localhost/gambas/trunk@2992 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-06-04 23:48:53 +00:00
Benoît Minisini
2c2ad90faf [INTERPRETER]
* OPT: Start some optimizations in conversion routines.


git-svn-id: svn://localhost/gambas/trunk@2989 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-06-02 23:23:50 +00:00
Benoît Minisini
08f7fd6338 [INTERPRETER]
* BUG: Try to fix the floating-point precision/rounding bug. In other 
  words, 0.6 is now printed 0.6, and not 0.6000...001 anymore.


git-svn-id: svn://localhost/gambas/trunk@2988 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-06-02 21:12:23 +00:00
Benoît Minisini
a8f12f8e54 [GB.FORM]
* BUG: Use a default question icon for Message.Question icon.


git-svn-id: svn://localhost/gambas/trunk@2987 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-30 19:37:40 +00:00
Benoît Minisini
65645599cb [INTERPRETER]
* BUG: Fix debug information loading on 64 bits OS.


git-svn-id: svn://localhost/gambas/trunk@2980 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-29 23:01:05 +00:00
Benoît Minisini
f75d640e3b [INTERPRETER]
* NEW: StrPtr() now can take a second argument to specify the length of the 
  string we will read from memory. If that argument is not specified, the
  string must ends with a zero character.
* OPT: Internal array management was optimized. It changes nothing for the
  Gambas array class.

[COMPILER]
* OPT: Internal array management was optimized.
* BUG: Using embedded structure with a class that is not a structure now
  raises an error.


git-svn-id: svn://localhost/gambas/trunk@2979 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-29 21:10:36 +00:00
Benoît Minisini
4fff317030 [DEVELOPMENT ENVIRONMENT]
* NEW: Handle structures in automatic completion.

[INTERPRETER]
* BUG: Make the malloc cache returns 8-bytes aligned pointers on 64 bits 
  systems.

[COMPILER]
* OPT: Some optimizations again.
* OPT: Do not use -O3 for symbol table routines. Valgrind says that it is 
  slower than with -Os. Strange...


git-svn-id: svn://localhost/gambas/trunk@2977 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-29 00:11:55 +00:00
Benoît Minisini
3406d87d1d [INTERPRETER]
* BUG: Archives are read correctly again on 64 bits OS.
* OPT: Memory allocations are now cached in a memory pool, so that malloc() 
  and free() are not called too often.
* BUG: The initial allocation of a new hash table is not too big anymore.

[COMPILER]
* OPT: Memory allocations are now cached in a memory pool, so that malloc() 
  and free() are not called too often. The compiler is now twice as fast as 
  it was before all the recent optimizations!

[ARCHIVER]
* BUG: Archives are read correctly again on 64 bits OS.


git-svn-id: svn://localhost/gambas/trunk@2976 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-28 19:33:05 +00:00
Benoît Minisini
17a6f7ebed [DEVELOPMENT ENVIRONMENT]
* BUG: Ignore incorrect paths when loading recent file list.

[INTERPRETER]
* OPT: Compute stack backtrace only when needed.


git-svn-id: svn://localhost/gambas/trunk@2975 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-28 07:47:49 +00:00
Benoît Minisini
b727d17086 [INTERPRETER]
* OPT: Using object references is faster.
* BUG: Fix a misuse of GB.NewString() in the String class.

[COMPILER]
* BUG: Raise an error now when trying to create an array of structures.

[GB.QT4]
* OPT: Global widget event filter is faster.
* OPT: Do not internallt relayout TabStrip too often, because Qt takes a 
  lot of time to do that.



git-svn-id: svn://localhost/gambas/trunk@2974 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-28 06:24:14 +00:00
Benoît Minisini
74f930e0b6 [INTERPRETER]
* BUG: Make the interpreter compile on 64 bits OS.


git-svn-id: svn://localhost/gambas/trunk@2973 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-27 21:27:42 +00:00
Benoît Minisini
3412ce6442 [CONFIGURATION]
* NEW: Object file format has changed, so bytecode version has been 
  incremented, and all projects must be recompiled. Yes, again!

[INTERPRETER]
* OPT: Optimizations in comparison operators.
* OPT: Optimize symbol lookup tables.

[COMPILER]
* OPT: Optimize symbol lookup tables.

[GB.EVAL]
* BUG: Gambas source code is correctly highlighted again.
* NEW: Quoted identifiers (those between '{' and '}') are highlighted more 
  intelligently now.


git-svn-id: svn://localhost/gambas/trunk@2971 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-27 13:51:09 +00:00
Benoît Minisini
1f592094a6 [CONFIGURATION]
* NEW: Bytecode version has been increased, and so all projects must be 
  recompiled.

[INTERPRETER]
* OPT: Objects that do not raise events do not allocate the event 
  management structure anymore. That save four pointers by object.
* NEW: Structure management is done, and embedded (static) structures are
  handled too.
* BUG: Static array management was fixed.
* NEW: All functions synonymous whose name ends with a question mark have 
  been removed.

[COMPILER]
* OPT: Some optimization again.
* BUG: EXTERN declarations compile again.

[GB.DB.SQLITE2]
* BUG: Fix a misuse of GB.NewString().


git-svn-id: svn://localhost/gambas/trunk@2970 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-26 22:01:28 +00:00
Benoît Minisini
b0a0c52af0 [INTERPRETER]
* NEW: More work on structure support.
* BUG: Fix optimization in error management.

[COMPILER]
* OPT: More optimizations. The Gambas 3 compiler is faster to compile the 
  Gambas 3 IDE than the Gambas 2 compiler to compile the Gambas 2 IDE, 
  which is smaller!
* NEW: Do not compute variable position and size, as it is done by the 
  interpreter anyway.

[GB.EVAL]
* NEW: Use the same optimizations as the compiler in the parser.

[GB.XML.RPC]
* BUG: The component compiles again.



git-svn-id: svn://localhost/gambas/trunk@2964 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-25 11:19:00 +00:00
Benoît Minisini
48f6a6a309 [INTERPRETER]
* BUG: L'API GB.ReturnNewString() doit pouvoir retourner une chaîne vide. 
  Dans ce cas elle le transforme en un GB.ReturnNull().


git-svn-id: svn://localhost/gambas/trunk@2960 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-23 18:59:11 +00:00
Benoît Minisini
4a544c567a [INTERPRETER]
* BUG: Use GB.ReturnNewZeroString() instead of GB.ReturnNewString() now. 
  All components using the old syntax should be fixed now.
* NEW: Start to manage structures.


git-svn-id: svn://localhost/gambas/trunk@2957 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-23 11:07:14 +00:00
Benoît Minisini
41a002012a [COMPILER]
* BUG: Reserved functions following the READ keyword are correctly detected 
  again.


git-svn-id: svn://localhost/gambas/trunk@2956 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-22 21:56:42 +00:00
Benoît Minisini
dffc0cbaa8 [GB.EVAL]
* NEW: Fix the error management the same way as in the interpreter.


git-svn-id: svn://localhost/gambas/trunk@2955 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-22 20:41:11 +00:00
Benoît Minisini
ed041dc7d0 [COMPILER]
* BUG: Forgot to add the source file that generates the reserved keywords 
  analyzer.


git-svn-id: svn://localhost/gambas/trunk@2954 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-22 19:35:18 +00:00
Benoît Minisini
117f2ac635 [INTERPRETER]
* NEW: New GB.NewZeroString() API to create a Gambas string from a 
  null-terminated string. Components were modified to use it.
* OPT: Many optimizations everywhere.

[COMPILER]
* OPT: Many optimizations. The compiler should be noticeably faster.


git-svn-id: svn://localhost/gambas/trunk@2953 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-22 18:02:34 +00:00
Benoît Minisini
8e1604e59d [CONFIGURATION]
* NEW: The bytecode version has been incremented, as the object file format 
  has changed.

[DEVELOPMENT ENVIRONMENT]
* BUG: Handle static arrays in automatic completion.

[INTERPRETER]
* BUG: Handle public static arrays correctly.

[COMPILER]
* NEW: Handle structures, and write them inside object files.
* NEW: Class options (EXPORT, CREATE...) can only be written at the 
  beginning of the source file now.
* BUG: Fix some use of uninitialized values.
* BUG: Correctly write public static arrays in *.info files.
* NEW: Do not support old OPEN syntax anymore.


git-svn-id: svn://localhost/gambas/trunk@2952 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-20 23:23:39 +00:00
Benoît Minisini
74e8fc7fed [INTERPRETER]
* OPT: Many branch prediction optimizations.


git-svn-id: svn://localhost/gambas/trunk@2951 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-19 20:18:23 +00:00
Benoît Minisini
25ad3928cc [CONFIGURATION]
* NEW: Detect PowerPC architecture.

[INTERPRETER]
* OPT: As old static arrays have been removed, a new little optimization 
  is possible in array reading and writing functions.


git-svn-id: svn://localhost/gambas/trunk@2950 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-19 15:05:45 +00:00
Benoît Minisini
a2850ebc91 [CONFIGURATION]
* BUG: Do not compile database manager anymore, it has been deprecated.
* BUG: Compile the gb.dbus component.

[INTERPRETER]
* NEW: Pointer is a real datatype now.
* NEW: Static arrays came back. They are now like real array classes, 
  except that they are not resizable.
* NEW: IsPointer() is a new function that tells if an expression is a 
  pointer.
* NEW: All XXXX?() function synonymous were removed. Use the IsXXXX() 
  version instead.
* NEW: Remove now useless source files.

[COMPILER]
* NEW: Static arrays came back, with actually the same syntax as before.

[EXAMPLES]
* BUG: Fix the examples according to the new array syntax.



git-svn-id: svn://localhost/gambas/trunk@2949 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-19 12:43:57 +00:00
Benoît Minisini
a8efb8045f [INTERPRETER]
* NEW: Support for "static" arrays is finally removed.

[COMPILER]
* NEW: Support for "static" arrays is finally removed.



git-svn-id: svn://localhost/gambas/trunk@2945 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-14 21:30:54 +00:00
Benoît Minisini
ca37913578 [DEVELOPMENT ENVIRONMENT]
* BUG: Search string is correctly highlighted in all cases now.

[WEB SITE MAKER]
* NEW: German translation made by Stefan Lang.

[COMPILER]
* NEW: The 'New' keyword is now mandatory when declaring array variables 
  with dimensions. The IDE and component source code were modified 
  according to that change.

[GB.QT4.EXT]
* BUG: Search strings are correctly highlighted in editors with no syntax 
  highlighting.


git-svn-id: svn://localhost/gambas/trunk@2944 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-14 21:17:04 +00:00
Benoît Minisini
ae06242603 [COMPILER]
* BUG: Translated strings can be splitted on several lines like normal 
  strings now.


git-svn-id: svn://localhost/gambas/trunk@2943 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-14 11:51:49 +00:00
Benoît Minisini
2fd1ea3b59 [INTERPRETER]
* BUG: Correctly detect when being run as 'gbr3'.


git-svn-id: svn://localhost/gambas/trunk@2942 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-10 11:20:47 +00:00
Benoît Minisini
a1c3fa1617 [INTERPRETER]
* NEW: Change the semantic of Eof(). Now, if the stream is in blocking 
  mode, then Eof() will wait for the data before testing if something can 
  be read on the stream.
* BUG: Correctly initialize the stream flag that tells that data is always 
  available.

[COMPILER]
* BUG: Correctly raise an error when the INPUT or OUTPUT keywords are used
  with the PIPE instruction.

[GB.FORM]
* NEW: ColorChoose.ShowColorMap is a new property that allows to hide or 
  show the colormap.

[GB.QT4]
* BUG: Correctly disable Qt automatic completion in the ComboBox control.


git-svn-id: svn://localhost/gambas/trunk@2940 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-08 20:17:29 +00:00
Benoît Minisini
c61aa8d978 [DEVELOPMENT ENVIRONMENT]
* NEW: Support for enumerations.
* BUG: Clearing project history works again.

[COMPILER]
* NEW: Support for enumerations.


git-svn-id: svn://localhost/gambas/trunk@2935 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-05 20:58:55 +00:00
Benoît Minisini
1727304958 [DEVELOPMENT ENVIRONMENT]
* NEW: Shift+Enter disables automatic insertion of control structure 
  instructions.

[GB.FORM]
* BUG: Use images instead of pictures to draw little arrows in SidePanel 
  and MenuButton controls, so that it works with gb.gtk.

[GB.GTK]
* BUG: Found a woarkaround for sometimes slow as hell GTK+ image scaling 
  algorithm.
* BUG: Embedded windows correctly raise Open, Show and Hide events again.

[GB.QT4]
* BUG: Fix a bug in CheckBox creation that corrupted memory.


git-svn-id: svn://localhost/gambas/trunk@2934 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-05 14:26:07 +00:00
Benoît Minisini
98c0d81aad [CONFIGURATION]
* BUG: Fix the creation of the gbw3 symbolic link.

[DEVELOPMENT ENVIRONMENT]
* BUG: Fix an error in arrangement icon management.
* NEW: Merge all form editor toolbars.
* NEW: Support for code snippets. Type "fo" and TAB to see it. Not yet
  finished.

[INTERPRETER]
* NEW: Standard format for numbers now displays all the decimal digits.

[GB.QT4.EXT]
* BUG: Fix a possible crash in Editor selection management.


git-svn-id: svn://localhost/gambas/trunk@2929 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-03 11:46:02 +00:00
Benoît Minisini
1faa45e317 [COMPILER]
* BUG: Correctly detect self-referenced components.


git-svn-id: svn://localhost/gambas/trunk@2928 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-05-03 10:19:13 +00:00
Benoît Minisini
d1873301d0 [DEVELOPMENT ENVIRONMENT]
* BUG: Fix the display of arrangement icons.
* OPT: Keep a reference on the root control is the form editor.
* BUG: Loading recent files should never crash anymore now.
* BUG: Start fixing project creation.

[INTERPRETER]
* BUG: Don't load a component if its name is the same as the main project.

[GB.QT4]
* BUG: Mouse buttons properties work again during a MouseRelease event.


git-svn-id: svn://localhost/gambas/trunk@2924 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-04-29 12:54:45 +00:00
Benoît Minisini
cc6dfc0e33 [DEVELOPMENT ENVIRONMENT]
* BUG: Fix and enhance Gambas 2 project conversion.

[GB.QT4]
* BUG: Allow control resizing whatever the arrangement of its container, 
  provided that its Ignore property is set.


git-svn-id: svn://localhost/gambas/trunk@2920 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-04-28 00:17:12 +00:00
Benoît Minisini
e02caaf252 [DEVELOPMENT ENVIRONMENT]
* NEW: Do not show a form in the treeview if no component implements its 
  family.

[INTERPRETER]
* NEW: Detect overridden classes, and automatically convert the return 
  datatype of Gambas and native functions using an overridden class.
* NEW: Convert overridden classes in the NEW instruction.


git-svn-id: svn://localhost/gambas/trunk@2912 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-04-26 09:36:47 +00:00
Benoît Minisini
52ac0bdfee [DEVELOPMENT ENVIRONMENT]
* BUG: Do not trim pasted text when using special paste.

[INTERPRETER]
* NEW: Format() can format Float number with up to 16 digits now.

[GB.QT4.EXT]
* NEW: Support for an insert & block mode. This mode is toggled with the
  "Insert" key.


git-svn-id: svn://localhost/gambas/trunk@2911 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-04-25 23:04:27 +00:00
Benoît Minisini
d49fe17d83 [DEVELOPMENT ENVIRONMENT]
* NEW: Remove any use of Component.UserPath and any reference to "user 
  component".
* NEW: "libraries" management. Libraries are defined in a new tab of the
  projet property dialog. At the moment, libraries exported classes are not
  taken into account by the automatic completion.
* NEW: The ESC key now closes the help browser.
* BUG: Correctly translate compilation error messages.

[INTERPRETER]
* NEW: "libraries" management.
* NEW: The Component.UserPath property has been removed.
* BUG: Evaluating "Application.Path" or "Application.Name" on the command 
  line does not crash anymore.

[COMPILER]
* BUG: Enhance translation of some error messages.
* NEW: Take libraries into account for exported class declarations.

[ARCHIVER]
* NEW: new "-x" option to extract a file from an archive.

[GB.QT4.EXT]
* NEW: Be more clever when deciding if a line has been modified after 
  having its last character deleted.


git-svn-id: svn://localhost/gambas/trunk@2909 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-04-25 10:46:57 +00:00
Benoît Minisini
0d5bb25a55 [DEVELOPMENT ENVIRONMENT]
* BUG: Errors on immediate debugging expressions are correctly displayed 
  now.

[WEB SITE MAKER]
* BUG: "mailto:" links are correctly generated now.

[INTERPRETER]
* NEW: The 'u' and 'uu' date formats do not display a point anymore. The
  point must be specified explicitely in the format string.


git-svn-id: svn://localhost/gambas/trunk@2900 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-04-20 13:28:40 +00:00
Benoît Minisini
7c9a7c368c [INTERPRETER]
* BUG: Remove debugging message.


git-svn-id: svn://localhost/gambas/trunk@2888 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-04-12 12:49:16 +00:00
Benoît Minisini
067017c715 [INTERPRETER]
* BUG: Fix argument parsing again.


git-svn-id: svn://localhost/gambas/trunk@2887 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-04-12 12:47:31 +00:00
Benoît Minisini
e69514d151 [INTERPRETER]
* BUG: Fix argument parsing when running an executable.


git-svn-id: svn://localhost/gambas/trunk@2886 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-04-12 12:24:29 +00:00
Benoît Minisini
79496cc582 [INTERPRETER]
* BUG: Standard streams are correctly initialized now. Consequently, Input 
  and Line Input on them work correctly again.


git-svn-id: svn://localhost/gambas/trunk@2869 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-04-07 18:39:45 +00:00
Benoît Minisini
a8c6cd99a3 [INTERPRETER]
* BUG: Process stream correctly detects when something has been really read
  during a Read event.

[GB.NET.SMTP]
* NEW: SmtpClient._NoGreeting is a new property that tells not to read the 
  SMTP server greeting. This is needed, because with TLS authentication, 
  openssl does not print it.


git-svn-id: svn://localhost/gambas/trunk@2865 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-04-06 18:03:37 +00:00
Benoît Minisini
1a905d7cab [INTERPRETER]
* NEW: The GB.Stream.Read API reads up to a defined number of bytes when 
  its length argument is negative (like the READ instruction).
* NEW: Reading a stream up to a defined number of bytes blocks for the 
  first byte to read.

[GB.NET.SMTP]
* BUG: The SmtpClient now works when it is piped with a stream coming from 
  the openssl command, either with TLS or SSL.
* BUG: All SMTP commands are sent in lower case, because uppercase can 
  confuse openssl.


git-svn-id: svn://localhost/gambas/trunk@2864 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-04-06 17:00:25 +00:00
Benoît Minisini
c15a7461aa [INTERPRETER]
* NEW: New APIs to get a Gambas stream from a stream object 
  (GB.Stream.Get), to read data from a stream (GB.Stream.Read) and to write
  date to a stream (GB.Steam.Write).

[GB.NET.SMTP]
* BUG: The _Socket property has been replaced by the _Stream property, that
  takes a Gambas stream.
* BUG: Correctly release the user and password strings when the SmtpClient 
  is freed.


git-svn-id: svn://localhost/gambas/trunk@2863 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-04-05 17:02:16 +00:00
Benoît Minisini
bb6f47038e [INTERPRETER]
* NEW: New interpreter API to browse the project contents.
* BUG: RDir(".") does not crash anymore.


git-svn-id: svn://localhost/gambas/trunk@2861 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-04-05 01:44:43 +00:00
Benoît Minisini
2ab35d25e8 [DEVELOPMENT ENVIRONMENT]
* BUG: Dropping a picture on a Report form inserts a ReportImage now.
* BUG: Some fixes in arrangement icon drawing.
* OPT: Don't hide the console at program's end, if the console must remain 
  visible.
* NEW: Support for symbolic links to source directories. Disabled at the 
  moment.
* BUG: Do not use gb.gtk.ext in project templates, it does not exist 
  anymore!

[INTERPRETER]
* BUG: RDir() with FollowLink argument set correctly search into symbolic 
  link to directories.

[GB.DESKTOP]
* BUG: Desktop.Width and Desktop.Height do not crash anymore if the 
  underlying desktop does not support standard freedesktop properties.


git-svn-id: svn://localhost/gambas/trunk@2852 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-04-02 12:34:21 +00:00
Benoît Minisini
ecac90958a [INTERPRETER]
* BUG: Fix an uninitalized flag in the stream internal structure.
* BUG: Remove a forgotten debugging breakpoint.


git-svn-id: svn://localhost/gambas/trunk@2845 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-03-30 23:50:34 +00:00
Benoît Minisini
bb0b93f075 [INTERPRETER]
* NEW: Application.Startup now returns a Class object, the startup class.


git-svn-id: svn://localhost/gambas/trunk@2823 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-03-25 16:38:40 +00:00
Fabien Bodard
0febd39f25 [INTERPRETER]
* OPT: forgot some changes


git-svn-id: svn://localhost/gambas/trunk@2822 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-03-25 14:40:14 +00:00
Fabien Bodard
bc1fd21cdd [INTERPRETER]
* BUG: The Startup class name is now correctly returned by Appliction.Startup




git-svn-id: svn://localhost/gambas/trunk@2821 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-03-25 14:38:12 +00:00
Benoît Minisini
a6e879db91 [INTERPRETER]
* NEW: Application.Startup is a new property that returns the name of the 
  startup class.
* NEW: Class.AutoCreate is a new method that creates the automatic instance 
  of a class, and returns it. It returns NULL if the class is not 
  auto-creatable.


git-svn-id: svn://localhost/gambas/trunk@2820 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-03-25 11:16:33 +00:00
Benoît Minisini
029e4b5b18 [INTERPRETER]
* NEW: RDir() takes a fourth optional argument, that tells if symbolic link 
  to directories must be recursively searched too.

[GB.DEBUG]
* BUG: Prevent a possible freeze of the IDE when debugging.


git-svn-id: svn://localhost/gambas/trunk@2819 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-03-25 02:00:55 +00:00
Laurent Carlier
a289c402b1 [INTERPRETER]
* BUG: Fix building when DEBUG_EVENT is defined.


git-svn-id: svn://localhost/gambas/trunk@2813 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-03-19 16:31:50 +00:00
Laurent Carlier
db9f0f66b4 Typo __CDBUG_H -> __CDEBUG_H
git-svn-id: svn://localhost/gambas/trunk@2812 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-03-19 14:43:57 +00:00
Benoît Minisini
7f00049b8b [INTERPRETER]
* BUG: Inherited startup Main methods work again.


git-svn-id: svn://localhost/gambas/trunk@2807 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-03-18 15:40:34 +00:00
Benoît Minisini
6cd1d9d0d3 [DEVELOPMENT ENVIRONMENT]
* NEW: The container arrangement is now displayed with a little icon on the
  top right corner, only when the mouse cursor is inside the container.

[INTERPRETER]
* BUG: Event handlers defined in inherited class are called correctly now,
  without crashing.


git-svn-id: svn://localhost/gambas/trunk@2806 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-03-18 06:05:17 +00:00
Benoît Minisini
75dcabe16e [INTERPRETER]
* BUG: Prevent a crash if during a _free special method, an element is 
  removed from a collection being freed.


git-svn-id: svn://localhost/gambas/trunk@2789 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-03-12 01:18:20 +00:00
Benoît Minisini
b953aa5392 [COMPILER]
* NEW: Compile "report" forms, and add support for other form families.


git-svn-id: svn://localhost/gambas/trunk@2788 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-03-11 10:59:53 +00:00
Benoît Minisini
7790bd8e1e [CONFIGURATION]
* BUG: Add many mising symbolic links on 'missing' and 'install-sh' files.
* NEW: Introduce Gambas minor version number.

[DEVELOPMENT ENVIRONMENT]
* NEW: Packager now uses minor version of Gambas for default component 
  requirements.

[INTERPRETER]
* NEW: System properties were replaced by constants where it is possible.
* NEW: System.FullVersion is a new constant that returns the full Gambas 
  version string, with major and minor numbers.


git-svn-id: svn://localhost/gambas/trunk@2781 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-03-10 00:14:54 +00:00
Benoît Minisini
6abae433a9 [DEVELOPMENT ENVIRONMENT]
* BUG: Fix the similar control menu in the form editor.
* NEW: Do not take the Padding into account when drawing Report containers.
* BUG: Some fixes in the Report dimension selector.
* BUG: Do not import any translation if no translation file has been
  selected in the translation dialog.

[INTERPRETER]
* BUG: When converting a string into a number with Val(), only accept 
  thousand separators after three digits.

[GB.DEBUG]
* BUG: Lock the debugger pipe between reads, to avoid the callback to be
  called ever and ever.

[GB.GTK]
* NEW: Tried to implement a transparent drawing area, but failed!
* NEW: Allow non-native GDK windows. This is experimental, as it crashed 
  before.
* BUG: Fix the ComboBox Click event behaviour. See the wiki for more 
  details.

[GB.QT4]
* BUG: Fix the ComboBox Click event behaviour. See the wiki for more 
  details.
* BUG: Sort sorted ComboBoxes before accessing it, not just before showing
  the popup.


git-svn-id: svn://localhost/gambas/trunk@2762 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-03-07 17:14:54 +00:00
Benoît Minisini
98ad2ba515 [DEVELOPMENT ENVIRONMENT]
* NEW: Properties wose kind is ReportBorder are now managed.
* NEW: Border and Padding are taken into account when drawing Report forms.

[INTERPRETER]
* BUG: Thousand separators are taken into account when trying to convert a 
  string to an integer.
* BUG: String[].Exist() now correctly returns a boolean.

[GB.DRAW]
* NEW: Paint.Device and Draw.Device now return NULL if nothing is 
  currently drawn.

[GB.REPORT]
* NEW: Change the syntax of ReportBorder.ToString() and ReportBorder[].

[GB.QT4]
* BUG: Dialog.SelectColor() does not quit the event loop unexpectedly 
  anymore.


git-svn-id: svn://localhost/gambas/trunk@2760 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-03-07 01:38:15 +00:00
Benoît Minisini
4d8107e567 [DEVELOPMENT ENVIRONMENT]
* NEW: Draw ReportImage controls.
* NEW: Handle new property kinds: ReportCoord, Image.

[INTERPRETER]
* BUG: Fix some misuse of signed char.

[GB.REPORT]
* BUG: Fix declarations of properties.
* NEW: Use the new ReportCoord property kind.
* NEW: Some little changes in the ReportBorder class.


git-svn-id: svn://localhost/gambas/trunk@2755 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-03-06 03:17:47 +00:00
Benoît Minisini
06a674e303 [INFORMER]
* BUG: Specifying components as arguments now works on systems that do not
  have getopt_long().


git-svn-id: svn://localhost/gambas/trunk@2752 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-03-05 13:12:15 +00:00
Benoît Minisini
c1dc30c5ca [GB.IMAGE.EFFECT]
* BUG: Remove undefined functions from qcolor.h.


git-svn-id: svn://localhost/gambas/trunk@2751 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-03-05 09:02:37 +00:00
Benoît Minisini
ce74ee479e [INTERPRETER]
* BUG: Fix a misuse of signed char.
* BUG: Fix the component shared library pattern for CygWin.


git-svn-id: svn://localhost/gambas/trunk@2750 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-03-05 08:49:38 +00:00
Benoît Minisini
86768b1363 [CONFIGURATION]
* NEW: CygWin needs a -no-undefined flag when linking.

[INFORMER]
* BUG: Use dlopen() on CygWin.

[INTERPRETER]
* BUG: Fix some misuse of signed char.

[GB.DB]
* BUG: Fix some misuse of signed char.

[GB.EVAL]
* BUG: Fix some misuse of signed char.


git-svn-id: svn://localhost/gambas/trunk@2749 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-03-05 02:05:52 +00:00
Benoît Minisini
757c0c3295 [INTERPRETER]
* BUG: IUTF8 flag may not exist in virtual terminal management.
* BUG: long double mathematic functions do not exist in CygWin.


git-svn-id: svn://localhost/gambas/trunk@2748 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-03-05 01:20:09 +00:00
Benoît Minisini
2b01ddc9aa [INTERPRETER]
* BUG: Search for libffi shared library inside gcc directories too.


git-svn-id: svn://localhost/gambas/trunk@2747 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-03-05 00:54:14 +00:00
Benoît Minisini
fffee54d40 [DEVELOPMENT ENVIRONMENT]
* NEW: Start to handle "Image" control properties.

[GB.DEBUG]
* OPT: The debugging callback is called again and again, even if there is 
  nothing sent by the debugger. So sleeping a little prevent from eating 
  the CPU.

[GB.REPORT]
* BUG: Use Float instead of Integer for coordinates arguments.
* NEW: Replace ReportImage.Path by ReportImage.Image.
* NEW: Clip the controls inside a dedicated procedure.


git-svn-id: svn://localhost/gambas/trunk@2726 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-02-28 17:26:00 +00:00
Benoît Minisini
cd5bf4cc70 [INTERPRETER]
* OPT: The blocking state of streams is cached now, so that the fcntl() 
  system call is less used.

[GB.FORM]
* BUG: Stock icons work correctly again.

[GB.QT4]
* NEW: When drawing on a DrawingArea, Draw and Paint dimension properties 
  always return the size of the DrawingArea, even if it is cached.
* BUG: DrawingArea contents is not assume to be static anymore. Resizing 
  them always send a full repaint event.


git-svn-id: svn://localhost/gambas/trunk@2724 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-02-27 22:08:04 +00:00
Benoît Minisini
56cb9e876e [INTERPRETER]
* BUG: Allow a dynamic class to inherit a native static class without 
  crashing.

[GB.FORM]
* OPT: Try to do a little less file browsing when loading stock icons.


git-svn-id: svn://localhost/gambas/trunk@2716 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-02-24 23:47:46 +00:00
Benoît Minisini
c644455a2e [DEVELOPMENT ENVIRONMENT]
* NEW: Working on report form support. Report forms now can be created and 
  edited. Symbol auto-completion is not implemented.
* NEW: The toolbox is updated according to the current edited form family.
* BUG: Menu are correctly saved again.
* NEW: Component help is implemented in the project property dialog.

[GB.GTK]
* BUG: Menu are containers.

[GB.GUI]
* BUG: The *.component file has been fixed.

[GB.REPORT]
* BUG: Control public constants are almost correctly defined now, and 
  inheritance is used.

[GB.QT4]
* BUG: Menu are containers.
* BUG: The text of hidden TabStrip tabs is not lost anymore.



git-svn-id: svn://localhost/gambas/trunk@2713 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-02-23 03:21:43 +00:00
Benoît Minisini
9c39e31fb5 [DEVELOPMENT ENVIRONMENT]
* NEW: Support for report form continues. Controls declaration has moved 
  from *.component files to the following Control hidden properties: 
  _Family, _Group, _IsControl, _IsContainer, _IsMultiContainer, _IsVirtual, 
  _IsForm. And to the following Form hidden properties: _HiddenControls.
  The wiki control documentation will be updated soon.

[COMPILER]
* NEW: Do not print a warning for a missing self-referenced *.list file.
* NEW: The '-L' is a new command-line option to print the license. The '-h'
  now only prints help.

[INFORMER]
* BUG: Support for boolean public constants.

[GB.DB.FORM]
* NEW: Update control declarations to the new scheme.

[GB.FORM]
* NEW: Update control declarations to the new scheme.

[GB.GTK]
* NEW: Update control declarations to the new scheme.

[GB.QT4]
* NEW: Update control declarations to the new scheme.


git-svn-id: svn://localhost/gambas/trunk@2708 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-02-21 18:15:16 +00:00
Benoît Minisini
eba1d9c405 [DEVELOPMENT ENVIRONMENT]
* OPT: Cache the welcome Gambas SVG logo in an image for faster redrawing.
* NEW: Start defining new control hidden properties in all components: 
  _IsControl, _Group, _Family, _IsVirtual, _IsContainer, _IsMultiContainer.

[EXAMPLES]
* NEW: Use new Paint methods in the Painting example.

[INTERPRETER]
* BUG: Instr() and RInstr() correctly handle non-ASCII characters.

[GB.DRAW]
* NEW: Support for Paint.RichText and Paint.RichTextExtents.

[GB.GTK]
* BUG: Rich text relative font sizes are now correctly handled.
* NEW: Implement Paint.RichText and Paint.RichTextExtents.

[GB.QT4]
* NEW: Implement Paint.RichText and Paint.RichTextExtents.


git-svn-id: svn://localhost/gambas/trunk@2698 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-02-14 01:16:27 +00:00
Benoît Minisini
6bfa9b5fe2 [CONFIGURATION]
* NEW: Remove the gb.qt and gb.qt.kde components.

[DEVELOPMENT ENVIRONMENT]
* NEW: Work on report form support continues.
* BUG: Do not crash if there is a compilation error and the IDE cannot open 
  the source file.

[GB.DB]
* NEW: The Find() and Edit() methods of the Connection class now works 
  correctly if the ORDER BY clause is used alone in the request argument.

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

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

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

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

[GB.QT.KDE.HTML]
* NEW: This component has been removed.


git-svn-id: svn://localhost/gambas/trunk@2683 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-02-10 01:58:50 +00:00
Benoît Minisini
a759a7817d [DEVELOPMENT ENVIRONMENT]
* NEW: Start working on report form support.
* BUG: Correctly refresh the hierarchy window when a form is reloaded.

[GB.IMAGE]
* BUG: The Color[].Saturation property now works correctly.

[GB.FORM.MDI]
* BUG: Fix the layout of toolbar without handle.


git-svn-id: svn://localhost/gambas/trunk@2673 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-02-08 15:59:30 +00:00
Benoît Minisini
08c7b0f4d8 [INTERPRETER]
* BUG: Fix the GB.ConvString() API.

[GB.GTK]
* BUG: Fix the Key[] array accessor, so that it (almost) works like gb.qt.

[GB.PDF]
* NEW: All dimensions are now returned as Float.
* BUG: PdfDocument.Find() now works correctly.


git-svn-id: svn://localhost/gambas/trunk@2672 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-02-08 00:56:56 +00:00
Benoît Minisini
f306c0a5fb [DEVELOPMENT ENVIRONMENT]
* NEW: Sort project tree view with natural sort.
* NEW: Sort procedure combo-box with natural sort.

[GB.DB.FORM]
* BUG: Setting a "SELECT" request to the DataSource.Table property should 
  work in all cases now.

[GB.FORM.MDI]
* NEW: Vertical toolbar layout is more clever.

[GB.GTK]
* BUG: Modal windows are really modal.
* BUG: Try to prevent a possible crash in event management.

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


git-svn-id: svn://localhost/gambas/trunk@2669 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-02-07 23:10:41 +00:00
Benoît Minisini
ff0804b8b1 [DEVELOPMENT ENVIRONMENT]
* NEW: Welcome dialog was redesigned.
* BUG: Do not use the main window to display an error message if it is not 
  opened.

[INTERPRETER]
* BUG: Fix command-line arguments parsing again.

[GB.QT4]
* BUG: Some text alignment flags were not correctly detected.
* BUG: Cached DrawingArea should work as expected again.


git-svn-id: svn://localhost/gambas/trunk@2662 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-02-04 16:00:01 +00:00
Benoît Minisini
1ff708f0b0 [INTERPRETER]
* BUG: Fix commnad-line arguments parsing.
* NEW: System.Family is a new property that returns the operating system 
  family (Linux, FreeBSD...) as a string.
* NEW: System.Architecture is a new property that returns the current CPU
  architecture as as string: x86, x86_64 or ARM.


git-svn-id: svn://localhost/gambas/trunk@2660 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-02-03 15:48:37 +00:00
Benoît Minisini
49ad535836 [GB.GTK]
* BUG: Popup menus now grab events correctly.

[INTERPRETER]
* BUG: Clean up usage help messages for gbx3 and gbr3.

[GB.FORM]
* NEW: FileView now sorts files by using natural sort.


git-svn-id: svn://localhost/gambas/trunk@2658 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-02-03 02:30:37 +00:00
Benoît Minisini
34ece710f0 [DEVELOPMENT ENVIRONMENT]
* NEW: Apply color theme to project treeview, property sheet and form 
  hierarchy window.

[INTERPRETER]
* NEW: gbr3 and gbx3 now interpret their command line the same way.
* NEW: The -L option now prints the license, and the -h option only print
  the interpreter usage.

[GB.GTK]
* BUG: As the Y-axis is top-down, positive angles must be clockwise in theme
  Paint class implementation.

[GB.QT4]
* BUG: As the Y-axis is top-down, positive angles must be clockwise in theme
  Paint class implementation.


git-svn-id: svn://localhost/gambas/trunk@2653 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-02-01 12:17:38 +00:00
Benoît Minisini
fd13cc710e [COMPILER]
* NEW: Be more clever when detecting hexdecimal or binary numbers.

[GB.EVAL]
* NEW: Be more clever when detecting hexdecimal or binary numbers.

[GB.FORM]
* BUG: In DateChooser, switching to February works now, when there is 28 
  days in February and the current day is greater or equal than 29.


git-svn-id: svn://localhost/gambas/trunk@2651 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-01-31 20:32:12 +00:00
Benoît Minisini
6d3201bc1f [WIKI CGI SCRIPT]
* BUG: Linkification does not erase symbols references anymore.

[INTERPRETER]
* BUG: Use the system maximum path length constant, not ours.

[COMPILER]
* BUG: Allow Inherits to be followed by any indentifier.


git-svn-id: svn://localhost/gambas/trunk@2647 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-01-28 10:55:24 +00:00
Benoît Minisini
0665d5f720 [CONFIGURATION]
* BUG: Configuration summary should be printed correctly again.
* NEW: README file was updated.

[INTERPRETER]
* BUG: The Error information should not be lost anymore during error 
  propagation through constructors.
* NEW: Natural comparison is now always language-aware.

[GB.QT4]
* BUG: TextArea selection methods work correctly now.
* BUG: TreeView.Count and ColumnView.Count now return the number of items 
  in the view like in gb.gtk, not just the number of root items.


git-svn-id: svn://localhost/gambas/trunk@2643 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-01-27 03:28:06 +00:00
Benoît Minisini
6f2a3f43a5 [INTERPRETER]
* NEW: gb.Text has been deprecated, and a warning is printed each time it 
  is used now. Use gb.IgnoreCase instead.
* NEW: Natural string comparison and sorting were implemented. Use the 
  gb.Natural constant for that.


git-svn-id: svn://localhost/gambas/trunk@2640 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-01-25 17:53:58 +00:00
Benoît Minisini
8c8859b165 [CONFIGURATION]
* BUG: Fix the compilation and installation order of sub-directories.

[INTERPRETER]
* BUG: Never display newlines inside error message, the debugger does not 
  like them.

[GB.FORM]
* BUG: Right and bottom SidePanels now shrink as expected when their parent 
  container has no arrangement.

[GB.GTK]
* BUG: When a modal window is running, only it can be closing from the 
  window manager close button.


git-svn-id: svn://localhost/gambas/trunk@2629 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-01-24 14:23:51 +00:00
Benoît Minisini
932eb88117 [CONFIGURATION]
* BUG: Use -fnested-functions only on Mac OS X.
* BUG: The GB_COMPONENT macro now correctly voids all component variables 
  when the component is not found.


git-svn-id: svn://localhost/gambas/trunk@2621 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-01-20 14:08:22 +00:00
Benoît Minisini
09b7390344 [CONFIGURATION]
* BUG: Do not use the "echo" command with options, FreeBSD shell does 
  not understand it.
* BUG: Make the "main" directory compile on Mac OS X.



git-svn-id: svn://localhost/gambas/trunk@2619 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-01-20 01:37:45 +00:00
Benoît Minisini
927a153b22 [DEVELOPMENT ENVIRONMENT]
* BUG: Always correctly round control coordinates in the form editor when 
  the form Scaled property is set.

[GB.FORM]
* BUG: Clicking inside the FontChooser style ListBox now always works 
  correctly.

[GB.GTK]
* BUG: Setting the Control.Tracking property should work correctly in all 
  cases now.
* BUG: Prevent a crash when creating an Image or a Picture with incorrect
  constructor arguments.

[GB.IMAGE.EFFECT]
* BUG: Use accurate compilation flags.

[GB.NET]
* BUG: Clear the CR / NL input conversion flags when initializing a serial 
  port.

[GB.QT4]
* BUG: Setting MovieBox Path property to NULL does not fail anymore.
* BUG: Do not try to reparent a window in its Show() method when it is 
  already visible.


git-svn-id: svn://localhost/gambas/trunk@2618 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-01-20 00:52:50 +00:00
Benoît Minisini
4e17272a76 [INTERPRETER]
* BUG: Do not crash anymore when running the interpreter in a directory 
  that is not a gambas project. And print a clear message then.


git-svn-id: svn://localhost/gambas/trunk@2617 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-01-20 00:37:00 +00:00
Benoît Minisini
0421ced0fe [EXAMPLES]
* NEW: The ImageViewer example now uses the Paint class.

[INTERPRETER]
* NEW: Class.Symbols now returns a string array of all class public 
  symbols.
* NEW: Component.IsLoaded is a new static method to check if a specific 
  component has been loaded.
* NEW: Components.Load has been removed.

[GB.GTK]
* NEW: Cairo requirements have been added to the configure.ac file.
* NEW: The Container.Children.Clear method has been implemented.

[GB.GUI]
* NEW: Add gb.image requirement in the gb.gui component file.

[GB.QT4]
* BUG: DrawingArea scrollbars are correctly displayed again.
* BUG: DrawingArea internal cache is correctly resized with the control.


git-svn-id: svn://localhost/gambas/trunk@2606 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-01-10 23:00:31 +00:00
Benoît Minisini
61997e8921 [DEVELOPMENT ENVIRONMENT]
* NEW: Use the new mascot to draw project directory icon.

[EXAMPLES]
* NEW: Some little changes in the Painting example.

[INTERPRETER]
* NEW: The component GB_INIT function now returns an integer that gives an 
  unloading order. The higher the returned number, the later the component 
  is unloaded. If GB_INIT returns -1, then the component shared library 
  will not be unloaded.
* NEW: Update GB_INIT functions in all components.

[GB.DRAW]
* BUG: Paint.Image() optional translation arguments are not inverted 
  anymore.

[GB.QT4]
* BUG: If Paint.LineWidth is zero, then nothing is stroked, as in gb.gtk.
* BUG: TabStrip is now correctly arranged when it has only one tab.


git-svn-id: svn://localhost/gambas/trunk@2605 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-01-10 13:40:48 +00:00
Benoît Minisini
a07a868dbd [WIKI CGI SCRIPT]
* BUG: Correctly deals with class reimplementation for Gambas3 component 
  help pages.

[GB.GTK]
* NEW: Printer.Run() has been replaced by thwo methods: Printer.Configure()
  to configure the printer, and Printer.Print() to start printing.

[GB.NET]
* NEW: Starting some code cleanup in the component.

[GB.QT4]
* NEW: Printer.Run() has been replaced by thwo methods: Printer.Configure()
  to configure the printer, and Printer.Print() to start printing.
* NEW: Printer.OutputFile is a new property to set the path of the output
  file used for printing to a file.

[GB.QT4.WEBKIT]
* NEW: WebFrame.Print() is a new method to send a frame to an existing 
  printer object.
* NEW: Printer.OutputFile is a new property to set the path of the output
  file used for printing to a file.


git-svn-id: svn://localhost/gambas/trunk@2600 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-01-04 12:04:53 +00:00
Benoît Minisini
e61a0c45be [INTERPRETER]
* BUG: Hexadecimal numbers can be interpreted as Long only if they have 
  more than eight digits (32 digit for binary numbers), or if they are 
  unsigned.

[COMPILER]
* BUG: Hexadecimal numbers can be interpreted as Long only if they have 
  more than eight digits (32 digit for binary numbers), or if they are 
  unsigned.


git-svn-id: svn://localhost/gambas/trunk@2592 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-01-02 15:04:06 +00:00
Fabien Bodard
5a319b4eb5 [GB.GTK]
* NEW: implement Paint.TextExtents

[GB.QT4]
* NEW: implement Paint.TextExtents



git-svn-id: svn://localhost/gambas/trunk@2585 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-01-01 22:19:11 +00:00
Benoît Minisini
a2fa1cc408 [GB.GTK]
* NEW: SvgImage.Width and SvgImage.Height are now Float properties.

[GB.QT4]
* NEW: The SvgImage class has been implemented.


git-svn-id: svn://localhost/gambas/trunk@2584 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-01-01 21:32:45 +00:00
Benoît Minisini
05fe8d8446 [INTERPRETER]
* NEW: A new interpreter API to get temporary file names.
* NEW: A new interpreter API to copy a file.
* NEW: Rename the GB.GetTempDir() function to GB.TempDir(), and fix all 
  components using it.

[GB.GTK]
* NEW: SvgImage is a new class that allows to generate SVG files by 
  painting on it. But it cannot render them.


git-svn-id: svn://localhost/gambas/trunk@2583 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-01-01 18:45:35 +00:00
Benoît Minisini
d81bda1c5b [DEVELOPMENT ENVIRONMENT]
* BUG: Correctly save ListBox having exactly 31 items defined from the IDE.

[INTERPRETER]
* BUG: Now when a method call fails when checking arguments, the arguments
  are correctly released.

[GB.QT4]
* NEW: The Window background picture is now drawn differently, and not 
  propagated anymore.


git-svn-id: svn://localhost/gambas/trunk@2582 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-01-01 14:55:13 +00:00
Benoît Minisini
dab9c93bbe [WIKI CGI SCRIPT]
* BUG: Fix a HTML markup mistake.

[GB.GTK]
* BUG: The Printer.Page property starts from 1 and not 0 anymore.

[GB.GUI]
* BUG: Add Printer control to the *.component file.

[GB.QT4]
* BUG: The Printer.Page property starts from 1 and not 0 anymore.
* BUG: Add Printer control to the *.component file.


git-svn-id: svn://localhost/gambas/trunk@2580 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-01-01 11:54:16 +00:00
Benoît Minisini
d01028cc99 [GB.DRAW]
* BUG: Fix the Brush.Matrix property management.


git-svn-id: svn://localhost/gambas/trunk@2560 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-12-30 16:33:46 +00:00
Benoît Minisini
6b0fd51325 [EXAMPLES]
* NEW: Cosmetic changes again in the Painting example.

[GB.DRAW]
* NEW: Paint.RelLineTo() is implemented by using Paint.LineTo().

[GB.GTK]
* NEW: Remove the implementation of Paint.RelLineTo().

[GB.QT4]
* NEW: Remove the implementation of Paint.RelLineTo().


git-svn-id: svn://localhost/gambas/trunk@2555 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-12-30 15:23:44 +00:00
Fabien Bodard
1528d689fc [GB.DRAW]
* NEW: Paint.RelMoveTo and Paint.RelCurveTo have been added.


git-svn-id: svn://localhost/gambas/trunk@2550 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-12-30 13:40:13 +00:00
Fabien Bodard
e183563213 [GB.GTK]
* NEW: New function Paint.RelLineTo to draw line to positions
  relative to the current drawing position

[GB.QT4]
* NEW: New function Paint.RelLineTo to draw line to positions
  relative to the current drawing position



git-svn-id: svn://localhost/gambas/trunk@2546 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-12-30 11:09:25 +00:00
Benoît Minisini
79e76072d1 [WIKI CGI SCRIPT]
* NEW: Pages under "/comp" whose name begins with "~" are normal pages.

[GB.DRAW]
* NEW: Paint.TextExtents has been removed. Use Paint.PathExtents just after 
  having done a Paint.Text.
* BUG: Paint.RadialGradient now takes a center, a radius, and a focal 
  point, like in SVG standard.

[GB.GTK]
* BUG: Paint.RadialGradient() should have been correctly implemented.

[GB.QT4]
* NEW: Link with the QtSvg module.
* BUG: Paint.RadialGradient() has been correctly implemented.


git-svn-id: svn://localhost/gambas/trunk@2543 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-12-29 23:18:43 +00:00
Benoît Minisini
8e7661d2c6 [GB.DRAW]
* BUG: Paint.RichText() has been removed.

[GB.GTK]
* BUG: Paint.Arc() draws in the same direction as in gb.qt4.
* BUG: Paint.RichText() has been removed.
* BUG: PaintBrush.Matrix now behaves the same as in gb.qt4.

[GB.QT4]
* NEW: Paint.Text() has been implemented.
* BUG: Paint.Begin() now initializes the underlying pen the same way as in 
  gb.gtk.


git-svn-id: svn://localhost/gambas/trunk@2542 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-12-29 21:42:40 +00:00
Benoît Minisini
d752c36ade [GB.IMAGE]
* BUG: Fix the macro that splits a Gambas color into its components and 
  revert the alpha value.


git-svn-id: svn://localhost/gambas/trunk@2541 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-12-29 18:19:33 +00:00
Benoît Minisini
71af715f2a [GB.GTK]
* BUG: Fix the Draw.Text() and Draw.RichText() functions when the alignment 
  argument is used.
* NEW: Paint.Text() and Paint.RichText() were implemented.
* NEW: Paint.LinearGradient() and Paint.RadialGradient() were implemented.

[GB.QT4]
* BUG: Paint.ArcTo() should take angles in radian now.


git-svn-id: svn://localhost/gambas/trunk@2540 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-12-29 18:08:06 +00:00
Benoît Minisini
da664d19ff [GB.IMAGE]
* NEW: Image.Mask is new method that mask the colors of an image with 
  another color, and that enhance the alpha channel with the alpha channel 
  of that another color.


git-svn-id: svn://localhost/gambas/trunk@2539 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-12-29 11:56:43 +00:00
Benoît Minisini
ef53dddcfd [GB.DRAW]
* BUG: Fix a memory leak in Paint class transformation matrix management.

[GB.GTK]
* BUG: Paint.Image works correctly now.
* BUG: The PaintBrush matrix works the same way as in gb.qt4 now, i.e. it 
  is inverted compared with Cairo!


git-svn-id: svn://localhost/gambas/trunk@2538 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-12-29 02:26:30 +00:00
Benoît Minisini
e644006626 [WIKI CGI SCRIPT]
* BUG: Handle cyclic dependencies between components correctly.

[GB.DRAW]
* BUG: Handle brush origin by translating the brush transformation matrix.

[GB.GTK]
* NEW: Start implementing the Paint interface.
* NEW: DrawingArea.Painted is a new property. When set, the Paint interface 
  must be used inside the Draw event, instead of the old Draw interface.


git-svn-id: svn://localhost/gambas/trunk@2537 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-12-29 01:21:39 +00:00
Benoît Minisini
2ed6fa4f79 [GB.DRAW]
* BUG: Forgot to free PaintMatrix objects.


git-svn-id: svn://localhost/gambas/trunk@2533 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-12-28 12:37:49 +00:00
Benoît Minisini
774baa91f6 [DEVELOPMENT ENVIRONMENT]
* NEW: Do not apply the new DrawingArea.Painted property.

[GB.DRAW]
* NEW: The new Paint interface is now completed. Only its text part is
  rudimentary at the moment.

[GB.QT4]
* NEW: The Paint interface has been implemented on the following classes:
  Picture, Image, DrawingArea.
* NEW: DrawingArea.Painted is a new property. When set, the Paint interface 
  must be used inside the Draw event, instead of the old Draw interface.


git-svn-id: svn://localhost/gambas/trunk@2530 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-12-28 01:19:27 +00:00
Benoît Minisini
67a672c6d7 [CONFIGURATION]
* NEW: Do not compile gb.qt.kde anymore.

[GB.DRAW]
* NEW: Work continues on the new Paint interface.


git-svn-id: svn://localhost/gambas/trunk@2521 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-12-27 15:51:27 +00:00
Laurent Carlier
9c40bbac3f [CONFIGURATION]
* BUG: Add --install glag to autoreconf, that fix creation of config files,
  also add build-dist script to create a lighter tar.bz2 archive of the
  repository.



git-svn-id: svn://localhost/gambas/trunk@2519 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-12-26 21:30:35 +00:00
Benoît Minisini
efb2659278 [CONFIGURATION]
* BUG: Remove the libtoolize "--install" flag in the reconf script, as it 
  breaks the "main" source sub-directory. We must add an option to this
  script to handle that flag correctly.

[DEVELOPMENT ENVIRONMENT]
* BUG: Correctly display errors raised at program startup.

[EXAMPLES]
* BUG: The Notepad example has been fixed.

[GB.DRAW]
* NEW: Work continue on the Paint class.


git-svn-id: svn://localhost/gambas/trunk@2514 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-12-24 15:09:08 +00:00
Benoît Minisini
47d0aa711c [CONFIGURATION]
* NEW: Architecture detection.
* NEW: Updated libtool macros.

[DEVELOPMENT ENVIRONMENT]
* NEW: Highlight the current procedure in the editor procedure popup.

[INTERPRETER]
* BUG: Alignment fixes for the ARM architecture.

[GB.DRAW]
* NEW: Start implementing the new Paint interface.

[GB.GTK]
* BUG: GridView.Clear is now correctly implemented.


git-svn-id: svn://localhost/gambas/trunk@2505 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-12-24 02:02:05 +00:00
Benoît Minisini
f4139e1c7b [DEVELOPMENT ENVIRONMENT]
* NEW: Display help on local variables in automatic completion.
* NEW: Enhance the help wiki syntax. Links in uppercase are supposed to be 
  language keywords. And lines beginning with "+" are titles.

[WIKI CGI SCRIPT]
* NEW: Online help pages now stay in the cache during one week.

[EXAMPLES]
* BUG: The HighlightEditor example now uses Qt4.

[GB.EVAL]
* BUG: Help comments are correctly highlighted in all cases now.

[GB.FORM]
* BUG: Balloons are drawn correctly again.

[GB.QT4.EXT]
* BUG: Many bug fixes in Editor rendering.


git-svn-id: svn://localhost/gambas/trunk@2495 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-12-15 00:06:54 +00:00
Benoît Minisini
0c1b17316e [DEVELOPMENT ENVIRONMENT]
* NEW: Syntax highlighting for help comments.
* NEW: Implement a wiki-like syntax inside help comments.

[GB.EVAL]
* NEW: Syntax highlighting for help comments.

[GB.QT4]
* NEW: The TextArea.Line and TextArea.Column properties has been 
  implemented.

[GB.QT4.EXT]
* NEW: Syntax highlighting for help comments in Editor.
* OPT: Editor view has been redesigned to inherit directly Q3ScrollView 
  instead of Q3GridView.
* BUG: The editor background color has no impact anymore on the editor 
  frame.


git-svn-id: svn://localhost/gambas/trunk@2494 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-12-14 03:45:22 +00:00
Benoît Minisini
23db05d0f2 [DEVELOPMENT ENVIRONMENT]
* BUG: Some fixes in help on project symbols.
* BUG: F2 (Find definition) now uses the help browser to display help on 
  classes and symbols.
* NEW: A new button in the help browser to modify the current 
  documentation page, by opening an external web browser for that.

[GB.EVAL]
* NEW: System.Datatypes is a new property that return a list of all native 
  datatypes.

[GB.WEB]
* NEW: Start implementing some HTTP cache management in the Response class.


git-svn-id: svn://localhost/gambas/trunk@2483 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-12-12 02:58:12 +00:00
Benoît Minisini
adeeb68063 [DEVELOPMENT ENVIRONMENT]
* NEW: Implement the property help with a WebView control.
* NEW: Add a button in the option dialog to clear the documentation cache.
* BUG: Correctly display online help on special methods.

[COMPILER]
* BUG: Long integer constants are now compiled correctly in all cases.


git-svn-id: svn://localhost/gambas/trunk@2471 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-12-10 02:48:25 +00:00
Benoît Minisini
76275850fb [DEVELOPMENT ENVIRONMENT]
* NEW: The IDE now uses the WebKit component to display an online help 
  directly into the automatic completion popup. The online help management
  is quick and dirty at the moment.
* NEW: The option dialog is being redesigned. Not finished yet...
* NEW: Some cosmetic changes in the user control that displays the 
  information about a project. Not perfect yet.

[WIKI CGI SCRIPT]
* NEW: The wiki now sends the "Last-Modified", "Expires" and 
  "Cache-Control: max-age" headers with the HTML pages.
* NEW: Adding "?help" to an URL returns the page for the IDE online help.

[INTERPRETER]
* BUG: Try to stop breaking strict aliasing rules. This way the interpreter 
  should behave better on ARM architecture.
* BUG: Remove a possible crash when calling a constructor.

[GB.DRAW]
* NEW: The deprecated properties Draw.ForeColor and Draw.BackColor have 
  been removed.

[GB.NET]
* BUG: Do not watch the SerialPort file descriptor for reading if there is 
  no Read event handler.

[GB.QT4.WEBKIT]
* NEW: WebSettings.Cache.Path is a new property to define the directory 
  used for storing the disk cache contents. If this property is not 
  defined, no cache will be used.
* NEW: WebView.Cached is a new property to tell if the web browser will use
  the disk cache. The WebSettings.Cache.Path *must* be defined before 
  setting that property.
* NEW: WebView.HTML is not read-only anymore.


git-svn-id: svn://localhost/gambas/trunk@2460 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-12-07 17:14:32 +00:00
Benoît Minisini
afe086185e [DEVELOPMENT ENVIRONMENT]
* NEW: Take the new organization of constructor arguments into account.

[INTERPRETER]
* NEW: Change the way arguments are consumed by inherited constructors 
  again. Now mandatory and optional arguments are consumed separately.
  Mandatory arguments of all constructors are consumed first, and then
  optional arguments if possible.

[GB.FORM]
* NEW: Take the new organization of constructor arguments into account.


git-svn-id: svn://localhost/gambas/trunk@2453 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-12-01 04:06:21 +00:00
Benoît Minisini
669820173b [INTERPRETER]
* NEW: The constructor arguments must follow the inheritance order from top 
  to bottom, and not from bottom to top as before. This way, the 
  constructor of the bottom class can have optional arguments.


git-svn-id: svn://localhost/gambas/trunk@2448 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-11-30 04:25:48 +00:00
Benoît Minisini
71db2b5689 [DEVELOPMENT ENVIRONMENT]
* BUG: Fix table creation and renaming dialog when checking if a table name 
  already exists.

[GB.DB]
* BUG: Table quoting works as expected now.

[GB.DB.POSTGRESQL]
* NEW: Now, if no schema is specified in a table name, the "public" schema 
  is used. Consequently, the schema must be specified, unless the table is
  in the "public" schema.


git-svn-id: svn://localhost/gambas/trunk@2443 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-11-28 02:05:10 +00:00
Benoît Minisini
83d84d7ee5 [DEVELOPMENT ENVIRONMENT]
* NEW: Support for the Index class interface changes.
* BUG: CSV import does not crash anymore when the imported file size is 
  lower than 64K.
* BUG: Do not crash if a component is not installed.

[INTERPRETER]
* BUG: Error.Text does not split the error message and its argument in 
  debug mode.
* BUG: Fix many breaks in strict aliasing rules.

[SCRIPTER]
* BUG: Do not crash if a component is not installed.

[GB.DB]
* NEW: Better support for postgresql schemas.
* NEW: Connection.Quote() takes one more optional boolean argument that 
  tells if we want to quote a table name. In that case, schemas are taken 
  into account.
* NEW: Connection.FormatBlob() is a new function that returns a string that 
  can be used as a blob contents in a SQL expression.
* NEW: Index.Fields now returns a string array of index fields.
* NEW: Index.Add() second argument is now a string array of index fields.


git-svn-id: svn://localhost/gambas/trunk@2442 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-11-28 01:22:00 +00:00
Benoît Minisini
f85ba4aa52 [GB.DB]
* NEW: Allow points both in table and index names.


git-svn-id: svn://localhost/gambas/trunk@2437 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-11-25 00:26:26 +00:00
Benoît Minisini
eac6be9727 [GB.DB]
* NEW: Allow points in table names, so that postgresql schemas can be used.


git-svn-id: svn://localhost/gambas/trunk@2436 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-11-25 00:21:37 +00:00
Benoît Minisini
26d402dc2a [COMPILER]
* BUG: A line was deleted by mistake in the previous commit.


git-svn-id: svn://localhost/gambas/trunk@2435 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-11-22 19:18:38 +00:00
Benoît Minisini
4377e25e8d [COMPILER]
* BUG: Ensure that the .action project sub-directory is owned by the user 
  owning the project directory.


git-svn-id: svn://localhost/gambas/trunk@2434 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-11-22 19:16:39 +00:00
Benoît Minisini
585c82b49b [INTERPRETER]
* NEW: System.Error is a new property that returns the contents of the 
  "errno" variable, which is the error code returned by the last system 
  call.


git-svn-id: svn://localhost/gambas/trunk@2421 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-11-15 14:13:52 +00:00
Benoît Minisini
77acecbca7 [DEVELOPMENT ENVIRONMENT]
* BUG: The make executable dialog options are correctly refreshed depending 
  on whether the project is a component or not.
* BUG: Removing a source file removes correctly the translation file from 
  version control too now.

[EXAMPLES]
* BUG: The hour hand follows the minutes now in the Clock example.

[INTERPRETER]
* BUG: The thousand separator is only printed between digits now.

[GB.QT4]
* BUG: Fix the definition of TabStrip properties.

[GB.GTK]
* BUG: Fix the definition of TabStrip properties.


git-svn-id: svn://localhost/gambas/trunk@2420 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-11-15 13:53:37 +00:00
Benoît Minisini
25c43c72c4 [DEVELOPMENT ENVIRONMENT]
* NEW: Greek translation updated.

[INTERPRETER]
* BUG: Stopping watching a file descriptor inside a watching callback does 
  not crash the interpreter event loop anymore.

[GB.GTK]
* BUG: Do not crash when there is a keyboard event and no active control.
* BUG: Using the quality argument when saving a picture or an image does 
  not crash anymore.


git-svn-id: svn://localhost/gambas/trunk@2391 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-10-12 10:38:35 +00:00
Benoît Minisini
1a73e9a4dd [DEVELOPMENT ENVIRONMENT]
* NEW: Greek translation made by Alexandros Prekates.
* BUG: Non-versioned files or directories are not locked anymore so that 
  you can add it to the repository.

[INTERPRETER]
* BUG: Non-integer constants are correctly optimized and keep their 
  datatype.

[COMPILER]
* BUG: Non-integer constants are correctly compiled and keep their 
  datatype.


git-svn-id: svn://localhost/gambas/trunk@2385 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-10-04 23:32:14 +00:00
Benoît Minisini
ba9d887183 [DEVELOPMENT ENVIRONMENT]
* BUG: Fix the file information dialog layout.
* BUG: Renaming data files does not crash the IDE anymore.
* BUG: Status of renamed versioned directories is now correctly updated.


git-svn-id: svn://localhost/gambas/trunk@2380 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-10-01 23:54:14 +00:00
Benoît Minisini
d35c59c763 [COMPILER]
* NEW: The Begins and Ends operator of course.
* BUG: Fix a crash when compiling a line beginning with the Read instruction.


git-svn-id: svn://localhost/gambas/trunk@2366 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-09-27 10:34:39 +00:00
Benoît Minisini
c17951fcd3 [DEVELOPMENT ENVIRONMENT]
* BUG: Use the new Begins and Ends operators instead of Like where it was 
  necessary or faster.

[INTERPRETER]
* BUG: The &/ operator keeps only one slash if both the last character of 
  the left string and the first character of the right string is a slash.
* NEW: 'Begins' is a new string operator that checks if the beginning of a 
  string is equal to another string.
* NEW: 'Ends' is a new string operator that checks if the end of a string 
  is equal to another string.
* BUG: Errors raised by Eval() are correctly displayed again.
* NEW: The 'Like' operator has a new pattern: '{x,y,...}' tests if a 
  string matches one of the strings between square brackets, each one being
  separated by a comma.

[GB.DB.FORM]
* BUG: Use the new Begins and Ends operators instead of Like where it was 
  necessary or faster.

[GB.DESKTOP]
* BUG: Use the new Begins and Ends operators instead of Like where it was 
  necessary or faster.

[GB.GTK]
* BUG: Modal windows do not block mouse, keyboard, enter and leave events 
  anymore.

[GB.FORM]
* BUG: Use the new Begins and Ends operators instead of Like where it was 
  necessary or faster.

[GB.FORM.MDI]
* BUG: Use the new Begins and Ends operators instead of Like where it was 
  necessary or faster.

[GB.WEB]
* BUG: Use the new Begins and Ends operators instead of Like where it was 
  necessary or faster.


git-svn-id: svn://localhost/gambas/trunk@2365 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-09-27 09:28:52 +00:00
Benoît Minisini
0f7bc5c258 [DEVELOPMENT ENVIRONMENT]
* BUG: Fix the interaction between subversion and directory renaming or 
  moving. Now deleted or renamed folders that are not committed are now 
  locked.
* NEW: Some message boxes related to file operations were replaced by 
  balloons.
* BUG: Fix a bug when renaming a source directory.

[INTERPRETER]
* BUG: Errors raised by components are correctly displayed again.


git-svn-id: svn://localhost/gambas/trunk@2360 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-09-25 19:56:26 +00:00
Benoît Minisini
f3df1daa86 [DEVELOPMENT ENVIRONMENT]
* NEW: Runtime error messages are now translatable. At least those that
  have an error code. Custom error messages coming from component are not
  translatable yet.
* NEW: French translation of runtime error messages.

[INTERPRETER]
* NEW: When running in debugging mode, error messages are formatted to be
  easily translatable.


git-svn-id: svn://localhost/gambas/trunk@2347 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-09-22 22:10:38 +00:00
Benoît Minisini
916c559a26 [DEVELOPMENT ENVIRONMENT]
* NEW: Support for translated compiler error messages.
* NEW: French translatio of compiler error messages.

[COMPILER]
* BUG: Fix many error messages so that they are easily translatable.
* NEW: A new option, "-e", to output translatable error messages instead of 
  full ones.


git-svn-id: svn://localhost/gambas/trunk@2346 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-09-21 16:57:21 +00:00
Benoît Minisini
f5d698f1ec [COMPILER]
* NEW: The option "--no-old-read-write-syntax" allows to easily detect 
  where Read and Write instructions should be rewritten.


git-svn-id: svn://localhost/gambas/trunk@2345 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-09-20 18:04:04 +00:00
Benoît Minisini
26ab06c228 [DEVELOPMENT ENVIRONMENT]
* NEW: Use the new Read/Write syntax.

[INTERPRETER]
* NEW: New Read/Write syntax.
* NEW: IsVariant() returns if its argument is a Variant.

[COMPILER]
* NEW: New Read/Write syntax.
* NEW: Support for the old read syntax.

[WIKI CGI SCRIPT]
* NEW: Allow query arguments ("?v3" for example) inside wiki links.
* NEW: New look for the table of contents.
* BUG: Non-translated pages display again.

[GB.WEB]
* NEW: Use the new Read/Write syntax.


git-svn-id: svn://localhost/gambas/trunk@2344 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-09-20 17:32:12 +00:00
Benoît Minisini
e91a676559 [INTERPRETER]
* NEW: VarPtr() now works on a string variable. It returns the address of 
  the string.
* NEW: TypeOf("") now returns gb.String. "" is equal to NULL yet, but now its 
  string datatype is kept.
* NEW: Memory is new instruction like Open that opens a memory stream from 
  a Pointer.
* NEW: A Pointer can not be used as a stream directly. You must use the new
  Memory instruction for that.
* NEW: The [...] array constructor now checks the datatype of all its 
  argument to decide the type of the new array.
* BUG: The ["key":value] collection constructor now does not leak memory 
  anymore if it fails.
* NEW: A new error, "void key", whose code is 64.
* NEW: TypeOf(Null) now returns gb.Null and not gb.Object anymore.
* BUG: IIf() now returns a Variant only if needed. It uses the same 
  algorithm as the array constructor.

[COMPILER]
* NEW: Memory is new instruction like Open that opens a memory stream from 
  a Pointer. The syntax is: hStream = Memory pPonter For Read | Write.
* NEW: Support for form controls being individually public.
* BUG: VarPtr() is compiled correctly again.


git-svn-id: svn://localhost/gambas/trunk@2339 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-09-17 20:58:27 +00:00
Benoît Minisini
11906ba89a [DEVELOPMENT ENVIRONMENT]
* NEW: Renaming a control now automatically renames the identifier in the 
  source code.

[INTERPRETER]
* NEW: Split() now takes a 5th optional argument that tells if escape 
  characters should be kept in the returned strings.
* NEW: CVariant() is a new function that converts its argument into a 
  Variant.

[COMPILER]
* NEW: CVariant() is a new function that converts its argument into a 
  Variant.

[GB.FORM]
* NEW: SidePanel, DirChooser, FileChooser and FileView Settings property
  now use the new Settings storage facilities and return a Variant[].

[GB.GTK]
* NEW: The Settings and Layout properties of HSplit and VSplit now return 
  an Integer[] instead of a String.
* BUG: The name property of newly created menus is correctly initialized
  now.

[GB.QT4]
* NEW: The Settings and Layout properties of HSplit and VSplit now return 
  an Integer[] instead of a String.

[GB.SETTINGS]
* NEW: The settings file format has changed. Now collections and arrays can
  be stored and retrieved.


git-svn-id: svn://localhost/gambas/trunk@2329 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-09-10 19:30:41 +00:00
Benoît Minisini
026c739f3d [DEVELOPMENT ENVIRONMENT]
* NEW: New control property type "Menu", for properties that receive a 
  popup menu name.
* NEW: New paste button with a menu in the code editor.

[GB.FORM]
* NEW: A new control, MenuButton, that is a ToolButton with a little arrow
  and a popup menu attached.

[GB.FORM.MDI]
* BUG: Some fixes in shortcut editing in the shortcut configuration dialog.
* BUG: The toolbar configuration works correctly again.

[GB.IMAGE.IMLIB]
* BUG: Image.Blur() and Image.Sharpen() now have the same signature as 
  their counterpart in gb.image.effect.
* BUG: Image.Draw() works correctly now.

[GB.QT4]
* BUG: Do not quit the application while a message box is displayed.
* BUG: Window.Center() works correctly now.
* BUG: Do not delay ScrollView contents layouting, otherwise it is done 
  when the widget is visible, which is not pretty.


git-svn-id: svn://localhost/gambas/trunk@2319 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-09-08 12:22:03 +00:00
Benoît Minisini
9d85501cad [DEVELOPMENT ENVIRONMENT]
* NEW: The Toolbox toggle shortcut is now SHIFT+F4.
* NEW: F6 now shows the procedure list in the code editor.

[GB.IMAGE]
* BUG: ColorInfo is back. Otherwise component properties hides default 
  color constants!



git-svn-id: svn://localhost/gambas/trunk@2316 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-09-06 09:25:18 +00:00
Benoît Minisini
33b1d29dfa [DEVELOPMENT ENVIRONMENT]
* NEW: New procedure list popup in the code editor.
* BUG: Keep case of "Exclude" and "Requires" component properties.
* BUG: Images edited by an external program are correctly watched again.

[GB.IMAGE]
* NEW: Color is a now a true class that replaced the old ColorInfo class.
* NEW: Color class component properties are both readable and writable now.
* NEW: Color.Color is a property that returns the color value from the
  color components defined in the Color object.


git-svn-id: svn://localhost/gambas/trunk@2315 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-09-06 01:21:35 +00:00
Benoît Minisini
4aefbacb48 [DEVELOPMENT ENVIRONMENT]
* BUG: In the "Requires" tab of the project property dialog, requirements 
  are not incorrectly converted to lower case anymore.

[COMPILER]
* BUG: Fix symbol tables that sometimes didn't work correctly when storing 
  symbols having non-ASCII characters.

[GB.FORM]
* BUG: ButtonBox.Length property now returns the length of the ButtonBox 
  text. That fixes the crash in the ColorChooser control.
* BUG: Balloon corners are correctly drawn again.
* NEW: Some cosmetic changes in the ColorChooser control.

[GB.IMAGE.IMLIB]
* BUG: Images now always have an alpha channel.


git-svn-id: svn://localhost/gambas/trunk@2313 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-09-05 20:54:36 +00:00
Benoît Minisini
a893f16465 [DEVELOPMENT ENVIRONMENT]
* BUG: Pressing the Escape key should hide panels *and* give the focus back
  to the active file correctly.

[INTERPRETER]
* BUG: Fix an uninitialized value in the date formatting routine.

[GB.DB.FORM]
* NEW: DataSource now raises a Change event when its current record changes
  or is refreshed.

[GB.NET]
* BUG: Fix an uninitialized value in SerialPort class, when retrieving the 
  port signal status.


git-svn-id: svn://localhost/gambas/trunk@2307 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-09-02 23:17:05 +00:00
Benoît Minisini
f0b39ad212 [DEVELOPMENT ENVIRONMENT]
* BUG: Image.Mirror() now works in place.

[GB.GTK]
* NEW: Color.LightForeground has been implemented.


git-svn-id: svn://localhost/gambas/trunk@2297 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-09-01 09:29:40 +00:00
Benoît Minisini
ac548e8734 [CONFIGURATION]
* BUG: Compile files with maximum optimization correctly.

[DEVELOPMENT ENVIRONMENT]
* BUG: Remove The Form_Close event handler in the FHelp form. It did 
  stupid things indirectly.

[WIKI CGI SCRIPT]
* NEW: Enhancements to support 2.0 and 3.0 descriptions on the same page.

[GB.FORM]
* NEW: Enhance the ColorChooser control.

[GB.FORM.MDI]
* BUG: Fix the Toolbar layout algorithm.

[GB.IMAGE]
* BUG: Image.Colorize() works again.

[GB.IMAGE.EFFECT]
* NEW: This component includes image filtering and effect routines. This is 
  the old gb.image component from Gambas 2. Everything is not working 
  correctly at the moment.

[GB.QT4]
* NEW: Color.LightForeground returns the light foreground color used for
  drawing separators and plain panel borders.
* BUG: Prevent crashes coming from the fact that Qt deletes child widgets 
  before emiting the destroy signal on the parent.


git-svn-id: svn://localhost/gambas/trunk@2296 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-09-01 01:14:13 +00:00
Laurent Carlier
581d3e70f5 [GB.IMAGE]
* BUG: Fixed the returned object from the Mirror() method.


git-svn-id: svn://localhost/gambas/trunk@2295 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-08-31 18:04:36 +00:00
Laurent Carlier
d671e3a69f [GB.IMAGE]
* NEW: Rename Iùmage.MakeGray() to Image.Gray() and Image.MakeTransparent() to Image.Transparent().
* NEW: Image where methods are applied is returned so methods effects can be easily chained,
       and API is more consistent.

Your code may be breaked !
Currently all the API isn't changed, work is in progress !
 


git-svn-id: svn://localhost/gambas/trunk@2293 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-08-31 16:25:13 +00:00
Benoît Minisini
9f1feee8ff [CONFIGURATION]
* BUG: Fix the way some source files are compiled with different 
  compilation flags in the interpreter and in the gb.image component.


git-svn-id: svn://localhost/gambas/trunk@2285 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-08-30 14:16:32 +00:00
Benoît Minisini
a18348f8cd [DEVELOPMENT ENVIRONMENT]
* NEW: In the open project dialog, you can now uncompress archives by 
  double-clicking on it. There is a confirmation message of course.

[GB.IMAGE.IMLIB]
* NEW: I want to use ImLib2 to enhance the image component. Does nothing at
  the moment!


git-svn-id: svn://localhost/gambas/trunk@2282 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-08-28 21:42:11 +00:00
Benoît Minisini
e15a08d817 [GB.IMAGE]
* NEW: A new interface in the API to get the default image format.

[GB.V4L]
* NEW: Try to use libv4lconvert to convert webcam frames to RGB.


git-svn-id: svn://localhost/gambas/trunk@2271 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-08-25 21:54:26 +00:00
Benoît Minisini
bd15563f2f [DEVELOPMENT ENVIRONMENT]
* NEW: Double-click is needed to modify a value in the debugger. But now
  you can't reset an object value to NULL. Something to fix later...

[GB.DEBUG]
* BUG: Fix an uninitialized value that made the debugger crash when 
  trying to see if an object can act like an array.

[GB.PDF]
* BUG: Make gb.pdf compile with poppler >= 0.11.3.


git-svn-id: svn://localhost/gambas/trunk@2268 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-08-24 23:30:23 +00:00
Benoît Minisini
8bb2091ab0 [CONFIGURATION]
* BUG: Fix the Makefile.am files of /main/lib sub-directories.

[DEVELOPMENT ENVIRONMENT]
* NEW: Now you can define the available control substitutions of your 
  component in the project property dialog.
* NEW: Now you can modify local variables, global variables and any field 
  in debugger windows while debugging.

[INTERPRETER]
* NEW: Support for local and global variable assignment.

[GB.DEBUG]
* NEW: The debugger can assign values to expressions, local and global 
  variables now.

[GB.EVAL]
* NEW: Support for local and global variable assignment.

[GB.FORM]
* NEW: TableView.NoKeyboard is a new property to disable the automatic 
  keyboard navigation.

(GB.QT4]
* NEW: Disable the Glib event loop.
* NEW: Do not automatically proceed events after a modal dialog is closed.


git-svn-id: svn://localhost/gambas/trunk@2265 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-08-24 14:19:32 +00:00
Benoît Minisini
5bb47fc9aa [DEVELOPMENT ENVIRONMENT]
* NEW: Some little cosmetic changes.
* BUG: Do not use gb.UseLanguage anymore.

[INTERPRETER]
* NEW: The gb.UseLanguage and gb.Case constants have been removed.
* NEW: Array.Find() methods now take an optional argument that defines the 
  search start index.
* NEW: gb.Like is a new comparison mode that internally uses the LIKE 
  operator.


git-svn-id: svn://localhost/gambas/trunk@2260 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-08-22 12:17:31 +00:00
Benoît Minisini
6efb184d9a [DEVELOPMENT ENVIRONMENT]
* NEW: Controls whose width (or height) is 1 will always be 1 pixel wide 
  (or high), regardless of the value of Desktop.Scale.
* NEW: Put the property sheet and the hierarchy tree inside the tabstrip.
* BUG: Replace Image.Flip() by Image.Mirror() in the welcome dialog.

[COMPILER]
* BUG: "Ambiguous braces" error message was incorrect, and has been 
  replaced by "Ambigous brackets".

[GB.IMAGE]
* NEW: Remove Image.Transform().

[GB.FORM.MDI]
* BUG: The default value of Workspace.ButtonPosition is Align.Right.

[GB.QT4]
* NEW: If the width (or height) argument of Control.MoveScaled() or 
  Control.ResizeScaled() is zero, then the effective width (or height) will 
  be 1 pixel.
* NEW: Do not activate windows whose type is ToolTip, Notification, 
  DragAndDrop or Desktop in the Show() method.
* BUG: Wait a little before activating windows, so that they do not stay in 
  the foreground.


git-svn-id: svn://localhost/gambas/trunk@2255 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-08-21 19:43:40 +00:00
Benoît Minisini
dba4051fb0 [DEVELOPMENT ENVIRONMENT]
* NEW: Brakpoint tab has been redesigned.
* BUG: Unchecking the gb.db component in a project having Connection 
  objects does not crash anymore when refreshing the project tree.

[INTERPRETER]
* BUG: Setting a breakpoint on the startup class works again.

[GB.DEBUG]
* BUG: Setting a breakpoint on the startup class works again.

[GB.FORM]
* BUG: Fix the use of the new Image.Mirror() function.

[GB.IMAGE]
* NEW: Image.Transform() is a just a test. Do not use it.

[GB.QT4]
* BUG: When a debugger event has been received, do not manipulate the GUI 
  if the application object has not been created yet.


git-svn-id: svn://localhost/gambas/trunk@2244 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-08-17 22:36:54 +00:00
Benoît Minisini
f65184802d [CONFIGURATION]
* NEW: Update copyright and license string in all source files.


git-svn-id: svn://localhost/gambas/trunk@2241 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-08-17 10:41:51 +00:00
Benoît Minisini
8dbb8a1e2a [CONFIGURATION]
* BUG: Forgot to commit symbolic links to the "m4" directory.


git-svn-id: svn://localhost/gambas/trunk@2237 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-08-16 22:51:28 +00:00
Benoît Minisini
96550473f7 [CONFIGURATION]
* NEW: Put custom autoconf macros in the "m4" directory.
* NEW: Drop libltdl.

[GB.IMAGE]
* NEW: Image.Resize() and Image.Mirror() has been put in common there.
* NEW: Image.Flip() has been removed.
* NEW: Image.Copy() and Image.Resize() now supports 24-bits images.

[GB.OPENGL]
* NEW: Depends on gb.image now.
* NEW: Texture images can have any format now.


git-svn-id: svn://localhost/gambas/trunk@2236 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-08-16 22:07:48 +00:00
Benoît Minisini
a7cc331135 [INTERPRETER]
* BUG: Remove a configuration file that should not be versioned.


git-svn-id: svn://localhost/gambas/trunk@2231 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-08-10 10:20:13 +00:00
Benoît Minisini
8fa23b6351 [DEVELOPMENT ENVIRONMENT]
* NEW: Some little changes in the "cool" buttons and in the project item 
  control.
* BUG: Fix the console embedding flash when the debugger starts.

[INTERPRETER]
* BUG: Fix the Makefile.am file that prevented debugging flags to be sent 
  to the compiler.

[COMPILER]
* BUG: Fix the Makefile.am file that prevented debugging flags to be sent 
  to the compiler.

[GB.FORM]
* OPT: ListContainer.Clear() now locks the container, as there is no need 
  to arrange its children while clearing it.


git-svn-id: svn://localhost/gambas/trunk@2230 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-08-10 10:16:58 +00:00
Benoît Minisini
9761b82d7b [DEVELOPMENT ENVIRONMENT]
* NEW: Try to lower the number of lines displayed in the GUI by removing 
  borders and using Separators instead.
* BUG: F11 should work correctly just after the IDE has been loaded now.

[EXAMPLES]
* NEW: In the PdfViewer example, zooming with the mouse wheel is now 
  smooth.

[GB.FORM.MDI]
* NEW: Remove one pixel padding in Workspace and Toolbar.

[GB.IMAGE]
* NEW: Color.Mix has been replaced by Color.Merge.

[GB.QT4]
* NEW: Remove useless Color methods and properties that are now defined in
  the gb.image component.

[GB.QT4.EXT]
* NEW: Editor has a new boolean property Border.


git-svn-id: svn://localhost/gambas/trunk@2227 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-08-08 23:01:59 +00:00
Benoît Minisini
0082ebc8db [GB.DBUS]
* BUG: Fix the "DBus class declared twice" error. The DBus class in the C 
  part has been renamed "_DBus" so that it does not conflict anymore with 
  the DBus class declared in the gambas part.


git-svn-id: svn://localhost/gambas/trunk@2223 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-08-07 18:14:26 +00:00
Benoît Minisini
80a20e2336 [EXAMPLES]
* NEW: Update the Console example with new buttons to send ^Z, ^D and ^C to 
  the child shell.

[INTERPRETER]
* BUG: Remove some warning messages.

[GB.QT4]
* BUG: Setting TextArea.Pos to TextArea.Length works correctly now.


git-svn-id: svn://localhost/gambas/trunk@2220 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-08-06 00:34:49 +00:00
Benoît Minisini
9beb0bb27f [INTERPRETER]
* BUG: Fix the initialization of the pseudo-terminal created for processes 
  run with SHELL/EXEC ... FOR INPUT/OUTPUT, so that it works when the 
  standard input is not a terminal.


git-svn-id: svn://localhost/gambas/trunk@2219 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-08-06 00:22:28 +00:00
Benoît Minisini
caa1b5aac6 [INTERPRETER]
* NEW: The _unknown() method is now correctly called when reading *and* 
  writing unknown properties. _unknown() is called with no arguments when
  reading the property, and with one argument (the new property value) when 
  writing it.
* BUG: Classes declared in the Gambas part of a component now should 
  correctly override classes declared in the C/C++ part.

[GB.DBUS]
* NEW: Hide native methods of the DBus class.
* NEW: The syntax for calling a method is:
  DBus[<Application>][<Object>,<Interface>].<Method>(<Arguments>)
  <Application> can be prefixed by "system://" to access the system bus.
* NEW: Properties are readable and writable with this syntax:
  DBus[<Application>][<Object>,<Interface>].<Property>
* NEW: DBusVariant is a new class that allows to send a Variant to a DBus 
  method by specifying is DBus type. Otherwise, when using Variant 
  directly, the associated DBus type is guessed automatically, which may 
  not be accurate is some cases.


git-svn-id: svn://localhost/gambas/trunk@2218 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-08-05 16:14:08 +00:00
Benoît Minisini
def84989aa [CONFIGURATION]
* NEW: Start replacing INCLUDE directive by *_CFLAGS in Makefile.am files.

[GB.EVAL]
* BUG: Fix a warning.


git-svn-id: svn://localhost/gambas/trunk@2215 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-08-04 19:14:17 +00:00
Benoît Minisini
e862619957 [CONFIGURATION]
* NEW: Update libtool and configuration file to their last version.

[DEVELOPMENT ENVIRONMENT]
* BUG: The right translation columns in the translation dialog now keep 
  being visible after a language change.

[WEB SITE MAKER]
* NEW: Chinese translation made by Liang Wei.


git-svn-id: svn://localhost/gambas/trunk@2212 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-08-04 16:46:32 +00:00
Benoît Minisini
40e3ddcbbd [INTERPRETER]
* NEW: Finish libtool update.


git-svn-id: svn://localhost/gambas/trunk@2211 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-08-04 16:33:25 +00:00
Benoît Minisini
e53fbf2037 [INTERPRETER]
* BUG: Fix some warnings.
* NEW: Start upgrading libtool.


git-svn-id: svn://localhost/gambas/trunk@2210 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-08-04 13:01:45 +00:00
Benoît Minisini
0871af4660 [INTERPRETER]
* BUG: Fix compilation on 64 bits OS.


git-svn-id: svn://localhost/gambas/trunk@2209 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-08-03 17:54:51 +00:00
Benoît Minisini
dc8e806ae7 [DEVELOPMENT ENVIRONMENT]
* NEW: Arabic translation updated.

[INTERPRETER]
* NEW: A new method in the interpreter API to read a value in memory and 
  store it in a Gambas value slot.

[GB.DB.ODBC]
* BUG: Fix a warning.


git-svn-id: svn://localhost/gambas/trunk@2206 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-08-02 22:48:08 +00:00
Benoît Minisini
67dd575def [GB.DEBUG]
* BUG: The component compiles again.


git-svn-id: svn://localhost/gambas/trunk@2203 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-08-01 21:28:50 +00:00
Benoît Minisini
8dd19d4102 [INTERPRETER]
* BUG: Check the process stack each time a function is call, to avoid 
  segmentation faults on stack overflows. 

[GB.DEBUG]
* BUG: In the debugger, trim too large stack backtraces, so that the IDE 
  always receive it in one event.


git-svn-id: svn://localhost/gambas/trunk@2202 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-08-01 15:13:50 +00:00
Benoît Minisini
c7cb5c8f2e [INTERPRETER]
* BUG: A new function in the debugger interface to search for a class only 
  inside the running project.

[GB.DEBUG]
* BUG: Pending breakpoints now search for their class only inside the 
  running project.


git-svn-id: svn://localhost/gambas/trunk@2189 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-07-29 00:16:48 +00:00
Benoît Minisini
e8e807ee2b [CONFIGURATION]
* BUG: Fix the gb.qt4 configure.ac file so that it works with stupid 
  pkg-config configuration files.

[DEVELOPMENT ENVIRONMENT]
* NEW: An option to define the terminal emulator used by the IDE.
* NEW: Some unused icons were removed from the project.
* BUG: The project tree does not steal the focus anymore after a project 
  compilation.

[GB.NET.SMTP]
* BUG: Fix the UTF-8 encoding of mail subjects having a '?' character 
  inside.

[GB.QT4]
* BUG: Fix the global event filter so that setting Application.Tooltip to 
  False does not interfer with the global key event handler.


git-svn-id: svn://localhost/gambas/trunk@2174 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-07-26 12:38:20 +00:00
Benoît Minisini
12bef7b494 [CONFIGURATION]
* BUG: Ensure that the gb.info file is generated first.


git-svn-id: svn://localhost/gambas/trunk@2165 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-07-24 23:14:29 +00:00
Benoît Minisini
fa8ba3d4c1 [INTERPRETER]
* BUG: Raise a memory error when trying to allocate a too large 
  array.

[GB.GTK]
* BUG: Fix the management of cell spanning.

[GB.QT4]
* BUG: Fix the management of cell spanning.


git-svn-id: svn://localhost/gambas/trunk@2143 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-07-21 13:14:01 +00:00
Benoît Minisini
f901433cbd [CONFIGURATION]
* BUG: Controls of components written in Gambas are correctly installed 
  now.

[DEVELOPMENT ENVIRONMENT]
* NEW: Component project controls icons are now store in the "Project" 
  section, not in the "Data" section anymore. Consequently they are not 
  stored in the project executable.
* BUG: Fix the activation of menu entries in the project treeview popups.
* NEW: New layout for the translation dialog.
* NEW: Remove many control icons and put them with their component project.


git-svn-id: svn://localhost/gambas/trunk@2140 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-07-20 15:53:19 +00:00
Benoît Minisini
7df43ef0f2 [DEVELOPMENT ENVIRONMENT]
* NEW: The connection editor now uses the new DataSource Connection 
  property.
* NEW: A button to copy the field names of a table in the clipboard.
* NEW: Change the layout of the connection editor.
* NEW: Enhance the list property editor.
* NEW: Use the new logo made by Fabien Bodard.
* NEW: Support for editing properties whose type is "Table" and 
  "Connection".
* NEW: Scroll the form editor when using the rectangular selection.
* BUG: Fix the project information displayed in the open project dialog.

[INTERPRETER]
* BUG: Fix a stupid bug that made the interpreter crash when a class was
  allocated at a negative memory address.
* BUG: Fix the conversion of strings into numbers, especially when 
  converting Long values.

[GB.DB.FORM]
* NEW: Redesign the controls so that DataSource can be assigned a specific
  connection.
* NEW: DataSource.Connection is a new property that allows to assign a
  specific Connection object to a DataSource. If a DataSource has no 
  connection assigned, it will use the connection of its parent DataSource.
  By default, the current connection (DB.Current) is used.
* NEW: Remove the DataSource.CacheSize property. Is it really useful?

[GB.NET.SMTP]
* NEW: Send the "Date:" header with any mail.


git-svn-id: svn://localhost/gambas/trunk@2137 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-07-20 01:10:50 +00:00
Benoît Minisini
656364fe57 [ARCHIVER]
* NEW: Connection files are added to executables.

[GB.DB]
* NEW: A Gambas part has been added to the component to implement the 
  Connections class. This class is a static pseudo-collection that 
  automatically creates Connection objects for connection files located in
  the ".connection" project directory.


git-svn-id: svn://localhost/gambas/trunk@2132 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-07-18 15:50:51 +00:00
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
abe941d919 [CONFIGURATION]
* NEW: Search libraries in /opt/local in the /main/configure.ac file, so 
  that things work better on MacOSX.


git-svn-id: svn://localhost/gambas/trunk@2087 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-07-07 11:53:20 +00:00
Benoît Minisini
075fbab8fc [GB.DB]
* BUG: Correctly release field information when freeing a Result object.
* NEW: New unquoting function in the component API.

[GB.DB.SQLITE2]
* BUG: Prevent possible case mismatches when mapping SQLite datatypes.

[GB.DB.SQLITE3]
* BUG: Prevent possible case mismatches when mapping SQLite datatypes.
* BUG: Field default values are correctly returned now.


git-svn-id: svn://localhost/gambas/trunk@2084 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-07-07 09:17:48 +00:00
Benoît Minisini
ca0292fd58 [DEVELOPMENT ENVIRONMENT]
* NEW: Change the CTRL+W shortcut to F12.
* BUG: Double-clicking on a control in the form editor now correctly moves 
  inside the event handler in all cases.
* NEW: Start enhancing the file information dialog.
* BUG: The file information dialog returns the accurate number of modules, 
  classes, and forms again.

[INTERPRETER]
* NEW: Mac OS X is a FreeBSD.

[GB.QT.EXT]
* BUG: Fix the undo and redo commands in the Editor when some text has been
  colorized.

[GB.QT4.EXT]
* BUG: Fix the undo and redo commands in the Editor when some text has been 
  colorized.


git-svn-id: svn://localhost/gambas/trunk@2074 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-07-04 23:54:00 +00:00
Benoît Minisini
ec94c77c02 [COMPILER]
* BUG: Put the class translation files into the right directory.


git-svn-id: svn://localhost/gambas/trunk@2069 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-07-04 11:14:42 +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
ce6f28338a [DEVELOPMENT ENVIRONMENT]
* NEW: Help pages on GUI components are now redirected to the gb.qt ones.
* BUG: Fix drag & drop on project tree.

[COMPILER]
* NEW: Support projects whose source files are located in the ".src" 
  project sub-directory.

[GB.QT]
* BUG: Drag & drop has been fixed.
* BUG: Newly opened window should be correctly activated now.


git-svn-id: svn://localhost/gambas/trunk@2058 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-07-01 00:00:47 +00:00
Laurent Carlier
541492e00c [CONFIGURATION]
* BUG: Use GB_COMPONENT_SEARCH() to check libffi availability.



git-svn-id: svn://localhost/gambas/trunk@2056 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-06-28 22:19:42 +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
5f8e273edf [DEVELOPMENT ENVIRONMENT]
* BUG: The button that switches between form and class editor is not shown 
  anymore when a module or a class is edited.

[GB.GTK]
* BUG: Font management was redesigned. It does not leak memory anymore,
  and now behaves like in gb.qt.
* BUG: Tristate CheckBox controls now work as expected.
* BUG: Destroy pending deleted controls before entering the event loop, to
  avoid some memory leaks if the event loop is immediately aborted.
* BUG: Detach destroyed controls from their event listener, as in gb.qt.
* BUG: Now menu shortcuts are active even if the menu bar is hidden. But 
  the menu must be visible. To create an hidden active top-level menu, just 
  set its Text property to NULL, but keep it visible.
* NEW: Top-level menus with a void Text property are not shown anymore.
* BUG: Showing and hiding top-level menu now work correctly.

[GB.QT]
* BUG: Font properties are correctly inherited between containers and 
  children controls.
* BUG: Showing a tray icon does not eat focus events anymore.
* NEW: Top-level menus with a void Text property are not shown anymore.

[GB.QT4]
* BUG: Font properties are correctly inherited between containers and 
  children controls.
* BUG: Shortcut management was fixed.
* BUG: Now menu shortcuts are active even if the menu bar is hidden. But 
  the menu must be visible. To create an hidden active top-level menu, just 
  set its Text property to NULL, but keep it visible.
* NEW: Top-level menus with a void Text property are not shown anymore.
* BUG: Showing and hiding top-level menu now work correctly.


git-svn-id: svn://localhost/gambas/trunk@2034 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-06-22 11:16:34 +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
dbaccd820f [COMPILER]
* BUG: Unexpected END SUB or END FUNCTION are really detected now.

[GB.QT4]
* BUG: Color management has been fixed.
* BUG: Many fixes in the following classes: Panel, Menu, Picture, Window, TabStrip, 


git-svn-id: svn://localhost/gambas/trunk@2015 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-06-11 21:33:17 +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
2cbf018690 [GB.GTK]
* BUG: Fix the file descriptor watch manager again.

[GB.NET]
* BUG: If writing on Socket fails, do not raise the Write event.


git-svn-id: svn://localhost/gambas/trunk@2005 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-06-07 00:01:59 +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
db58eb7fa1 [DEVELOPMENT ENVIRONMENT]
* NEW: A message is displayed now when the search list is void.
* NEW: Some debugger icons were changed.
* NEW: Support for debugger frame change. When you click twice in the stack
  backtrace, now the debugger information is refreshed according to the
  current stack frame.

[WIKI CGI SCRIPT]
* NEW: Extern links are now always opened in a new window.

[WEB SITE MAKER]
* BUG: Some fixes in link generation
* NEW: Some new translated strings.

[GB.DEBUG]
* NEW: A command to change the current frame.


git-svn-id: svn://localhost/gambas/trunk@1979 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-05-25 21:51:48 +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
8acc835d1b [GB.DEBUG]
* NEW: Try to open the debugger fifo until 500 ms elapse.



git-svn-id: svn://localhost/gambas/trunk@1975 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-05-22 19:20:33 +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
2020521d4b [WEB SITE MAKER]
* NEW: News are translatable.
* NEW: More french translations.

[GB.GTK]
* BUG: Do not use gtk_adjustment_get_step_increment() if the GTK+ version 
  is not at least 2.14.


git-svn-id: svn://localhost/gambas/trunk@1965 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-05-19 15:59:29 +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
283a5c3e78 [DEVELOPMENT ENVIRONMENT]
* NEW: Support for Hindi language.

[INTERPRETER]
* BUG: The Atnh() function has been fixed.


git-svn-id: svn://localhost/gambas/trunk@1931 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-04-22 08:50:40 +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
e0939bcf57 [DEVELOPMENT ENVIRONMENT]
* BUG: Replace some specific icons by stock icons.
* NEW: Support for the new alternate background style in themes.
* NEW: Support for server web pages syntax highlighting.

[GB.EVAL]
* NEW: Highlight.Alternate is a new constant for the new alternate 
  background style.
* BUG: Highlight.Analyze() should now deal correctly with UTF-8 patterns.
* NEW: Highlight.Analyze() now takes a new optional argument. If this 
  argument is set to TRUE, then the Gambas code line will be rewritten.
* NEW: Highlight.TextAfter is a new property that returns Highlight.Text 
  after is has been rewritten.

[GB.QT.EXT]
* NEW: Highlight.Alternate is a new constant for the new alternate 
  background style.
* NEW: Highlight.AlternateState tells the custom highlighter if the 
  alternate background must be used by the next Highlight.Add() call.
* NEW: Support for the new alternate background style in Editor.


git-svn-id: svn://localhost/gambas/trunk@1921 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-04-04 23:52:47 +00:00
Benoît Minisini
238da73bb3 [DEVELOPMENT ENVIRONMENT]
* NEW: Add support for extra package dependencies.
* BUG: The right column of the property sheet is not too wide anymore.

[GB.GTK]
* BUG: Fix the ComboBox.Add() method slowness.

[GB.QT]
* BUG: Borderless modal windows do not show any border anymore with 
  Metacity.

[GB.XML.RPC]
* BUG: Event management was fixed, thanks to Ron.
* BUG: RcpArray.Copy() now returns an RpcArray object.


git-svn-id: svn://localhost/gambas/trunk@1918 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-04-03 22:29:51 +00:00
Benoît Minisini
50381b667a [GB.GTK]
* BUG: Dialog.SaveFile() now correctly initializes the file name in the 
  file chooser dialog.
* BUG: Disabled controls correctly honor the Background property.
* BUG: The Foreground and Background properties of TabStrip, CheckBox, 
  RadioButton and other Button controls work as expected.
* BUG: Setting the Font property does not create a memory leak anymore.
* BUG: The menu bar of a reparented window does not disappear anymore.


git-svn-id: svn://localhost/gambas/trunk@1904 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-03-15 11:32:01 +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
879fb39a4d [CONFIGURATION]
* NEW: Disable preloading by default.

[WIKI CGI SCRIPT]
* NEW: Enable turkish language.


git-svn-id: svn://localhost/gambas/trunk@1889 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-03-01 16:38:44 +00:00
Benoît Minisini
c7858ce56d [DEVELOPMENT ENVIRONMENT]
* NEW: Support for the Malayalam language.

[GB.DB]
* BUG: Fix a bug that sometimes truncates the query sent to the database 
  driver.

[GB.QT]
* NEW: Control.Tracking is a new property that enables MouseMove events
  in a control even when no mouse button is pressed.
* NEW: The DrawingArea.Tracking property has been replaced by the new
  property above.


git-svn-id: svn://localhost/gambas/trunk@1888 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-03-01 15:12:51 +00:00
Benoît Minisini
3362aafbf1 [DEVELOPMENT ENVIRONMENT]
* BUG: Make the property project dialog larger for large fonts.

[INFORMER]
* BUG: Correctly initialize an uninitialized variable

[GB.DB.MYSQL]
* BUG: Remove the gb.db.mysql.component file, as gb.db.mysql is not a
  component anymore.

[GB.NET]
* BUG: ServerSocket.Accept() does not create a Socket that takes 100% CPU 
  anymore.


git-svn-id: svn://localhost/gambas/trunk@1885 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-02-21 23:03:36 +00:00
Benoît Minisini
26aa5729d5 [INFORMER]
* NEW: Enable temporarily verbose mode for debugging purpose.


git-svn-id: svn://localhost/gambas/trunk@1884 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-02-21 00:00:35 +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
114d4b3211 [GB.IMAGE]
* NEW: Image.Colorize() is a new method for colorizing an image.


git-svn-id: svn://localhost/gambas/trunk@1869 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-02-13 00:12: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
bea17ca87c [GB.CAIRO]
* NEW: CairoExtents.Merge is a new method to merge extents.
* NEW: Cairo.ColorPattern is like Cairo.SolidPattern, but takes an integer 
  Gambas color instead of Cairo color components.
* BUG: All extents properties are correctly declared as returning a 
  CairoExtents object.

[GB.IMAGE]
* NEW: Image.Copy() is now part of gb.image.


git-svn-id: svn://localhost/gambas/trunk@1850 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-02-02 23:46:01 +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
741cd010cd [COMPILER]
* NEW: Add the '^=' assignment operator.


git-svn-id: svn://localhost/gambas/trunk@1837 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-01-30 01:28:35 +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
a652b6a92c [GB.DESKTOP]
* BUG: Remove useless dependencies, and fix the *.component file.


git-svn-id: svn://localhost/gambas/trunk@1830 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-01-28 23:04:59 +00:00
Benoît Minisini
aacd7c0a69 [GB.IMAGE]
* BUG: Forgot to add two source files.


git-svn-id: svn://localhost/gambas/trunk@1827 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-01-28 17:13:14 +00:00
Benoît Minisini
ff36174d95 [DEVELOPMENT ENVIRONMENT]
* BUG: A badly named environmental variable does not freeze the IDE anymore.

[GB.DEBUG]
* NEW: Do not block anymore when opening the debug fifo for writing. Try a
  few times during 0.1 second.


git-svn-id: svn://localhost/gambas/trunk@1826 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-01-28 00:22:26 +00:00
Benoît Minisini
e2d119d449 [GB.DB.MYSQL]
* BUG: 'Quote' can not be used as an identifier anymore. Fix that.


git-svn-id: svn://localhost/gambas/trunk@1824 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-01-27 17:07:47 +00:00
Benoît Minisini
e22c1b2059 [GB.IMAGE]
* BUG: Remove debugging messages.


git-svn-id: svn://localhost/gambas/trunk@1823 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-01-27 14:25:59 +00:00
Benoît Minisini
272b14759e [INFORMER]
* BUG: Do not print included component information files.

[GB.CAIRO]
* NEW: The CairoMatrix class was completed.
* NEW: The CairoPattern class got its Matrix and Filter properties.

[GB.IMAGE]
* BUG: When a component takes ownership of an image, the image format is 
  correctly set now.
* NEW: Most of the Color class was moved to this component.

[GB.IMAGE.IO]
* BUG: Use the right RGBA image format when loading images.

[GB.V4L]
* BUG: Fix the *.component file.


git-svn-id: svn://localhost/gambas/trunk@1822 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-01-27 13:39:38 +00:00
Benoît Minisini
b458334f0b [GB.CAIRO]
* NEW: Transformation and matrix functions were implemented.

[GB.IMAGE]
* NEW: The format conversion function comes back in the gb.image API.

[GB.IMAGE.IO]
* NEW: New component for loading and saving images.


git-svn-id: svn://localhost/gambas/trunk@1820 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-01-27 01:24:19 +00:00
Benoît Minisini
f22644997e [GB.GTK]
* BUG: Define the default image format when the gb.gtk component is used.
* BUG: Image.Load() does not crash anymore.

[GB.IMAGE]
* BUG: Sometimes the conversion between formats was not done. That was 
  fixed.


git-svn-id: svn://localhost/gambas/trunk@1819 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-01-26 17:42:53 +00:00
Benoît Minisini
4f131896d8 [CONFIGURATION]
* NEW: Support for gb.cairo.

[GB.CAIRO]
* NEW: This component allows to use the Cairo library to draw on images.
  Many functions are not implemented yet. Text and Font functions for 
  example.


git-svn-id: svn://localhost/gambas/trunk@1817 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-01-26 12:25:35 +00:00
Benoît Minisini
7d00d8e105 [GB.DRAW]
* BUG: Draw.Zoom() is back, and use the gb.image component interface.

[GB.IMAGE]
* NEW: A new function in the interface for retrieving the color of a pixel.


git-svn-id: svn://localhost/gambas/trunk@1815 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-01-25 22:23:04 +00:00
Benoît Minisini
3a5c1d1308 [GB.IMAGE]
* BUG: Fix image data allocation in the image conversion routine.


git-svn-id: svn://localhost/gambas/trunk@1814 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-01-25 13:17:02 +00:00
Oddjobz
f1ee924a55 [GB.IMAGE]
* BUG: Comment out line to enable compilation - work still to do on "Convert" !
* BUG: Fix memory allocation bug that was causing all the crashes ..
  Turns out the conversion code was calculating the size of width * height * sizeof(uint)
  and IMAGE_size was using width * height * (3 or 4 depending on image format)
  which caused a lack of memory in the image conversion routines ...



git-svn-id: svn://localhost/gambas/trunk@1813 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-01-23 11:54:26 +00:00
Benoît Minisini
9a524f2abc [GB.IMAGE]
* BUG: Fix image conversion process. But now Draw.Zoom only works with 
  gb.qt at the moment.


git-svn-id: svn://localhost/gambas/trunk@1812 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-01-23 08:22:03 +00:00
Benoît Minisini
d4b3628df3 [GB.IMAGE]
* NEW: Simplify the job of components that can take ownership of images.


git-svn-id: svn://localhost/gambas/trunk@1811 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-01-22 00:47:14 +00:00
Benoît Minisini
dd5be3f66b [GB.IMAGE]
* BUG: The third argument of Image constructor is now ignored if it is -1, 
  so that the old syntax does not create an image with premultiplied alpha.


git-svn-id: svn://localhost/gambas/trunk@1809 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-01-21 19:57:53 +00:00
Benoît Minisini
abf033e85a [DEVELOPMENT ENVIRONMENT]
* BUG: Fix the welcome dialog as the Image constructor has changed.

[WIKI CGI SCRIPT]
* NEW: New look for the path and language header.

[INFORMER]
* NEW: The components are analyzed in alphabetical order now.
* NEW: A component can include more than one other component information 
  file.

[GB.IMAGE]
* BUG: Fix two memory leaks.
* NEW: A component can define a default format for new images. This avoid
  unnecessary format conversions. The "default default format" is RGBA.
* BUG: RGBx formats are correctly supported by image methods.

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


git-svn-id: svn://localhost/gambas/trunk@1806 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-01-21 01:25:13 +00:00
Benoît Minisini
6700b4a603 [GB.IMAGE]
* NEW: Put the Image.MakeTransparent() method in gb.image.
* NEW: Compiles the image.c source file with full optimization.


git-svn-id: svn://localhost/gambas/trunk@1804 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-01-17 01:11:36 +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
fa7f7029c4 [GB.IMAGE]
* NEW: The new gb.image component is now located in the main sub-package. 
  Here are the first files, but they do nothing at the moment.


git-svn-id: svn://localhost/gambas/trunk@1798 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-01-13 00:45:06 +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
2e82025ce5 [DEVELOPMENT ENVIRONMENT]
* BUG: Fix option dialog now that [...] can return specialized arrays.
* BUG: Fix the list of control properties that must not be applied in the 
  form editor.
* NEW: Automatically converts Window.Toolbar constant to Window.Utility.
* NEW: Setting the form Type property to Utility has a visible effect now.
* BUG: The find balloon message is always displayed in the accurate field 
  now.

[GB.GTK]
* BUG: Fix the initialization of editable combo-box when its List property 
  is set.
* NEW: The Window.Toolbar constant were replaced by Window.Utility.

[GB.FORM]
* NEW: Draw SidePanel little arrows in a more clever way.
* BUG: Font grades are selectable again in the FontChooser control.

[GB.FORM.MDI]
* NEW: Toolbars have a configuration dialog now. This configuration dialog 
  is displayed when you click on the toolbar handle. Beware, this is not 
  finished!
* NEW: Toolbar.Key is a new text property for identifying the toolbar. All 
  toolbars having the same key will share the same configuration.
* NEW: Toolbar.Text is a new text property that gives a visual name to the 
  toolbar.

[GB.QT]
* BUG: Setting Control.Next or Control.Previous now forces the parent 
  container to re-arrange itself.
* NEW: The Window.Toolbar constant were replaced by Window.Utility.
* NEW: ToolButton.AutoResize is a new property that makes the toolbutton 
  automatically expand horizontally to fit its contents.
* NEW: Button and ToggleButton got the same AutoResize property.
* NEW: Remove the DrawingArea.BackColor property.

[GB.QT4]
* BUG: Setting Control.Next or Control.Previous now forces the parent 
  container to re-arrange itself.
* NEW: Remove the DrawingArea.BackColor property.
* NEW: The Window.Toolbar constant were replaced by Window.Utility.


git-svn-id: svn://localhost/gambas/trunk@1789 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-01-06 00:01:26 +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
23762036df [CONFIGURATION]
* NEW: Activate the compilation of the gb.qt4 directory.

[DEVELOPMENT ENVIRONMENT]
* BUG: Actions that are not associated with a Menu will not be shown 
  anymore in the Action configuration dialog.

[GB.QT]
* NEW: Spacing is now a container Boolean property. If it is set, the 
  container children are separated by Desktop.Scale pixels.
* NEW: A new container Boolean property, Margin. Setting this property is
  the same as setting Padding to Desktop.Scale. If both Margin and Padding
  are set, their effect add up.
  
[GB.GTK]
* NEW: Spacing is now a container Boolean property. If it is set, the 
  container children are separated by Desktop.Scale pixels.
* NEW: A new container Boolean property, Margin. Setting this property is
  the same as setting Padding to Desktop.Scale. If both Margin and Padding
  are set, their effect add up.
  
[GB.QT4]
* NEW: Spacing is now a container Boolean property. If it is set, the 
  container children are separated by Desktop.Scale pixels.
* NEW: A new container Boolean property, Margin. Setting this property is
  the same as setting Padding to Desktop.Scale. If both Margin and Padding
  are set, their effect add up.


git-svn-id: svn://localhost/gambas/trunk@1777 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-01-04 01:37:20 +00:00
Benoît Minisini
9de02c9cac [INFORMER]
* BUG: The informer algorithm was redesigned. Now a sub-process is 
  launched for each component that should be analyzed, and LD_PRELOAD is 
  used to load the component shared library before the process is launched.
  Otherwise, some component may crash.

[GB.DRAW]
* BUG: Correctly initialize color properties of the Draw class at 
  Draw.Begin().
* NEW: Draw.FillRect() is a new method to draw a filled rectangle with the 
  specified color.
* NEW: Draw.Clear() is a new method that clears the drawing device with its
  background color.

[GB.FORM.MDI]
* NEW: Do not use BackColor and ForeColor properties anymore.

[GB.GTK]
* NEW: Control.Backcolor and Control.Forecolor properties were removed.
* BUG: Desktop.Resolution now uses the accurate GTK+ API.
* BUG: Setting the ListBox.List to NULL property does not lock the ListBox 
  control anymore. 
* BUG: Fix the Font object management. Using Font properties should not 
  crash anymore.
* BUG: Image.Save() and Picture.Save() now understand the "~" shortcut in 
  path names.

[GB.QT]
* NEW: Control.Backcolor and Control.Forecolor properties were removed.
* NEW: Do not check if we should quit too often.
* NEW: Allow windows to be closed during a WAIT instruction as in other 
  components. I do not know why it was forbidden before.
* NEW: Prevent a crash in arrangement routines if a child widget is not 
  associated with a Gambas control anymore.

[GB.QT4]
* NEW: Control.Backcolor and Control.Forecolor properties were removed.
* NEW: The source code is now up to date with gb.qt. But many things do not 
  work as expected!

[GB.QT4.EXT]
* NEW: The source code is now up to date with gb.qt.ext. But many things do 
  not work as expected!


git-svn-id: svn://localhost/gambas/trunk@1776 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-01-03 22:24:02 +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
bfde7da5de [DEVELOPMENT ENVIRONMENT]
* NEW: A menu entry and a button for showing/hiding the menu bar.

[GB.EVAL]
* BUG: Highlight.Purge() now correctly handle non-ASCII characters inside 
  strings and comments.

[GB.QT]
* NEW: Window.Menus.Hide, Window.Menus.Show and Window.Menus.Visible are 
  two methods and one property for showing and hiding the menu bar of the 
  window.


git-svn-id: svn://localhost/gambas/trunk@1706 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-11-20 22:09:51 +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
211da914b9 [INTERPRETER]
* NEW: EXEC / SHELL used without the AS keyword create a process object 
  that does not raise events.

[COMPILER]
* BUG: Allow the AS keyword in SHELL / EXEC even if the WAIT keyword is 
  used.
  

git-svn-id: svn://localhost/gambas/trunk@1658 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-10-29 18:35:15 +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
d60e728617 [COMPILER]
* BUG: Disable debugging messages.


git-svn-id: svn://localhost/gambas/trunk@1562 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-09-16 12:48:21 +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
44e0814952 [DEVELOPMENT ENVIRONMENT]
* NEW: Nicer window buttons in the form editor.
* BUG: Console popup menu must start disable, otherwise shortcuts conflict.
* NEW: Use the new template array class in the CControl class.

[COMPILER]
* BUG: Make a difference between project classes (they must be searched 
  by the interpreter inside the project symbol table first) and the classes
  exported by components (they are always searched in the global symbol 
  table).


git-svn-id: svn://localhost/gambas/trunk@1532 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-09-01 00:48:01 +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
dcea4334d7 [DEVELOPMENT ENVIRONMENT]
* NEW: The signature popup now underlines the argument under the cursor.
* NEW: A new option to minimize the IDE when the project is run.
* NEW: Replaced the '[Modified]' text in the title of a modified form or 
  class by a star.
* BUG: GridView, TableView, TextEdit and Editor are correctly refreshed in 
  the form editor when they are renamed.


git-svn-id: svn://localhost/gambas/trunk@1468 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-07-19 13:35:36 +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
0ff08d2231 [WIKI CGI SCRIPT]
* BUG: Fix the "<hr>" bug in example sections.
* BUG: Correctly display the main title before syntax sections.

[ARCHIVER]
* NEW: Ignore core dump files when making an executable.

[GB.GTK]
* BUG: Fix the XEMBED protocol support.

[GB.QT]
* BUG: Fix the XEMBED protocol support.
* BUG: Adding an item to a ComboBox with a bad index should not print any 
  warning message anymore.


git-svn-id: svn://localhost/gambas/trunk@1391 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-05-21 09:41:25 +00:00
Benoît Minisini
2a73b4b259 [COMPILER]
* BUG: An uninitialized structure field made the compiler badly mark class 
  reference as exported.


git-svn-id: svn://localhost/gambas/trunk@1376 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-05-13 22:35:48 +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
0e60b5f87f [COMPILER]
* BUG: Forgot to add two files.


git-svn-id: svn://localhost/gambas/trunk@1371 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-05-12 18:24:28 +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
9ed30bf516 [INFORMER]
* NEW: The informer now can generate component information files for
  components that do not export any class in their C/C++ part.

[GB.DB.MYSQL]
* NEW: Import the MySQL specific component made by David Villalobos 
  Cambronero.

[GB.FORM.DIALOG]
* BUG: Standard dialogs now correctly react to double clicks.

[GB.PDF]
* BUG: The component now can really be compiled with poppler 0.8.


git-svn-id: svn://localhost/gambas/trunk@1357 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-05-03 20:54:10 +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
1bb3f3a509 [CONFIGURATION]
* BUG: Libraries and include files are automatically searched inside 
  64 bits specific directories.

[DEVELOPMENT ENVIRONMENT]
* NEW: Automatically convert old Border property to the new Border and
  Resizable properties.
* BUG: The "Theme" tab of the option dialog is correctly initialized the 
  first time Gambas is run.
* BUG: Going to a non-existing line number in the editor does not crash the
  IDE anymore.
* NEW: The IDE forms now use the new Border, Resizable and Type properties
  of the Window class.

[COMPILER]
* BUG: Do not print error messages on unexpected strings with newline 
  inside. Just claim that an unexpected string has been encountered.

[GB.EVAL]
* BUG: Do not print error messages on unexpected strings with newline 
  inside. Just claim that an unexpected string has been encountered.

[GB.GTK]
* NEW: The old Border property of the Window class has been replaced by a 
  two boolean properties: Border and Resizable.
* NEW: Window.Type is a new property to set the window manager type of a 
  window: Normal, ToolBar, Splash...
* NEW: The Window.ToolBox property has been removed.
* NEW: A newly opened non-modal window stays automatically on top of the
  application main window.

[GB.QT]
* NEW: The old Border property of the Window class has been replaced by a 
  two boolean properties: Border and Resizable.
* NEW: Window.Type is a new property to set the window manager type of a 
  window: Normal, ToolBar, Splash...
* NEW: The Window.ToolBox property has been removed.
* NEW: A newly opened non-modal window stays automatically on top of the
  application main window.


git-svn-id: svn://localhost/gambas/trunk@1321 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-04-18 23:43:38 +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
f275928af5 [CONFIGURATION]
* NEW: Makes better configuration warning messages when detecting libintl 
  and libiconv libraries.

[DEVELOPMENT ENVIRONMENT]
* NEW: The About dialog box was redesigned. The Hall Of Fame is now 
  displayed with a cool animation.
* NEW: The entire project was adapted to the new way of calculating
  Desktop.Scale.
* NEW: When loading a Gambas 2 form, the form editor tries to adapt to the
  new way of calculating Desktop.Scale automatically.

[COMPILER]
* BUG: Adds many error messages when a compiler limit is reached: too many 
  static symbols in a same class, too many dynamic symbols, too many 
  functions, and so on.

[GB.GTK]
* NEW: Desktop.Scale is now half the font ascent, not half the font height.
* NEW: Color.Medium() method was replaced by Color.Mix(), that takes a new
  optional argument indicating the relative weight of the second color.
  
[GB.QT]
* NEW: Desktop.Scale is now half the font ascent, not half the font height.
* NEW: Color.Medium() method was replaced by Color.Mix(), that takes a new
  optional argument indicating the relative weight of the second color.

[GB.QT.EXT]
* BUG: Editor now correctly highlight its frame according to the focus 
  change on styles that have use of that.


git-svn-id: svn://localhost/gambas/trunk@1304 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-04-10 12:06:14 +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
252692f140 [INFORMER]
* NEW: Do not abort if a component information file cannot be written.


git-svn-id: svn://localhost/gambas/trunk@1259 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-03-26 01:31:20 +00:00
Benoît Minisini
f9aee465a3 [CONFIGURATION]
* BUG: config.h.in files were removed from repository.

[DEVELOPMENT ENVIRONMENT]
* BUG: The initial stack backtrace list width is correct now.


git-svn-id: svn://localhost/gambas/trunk@1233 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-03-23 01:07:33 +00:00
Benoît Minisini
46a573b710 [INTERPRETER]
* BUG: Fix debugging memory management code.


git-svn-id: svn://localhost/gambas/trunk@1231 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-03-23 01:02:27 +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
d75dc33c9a [COMPILER]
* NEW: Be more verbose if a component list file is not found.


git-svn-id: svn://localhost/gambas/trunk@1223 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-03-21 03:07:04 +00:00
Benoît Minisini
652824dd35 [INTERPRETER]
* BUG: Automatically disable preloading on systems that do not support it.


git-svn-id: svn://localhost/gambas/trunk@1221 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-03-21 02:43:16 +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
02aa33396f [INTERPRETER]
* BUG: Creates a replacement implementation of cfmakeraw().


git-svn-id: svn://localhost/gambas/trunk@1218 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-03-21 01:36:11 +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
7759900148 [INTERPRETER]
* BUG: Defines sighandler_t when it is not defined by the system includes.


git-svn-id: svn://localhost/gambas/trunk@1212 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-03-21 00:35:39 +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
2752a989ed [COMPILER]
* BUG: Removed the ability to compile property access without having to use
  the ME keyword. This is too disturbing.

[GB.FORM]
* NEW: Uses the Draw.Style API for drawing SidePanel arrows.

[GB.FORM.MDI]
* NEW: Uses the Draw.Style API for drawing Toolbar handles.

[GB.QT]
* BUG: The style drawing methods really work.


git-svn-id: svn://localhost/gambas/trunk@1192 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-03-18 12:47:12 +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
9d6302d702 [INFORMER]
* BUG: Fixed the informer that was creating bad *.info files for native 
  components.

[GB.QT.EXT]
* NEW: TextEdit text properties were splitted in normal and rich text. Now
  you have TextEdit.Text that returns the text without the markups, and
  TextEdit.RichText that returns the text with the markups. 
  TextEdit.Selection has the two same properties for the selected text.


git-svn-id: svn://localhost/gambas/trunk@1012 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-01-18 21:37:35 +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
Laurent Carlier
16fb7c8eb2 Revert changes in libltdl to avoid problems on future updates. (Back to revision 893)
git-svn-id: svn://localhost/gambas/trunk@916 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-01-06 15:44:14 +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
89e1b5f9e3 Disable -ldl flag for OpenBSD
git-svn-id: svn://localhost/gambas/trunk@908 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-01-03 15:34:23 +00:00
Benoît Minisini
7506dd75d6 Chanlog update for 2.0
git-svn-id: svn://localhost/gambas/trunk@904 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-01-02 00:32:00 +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
Laurent Carlier
72d82296ae Add support for OpenBSD in acinclude.m4
git-svn-id: svn://localhost/gambas/trunk@900 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2007-12-31 16:01:06 +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