Commit graph

184 commits

Author SHA1 Message Date
Benoît Minisini
eb4ed0212c [INTERPRETER]
* BUG: Array.Clear() now does not crash anymore on multi-dimensional 
  arrays. It just voids the array contents. Array.Clear() behaviour on 
  single dimensional arrays did not change: it removes all elements from
  the array.

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


git-svn-id: svn://localhost/gambas/trunk@1892 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-03-02 11:36:42 +00:00
Benoît Minisini
e1712973c2 [DEVELOPMENT ENVIRONMENT]
* BUG: Fix the arrangement of the welcome dialog and the project property 
  component list.
* BUG: Undo now works on procedure declaration automatically inserted.

[INTERPRETER]
* BUG: Object.Lock(), Object.Unlock() and Object.IsLocked() now work as
  expected on Observer objects.

[GB.QT]
* BUG: Label and TextLabel autoresize routine has been fixed.
* BUG: ScrollView now arrange its contents again when one of its scrollbars 
  is shown or hidden.
* BUG: Minimum size of window dialogs works again.
* BUG: Top-level windows now arrange its contents on resize events in all
  cases as expected.


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

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


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

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

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

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

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


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

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

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

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

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

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

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

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


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


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


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


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


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

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


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

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

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

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

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


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

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

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


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


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


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

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


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


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


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

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


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

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

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

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


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

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

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

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

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

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

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

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


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


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

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

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

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

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


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


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


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


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


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

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

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

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

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


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

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

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

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


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


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

[INTERPRETER]
* NEW: The Quote and UnQuote class were removed, and replaced by three new 
  functions: Quote$(), Shell$() and Unquote$().
* NEW: Html$() is a new function that does HTML quoting.

[GB.QT]
* NEW: The space between a gridview cell picture and its text is now 
  defined by the padding property.

[GB.WEB]
* NEW: The HTML class has been removed. Use the new Html$() subroutine 
  instead.

git-svn-id: svn://localhost/gambas/trunk@1763 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-01-02 00:05:38 +00:00
Benoît Minisini
57491bc71c [INTERPRETER]
* BUG: If loading a class has failed, do not try to load it twice. Raise 
  an error instead.


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

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

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

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

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

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

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


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

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

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

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

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

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

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


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

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

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


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

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

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

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

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

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

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

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

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

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

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


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


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


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

[INTERPRETER]
* BUG: Fix currency formats.

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

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


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


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


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

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

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

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


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


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


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

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

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


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


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


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


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


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


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

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

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



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

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

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


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

[GB.QTE]
* BUG: Fix compilation.


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

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


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

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

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

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


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

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


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

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


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

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


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

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

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

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

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

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

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

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

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

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


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

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

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


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


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

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

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


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

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

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

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


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

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

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

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

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


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

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

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

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

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

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


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

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

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

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

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

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

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

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

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


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

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

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


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

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

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

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

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

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

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


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

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

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

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

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

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

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


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

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

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

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


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

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

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


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

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

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

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

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

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


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

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

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

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


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

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

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

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

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


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

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

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

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

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

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


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

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

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

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

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

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

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

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


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

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

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

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

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

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

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


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


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

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


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

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

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

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

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

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

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


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


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

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

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

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

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


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


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

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

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

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

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

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

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

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

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

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


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

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

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

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

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

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

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

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


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

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

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

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


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

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

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

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

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

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


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

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

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


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

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

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

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

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


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

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

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

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


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

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

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

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


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


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


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


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

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


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

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

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


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


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


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


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


git-svn-id: svn://localhost/gambas/trunk@1214 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-03-21 01:04:18 +00:00