Commit graph

860 commits

Author SHA1 Message Date
Benoît Minisini
092b3abfa3 [COMPILER]
* NEW: Raise an error now when using TRY with GOTO, BREAK, CONTINUE or 
  STOP.


git-svn-id: svn://localhost/gambas/trunk@4523 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-03-02 22:05:55 +00:00
Benoît Minisini
518868e61a [DEVELOPMENT ENVIRONMENT]
* BUG: Try to fix the spurious error that is raised sometimes when clicking
  on a control in the form editor.

[GB.FORM]
* NEW: GridView.Columns.Width property has been implemented.


git-svn-id: svn://localhost/gambas/trunk@4519 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-03-01 11:42:28 +00:00
Benoît Minisini
f841a413e7 [INTERPRETER]
* BUG: Fix structure field padding.


git-svn-id: svn://localhost/gambas/trunk@4517 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-02-29 13:43:18 +00:00
Benoît Minisini
dd8f6fa227 [INTERPRETER]
* BUG: Adding years with DateAdd() to 29 Feb now switch to 28 Feb not to 
  create invalid dates if the result is not in a leap year.


git-svn-id: svn://localhost/gambas/trunk@4515 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-02-28 23:39:29 +00:00
Benoît Minisini
b85b4dfc7b [INTERPRETER]
* BUG: Really fix CATCH / FINALLY management.


git-svn-id: svn://localhost/gambas/trunk@4513 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-02-27 22:15:10 +00:00
Benoît Minisini
61d1e832bb [INTERPRETER]
* BUG: Correctly release the stack when dealing with a CATCH / FINALLY 
  instruction.


git-svn-id: svn://localhost/gambas/trunk@4512 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-02-27 19:03:57 +00:00
Benoît Minisini
09f700e22b [INTERPRETER]
* BUG: LINE INPUT does not try to incorrectly release its stream argument
  anymore when there is no stream argument.
* OPT: A little optimization in Space$(), Upper$() and Lower$().
* OPT: EXEC / SHELL ... TO does not return the process output through a 
  temporary string that will be freed later. If the string is big, then
  the memory is retained longer than necessary.


git-svn-id: svn://localhost/gambas/trunk@4509 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-02-26 23:07:14 +00:00
Benoît Minisini
0fcd5bbd44 [GB.DB.FORM]
* BUG: Fix a crash in DataView when it has no current row.


git-svn-id: svn://localhost/gambas/trunk@4508 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-02-26 18:31:54 +00:00
Benoît Minisini
fad8dc7581 [INTERPRETER]
* NEW: 't' and 'tt' are two new date formatting patterns that display the
  timezone.


git-svn-id: svn://localhost/gambas/trunk@4507 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-02-25 15:16:10 +00:00
Benoît Minisini
e9f7c91cd5 [INTERPRETER]
* BUG: Destructors now can safely raise errors. If these errors are 
  ignored, the object is released anyway.


git-svn-id: svn://localhost/gambas/trunk@4506 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-02-25 03:16:08 +00:00
Benoît Minisini
0309f98b60 [DEVELOPMENT ENVIRONMENT]
* NEW: Take property synonymous into account.
* BUG: Pasting text as comments correctly converts tabulations into spaces.

[INTERPRETER]
* NEW: GB.RaiseBegin() and GB.RaiseEnd() are two new intepreter APIs that 
  allow to define a callback that will be called if an exception is raised
  during a call to GB.Raise().
* BUG: CATCH and FINALLY correctly restore the stack pointer. Without that,
  it is possible to use more stack than possible and to crash the 
  interpreter.

[COMPILER]
* NEW: A property now can has up to four different names. The syntax is:
  "Property Name [ , Synonymous1, ..., Synonymous3 ] As Datatype".

[GB.DB]
* BUG: Table.Type property now correctly handle null table types.

[GB.DB.FORM]
* NEW: DataBrowser.Grid is a new property to define the grid visibility.
* BUG: The DataBrowser and DataView controls have been fixed. There is only 
  one problem to fix that depends on a gb.gtk bug.

[GB.DRAW]
* BUG: Setting Draw.Font to NULL does not crash anymore, and raise an error
  instead.

[GB.FORM]
* NEW: The new GridView is finished and replaces the old one now.
* NEW: GridView.ShowCursor is a new property that displays a light cursor 
  around the current cell when set.

[GB.GTK]
* NEW: Font.Copy() is a new method to copy a font object.
* NEW: GTK+ GridView has been disabled.
* NEW: The Container Insert event has been renamed as NewChild.

[GB.QT4]
* NEW: Font.Copy() is a new method to copy a font object.
* NEW: Qt4 GridView has been disabled.
* NEW: The Container Insert event has been renamed as NewChild.
* BUG: If the DrawingArea Draw event handler raises an error, then the 
  interpreter should not crash anymore.

[GB.QT4.EXT]
* BUG: Fix an uninitialized field in Editor internal GLine class.


git-svn-id: svn://localhost/gambas/trunk@4503 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-02-25 01:35:55 +00:00
Benoît Minisini
da3a564c43 [GB.DRAW]
* BUG: Rect class can be used as a fonction correctly now.


git-svn-id: svn://localhost/gambas/trunk@4497 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-02-22 01:43:17 +00:00
Benoît Minisini
65e1200b53 [INTERPRETER]
* BUG: Constructors that receive too many arguments now correctly raise an 
  error.

[GB.DRAW]
* BUG: Accessing a temporarily closed drawing device now raises an error
  instead of crashing.


git-svn-id: svn://localhost/gambas/trunk@4496 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-02-22 01:42:40 +00:00
Benoît Minisini
a668911d1e [INTERPRETER]
* BUG: Convert the return value of a native function to a variant 
  automatically only if the function call is done by a "CALL" bytecode.
  Consequently the gb.signal component works again.



git-svn-id: svn://localhost/gambas/trunk@4489 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-02-19 16:13:38 +00:00
Benoît Minisini
8d3ba2dc15 [DEVELOPMENT ENVIRONMENT]
* BUG: Fix a possible crash when the form editor gets a spurious resize 
  event whereas undo management has been uninitialized.
* NEW: Libraries now can have requirements exactly like components. This is
  taken into account by the project property dialog.

[ARCHIVER]
* NEW: Put the '.component' file inside archives, so that the IDE can 
  extract libraries requirements from the executable.

[GB.FORM]
* NEW: Add two pixels to the height of the TabPanel tabbar.


git-svn-id: svn://localhost/gambas/trunk@4475 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-02-12 23:29:18 +00:00
Benoît Minisini
859a04ba8c [INTERPRETER]
* BUG: Fix enumeration abortion.


git-svn-id: svn://localhost/gambas/trunk@4474 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-02-12 21:37:46 +00:00
Benoît Minisini
7a3021909e [INTERPRETER]
* BUG: Fix translatable string constants inheritance.


git-svn-id: svn://localhost/gambas/trunk@4473 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-02-12 19:53:40 +00:00
Benoît Minisini
9a0e045cd1 [INTERPRETER]
* BUG: Object.Call() does not try to convert the return value if there is
  no return value!


git-svn-id: svn://localhost/gambas/trunk@4467 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-02-11 19:12:32 +00:00
Benoît Minisini
2fa263b81f [INTERPRETER]
* BUG: Object.Call() returns its value correctly now.


git-svn-id: svn://localhost/gambas/trunk@4466 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-02-11 19:09:03 +00:00
Benoît Minisini
9e30b521c4 [INTERPRETER]
* NEW: Formatting a date with gb.GeneralDate now always prints the time.
* BUG: The time part of a formatted date is never automatically removed 
  anymore.


git-svn-id: svn://localhost/gambas/trunk@4464 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-02-11 08:37:48 +00:00
Benoît Minisini
b075a2e026 [INTERPRETER]
* NEW: Loading a library does not load its dependencies automatically 
  anymore. Now they behave like components, and the IDE will have to
  compute the dependencies.


git-svn-id: svn://localhost/gambas/trunk@4463 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-02-08 20:26:24 +00:00
Benoît Minisini
7b191a1c5d [INTERPRETER]
* BUG: Fix date formatting.


git-svn-id: svn://localhost/gambas/trunk@4454 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-02-05 19:30:30 +00:00
Benoît Minisini
1a6d492738 [INTERPRETER]
* NEW: System.Shell is a new property that allows to define the shell used
  by the Shell instruction. By default, this is '/bin/sh'.


git-svn-id: svn://localhost/gambas/trunk@4453 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-02-05 16:18:57 +00:00
Benoît Minisini
9855c33d97 [INTERPRETER]
* BUG: Make date formatting more consistent when the date part or the time 
  part is null.


git-svn-id: svn://localhost/gambas/trunk@4449 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-02-05 08:08:27 +00:00
Benoît Minisini
2bbdb9a698 [INTERPRETER]
* BUG: Float and Single constants are now supported in native classes.


git-svn-id: svn://localhost/gambas/trunk@4444 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-02-01 01:51:29 +00:00
Benoît Minisini
f5472efbbe [DEVELOPMENT ENVIRONMENT]
* BUG: Fix the form editor grid horizontal position.

[INTERPRETER]
* NEW: IsNan() is a new function that returns if a floating point value is
  not a number.
* NEW: IsInf() is a new function that returns +1 if a floating point value 
  is +Inf, -1 if it is -Inf, and 0 if it is a normal number.
* NEW: Swap$() is a new function that swaps a string.
* NEW: The MkBool$(), MkShort$(), MkInt$()... functions come back!

[COMPILER]
* NEW: +Inf and -Inf are two new keywords for representing the 
  corresponding special floating values.


git-svn-id: svn://localhost/gambas/trunk@4435 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-01-31 02:33:01 +00:00
Benoît Minisini
0a9b6abe82 [DEVELOPMENT ENVIRONMENT]
* NEW: More support for WebPage.

[COMPILER]
* NEW: Start supporting WebPage.


git-svn-id: svn://localhost/gambas/trunk@4427 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-01-28 09:55:55 +00:00
Benoît Minisini
dcd6a9e147 [GB.IMAGE]
* BUG: Image.Colorize() now takes the color brightness into account.


git-svn-id: svn://localhost/gambas/trunk@4416 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-01-23 10:59:29 +00:00
Benoît Minisini
96c50f1600 [DEVELOPMENT ENVIRONMENT]
* BUG: Fix some crash in database manager when removing fields or index.
* BUG: Fix position history.
* NEW: Add a history popup menu.

[INTERPRETER]
* NEW: The Html$() function now converts unicode non-breaking space (code 
  160) in a " " entity.

[GB.GTK]
* BUG: Now raise an error when using text-box methods on read-only 
  combo-boxes.
* NEW: GTK+ 2.16 is now required.


git-svn-id: svn://localhost/gambas/trunk@4415 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-01-22 13:13:25 +00:00
Benoît Minisini
34f24c3991 [INTERPRETER]
* BUG: Fix the Param array accessor, that returns a specific extra argument
  from its index.

[GB.DBUS]
* BUG: Fix DBus method call when the method returns nothing. If there is an
  error, it is correctly raised.


git-svn-id: svn://localhost/gambas/trunk@4413 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-01-21 03:19:38 +00:00
Benoît Minisini
6227c5ecf2 [INTERPRETER]
* OPT: Optimize IIf() when its two last arguments have the same datatype.


git-svn-id: svn://localhost/gambas/trunk@4409 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-01-19 02:53:09 +00:00
Benoît Minisini
4300e266d8 [INTERPRETER]
* BUG: Fix inline array operator when mixing objects and standard datatypes.


git-svn-id: svn://localhost/gambas/trunk@4408 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-01-19 02:41:42 +00:00
Benoît Minisini
2288bb9194 [INTERPRETER]
* BUG: Fix IIf() when the returned values are objects.


git-svn-id: svn://localhost/gambas/trunk@4407 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-01-19 02:37:03 +00:00
Benoît Minisini
c8b5c206ef [INTERPRETER]
* BUG: Fix bits manipulation routines on Short values.


git-svn-id: svn://localhost/gambas/trunk@4406 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-01-19 01:35:41 +00:00
Benoît Minisini
6c0306605a [INTERPRETER]
* BUG: Fix the IIf() function when its arguments have different types.


git-svn-id: svn://localhost/gambas/trunk@4405 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-01-19 01:26:10 +00:00
Benoît Minisini
f9444636c0 [INTERPRETER]
* BUG: Correctly handle relative paths in CHMOD, CHOWN and CHGRP.


git-svn-id: svn://localhost/gambas/trunk@4401 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-01-15 10:22:12 +00:00
Benoît Minisini
f5682bf3b4 [DEVELOPMENT ENVIRONMENT]
* BUG: Do not try to handle Home and End keys in editors.
* BUG: Fix the translation of error messages made by the debugger.
* NEW: Update error message list.

[INTERPRETER]
* NEW: Chmod, Chown and Chgrp were implemented.
* NEW: Stat.Auth is a new property that returns the file mode as a string,
  using the format of the 'chmod' shell command.
* NEW: Rmdir raises a specific 'Directory is not empty' error now, when 
  trying to remove a non-empty directory.

[COMPILER]
* NEW: Chmod <path> To <mode> was implemented. <mode> is a string having 
  the same format as the 'chmod' shell command.
* NEW: Chown <path> To <user> was implemented. <user> is the name of the 
  user as defined in the /etc/passwd file.
* NEW: Chgrp <path> To <group> was implemented. <user> is the name of the 
  group as defined in the /etc/group file.


git-svn-id: svn://localhost/gambas/trunk@4400 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-01-15 08:54:57 +00:00
Benoît Minisini
4e3a714642 [INTERPRETER]
* BUG: Terminal emulation now does not automatically convert NL to CR+NL.
* BUG: Fix the declaration of custom array classes.

[GB.GTK]
* BUG: Stopping a file descriptor watch now correctly check if the event 
  loop must be exited.


git-svn-id: svn://localhost/gambas/trunk@4398 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-01-13 08:04:11 +00:00
Benoît Minisini
53aae2daf5 [DEVELOPMENT ENVIRONMENT]
* BUG: Table chooser works correctly again.
* NEW: The port can be defined now in the connection dialog.

[GB.DB]
* NEW: Support for port in a connection defined in the IDE.

[EXAMPLES]
* NEW: Port can be defined in the Database example.


git-svn-id: svn://localhost/gambas/trunk@4396 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-01-11 02:47:43 +00:00
Benoît Minisini
3474d5e76d [INTERPRETER]
* NEW: System.FullVersion now returns the full version string, with major, 
  minor and release.
* BUG: Missing return values are correctly catched in operators now.


git-svn-id: svn://localhost/gambas/trunk@4395 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-01-11 01:49:57 +00:00
Benoît Minisini
2a777ba169 [INTERPRETER]
* NEW: New error message when a child process cannot be run for any reason.
* BUG: EXEC / SHELL ... FOR INPUT now work correctly when OUTPUT is not
  specified, and there is not a true terminal to get the data that is not 
  redirected.


git-svn-id: svn://localhost/gambas/trunk@4392 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-01-06 01:47:50 +00:00
Benoît Minisini
0544910f30 [DEVELOPMENT ENVIRONMENT]
* BUG: In Report forms, draw ReportImage and ReportSvgImage according to 
  their Stretch property.
* NEW: Use a TabPanel instead of a TabStrip to draw the Report form.
* NEW: Make the grid visible in all form families, and align it correctly 
  even in a Report form.

[WEB SITE MAKER]
* NEW: Remove text shadows.

[INTERPRETER]
* NEW: Define a minimum and maximum bytecode version that the interpreter
  can handle.

[GB.FORM]
* NEW: TabPanel buttons take a bit less space.


git-svn-id: svn://localhost/gambas/trunk@4389 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-01-01 15:15:49 +00:00
Benoît Minisini
dd3b512daf [CONFIGURATION]
* NEW: Update copyrights.


git-svn-id: svn://localhost/gambas/trunk@4384 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-12-31 02:39:20 +00:00
Benoît Minisini
074dc8c05f [INTERPRETER]
* BUG: The Internet condom had an hole. Use a better one.


git-svn-id: svn://localhost/gambas/trunk@4382 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-12-31 02:09:12 +00:00
Benoît Minisini
7f04720f33 [INTERPRETER]
* NEW: Put a condom on our string hash routine.


git-svn-id: svn://localhost/gambas/trunk@4381 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-12-31 01:02:42 +00:00
Benoît Minisini
470807e659 [INTERPRETER]
* BUG: Fix Single constants when directly read, not through an object 
  reference.


git-svn-id: svn://localhost/gambas/trunk@4373 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-12-30 21:41:29 +00:00
Benoît Minisini
759aa3ba69 [INTERPRETER]
* BUG: Fix support for Single constants.


git-svn-id: svn://localhost/gambas/trunk@4370 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-12-30 20:49:54 +00:00
Benoît Minisini
5a0849c692 [WEB SITE MAKER]
* NEW: Changes for Gambas 3 release.

[INTERPRETER]
* BUG: No more than 15 digits for Floating point values.


git-svn-id: svn://localhost/gambas/trunk@4367 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-12-30 17:03:20 +00:00
Benoît Minisini
eac2589a86 [INTERPRETER]
* BUG: Do the full commit of the floating point to string conversion fix.


git-svn-id: svn://localhost/gambas/trunk@4364 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-12-30 10:57:06 +00:00
Benoît Minisini
c1e1bb9fa4 [INTERPRETER]
* BUG: The number of digits in default floating point formats was too high
  for the available precision.


git-svn-id: svn://localhost/gambas/trunk@4363 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-12-30 02:29:00 +00:00
Benoît Minisini
6ce1641661 [INTERPRETER]
* BUG: Try to fix Float to String conversion with a simpler routine.


git-svn-id: svn://localhost/gambas/trunk@4362 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-12-30 01:28:10 +00:00
Benoît Minisini
546bc7a4f4 [INTERPRETER]
* BUG: Calling native methods on an anonymous reference now correctly casts 
  the return value to a Variant.
* BUG: Remove all Array class methods that break the inheritance rules.

[GB.GTK]
* BUG: Fix initial position of windows so that window manager constraints 
  are not overrided.

[GB.SETTINGS]
* BUG: Fix the use of Array class.


git-svn-id: svn://localhost/gambas/trunk@4361 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-12-29 21:47:41 +00:00
Benoît Minisini
717ab7fe77 [INTERPRETER]
* BUG: Fix _get, _next and Pop methods in the Array class.


git-svn-id: svn://localhost/gambas/trunk@4360 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-12-29 17:00:57 +00:00
Benoît Minisini
88a213486b [CONFIGURATION]
* NEW: Use the "get version from file" option everywhere.

[DEVELOPMENT ENVIRONMENT]
* BUG: When the "get version from file" option is checked, get the version
  as soon as the program is compiled.

[EXAMPLES]
* NEW: Rewrite the OnScreenDisplay example with the Paint class.


git-svn-id: svn://localhost/gambas/trunk@4350 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-12-28 18:56:41 +00:00
Benoît Minisini
03caf23353 [DEVELOPMENT ENVIRONMENT]
* NEW: Database properties now can be editer even if there is no connection
  property defined in the form.

[GB.FORM]
* BUG: TabPanel now should not crash if there is no tab visible.
* BUG: The first visible TabPanel button is now drawn correctly if its 
  index is not zero.


git-svn-id: svn://localhost/gambas/trunk@4348 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-12-28 16:12:18 +00:00
Benoît Minisini
bee6e69ad1 [DEVELOPMENT ENVIRONMENT]
* NEW: A button to show or hide the system tables in the database editor.
* BUG: Copying button is enabled now in the SQL editor.
* NEW: SQL highlighting.

[GB.EVAL.HIGHLIGHT]
* NEW: SQL highlighting routine.

[GB.FORM]
* BUG: Fix an arrangement bug in TabPanel.

[GB.QT4.EXT]
* NEW: Editor.HighlightCurrent flag has been renamed HighlightImmediately.
* BUG: Braces are now highlighted even if they are not on the same line.
* NEW: Editor.HideMargin is a new flag to hide the editor left margin.


git-svn-id: svn://localhost/gambas/trunk@4344 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-12-28 03:04:46 +00:00
Benoît Minisini
e8f2747c1a [DEVELOPMENT ENVIRONMENT]
* BUG: The "Browse again" button in the search list now does nothing if 
  there is no search string defined.

[INTERPRETER]
* NEW: Object[].FindByRef and Object[].ExistByRef are two new methods that
  do not take the _compare special method into account. They compare 
  objects by reference only.

[GB.DB.FORM]
* NEW: DataBrowser.Border is a new property to define if a border should be
  displayed or not.
* BUG: Fix DataBrowser layout for all orientations.

[GB.DB.MYSQL]
* BUG: Try to make connection timeout work as expected, without success.
  It seems sticked to be at least one minute. :-(

[GB.FORM]
* BUG: IconView now behaves correctly when an item has no text. It uses there
  new array methods that search items by reference only.
* NEW: TabPanel.Highlight is a new property that highlight the current 
  selected tab button.
* NEW: TabPanel.Closable is a new property that works exactly like 
  TabStrip.Closable.
* BUG: TabPanel.Remove() now works correctly.
* NEW: ScrollArea is more clever with mouse wheel events.

[GB.FORM.MDI]
* NEW: Workspace now uses a TabPanel instead of a TabStrip.


git-svn-id: svn://localhost/gambas/trunk@4342 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-12-27 13:39:23 +00:00
Benoît Minisini
c550408947 [COMPILER]
* BUG: Do not allow optional and byref arguments in an event declaration.


git-svn-id: svn://localhost/gambas/trunk@4316 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-12-22 18:35:14 +00:00
Benoît Minisini
c1f20cb4fe [GB.DB]
* NEW: Connection.Timeout is a new property that defines the connection 
  timeout in seconds. The value is 20 seconds by default.


git-svn-id: svn://localhost/gambas/trunk@4309 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-12-22 00:31:57 +00:00
Benoît Minisini
3d934b455c [DEVELOPMENT ENVIRONMENT]
* OPT: The project file creation dialog initalizes its file browser later.

[INTERPRETER]
* BUG: Use sigsetjmp() instead of setjmp() as expected by the memory check 
  functions.

[GB.FORM.MDI]
* BUG: Do not use symbolic links, but real image files for action icons.

[GB.SIGNAL]
* BUG: Fix some warnings on BSD.


git-svn-id: svn://localhost/gambas/trunk@4284 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-12-18 03:03:07 +00:00
Benoît Minisini
1961d55cd7 [INTERPRETER]
* BUG: Correctly free constructor arguments when there is inheritance.


git-svn-id: svn://localhost/gambas/trunk@4277 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-12-13 04:48:47 +00:00
Benoît Minisini
200a429afc [DEVELOPMENT ENVIRONMENT]
* NEW: New "Gamabs" highlight theme.
* BUG: When showing the search dialog, the search text is correctly 
  selected in all cases now.
* BUG: Importing a report (or any form that is not a GUI form) now 
  correctly imports the class file.

[EXAMPLES]
* NEW: Add a text clipping example in the 'Painting' example.

[INTERPRETER]
* OPT: Replace() is now faster when the search string and the replace
  string are both one character length strings.

[COMPILER]
* NEW: The string escape character '\v' was added.

[GB.GTK]
* BUG: Paint.Text() now works correctly when the alignment is not 
  specified.

[GB.NET]
* BUG: Correctly check system errors when using a asynchronous DnsClient.

[GB.QT4]
* BUG: Paint.Save() and Paint.Restore() take the clipping path into account 
  now.

[GB.SETTINGS]
* NEW: Use a temporary file when saving a settings file, and always make a
  backup.

[GB.WEB]
* NEW: The Session.Modify() method was replaced by a read/write Modified 
  property.


git-svn-id: svn://localhost/gambas/trunk@4273 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-12-11 19:14:04 +00:00
Benoît Minisini
708c137c3d [INTERPRETER]
* NEW: Support for extern functions returning a C structure pointer.


git-svn-id: svn://localhost/gambas/trunk@4257 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-11-25 22:26:09 +00:00
Benoît Minisini
251e172f60 [GB.EVAL.HIGHLIGHT]
* NEW: Some little enhancements in CSS highlighting.

[GB.QT4.EXT]
* BUG: A little fix in undo management during an highlighting process.

[GB.WEB]
* NEW: Session.Modify() is a new method to mark the session as modified so 
  that it is automatically saved.


git-svn-id: svn://localhost/gambas/trunk@4256 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-11-25 00:43:57 +00:00
Benoît Minisini
19b6e1c34d [INTERPRETER]
* BUG: Array Reverse() method now returns the reversed array.


git-svn-id: svn://localhost/gambas/trunk@4255 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-11-24 21:45:21 +00:00
Benoît Minisini
90f6aad33c [GB.DB]
* NEW: Add a warning message if a connection password cannot be retrieved.


git-svn-id: svn://localhost/gambas/trunk@4254 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-11-24 17:49:53 +00:00
Benoît Minisini
bd23a0b883 [INTERPRETER]
* BUG: Use setpgid() instead of setpgrp() to be BSD-compatible.


git-svn-id: svn://localhost/gambas/trunk@4250 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-11-19 15:31:40 +00:00
Benoît Minisini
296ae062ba [INTERPRETER]
* NEW: GB.ReturnConvVariant() is a new API that ensures that the returned 
  value is a Variant, as now the interpreter does not do the conversion
  automatically.
* BUG: Use the new GB.ReturnConvVariant() and the GB.ReturnVariant() API
  everywhere it is needed.


git-svn-id: svn://localhost/gambas/trunk@4248 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-11-14 01:06:51 +00:00
Benoît Minisini
f5954e9f4f [INTERPRETER]
* BUG: New GB.ReturnVariant() API for methods and properties that return a 
  Variant value.

[GB.DESKTOP]
* BUG: Fix DekstopWindow state properties.
* BUG: Use the new GB.ReturnVariant() API for _Desktop.GetWindowProperty().


git-svn-id: svn://localhost/gambas/trunk@4246 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-11-13 23:18:04 +00:00
Benoît Minisini
8adad18528 [INTERPRETER]
* BUG: [Func()] now correctly raises an error if Func() does not return a
  value.


git-svn-id: svn://localhost/gambas/trunk@4241 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-11-12 23:56:21 +00:00
Benoît Minisini
8163a28003 [DEVELOPMENT ENVIRONMENT]
* BUG: Correctly translate numerals inside error messages.

[COMPILER]
* BUG: Raise an error when the default case of a SELECT statement is not 
  the last one.
* BUG: Raise an error when the default case of a SELECT statement is 
  defined twice.


git-svn-id: svn://localhost/gambas/trunk@4239 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-11-10 10:09:25 +00:00
Benoît Minisini
3c54631096 [COMPILER]
* BUG: Correctly compile initial expression of optional arguments.


git-svn-id: svn://localhost/gambas/trunk@4238 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-11-10 01:51:49 +00:00
Benoît Minisini
b7eae7abdd [INTERPRETER]
* BUG: Fix inheritance signature check for array classes.


git-svn-id: svn://localhost/gambas/trunk@4235 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-11-06 00:26:37 +00:00
Benoît Minisini
099fda7cd2 [COMPILER]
* BUG: The lowest long integer constant (-9223372036854775808) is correctly 
  interpreted now.

[GB.EVAL]
* BUG: The lowest long integer constant (-9223372036854775808) is correctly 
  interpreted now.


git-svn-id: svn://localhost/gambas/trunk@4230 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-11-01 23:24:07 +00:00
Benoît Minisini
ea60353cf8 [INTERPRETER]
* BUG: Oops. Fix the revision #4224 fix!


git-svn-id: svn://localhost/gambas/trunk@4226 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-10-30 17:53:08 +00:00
Benoît Minisini
0ee692b045 [INTERPRETER]
* BUG: If() and the [...] operator now raise an error when they get a
  non-standard datatype, instead of crashing.


git-svn-id: svn://localhost/gambas/trunk@4224 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-10-30 15:51:57 +00:00
Benoît Minisini
df80468b96 [INTERPRETER]
* BUG: Fix function calls for functions taking optional arguments and extra
  arguments.


git-svn-id: svn://localhost/gambas/trunk@4223 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-10-28 01:54:10 +00:00
Benoît Minisini
ba8e9d7483 [INTERPRETER]
* BUG: Really fix hash table resizing routine.


git-svn-id: svn://localhost/gambas/trunk@4220 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-10-25 00:18:30 +00:00
Benoît Minisini
d759ebb519 [INTERPRETER]
* BUG: Fix hash table resizing routine.


git-svn-id: svn://localhost/gambas/trunk@4219 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-10-24 23:58:41 +00:00
Benoît Minisini
95aa370a7e [INTERPRETER]
* BUG: Do not use GB.ReturnNull() when returning a void string anymore. Use
  the new GB.ReturnVoidString() API instead.


git-svn-id: svn://localhost/gambas/trunk@4216 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-10-24 19:33:41 +00:00
Benoît Minisini
13e89c798a [INTERPRETER]
* BUG: Fix negative year support in date management.


git-svn-id: svn://localhost/gambas/trunk@4214 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-10-24 14:56:41 +00:00
Benoît Minisini
348f1cefbd [INTERPRETER]
* BUG: Fix a useless and incorrect string initialization in the UTF-8 to
  UTF-16 internal conversion routine.
* BUG: Native functions that return a string must not use the 
  GB.ReturnNull() API, but GB.ReturnVoidString() instead. Fix the
  String.LCase() and String.UCase() functions accordingly.
* BUG: Date() function takes one argument, or at least three arguments now.


git-svn-id: svn://localhost/gambas/trunk@4213 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-10-24 14:52:20 +00:00
Benoît Minisini
4dbe9557a9 [INTERPRETER]
* BUG: Support for different callbacks on the same function call.


git-svn-id: svn://localhost/gambas/trunk@4212 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-10-24 12:16:40 +00:00
Benoît Minisini
db165a0996 [INTERPRETER]
* BUG: Disable an incorrect FOR...NEXT optimization.


git-svn-id: svn://localhost/gambas/trunk@4208 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-10-23 17:13:48 +00:00
Benoît Minisini
e680d4fe9b [DEVELOPMENT ENVIRONMENT]
* BUG: The form editor now embeds controls in a container that depens on 
  the form family (a Panel for a Form, a ReportPanel for a Report).

[INTERPRETER]
* BUG: Fix loop management when big negative values are used.

[GB.REPORT]
* NEW: Add an icon for the ReportPanel control.


git-svn-id: svn://localhost/gambas/trunk@4206 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-10-20 00:03:25 +00:00
Benoît Minisini
e531a4e05f [CONFIGURATION]
* BUG: Fix many gcc 4.6.1 warnings.
* NEW: Update the depcomp sript with a more recent version.

[GB.DB.POSTGRESQL]
* BUG: Fix primary index retrieving for tables inside a schema.


git-svn-id: svn://localhost/gambas/trunk@4203 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-10-16 19:24:01 +00:00
Benoît Minisini
b1d4d5582c [COMPILER]
* BUG: Really support reserved words in form control names.


git-svn-id: svn://localhost/gambas/trunk@4185 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-10-09 10:00:33 +00:00
Benoît Minisini
f1e042543d [INTERPRETER]
* BUG: Try to not lose the value of 'errno' if the select() system call 
  fails inside the event loop.

[GB.GTK]
* BUG: Fix arrangement when there is no place for expanded controls.

[GB.QT4]
* BUG: Fix arrangement when there is no place for expanded controls.


git-svn-id: svn://localhost/gambas/trunk@4182 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-10-09 02:05:07 +00:00
Benoît Minisini
1707e07b34 [CONFIGURATION]
* BUG: Fix mime type registration.


git-svn-id: svn://localhost/gambas/trunk@4178 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-10-08 17:17:39 +00:00
Benoît Minisini
bfb9fa6d6b [INTERPRETER]
* BUG: Fix GB.System.Charset() API.


git-svn-id: svn://localhost/gambas/trunk@4164 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-09-30 08:23:54 +00:00
Benoît Minisini
6e86a84d5a [INTERPRETER]
* NEW: Disable echo by defaut when running a child process inside a virtual 
  terminal.

[DEVELOPMENT ENVIRONMENT]
* BUG: Run projects inside a virtual terminal.


git-svn-id: svn://localhost/gambas/trunk@4163 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-09-29 00:10:15 +00:00
Benoît Minisini
74a17c8a4b [COMPILER]
* BUG: Purge .info and .list file from classes with no bytecode object each
  time a source file is compiled.


git-svn-id: svn://localhost/gambas/trunk@4162 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-09-28 21:10:18 +00:00
Benoît Minisini
72c46b0820 [INTERPRETER]
* BUG: Correctly check how a system file descriptor is opened when 
  watching it.



git-svn-id: svn://localhost/gambas/trunk@4160 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-09-28 00:57:05 +00:00
Benoît Minisini
7a445217f2 [DEVELOPMENT ENVIRONMENT]
* NEW: Javascript compression now compress local variable names.
* BUG: Fix database manager field creation.

[GB.FORM.STOCK]
* BUG: Fix icons again.

[GB.QT4]
* BUG: Fix GridView Row and Column property.
* BUG: Fix GridView Change event in single selection mode.


git-svn-id: svn://localhost/gambas/trunk@4158 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-09-27 12:36:33 +00:00
Benoît Minisini
4dcc3d7800 [INTERPRETER]
* BUG: Fix internal UTF-8 to Unicode conversion routine.


git-svn-id: svn://localhost/gambas/trunk@4156 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-09-26 03:00:00 +00:00
Benoît Minisini
ea0cd62f68 [INTERPRETER]
* BUG: Fix internal collection hash table resizing.


git-svn-id: svn://localhost/gambas/trunk@4154 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-09-26 02:05:50 +00:00
Benoît Minisini
630c52937c [INTERPRETER]
* OPT: Optimization of locale-aware string comparison routine.
* OPT: Do not use sprintf() for searching event handlers in symbol tables.
* OPT: String[].Find() and String.Exist() are now twice faster for ASCII 
  binary and case insensitive comparisons.
* BUG: Initialize the locale before loading any class.
* OPT: Do not use sprintf() when searching a file inside Gambas archives.
* OPT: Unroll a loop to speed up binary string identity comparison a little 
  bit.
* BUG: Collection keys are now hashed with their eight last characters.
* BUG: Internal Collection automatic resizing was disabled. Re-enable it!


git-svn-id: svn://localhost/gambas/trunk@4153 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-09-26 01:46:48 +00:00
Benoît Minisini
12997b15f3 [DEVELOPMENT ENVIRONMENT]
* BUG: Don't crash if a library cannot be found.
* NEW: Display a big message in the library tab of the project property
  dialog to tell that library must be stored in the same directory as the
  project using them.

[INTERPRETER]
* OPT: Some little optimization in natural comparison routine.

[GB.GTK]
* BUG: Do not crash if a null key is used for a stock picture. Just return
  a null reference.


git-svn-id: svn://localhost/gambas/trunk@4145 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-09-23 20:17:57 +00:00
Benoît Minisini
a807a57983 [INTERPRETER]
* OPT: Some optimizations in date formatting.
* OPT: Now() has been optimized when run multiple times during the same 
  second.


git-svn-id: svn://localhost/gambas/trunk@4144 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-09-21 12:42:56 +00:00
Benoît Minisini
990180be34 [INTERPRETER]
* OPT: Internal conversions between unicode and utf-8 have been optimized.
* OPT: String.UCase(), String.LCase() and String.Chr() have been optimized.
* BUG: Arrays of classes exported from a component or a library are now
  automatically exported too.
* NEW: Param.All is a new property that returns all extra arguments as an
  array.


git-svn-id: svn://localhost/gambas/trunk@4143 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-09-21 09:42:19 +00:00