Commit graph

1451 commits

Author SHA1 Message Date
Benoît Minisini
1da6baf60e [INTERPRETER]
* NEW: Now a method or property object datatype can be overridden by a more 
  specialized one.


git-svn-id: svn://localhost/gambas/trunk@6249 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-04-24 20:56:50 +00:00
Benoît Minisini
9cf45fc40d [INTERPRETER]
* BUG: Fix memory leak with Lower$() and Upper$() on some null strings.


git-svn-id: svn://localhost/gambas/trunk@6241 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-04-10 21:56:07 +00:00
Benoît Minisini
9995913a2f [GB.FORM]
* NEW: TabPanel.Moveable is a new property that makes tab button moveable 
  if set.

[GB.FORM.MDI]
* NEW: Workspace tab buttons are now moveable.


git-svn-id: svn://localhost/gambas/trunk@6239 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-04-08 22:59:21 +00:00
Benoît Minisini
5f1bca4bea [DEVELOPMENT ENVIRONMENT]
* NEW: Add a new background generated from the QuasiRegular new example.
* BUG: Disable replace controls in the search dialog when searching the 
  output window.

[WIKI]
* BUG: Fix style sheet for tables at the beginning of a block.
* BUG: Fix title retrieving of component links.

[EXAMPLES]
* NEW: QuasiRegular: A new example that shows an example of a quasi-regular
  pattern.

[INTERPRETER]
* BUG: Use interpreter API constants in 'gbx_watch.c' so that duplicate 
  constants are removed.


git-svn-id: svn://localhost/gambas/trunk@6235 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-04-06 22:09:08 +00:00
Benoît Minisini
5e76433eeb [CONFIGURATION]
* NEW: Do not use deprecated autoconf macros anymore.
* NEW: The version information is now located in the 'version.m4' file in
  the source root directory.


git-svn-id: svn://localhost/gambas/trunk@6230 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-04-05 21:22:43 +00:00
Benoît Minisini
3dc12551df [COMPILER]
* BUG: Raise an error if a function has too many arguments or too many 
  local variables.


git-svn-id: svn://localhost/gambas/trunk@6223 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-04-05 11:02:17 +00:00
Benoît Minisini
ea30c3ba1b [DEVELOPMENT ENVIRONMENT]
* NEW: Add a echo button in the output console, that echoes the entered 
  command.

[WIKI]
* NEW: Add a HTTP server requests graph.

[INTERPRETER]
* BUG: The debugger does not change the Key property of collections when
  displaying them.
* NEW: Collection.Key is writable now.

[GB.FORM]
* NEW: FontChooser: Always reset sample text at first use.
* BUG: FontChooser: Fix the behaviour when size changes.


git-svn-id: svn://localhost/gambas/trunk@6222 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-04-05 00:28:41 +00:00
Benoît Minisini
f3438a8da9 [WEBSITE]
* NEW: Use the new wiki now.

[WIKI]
* BUG: Fix style sheet and class description layout.
* NEW: Inherited symbols links are in italic now.
* NEW: Automatic registration system.
* NEW: Use the new LOCK ... WAIT instruction.
* BUG: Some fixes in the old wiki conversion routine.
* NEW: The administrator account can see the recent changes.

[EXAMPLES]
* NEW: SmallWiki: Update the embedded markdown support from gb.markdown.

[COMPILER]
* NEW: The '#' character is now optional if possible (for example in the 
  'OUTPUT TO' instruction).

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

[GB.FORM.STOCK]
* BUG: Fix all missing icons.

[GB.GTK]
* BUG: Fix incorrect translation when drawing inside a DrawingArea.

[GB.MEDIA]
* BUG: Fix inputs and outputs enumeration.

[GB.QT4]
* BUG: Correctly handle UTF-8 when displaying the error message.

[GB.WEB]
* NEW: WebPage.ToString() is a new method that generates the webpage and 
  returns it as a string.
* BUG: When creating a session, other sessions having the same prefix and 
  being older than 24 hours are automatically removed from disk.


git-svn-id: svn://localhost/gambas/trunk@6206 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-03-22 12:25:48 +00:00
Benoît Minisini
a167d0a1f2 [INTERPRETER]
* NEW: New LOCK ... WAIT ... syntax.

[COMPILER]
* NEW: New LOCK ... WAIT ... syntax.



git-svn-id: svn://localhost/gambas/trunk@6194 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-03-09 17:51:52 +00:00
Tobias Boege
b0e1b58d10 [GB.INOTIFY]
* BUG: Don't re-typedef CINFO.



git-svn-id: svn://localhost/gambas/trunk@6190 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-03-03 22:07:32 +00:00
Benoît Minisini
0d2aac1e38 [INTERPRETER]
* NEW: Use vfork() instead of fork() to implement EXEC and SHELL, so that 
  when the child process cannot run the child program for any reason, the 
  error is immediately catched.
* BUG: Fix a possible file descriptor leak when using LOCK.


git-svn-id: svn://localhost/gambas/trunk@6189 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-03-02 20:18:06 +00:00
Benoît Minisini
33ccdc039a [GB.COMPLEX]
* BUG: Conversion from complex to number now returns the real part if the 
  imaginary part is null, and raises an error otherwise. It does not return
  the complex modulus anymore. Use Abs() for that.


git-svn-id: svn://localhost/gambas/trunk@6157 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-02-14 23:17:45 +00:00
Benoît Minisini
d4f34166dd [DEVELOPMENT ENVIRONMENT]
* NEW: Menu shortcut for defining a class or a form as startup class has 
  been removed from the editor (but not from the project tree).
* NEW: A new menu to run a specific form as if it was the startup class.

[WIKI]
* NEW: The wiki is almost finished. Tuning is needed, as the automatic 
  conversion between the old wiki syntax and the new markdown syntax cannot 
  be perfect. Not yet done: history, registration, to do list.

[EXAMPLES]
* NEW: WaveGenerator: Set the "is-live" property of the 'audiotestsrc' 
  plugin.
* NEW: WaveGenerator: Use the 'autoaudiosink' output instead of a specific 
  one.
* NEW: WaveGenerator: Allow to choose the wave form.

[INTERPRETER]
* NEW: A new '-s' command-line option to override the startup class defined 
  in the project.

[GB.FORM]
* NEW: MaskBox has a new ShowDefault property. When set, the maskbox does 
  not hide its contents anymore when losing the focus if its value was the 
  default value.

[GB.GTK]
* BUG: Control Move() and MoveScaled() method do not try to resize the 
  control anymore if their width and height arguments are omitted.

[GB.MARKDOWN]
* BUG: Bug fixes, tuning...

[GB.MEDIA]
* NEW: MediaControl: An enumeration property can be set through its integer 
  value now.


git-svn-id: svn://localhost/gambas/trunk@6153 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-02-12 22:26:02 +00:00
Tobias Boege
da8305456c [GB.INOTIFY]
* NEW: Rename the PathWatch class to Watch.
* NEW: Generalise the events raised by the class for future portability.
* NEW: Add static properties Name, IsDir, Unmount and Cookie and remove the
  corresponding event handler arguments.
* NEW: Do not automatically reference a Watch anymore to keep it sane.
* BUG: Automatic detection of watch events works now (#6115).
* BUG: Invalidate Watch objects when the kernel tells us to.
* BUG: Don't enter an infinite loop if some event bits are not recognised.
* OPT: Use hash tables to improve lookups.



git-svn-id: svn://localhost/gambas/trunk@6147 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-02-09 21:23:05 +00:00
Benoît Minisini
5a61180b86 [CONFIGURATION]
* NEW: Dutch translation updated in many places.

[DEVELOPMENT ENVIRONMENT]
* NEW: New option to run a program inside a true virtual terminal, but its 
  standard error output is redirected to the IDE console.

[WIKI]
* NEW: New Gambas wiki CGI script. It aims at replacing the current wiki. 
  Currently in development...

[INTERPRETER]
* NEW: A new '-t' hidden command-line argument to support redirecting the
  standard error output to a named pipe.

[GB.IMAGE]
* BUG: Link with the mathematic library as the pow() function is used for
  the image gamma filter.

[GB.MARKDOWN]
* NEW: Markdown.Line is a new property that returns the current line if an 
  error occurs while converting markdown syntax to HTML.
* NEW: Support for custom commands "{@...}".
* NEW: The quote characters has the same effect as the backquote character, 
  except that markdown is allowed inside.

[GB.QT4]
* BUG: Clipboard.Paste() now returns the image when there is both image and 
  text inside the clipboard.



git-svn-id: svn://localhost/gambas/trunk@6146 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-02-09 16:00:13 +00:00
Benoît Minisini
2d11aab2db [DEVELOPMENT ENVIRONMENT]
* BUG: Fix word separators in text editor automatic completion.

[EXAMPLES]
* NEW: Start a new Web application example.

[GB.FORM]
* NEW: DateChooser.MinValue is a new property that allows to define the 
  minimum date that can be selected.
* NEW: DateChooser.MaxValue is a new property that allows to define the 
  maximum date that can be selected.
* NEW: DateChooser: The mouse wheel allows to scroll months and days now.
* NEW: LCDLabel: Add support for some new characters.

[GB.GUI.BASE]
* BUG: Draw.End() now resets antialiasing to TRUE.


git-svn-id: svn://localhost/gambas/trunk@6118 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-02-01 14:25:26 +00:00
Benoît Minisini
029fdc7a22 [INTERPRETER]
* NEW: The GB.CanRaise() API now does not take the locked status of the 
  parent object into account anymore. It really checks if an event has an 
  event handler.


git-svn-id: svn://localhost/gambas/trunk@6115 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-01-29 00:26:09 +00:00
Benoît Minisini
a2c9e25e00 [COMPILER]
* BUG: Fix array creation operator when it has no arguments.

[INTERPRETER]
* BUG: Fix array creation operator when it has no arguments.


git-svn-id: svn://localhost/gambas/trunk@6114 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-01-28 16:17:40 +00:00
Benoît Minisini
3768087f67 [COMPILER]
* BUG: Prevent NEW and READ from being used without an affectation.


git-svn-id: svn://localhost/gambas/trunk@6112 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-01-28 01:08:58 +00:00
Benoît Minisini
2daefc5fa0 [INTERPRETER]
* BUG: Fix maximum number of array declaration in the same class.
* NEW: Array and Collection constructor operator [ ... ] now can take any 
  number of arguments. It is only limited by the maximum function size, 
  which leads for example to about 32000 elements for a short array.


git-svn-id: svn://localhost/gambas/trunk@6110 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-01-27 23:46:37 +00:00
Tobias Boege
3bece35d9b [GB.INOTIFY]
* NEW: Rename the Inotify class and descendants to PathWatch.
* NEW: Use array semantics instead of properties to manipulate event masks.
  These can operate on multiple flags simultaneously now.
* OPT: Determine the default event mask for a PathWatch object by the event
  handlers defined for it (* not working ATM).
* OPT: Save a string copy.



git-svn-id: svn://localhost/gambas/trunk@6109 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-01-27 21:14:58 +00:00
Tobias Boege
119ce88c3b [GB.INOTIFY]
* NEW: All event signatures got a Boolean argument to support the IN_ISDIR
  flag set by the kernel indicating that the subject was a directory.



git-svn-id: svn://localhost/gambas/trunk@6097 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-01-22 14:51:56 +00:00
Benoît Minisini
9e4aed45e4 [INTERPRETER]
* BUG: If an error is raised inside a TRY context, the Error.Backtrace 
  property is reset to NULL. It does not keep its previous value anymore.


git-svn-id: svn://localhost/gambas/trunk@6090 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-01-20 00:05:33 +00:00
Benoît Minisini
de472c0e2a [COMPILER]
* NEW: Allow a CASE expression list to spread among the next line provided 
  that the current line ends with a comma.


git-svn-id: svn://localhost/gambas/trunk@6084 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-01-14 22:43:35 +00:00
Benoît Minisini
de0ff1afc1 [INTERPRETER]
* BUG: Correctly close the standard error output of an ending process if 
  its standard output has already been closed.


git-svn-id: svn://localhost/gambas/trunk@6081 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-01-14 12:06:39 +00:00
Benoît Minisini
8c6cf71838 [DEVELOPMENT ENVIRONMENT]
* NEW: ImageEditor: A text tool has been added.
* BUG: The "open terminal" and "open file browser" toolbar icons now work 
  as expected.

[WEBSITE MAKER]
* NEW: Update for 3.5.2 release.

[INTERPRETER]
* NEW: Successives spaces in a regular expression pattern now acts like a 
  single space.

[GB.DRAW]
* NEW: Paint.PathOutline is a new property that returns a array of polygons 
  corresponding to the current drawing path.

[GB.FORM]
* NEW: FontBox is a new control that allows to select a font from a text 
  field.
* NEW: The FontChooser control now adapts its interface if its height is 
  too small.

[GB.GTK]
* NEW: Paint.PathOutline is a new property that returns a array of polygons 
  corresponding to the current drawing path.

[GB.GUI.BASE]
* NEW: Add a little left and right padding to GridView cells.
* NEW: ListBox now uses the default selected background color.

[GB.QT4]
* NEW: Paint.PathOutline is a new property that returns a array of polygons 
  corresponding to the current drawing path.


git-svn-id: svn://localhost/gambas/trunk@6080 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-01-12 01:59:49 +00:00
Benoît Minisini
00ae88f8dc [INTERPRETER]
* BUG: Be virtual even the first time when calling the [] operator!


git-svn-id: svn://localhost/gambas/trunk@6069 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-01-06 16:57:20 +00:00
Benoît Minisini
018b33696b [INTERPRETER]
* BUG: Fix a crash when using CStr() on an object having a conversion 
  function.


git-svn-id: svn://localhost/gambas/trunk@6056 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-01-02 21:37:44 +00:00
Benoît Minisini
24a62cff83 [INTERPRETER]
* NEW: When a void string is sent to an extern function argument expecting 
  a string, it is converted to a zero-length string instead of a null 
  pointer.

[GB.FORM]
* NEW: DateChooser: Replace the month ComboBox by a MenuButton.
* BUG: DateChooser: Better management of the month menu button width.

[GB.GUI.BASE]
* NEW: The ProgressBar control is now written in Gambas.


git-svn-id: svn://localhost/gambas/trunk@6050 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-01-02 09:31:32 +00:00
Benoît Minisini
7545521c0f [INTERPRETER]
* BUG: Fix {...} pattern management in LIKE operator again.


git-svn-id: svn://localhost/gambas/trunk@6044 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-12-31 21:39:24 +00:00
Benoît Minisini
7b870faf3a [INTERPRETER]
* BUG: Fix LIKE operator when the {...} syntax is not at the end of the 
  pattern.


git-svn-id: svn://localhost/gambas/trunk@6042 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-12-31 15:57:20 +00:00
Benoît Minisini
e87b82bc05 [COMPILER]
* BUG: Fix compilation of NOT LIKE, NOT BEGINS and NOT ENDS operators when
  they are not alone in an expression.


git-svn-id: svn://localhost/gambas/trunk@6041 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-12-31 14:30:58 +00:00
Tobias Boege
00200dbece [CONFIGURATION]
* OPT: Move gb.inotify to main/lib.



git-svn-id: svn://localhost/gambas/trunk@6036 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-12-30 11:29:15 +00:00
Benoît Minisini
57359c4f2a [INTERPRETER]
* BUG: Fix the LIKE operator whith "{...}" patterns.


git-svn-id: svn://localhost/gambas/trunk@6031 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-12-29 19:24:52 +00:00
Benoît Minisini
493f651f20 [DEVELOPMENT ENVIRONMENT]
* NEW: Update Gambas fonts.
* NEW: Update component list.
* NEW: Add a toolbar button to define the GB_GUI environment variable in 
  one click. This button is visible only if the project uses the gb.gui
  component (and if it has been added to the toolbar of course!).
* BUG: Use the same icon for the option dialog and its corresponding 
  toolbar icon.

[GB.FORM.MDI]
* NEW: Shrink the toolbar height a bit.

[GB.GUI]
* NEW: Support for the gb.gtk3 component.


git-svn-id: svn://localhost/gambas/trunk@6028 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-12-29 15:17:40 +00:00
Benoît Minisini
87df43bd18 [DEVELOPMENT ENVIRONMENT]
* NEW: The debugger now can be told to break the program on any error.
* NEW: Statistic tab in the project property dialog.

[INTERPRETER]
* BUG: Don't crash if an unknown option is passed with the '-g' option.
* NEW: The debugger now can be told to break the program on any error.
* NEW: System.BreakOnError is a new property that allows to set the 
  internal "break on error" option at runtime. I don't know if it is 
  actually useful, so I may remove it.

[GB.DEBUG]
* NEW: The debugger now can be told to break the program on any error.


git-svn-id: svn://localhost/gambas/trunk@6011 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-12-18 11:21:01 +00:00
Benoît Minisini
42a089eda6 [DEVELOPMENT ENVIRONMENT]
* NEW: Update Gambas fonts.
* NEW: Project converter: try to not crash if the Gambas 2 project has been 
  partially converted.

[GB.QT4]
* BUG: Mouse.Translate() now has an absolute effect, as in gb.gtk.


git-svn-id: svn://localhost/gambas/trunk@6009 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-12-16 22:23:13 +00:00
Benoît Minisini
188a40f601 [INTERPRETER]
* NEW: Display the error returned by the glibc when a locale cannot be set.
* NEW: Allow the class conversion routine to define the target datatype by 
  itself.

[GB.DB]
* BUG: The automatic Blob to String conversion does not lead to a crash
  anymore.


git-svn-id: svn://localhost/gambas/trunk@5999 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-12-13 22:13:48 +00:00
Benoît Minisini
8e23a347ea [CONFIGURATION]
* NEW: Chinese translations updated everywhere.

[DEVELOPMENT ENVIRONMENT]
* NEW: Update Gambas fonts.
* BUG: In the menu editor, the last menu can be move up now.
* NEW: Add "GB_REVERSE=1" in the environment variable list of the project 
  properties dialog.

[GB.DB.FORM]
* NEW: The DataCheckBox control now raises its Click event as expected.

[GB.FORM]
* BUG: The icon of the FileProperties control now correctly adapts its 
  size.

[GB.FORM.MDI]
* NEW: ToolBar now inverts its layout if the current language is right-to-
  left written.

[GB.GTK]
* NEW: Mouse.Translate() is a new method that allows to translate the 
  current mouse event.
* BUG: The rtl layout is correctly initialized at startup.

[GB.GUI.BASE]
* NEW: ScrollArea, GridView, TreeView and its friends now invert their 
  layout if the current language is right-to-left written.

[GB.NET.POP3]
* BUG: Error messages must not be translatable.

[GB.QT4]
* NEW: Mouse.Translate() is a new method that allows to translate the 
  current mouse event.


git-svn-id: svn://localhost/gambas/trunk@5993 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-12-09 19:42:30 +00:00
Benoît Minisini
0ce3cc69fb [GB.DB]
* BUG: Don't crash anymore when releasing database objects.


git-svn-id: svn://localhost/gambas/trunk@5987 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-12-07 12:49:11 +00:00
Benoît Minisini
3509cb7b7c [INTERPRETER]
* BUG: String.InStr() does not crash anymore if the string pattern is void.
  It returns 0 instead (like InStr).


git-svn-id: svn://localhost/gambas/trunk@5979 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-12-06 18:51:35 +00:00
Benoît Minisini
76cb94470a [GB.DRAW]
* BUG: Correctly initialize the Paint class when calling Paint.Begin() on 
  an already opened drawing device.


git-svn-id: svn://localhost/gambas/trunk@5959 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-11-16 16:48:19 +00:00
Benoît Minisini
8d85b9b227 [INTERPRETER]
* BUG: Prevent crashes at exit by releasing array classes first.


git-svn-id: svn://localhost/gambas/trunk@5949 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-11-08 01:40:37 +00:00
Benoît Minisini
48d192b4c7 [COMPILER]
* BUG: Allows OPEN STRING to not specify any string.


git-svn-id: svn://localhost/gambas/trunk@5943 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-11-04 20:12:24 +00:00
Benoît Minisini
7a9d649219 [INTERPRETER]
* BUG: Fix the CLOSE instruction when dealing with a string stream.
* NEW: Make WRITE behave the same way as READ on a memory stream. I.e. it 
  writes a null-terminated "C" string.


git-svn-id: svn://localhost/gambas/trunk@5942 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-11-04 18:16:26 +00:00
Benoît Minisini
407e74968b [INTERPRETER]
* BUG: Undo one change of last revision: reading a stream from a memory 
  stream is a special case. It reads a null-terminated C string, and not a
  serialized Gambas string.
* NEW: OPEN STRING is a new instruction that allows to use a string as a 
  stream. Writing to it appends the written data to the end of the string 
  at the moment.
* NEW: Closing a string stream returns the data written to the stream as a
  new string.

[COMPILER]
* NEW: New OPEN STRING instruction.
* NEW: OPEN MEMORY and OPEN PIPE are synonymous of the MEMORY and PIPE
  instructions alone.

[GB.EVAL]
* NEW: Highlight the new OPEN STRING instruction correctly.


git-svn-id: svn://localhost/gambas/trunk@5941 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-11-04 15:17:01 +00:00
Benoît Minisini
574745f34d [INTERPRETER]
* BUG: VarPtr() correctly works on method arguments.
* BUG: Reading a string from a memory stream now works correctly.


git-svn-id: svn://localhost/gambas/trunk@5940 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-11-04 02:54:00 +00:00
Benoît Minisini
34012dcecd [INTERPRETER]
* BUG: Correctly check that there is a current enumeration if the Enum 
  class methods and properties.
* NEW: Enum.Stopped is a new property that returns if the current 
  enumeration  has been stopped.
* BUG: The [] operator is now correctly overridden in classes inheriting an
  array class or Collection.


git-svn-id: svn://localhost/gambas/trunk@5935 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-11-03 13:30:02 +00:00
Benoît Minisini
b9930f0701 [GB.GUI]
* NEW: If one GUI component fails to load, try the other one.
* NEW: Abort if no GUI component is found.
* NEW: Define the GB_GUI environment variable with the GUI component 
  actually loaded.

[GB.GUI.OPENGL]
* NEW: Always load the OpenGL support component associated with what lies
  in the GB_GUI environment variable.


git-svn-id: svn://localhost/gambas/trunk@5925 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-11-01 13:18:47 +00:00
Benoît Minisini
b09d1e18e4 [INTERPRETER]
* BUG: Don't detach a process that returns an error otherwise the Kill 
  event is lost.


git-svn-id: svn://localhost/gambas/trunk@5921 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-11-01 00:29:32 +00:00
Benoît Minisini
27c21ea450 [INTERPRETER]
* NEW: Support for the GB_PATH environment variable, that gives the Gambas
  interpreter path if set.


git-svn-id: svn://localhost/gambas/trunk@5918 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-10-26 21:06:22 +00:00
Benoît Minisini
2261e6ef6d [DEVELOPMENT ENVIRONMENT]
* BUG: Add the description of 'gb.memcached' and 'gb.logging' components.
* NEW: Update error messages translation.

[INTERPRETER]
* NEW: Allow some error messages to be untranslatable by using a void macro
  named '$(...)' around the string.

[GB.FORM]
* BUG: The status of FileChooser and DirChooser toolbar icons is correctly
  initialized now.
* BUG: Reading the FileChooser.ShowPreview property does not crash anymore.


git-svn-id: svn://localhost/gambas/trunk@5912 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-10-20 21:43:14 +00:00
Benoît Minisini
c994980764 [INTERPRETER]
* BUG: Fix a structure declaration for ARM architecture.

[GB.CLIPPER]
* BUG: Fix the signature of some methods.


git-svn-id: svn://localhost/gambas/trunk@5900 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-10-19 02:53:17 +00:00
Benoît Minisini
9326385a65 [GB.DATA]
* BUG: Fix 'Makefile.am' file.


git-svn-id: svn://localhost/gambas/trunk@5889 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-10-13 18:29:32 +00:00
Benoît Minisini
ec5cb392f3 [INTERPRETER]
* NEW: Process.Ignore is a now a boolean property.


git-svn-id: svn://localhost/gambas/trunk@5887 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-10-13 17:55:35 +00:00
Benoît Minisini
255fc160fe [GB.DATA]
* BUG: Fix incorrect Makefile.am file.

[GB.XML.HTML]
* BUG: Fix incorrect Makefile.am file.


git-svn-id: svn://localhost/gambas/trunk@5886 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-10-13 14:19:09 +00:00
Benoît Minisini
b60772bfad [INTERPRETER]
* BUG: Synchronize the 'gambas.h' header with the internal date management 
  changes of rev. #5871.


git-svn-id: svn://localhost/gambas/trunk@5873 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-10-12 07:11:39 +00:00
Benoît Minisini
678921ef40 [WIKI CGI SCRIPT]
* BUG: Fix the "search" link.

[INTERPRETER]
* NEW: Date() and Time() now takes the milliseconds as an extra optional 
  argument.
* BUG: Time() with one argument correctly converts it to a date.
* NEW: Date() and Time() now always check the range validity of their 
  arguments.

[GB.DB.FORM]
* NEW: DataControl does not change the background of mandatory field and 
  the font of primary key fields anymore.
* NEW: DateControl.Control is a new property that returns the underlying
  control used for editing the field data.

[GB.GUI.BASE]
* NEW: HSplit and VSplit have a new Border property that define if the 
  splitter separator is visible or not.
* NEW: HSplit and VSplit now take the Spacing property into account.


git-svn-id: svn://localhost/gambas/trunk@5871 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-10-11 21:06:38 +00:00
Benoît Minisini
1de5f7f803 [DEVELOPMENT ENVIRONMENT]
* BUG: Always use "svn --force" when deleting a file in a project under
  version control.

[INTERPRETER]
* BUG: Fix a structure alignment for ARM architecture.

[GB.FORM]
* NEW: The image preview background task is now run with a lower priority.


git-svn-id: svn://localhost/gambas/trunk@5868 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-10-08 21:58:37 +00:00
Benoît Minisini
e3d64af7ff [COMPILER]
* BUG: Correctly raise a syntax error if the FOR EACH variable is not
  immediately followed by the IN keyword.


git-svn-id: svn://localhost/gambas/trunk@5867 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-10-03 13:21:36 +00:00
Benoît Minisini
0f3e0628ca [INTERPRETER]
* NEW: Application.Priority is a new property that allows to define the
  scheduling priority of the current process (or task). See it as an 
  interface to the nice() system call.


git-svn-id: svn://localhost/gambas/trunk@5866 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-10-01 09:12:51 +00:00
Tobias Boege
a2756c284f [GB.DATA]
* BUG: List: Fix two false positive compiler warnings on some systems.
* BUG: AvlTree: Don't forward-declare a typedef. It bothers some compilers.
* BUG: Also update Key from AvlTree_get().
* BUG: Invalidate the enumerators in AvlTree.Clear()



git-svn-id: svn://localhost/gambas/trunk@5865 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-10-01 06:23:08 +00:00
Benoît Minisini
e7f4c0967f [INTERPRETER]
* BUG: Task.Stop now behaves correctly if the task has not been yet 
  actually started.
* NEW: Stopped task temporary files are automatically removed.


git-svn-id: svn://localhost/gambas/trunk@5861 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-09-29 20:54:47 +00:00
Benoît Minisini
0d183b038d [INTERPRETER]
* NEW: Remove as much "packed" structure declaration as possible, to 
  prevent possible bugs on ARM architecture.


git-svn-id: svn://localhost/gambas/trunk@5860 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-09-29 16:56:12 +00:00
Benoît Minisini
0c8cd47114 [INTERPRETER]
* BUG: Fix a structure alignment bug for ARM.


git-svn-id: svn://localhost/gambas/trunk@5857 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-09-28 21:21:40 +00:00
Benoît Minisini
f6ff035982 [COMPILER]
* BUG: Fix a structure declaration that prevented the compiler to work 
  correctly on the ARM architecture.


git-svn-id: svn://localhost/gambas/trunk@5856 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-09-28 20:14:06 +00:00
Benoît Minisini
0d2256a19d [DEVELOPMENT ENVIRONMEMNT]
* BUG: ImageEditor: Fix a crash that occurs after something having pasted.

[EXAMPLES]
* NEW: Md2Model example has been redesigned. It now displays a lot of 
  models between six different ones.

[INTERPRETER]
* BUG: Fix a crash when an error is raised while the startup class is not 
  ready.

[GB.GEOM]
* BUG: Fix the conversion from Point/PointF to Float that internally uses
  the Abs() function.

[GB.GTK]
* NEW: Visible trayicons prevent the eventloop from stopping.

[GB.OPENGL.SGE]
* NEW: The component sources are now located inside the gb.opengl 
  directory.
* NEW: The component interface has been redesigned.

[GB.QT4]
* NEW: Visible trayicons prevent the eventloop from stopping.

[GB.QT4.OPENGL]
* BUG: The OpenGL clear color is now taken into account when clearing the 
  area before calling the Draw event handler.


git-svn-id: svn://localhost/gambas/trunk@5836 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-09-08 17:15:55 +00:00
Benoît Minisini
812bec445b [DEVELOPMENT ENVIRONMENT]
* NEW: Complete the french translation.

[INTERPRETER]
* BUG: Class reimplementation of Abs() now can return an object or a 
  floating-point number.

[GB.COMPLEX]
* BUG: Abs() on a Complex returns a Float.

[GB.GEOM]
* BUG: Abs() on a Point or a PointF returns a Float.

[GB.GSL]
* BUG: Abs() on a Complex returns a Float.


git-svn-id: svn://localhost/gambas/trunk@5835 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-09-07 23:09:01 +00:00
Benoît Minisini
3a3449c068 [INTERPRETER]
* NEW: Support for inequality operators in the operator interface.
* NEW: The Sgn() function can be implemented by the operator interface.

[GB.GMP]
* NEW: BigInt now supports inequality operators.
* NEW: New methods: Odd(), Even()
* NEW: Logical operators as static methods: And, Or, Xor, Not.
* NEW: Bit manipulation as static methods: BSet, BClr, BChg, BTst.


git-svn-id: svn://localhost/gambas/trunk@5828 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-09-03 21:11:55 +00:00
Benoît Minisini
4d71384869 [INTERPRETER]
* BUG: Fix Abs() when that operator is implemented at class level, so that
  it returns an object and not necesarrily a floating point value.

[GB.GMP]
* NEW: New component based on the Gnu Multiple Precision Arithmetic 
  Library. Only big integers (BigInt class) are partially implemented at 
  the moment.


git-svn-id: svn://localhost/gambas/trunk@5826 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-09-01 20:40:05 +00:00
Tobias Boege
902c13bcea [GB.DATA]
* NEW: Mark component as stable

[GB.OPENSSL]
* NEW: Mark component as stable



git-svn-id: svn://localhost/gambas/trunk@5825 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-09-01 18:53:24 +00:00
Benoît Minisini
f41adce9f1 [GB.CLIPPER]
* NEW: Mark the component as stable.

[GB.GUI.BASE]
* BUG: Draw.Picture() and Draw.Image() source arguments now work correctly.
* NEW: Add void constructors to HSplit and VSplit for the documentation.


git-svn-id: svn://localhost/gambas/trunk@5824 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-09-01 14:48:41 +00:00
Benoît Minisini
a72e92ae47 [INTERPRETER]
* BUG: Fix a possible false error when using LINE INPUT on non-blocking 
  streams.

[GB.FORM]
* NEW: LCDLabel.Value is a new property that is a synonymous of the Text 
  property for numerical values.
 

git-svn-id: svn://localhost/gambas/trunk@5819 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-30 07:12:36 +00:00
Benoît Minisini
e182fbd2db [INTERPRETER]
* BUG: Continue on fixing "stop watching on end of file" algorithm...


git-svn-id: svn://localhost/gambas/trunk@5818 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-29 20:52:14 +00:00
Benoît Minisini
aa99eaa6bf [INTERPRETER]
* BUG: Fix "stop watching on end of file" algorithm again.


git-svn-id: svn://localhost/gambas/trunk@5817 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-29 20:21:20 +00:00
Benoît Minisini
ef8307793d [INTERPRETER]
* BUG: Do not stop watching when reading up to a specified number of bytes.


git-svn-id: svn://localhost/gambas/trunk@5816 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-29 19:15:14 +00:00
Tobias Boege
11d42882b5 [GB.DATA]
* NEW: Update copyright years.
* NEW: Have a stripped-down version of gb_common_string_temp.h to provide
  STRING_compare() without producing compilation problems.
* NEW: AvlTree is a new Collection-like class implementing a balanced
  binary search tree. It does _not_ utilise hashing in order to maintain
  an order of the literal key strings given by the user (For Each thus
  traverses from smallest to greatest key).
* NEW: Carry in a stripped-down version of Bob Jenkins' lookup3 hash
  algorithm from the Public Domain. It was a last-minute decision to not use
  it in AvlTree to maintain the literal key order.



git-svn-id: svn://localhost/gambas/trunk@5812 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-19 22:48:29 +00:00
Benoît Minisini
4830af856b [INTERPRETER]
* BUG: Disable read watch when reading a stream fails for any reason: i/o
  error, end-of-file...


git-svn-id: svn://localhost/gambas/trunk@5811 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-19 21:45:13 +00:00
Benoît Minisini
6f62f9ae65 [DEVELOPMENT ENVIRONMENT]
* NEW: ImageEditor: Bug fixes. Clicking on the center button of a selected
  shape now selects the next one whose center is about at the same place.

[GB.CLIPPER]
* BUG: Clipper Offset, Union, Intersection... methods now ensure that they
  return closed polygons.
* NEW: Polygon.Orientation is a new property that returns the polygon 
  orientation.


git-svn-id: svn://localhost/gambas/trunk@5806 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-18 16:17:30 +00:00
Benoît Minisini
ae5f540c3b [DEVELOPMENT ENVIRONMENT]
* OPT: ImageEditor: Optimize the pen and eraser tools.
* NEW: ImageEditor: The popup menu allows to define the magnet grid of the 
  current selected shape.

[GB.CLIPPER]
* BUG: Polygon.Clean() does not close the polygon automatically.
* NEW: Polygon.Add() and Polygon.AddPoint() are two new methods to add a
  point to a polygon.
* NEW: Polygon.Remove() is a new method to remove points from a polygon.

[GB.FORM]
* NEW: The ImageView draws nothing by itself if its Draw event is catched.
  Drawing the image is then entirely up to the Draw event handler.


git-svn-id: svn://localhost/gambas/trunk@5805 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-18 00:47:21 +00:00
Benoît Minisini
9666673ccc [GB.FORM]
* NEW: SliderBox is a new control that displays a Slider and a SpinBox,
  both being synchronized.
* NEW: The SidePanel transparent handle is now smaller when the SidePanel
  is hidden.


git-svn-id: svn://localhost/gambas/trunk@5804 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-16 22:35:28 +00:00
Benoît Minisini
7a4dae617b [COMPILER]
* NEW: Implement the "!xxx" syntax for the WITH ... END WITH control 
  structure.


git-svn-id: svn://localhost/gambas/trunk@5798 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-15 14:36:44 +00:00
Benoît Minisini
f318c2ba39 [COMPILER]
* NEW: The ".[xxx]" syntax now can be used inside a WITH <object> ... 
  END WITH control structure. It is a synonymous for "<object>[xxx]".


git-svn-id: svn://localhost/gambas/trunk@5797 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-15 14:16:17 +00:00
Benoît Minisini
e05d425979 [DEVELOPMENT ENVIRONMENT]
* NEW: ImageEditor: Pressing SHIFT with the magic wand substracts to the
  current selection.
* BUG: ImageEditor: Selection handles are correctly updated in all cases.

[GB.CLIPPER]
* NEW: Implementation of the three other boolean operations through the 
  Clipper.Intersection(), Clipper.Difference() and Clipper.ExclusiveOr() 
  methods.


git-svn-id: svn://localhost/gambas/trunk@5795 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-13 23:41:50 +00:00
Benoît Minisini
d452797475 [DEVELOPMENT ENVIRONMENT]
* NEW: ImageEditor: the magic wand automatically merge the current 
  selection.

[GB.CLIPPER]
* NEW: Polygon is a new class that represents a polygon. It can be 
  automatically converted to and from PointF[].
* NEW: All methods now use Polygon and Polygon[] instead of PointF[] and
  PointF[][].
* NEW: Clipper.Union() is a new method that returns the union of an array
  of polygons.


git-svn-id: svn://localhost/gambas/trunk@5794 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-13 22:28:41 +00:00
Benoît Minisini
5203d61969 [DEVELOPMENT ENVIRONMENT]
* NEW: ImageEditor: The image size is displayed wen the mouse cursor is 
  outside of the view. Many bug fixes. The magic wand has been implemented.
  JIT compiler is used to speed-up the routine.

[GB.CLIPPER]
* NEW: Clipper.OffsetPolygons has been renamed as Clipper.Offset.
* NEW: Clipper.Simplify and Clipper.Clean methods have been implemented.

[GB.DESKTOP]
* NEW: DesktopFile.Run() method now returns the created process object.

[GB.IMAGE]
* NEW: Color.Distance() is a new method that returns the RGBA distance 
  between two colours as a floating point value between 0.0 and 1.0.


git-svn-id: svn://localhost/gambas/trunk@5792 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-13 12:18:32 +00:00
Benoît Minisini
d405727342 [INTERPRETER]
* NEW: Process.Ignore() is a new method that tells the interpreter to not 
  wait for the process end. If the interpreter exits, that process is then
  automatically killed.


git-svn-id: svn://localhost/gambas/trunk@5791 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-12 20:48:45 +00:00
Benoît Minisini
30c67b1fcd [INTERPRETER]
* BUG: Process management is now reliable against processes killed and 
  started during process event handlers.


git-svn-id: svn://localhost/gambas/trunk@5790 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-12 20:01:24 +00:00
Benoît Minisini
4f48f05047 [GB.CLIPPER]
* BUG: Fix component information file.


git-svn-id: svn://localhost/gambas/trunk@5789 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-12 01:53:19 +00:00
Benoît Minisini
c0d038b9f2 [DEVELOPMENT ENVIRONMENT]
* NEW: ImageEditor: Invert the current selected shape reverses its points 
  order. Selection offset has been implemented on top of the new 
  gb.clipper component. Many bug fixes.

[GB.CLIPPER]
* NEW: This a new component based on the "Clipper" library. At the moment,
  it only allows to offset a group of polygons from a specified pixel 
  delta.


git-svn-id: svn://localhost/gambas/trunk@5788 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-12 01:50:46 +00:00
Benoît Minisini
3fe9263a0a [DEVELOPMENT ENVIRONMENT]
* NEW: ImageEditor: Fix and enhance magnets management. Add grid. Other bug
  fixes.

[GB.GEOM]
* BUG: Fix signature of RectF.Union and Rect.Intersection methods.


git-svn-id: svn://localhost/gambas/trunk@5784 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-11 07:10:41 +00:00
Tobias Boege
33cf182cd0 [GB.DATA]
* BUG: Remove inclusion of c_avltree.h which is not yet versioned.



git-svn-id: svn://localhost/gambas/trunk@5782 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-10 08:22:34 +00:00
Benoît Minisini
56c65ddcb4 [DEVELOPMENT ENVIRONMENT]
* NEW: ImageEditor: Tons of bug fixes. The current selection and the 
  current pasted image can be moved, rotated and shrinked with the mouse.
* NEW: Image rotation tool.

[GB.DRAW]
* BUG: The PaintMatrix class is now really autonomous. It can be used 
  without a current drawing device.
* NEW: PaintMatrix.Copy() is a new method that copies a matrix.
* NEW: PaintMatrix.Map() is a new method that applies a matrix to a point
  and returns the result.

[GB.FORM]
* NEW: ImageView can take the focus.
* BUG: DirChooser should not crash anymore when it cannot access a 
  bookmark.

[GB.GTK]
* NEW: Implementation of the new PaintMatrix design.

[GB.IMAGE]
* BUG: Image.Fuzzy() argument cannot be greater than 254.

[GB.QT4]
* NEW: Implementation of the new PaintMatrix design.


git-svn-id: svn://localhost/gambas/trunk@5779 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-09 20:42:38 +00:00
Tobias Boege
b4c71163ee [GB.DATA]
* BUG: Fix possible bugs when updating an invalid Current.
* BUG: Really erase old elements instead of just marking them as Null to
  prevent (potential) information leaks.
* OPT: Current and the enumerators (internally) carry list global indices
  (LGI) which can be used as anchor points together with List.Count to speed
  up traversals (always taking the shortest way through the list).
* OPT: Remove workaround code related to an enumerator bug fixed in #5749.
* NEW: Expose List.Current as a virtual object representing the current list
  element which has Append() and Prepend() methods to manipulate the list
  not only around its head. This breaks backwards compatibility.
* NEW: List.Value is what List.Current has meant formerly.
* NEW: Add List.Current.Index and List.Index which are an absolute index of
  the current element into the list. These are guaranteed to be in bounds of
  [-List.Count; List.Count - 1]. Note that each non-negative index has an
  associated negative equivalent and vice versa. They work like the indices
  given to List._get().
* NEW: Add a List.AutoNormalize property which instructs the list to
  automatically make indices (like resulting from a calculation) fit into
  the List bounds preserving the sign of the given index. This effectively
  prevents any "Out of bounds" errors.
* NEW: Add List.MoveTo() to point Current to an index.
* NEW: List.Current.Is{First,Last,Valid} can be used to determine if Current
  is the first or last element of the list or if it is valid, respectively.



git-svn-id: svn://localhost/gambas/trunk@5778 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-09 18:31:20 +00:00
Benoît Minisini
3c1353f233 [DEVELOPMENT ENVIRONMENT]
* NEW: Image editor: Support for gamma, hue, saturation and lightness 
  balance. Read-only mode has been implemented. Many bug fixes everywhere.

[GB.FORM]
* NEW: Remove Brightness and Contrast properties from the ImageView 
  control.

[GB.IMAGE]
* NEW: Image.BrightnessContrast has been removed.
* NEW: New balance methods: Image.Brightness, Image.Contrast, Image.Gamma,
  Image.Hue, Image.Saturation, Image.Lightness.
* NEW: Image.BeginBalance() and Image.EndBalance() are two new methods that
  allow to group calls to the previous methods, so that all the balances
  are done in one shot.


git-svn-id: svn://localhost/gambas/trunk@5776 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-07 03:14:27 +00:00
Benoît Minisini
e63e8777a1 [DEVELOPMENT ENVIRONMENT]
* NEW: Image editor: Image brightness and constrast, clipboard management,
  cut, copy & paste have been implemented. Many fixes everywhere.
* NEW: Image editor: Resize dialog has been enhanced.

[GB.IMAGE]
* BUG: Image.Copy() now checks its arguments better, so that it does not
  generate images with garbage inside.
* NEW: Image.BrightnessContrast() is a new method that allows to change the
  brightness and contrast of an image.
* OPT: Internal routines for color space conversion between HSV and RGB 
  have been optimized.

[GB.FORM]
* NEW: The ImageView Draw event now takes the image that has been drawn as 
  argument.
* NEW: ImageView.Brightness and ImageView.Contrast are two new properties
  that allow to define the corresponding effects applied to the displayed
  image.


git-svn-id: svn://localhost/gambas/trunk@5775 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-06 17:28:13 +00:00
Benoît Minisini
c9ca5ab982 [CONFIGURATION]
* NEW: Update copyright year to 2013.

[GB.FORM]
* NEW: ImageView is a new control that allows to view an image inside a 
  scrolled view, at different zoom levels.
* BUG: FileProperties now works correctly if 'gb.desktop' is not used.
* NEW: The FileProperties preview tab now uses an ImageView control and has
  a toolbar to zoom the preview.
* BUG: Add the 'linux' and 'gnu' icon in the stock icon list.


git-svn-id: svn://localhost/gambas/trunk@5770 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-03 15:38:01 +00:00
Benoît Minisini
d860a7a53c [DEVELOPMENT ENVIRONMENT]
* NEW: Add a menu item in the "Debug" menu to define ine one click if an 
  embedded HTTP server must be used.
* NEW: The 'gb.httpd' component can be checked explicitely.
* BUG: Fix the local variable view when they are displayed in columns.

[WIKI CGI SCRIPT]
* NEW: The indexes are more compact now.

[INTERPRETER]
* NEW: The option '-H' is assumed if the project depends on the 'gb.httpd' 
  component explicitely.

[GB.FORM]
* BUG: Balloon: Fix the bubble drawing routine.
* NEW: The GB_STOCK_DEBUG environment variable must be used now instead of 
  the GB_STOCK variable.

[GB.HTTPD]
* BUG: Many fixes in CGI handling if the project is in debugging mode.
* NEW: Replace "thttpd" strings by "gb.httpd".
* NEW: Simplify the default HTML error page.
* NEW: If the GB_HTTPD_DEBUG environment variable is set to "1", then all
  HTTP server debugging messages are printed to the standard error. 
  Otherwise, nothing is printed.


git-svn-id: svn://localhost/gambas/trunk@5769 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-02 21:57:49 +00:00
Benoît Minisini
eeec97396c [DEVELOPMENT ENVIRONMENT]
* NEW: When the 'gb.web' component is selected, a new option is available 
  in the project property dialog: "Run in an embedded HTTP server".

(INTERPRETER]
* NEW: GB.System.Debug() is a new API that allows to know if the 
  interpreter is run in debugging mode.

[GB.DEBUG]
* NEW: The debugger tells the IDE when its prompt is the first one.

[GB.HTTPD]
* NEW: Reset locale to "C" before running the http server.
* BUG: The CGI "SCRIPT_NAME" variable is set to "/".
* NEW: The default CGI timeout is now 10 minutes.
* NEW: Behave accurately when run in debugging mode : only one CGI script
  at a time is allowed.
* NEW: When run in debugging mode, there is no CGI timeout.


git-svn-id: svn://localhost/gambas/trunk@5765 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-07-27 17:23:04 +00:00
Benoît Minisini
a50535d779 [CONFIGURATION]
* NEW: Components can have a new state: "Deprecated".

[DEVELOPMENT ENVIRONMENT]
* NEW: Add a filter to the component tab of the project property dialog.

[WEBSITE MAKER]
* BUG: Translations came back.

[GB.OPTION]
* NEW: This component is now deprecated.

[GB.V4L]
* NEW: This component is now deprecated.


git-svn-id: svn://localhost/gambas/trunk@5761 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-07-23 00:56:01 +00:00
Benoît Minisini
bd3410e80f [INTERPRETER]
* NEW: GB.ReturnSingle() is a new API that allows to return a Single from a 
  method or property implementation routine.

[GB.NET.POP3]
* NEW: Pop3Client has a new Remove() method to delete a message from its 
  index. Pop3Client.Remove(n) is just a synonymous for 
  Pop3Client[n].Delete.

[GB.OPENAL]
* NEW: New component for the OpenAL 3D audio library. Work in progress...

[GB.OPENGL]
* BUG: Fix a possible crash in GL.GenTextures(). I guess that bug will have 
  to be fixed in other equivalent routines.


git-svn-id: svn://localhost/gambas/trunk@5753 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-07-21 16:19:26 +00:00
Benoît Minisini
edd3bf6024 [INTERPRETER]
* BUG: UnBase64() works correctly now. It does not add extra null bytes 
  anymore.


git-svn-id: svn://localhost/gambas/trunk@5752 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-07-21 10:15:54 +00:00
Benoît Minisini
3ca2270bd4 [INTERPRETER]
* BUG: Oops, remove debugging message.


git-svn-id: svn://localhost/gambas/trunk@5751 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-07-21 00:57:48 +00:00
Benoît Minisini
b0ac29b0d9 [INTEPRETER]
* NEW: Enumeration objects are immediately freed when the enumeration is
  stopped.



git-svn-id: svn://localhost/gambas/trunk@5750 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-07-20 23:57:44 +00:00
Benoît Minisini
5436bc8a2d [INTERPRETER]
* BUG: GB.NextEnum() does not return stopped enumerations anymore.


git-svn-id: svn://localhost/gambas/trunk@5749 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-07-20 23:56:55 +00:00
Benoît Minisini
588cc035be [GB.DB]
* BUG: Fix a possible memory corruption in blob management.


git-svn-id: svn://localhost/gambas/trunk@5739 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-07-19 18:12:19 +00:00
Benoît Minisini
9332afbbea [DEVELOPMENT ENVIRONMENT]
* NEW: Add a file properties view in the CSV import dialog.

[INFORMER]
* BUG: Write boolean constants in information files as "T" and "", not 
  "True" and "False". It breaks things.

[GB.FORM]
* NEW: The file properties dialog has an automatic preview tab for image 
  files.

[GB.DB.FORM]
* NEW: The DataView control can edit blob fields now.


git-svn-id: svn://localhost/gambas/trunk@5736 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-07-19 11:02:32 +00:00
Benoît Minisini
2a7ae292b5 [GB.DB]
* BUG: Using a database URL in the Connection constructor works now.


git-svn-id: svn://localhost/gambas/trunk@5735 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-07-19 10:58:46 +00:00
Tobias Boege
4bc9b23c61 [GB.DATA]
* OPT: Shrink internal data structures and adjust algorithms likely
  improving performance (noticably for the 'random' case of my stress test -
  the 'best' case is almost on a par with Variant[] now).
* BUG: Fix difficult-to-spot List.Take() bugs due to difficulties with the
  former internal data structures. The class now survives all my test cases
  (without misbehaviour under valgrind).
* BUG: List.Take() never raises "Out of bounds" anymore if the list is empty
  because that's an inappropriate error for a *circular* list. It raises an
  error if an attempt is made to Take() an invalid Current which includes
  the case that the List is empty.



git-svn-id: svn://localhost/gambas/trunk@5731 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-07-13 08:53:49 +00:00
Benoît Minisini
0139ee4b99 [INTERPRETER]
* NEW: MATCH is a new operator that automatically load the gb.pcre 
  component to implement PCRE pattern matching. The syntax is the same as
  the LIKE operator.

[COMPILER]
* NEW: Add a new MATCH operator.

[GB.FORM]
* BUG: The directory contents size task does not abort anymore when 
  accessing an unreadable files or directory. It now ignore them.
* NEW: When errors are raised while browsing the contents of a directory,
  the file properties dialog display them is a new tab.

[GB.PCRE]
* NEW: Create an API interface for allowing other components to use PCRE
  regular expressions.


git-svn-id: svn://localhost/gambas/trunk@5730 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-07-12 23:57:53 +00:00
Benoît Minisini
29ab774c1c [DEVELOPMENT ENVIRONMENT]
* BUG: Fix the frame position when dragging a control from the toolbar on 
  a container.
* NEW: The project file properties dialog is now based on the new 
  FileProperties control.

[INTERPRETER]
* NEW: GB.OnErrorBegin() and GB.OnErrorEnd() are two new APIs that allow to
  register cleanup routines that are called when an error is raised between
  the GB.OnErrorBegin() call and the GB.OnErrorEnd() call.

[INFORMER]
* BUG: The value of  Float constants is now correctly dumped in *.info 
  files.

[GB.COMPLEX]
* NEW: Implement the same Complex.ToString() method as in gb.gsl.

[GB.DESKTOP]
* NEW: Desktop.DataDir is a new property that returns the directory where 
  the application must store its user-specific data.
* NEW: Desktop.ConfigDir is a new property that returns the directory where 
  the application must store its user-specific configuration.
* NEW: Desktop.CacheDir is a new property that returns the directory where 
  the application must store its user-specific cached data.
* NEW: Desktop.RuntimeDir is a new property that returns the directory 
  where the application must store its temporary runtime files.
* BUG: Fix a possible crash when searching a mimetype from the file 
  extension.

[GB.FORM]
* NEW: FileProperties is a new control that displays the properties of a 
  specific file or directory. It automatically computes the size of 
  directory contents through a background task.
* BUG: Setting the TabPanel.Border property now correctly refreshes its 
  layout.
* NEW: The stock icon map now can declare specific icons for specific 
  widget themes.

[GB.FORM.STOCK]
* NEW: Fix the 'tools' icon for elementary icon theme.

[GB.GSL]
* BUG: Fix the Vector.ToString() declaration.

[GB.QT4.EXT]
* NEW: The Editor.LineOffset property has been renamed as 
  Editor.LineNumberOffset.


git-svn-id: svn://localhost/gambas/trunk@5725 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-07-10 22:17:27 +00:00
Benoît Minisini
18c9b762fc [INTERPRETER]
* BUG: A stream redirected through the 'Begin' method checks that stream is
  ready for writing only when the 'Send' method is called. Between the 
  'Begin' and 'Send' calls, the PRINT and WRITE instructions will always
  succeed.


git-svn-id: svn://localhost/gambas/trunk@5723 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-07-06 19:00:41 +00:00
Benoît Minisini
74fb91552e [EXAMPLES]
* NEW: MediaPlayer: Display the name of the device, not just its system 
  path.

[INTERPRETER]
* BUG: In File.Load(), workaround virtual files (like those located in 
  '/sys') whose official size is not their real size.


git-svn-id: svn://localhost/gambas/trunk@5712 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-06-29 16:11:32 +00:00
Benoît Minisini
2973820c70 [INTERPRETER]
* BUG: Don't crash when calling a dynamic _call special method in a static 
  context. Raise an error instead.


git-svn-id: svn://localhost/gambas/trunk@5707 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-06-19 02:48:34 +00:00
Benoît Minisini
57a77280a1 [COMPILER]
* BUG: Generate correct information files for components having string 
  constants with newline inside.


git-svn-id: svn://localhost/gambas/trunk@5706 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-06-19 02:01:08 +00:00
Benoît Minisini
70eca15fb4 [INTERPRETER]
* BUG: Do not search for Application_Error if the project startup class 
  has not be loaded yet.

[GB.GUI.BASE]
* NEW: Typing keys inside an IconView should not crash anymore.


git-svn-id: svn://localhost/gambas/trunk@5697 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-06-09 21:30:43 +00:00
Benoît Minisini
45c481c1b4 [EXAMPLES]
* NEW: The Fractal example now uses eight background tasks to draw the 
  fractal.

[GB.IMAGE]
* NEW: Image.Pixels is a new property that allows to return the image 
  pixels as an integer array, and to set the image pixels from an integer
  array.


git-svn-id: svn://localhost/gambas/trunk@5687 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-05-30 21:16:09 +00:00
Benoît Minisini
21f0837572 [INTERPRETER]
* BUG: Correctly handle functions with a variable number of arguments when
  an array conversion occurs during argument parsing.
* BUG: The debugger now correctly displays and modifies arguments of 
  functions having a variable number of arguments.

[GB.DEBUG]
* BUG: The debugger now correctly displays and modifies arguments of 
  functions having a variable number of arguments.


git-svn-id: svn://localhost/gambas/trunk@5686 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-05-30 01:10:59 +00:00
Benoît Minisini
0812020209 [CONFIGURATION]
* NEW: Update VERSION file.

[DEVELOPMENT ENVIRONMENT]
* BUG: If the desktop password wallet is not available, do not crash 
  anymore, but display an error message instead.

[INTERPRETER]
* BUG: Some fixes in Application_Error method management.

[GB.EVAL.HIGHLIGHT]
* BUG: Some fixes in HTML highlighting.

[GB.QT.4.EXT]
* NEW: Editor: jumping to the next procedure from the current one now goes 
  to the end of the file.


git-svn-id: svn://localhost/gambas/trunk@5684 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-05-28 20:48:43 +00:00
Benoît Minisini
08a1345950 [INTERPRETER]
* BUG: Prevent Application_Error from being called recursively.


git-svn-id: svn://localhost/gambas/trunk@5681 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-05-26 11:18:55 +00:00
Tobias Boege
8fbbf67c59 [CONFIGURATION]
* BUG: Revert rev#5679 as it was unneeded.



git-svn-id: svn://localhost/gambas/trunk@5680 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-05-26 10:20:25 +00:00
Tobias Boege
0bb521e279 [CONFIGURATION]
* BUG: Make {gba,gbc,gbi,gbx}.c depend on trunk_version.h so that they are
  rebuilt when it changes in order to always show the correct version.



git-svn-id: svn://localhost/gambas/trunk@5679 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-05-26 09:14:51 +00:00
Benoît Minisini
daaf410362 [DEVELOPMENT ENVIRONMENT]
* NEW: If the IDE throws an uncatched error, try to save all modified files
  before aborting.

[INTERPRETER]
* NEW: If a static public method named Application_Error() is defined in 
  the startup class, then this method will be called when an unhandled 
  error is thrown, just before the program is aborted.


git-svn-id: svn://localhost/gambas/trunk@5678 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-05-25 14:00:40 +00:00
Benoît Minisini
47d9021e13 [CONFIGURATION]
* BUG: Forgot to make the 'trunk_version.h' rule phony.


git-svn-id: svn://localhost/gambas/trunk@5677 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-05-25 13:30:06 +00:00
Benoît Minisini
26a85ce106 [CONFIGURATION]
* NEW: The trunk version is now generated at compilation time through 
  custom rules and a generated include in the Makefile.am file.

[EXAMPLES]
* NEW: Use the new HttpClient Progress event and its properties in the 
  HttpGet networking example.


git-svn-id: svn://localhost/gambas/trunk@5676 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-05-25 13:23:39 +00:00
Benoît Minisini
1da147d6e5 [CONFIGURATION]
* NEW: The trunk version is now put in the 'config.h' file of the /main 
  source directory. No compilation flag is used anymore.
* NEW: All Gambad executables return the trunk revision number when they 
  are called with the '-V' option.

[GB.WEB]
* BUG: The Request.Fields property now can be read without reading the 
  value of a request field first.


git-svn-id: svn://localhost/gambas/trunk@5674 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-05-22 23:03:48 +00:00
Tobias Boege
947c357489 [CONFIGURATION]
* BUG: Execute the svn command for TRUNK_VERSION within the C locale to
  avoid surprises when grepping the output.



git-svn-id: svn://localhost/gambas/trunk@5673 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-05-22 17:33:17 +00:00
Tobias Boege
2217b3d6f0 [CONFIGURATION]
* BUG: Define the TRUNK_VERSION macro in gbx's Makefile.am which is less
  error-prone and other parts of the build process won't use it anyway.
  automake thinks that the $(shell ...) call shall a variable and warns but
  that can safely be ignored I think.



git-svn-id: svn://localhost/gambas/trunk@5672 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-05-22 14:29:01 +00:00
Tobias Boege
f347f30791 [GB.DATA]
* NEW: Fix memory leaks from Circular cleanup.



git-svn-id: svn://localhost/gambas/trunk@5670 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-05-21 13:09:29 +00:00
Tobias Boege
2bf1efd58b [CONFIGURATION]
* NEW: The TRUNK_VERSION macro is now defined to the overall SVN repository
  revision if Gambas is compiled from inside a repository. The value is
  detected by the Makefiles and passed as a command line definition to gcc.

[INTERPRETER]
* NEW: --version also prints the SVN revision number when gbx3 was compiled
  from a SVN repository.



git-svn-id: svn://localhost/gambas/trunk@5662 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-05-19 14:02:29 +00:00
Benoît Minisini
e877847c2e [GB.DRAW]
* NEW: Remove geometry classes source files.


git-svn-id: svn://localhost/gambas/trunk@5642 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-05-04 17:24:21 +00:00
Benoît Minisini
3721bbd95c [GB.DRAW]
* NEW: Remove geometry classes and put them in the gb.geom component.

[GB.GEOM]
* NEW: New hidden component that implements all geometry classes: Point,
  PointF, Rect and RectF.


git-svn-id: svn://localhost/gambas/trunk@5641 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-05-04 17:23:17 +00:00
Benoît Minisini
9d6ba888b3 [GB.DESKTOP]
* BUG: Fix the dependencies of the component project.


git-svn-id: svn://localhost/gambas/trunk@5639 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-05-04 14:17:15 +00:00
Benoît Minisini
58e19c65a1 [COMPILER]
* BUG: Correctly handle public string constants larger than 255 characters.


git-svn-id: svn://localhost/gambas/trunk@5638 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-05-04 02:54:35 +00:00
Benoît Minisini
59756d47e5 [COMPILER]
* BUG: Now a FOR loop with no loop variable correctly raises a syntax 
  error.


git-svn-id: svn://localhost/gambas/trunk@5637 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-05-03 22:45:11 +00:00
Benoît Minisini
0a5be7890d [INTERPRETER]
* BUG: Don't wait for a stream to be ready for reading if the stream has no
  underlying file descriptor.


git-svn-id: svn://localhost/gambas/trunk@5633 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-05-01 13:02:38 +00:00
Benoît Minisini
a7855016ca [DEVELOPMENT ENVIRONMENT]
* NEW: "Compress all" and "Uncompress all" action on project sub-
  directories.
* BUG: Do not crash when checking for completion in text editor.

[INTERPRETER]
* BUG: Void string contants work correctly now.

[COMPILER]
* BUG: Functions now can have up to 65536 bytecode operations instead of
  32768.
* NEW: Support for the Parent property of WebPage.
* NEW: WebPage markups attributes can use the <%...%> syntax.

[GB.EVAL.HIGHLIGHT]
* NEW: HTML highlighting has be rewritten. <%...%> markups are taken into
  account inside <style> and <script> markups.

[GB.FORM]
* NEW: FileView and DirView now display hidden files lightly, and symbolic
  links in italic.
* NEW: File properties dialog in FileChooser and DirChooser.

[GB.FORM.STOCK]
* NEW: Default icons for some mime types.

[GB.GTK]
* BUG: Menu click event is now triggered the same way as in gb.qt4.
* BUG: Control.HasFocus() works correctly now.
* BUG: Modal windows cannot be shrinked less then their initial size 
  anymore.

[GB.GUI.BASE]
* NEW: IconView, TreeView, ListView and ColumnView items now have a 
  RichText property.

[GB.WEB]
* NEW: WebPage.Parent property returns the parent webpage that includes the
  current webpage with the <<...>> markup.



git-svn-id: svn://localhost/gambas/trunk@5623 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-04-29 21:27:11 +00:00
Benoît Minisini
8f054e7655 [DEVELOPMENT ENVIRONMENT]
* NEW: Allow a component to have a requirement on the XML implementation 
  feature (i.e. 'gb.xml' or 'gb.libxml').


git-svn-id: svn://localhost/gambas/trunk@5617 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-04-10 11:07:38 +00:00
Benoît Minisini
80e53c8dbd [INTERPRETER]
* BUG: Fix a memory leak when trying to run a non-existant program with 
  EXEC or SHELL.


git-svn-id: svn://localhost/gambas/trunk@5614 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-04-07 14:21:48 +00:00
Benoît Minisini
9cda9ad176 [ARCHIVER]
* BUG: The previous fix was incorrect. We can now really create an 
  executable when the project directory and the target directory are not on 
  the same device.


git-svn-id: svn://localhost/gambas/trunk@5604 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-03-31 06:24:30 +00:00
Benoît Minisini
9f1286f161 [ARCHIVER]
* BUG: Be able to create the executable file if /tmp and the target 
  directory are not on the same device.


git-svn-id: svn://localhost/gambas/trunk@5603 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-03-31 05:51:47 +00:00
Benoît Minisini
165be4a66a [INTERPRETER]
* NEW: Clean up object referencement macros.


git-svn-id: svn://localhost/gambas/trunk@5601 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-03-30 13:51:10 +00:00
Benoît Minisini
2231d3f2e6 [INTERPRETER]
* BUG: Correctly free things then something bad happens while starting a 
  child process.


git-svn-id: svn://localhost/gambas/trunk@5600 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-03-30 12:15:18 +00:00
Benoît Minisini
ca7856bf80 [INTERPRETER]
* NEW: Clean up allocation macros.

{GB.EVAL.HIGHLIGHT]
* NEW: Add 'transition' to the CSS keywords.


git-svn-id: svn://localhost/gambas/trunk@5599 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-03-29 23:33:01 +00:00
Benoît Minisini
31a185f7e0 [DEVELOPMENT ENVIRONMENT]
* NEW: Add translations for details of the E_CHILD error message.

[INTERPRETER]
* NEW: If the program name of EXEC is an absolute path, immediately raise 
  an error if it does not exist.


git-svn-id: svn://localhost/gambas/trunk@5597 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-03-28 21:33:19 +00:00
Benoît Minisini
71167549bf [INTERPRETER]
* NEW: Add debugging code for issue 415.


git-svn-id: svn://localhost/gambas/trunk@5586 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-03-23 18:25:12 +00:00
Benoît Minisini
43b8448af8 [INTERPRETER]
* BUG: Don't flush the process output at process end if the process stream 
  has already been closed.


git-svn-id: svn://localhost/gambas/trunk@5585 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-03-23 18:12:36 +00:00
Benoît Minisini
54f3e89585 [INTERPRETER]
* BUG: When the default date format associated with the current locale is 
  not a numeric one, use the american format. It was done for 'en_PH' 
  locale.


git-svn-id: svn://localhost/gambas/trunk@5583 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-03-18 22:24:18 +00:00
Benoît Minisini
45d8058159 [GB.GUI.BASE]
* NEW: Common renaming routine for TextView, ListView, ColumnView and 
  IconView.
* NEW: IconView.Renaming is a new property that returns if an item is being
  renamed.
* BUG: Renaming an IconView item now correctly works if the IconView is 
  sorted.
* NEW: FileChooser and DirChooser now can rename or delete files.

[GB.QT4]
* NEW: TextArea inner margin is now two pixels when there is a border, and
  zero pixels when there is no border.


git-svn-id: svn://localhost/gambas/trunk@5571 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-03-03 22:34:30 +00:00
Benoît Minisini
514b6a95a5 [INTERPRETER]
* NEW: Defining the PWD environment variable in a SHELL or EXEC instruction
  changes the working directory of the child process.


git-svn-id: svn://localhost/gambas/trunk@5569 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-03-02 22:42:05 +00:00
Benoît Minisini
33bf1fb500 [INTERPRETER]
* BUG: When the parent of an observer is detected invalid while raising an 
  event, detach the observer and not the observed object!


git-svn-id: svn://localhost/gambas/trunk@5567 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-03-02 02:11:17 +00:00
Benoît Minisini
1649f86d86 [GB.DRAW]
* BUG: Fix a stupid typo. Now PointF now works correctly!


git-svn-id: svn://localhost/gambas/trunk@5566 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-02-25 17:25:56 +00:00
Laurent Carlier
9797312c12 Fix typos
git-svn-id: svn://localhost/gambas/trunk@5557 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-02-21 15:53:06 +00:00
Laurent Carlier
eae892152f [CONFIGURATION]
* BUG: Uninstall should honor XDG_UTILS variable during 'make uninstall'.

This fix building in ArchLinux.



git-svn-id: svn://localhost/gambas/trunk@5556 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-02-21 15:37:19 +00:00
Benoît Minisini
f79bde1d6a [INTERPRETER]
* NEW: GB.Stream.Eof() is a new API that returns if there is something to 
  read on a stream, by taking the 'Line Input' internal buffer into 
  account.

[GB.NET.CURL]
* NEW: Now the Read event is raised again and again while there is 
  something to read.


git-svn-id: svn://localhost/gambas/trunk@5554 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-02-17 11:05:34 +00:00
Benoît Minisini
9c829d258e [INTERPRETER]
* NEW: A new interpreter API that allows a component to tell that its 
  custom stream data is immediately available.
* BUG: GB.Stream.SetBytesRead() now increments the internal number of read
  bytes, so that the 'Line Input' buffer is taken into account.

[GB.NET.CURL]
* NEW: The FtpClient or HttpClient Read event is now called as long as 
  there is something to read *and* the event handler actually read at least
  one byte.
* BUG: The handle of a curl object is now -1 (i.e. it is not available).
* BUG: The data received by a curl object is immediately available to the
  READ instruction.


git-svn-id: svn://localhost/gambas/trunk@5553 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-02-17 00:44:48 +00:00
Benoît Minisini
acea48d851 [INTERPRETER]
* BUG: Display an accurate error message if the project cannot be started.


git-svn-id: svn://localhost/gambas/trunk@5525 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-01-29 00:53:21 +00:00
Benoît Minisini
98c2ec299b [INTERPRETER]
* BUG: Fix structure field alignment mismatch that led to memory leaks.


git-svn-id: svn://localhost/gambas/trunk@5519 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-01-27 08:32:01 +00:00
Benoît Minisini
b21341ec7c [INTERPRETER]
* BUG: Collection cannot be converted to an array.


git-svn-id: svn://localhost/gambas/trunk@5516 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-01-24 22:29:27 +00:00
Benoît Minisini
746b155d65 [INTERPRETER]
* BUG: Ending a process was removing the watched file descriptors twice in 
  some cases.


git-svn-id: svn://localhost/gambas/trunk@5511 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-01-19 17:42:09 +00:00
Benoît Minisini
4f9bedfb51 [COMPILER]
* BUG: Correctly raise an error if we use the New keyword inside an 
  embedded array declaration.


git-svn-id: svn://localhost/gambas/trunk@5506 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-01-14 01:26:16 +00:00
Benoît Minisini
302d0c8fe3 [INTERPRETER]
* BUG: Fix memory leak in Class[].Signature property.


git-svn-id: svn://localhost/gambas/trunk@5502 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-01-12 22:44:52 +00:00
Benoît Minisini
53d4d9c752 [INTERPRETER]
* BUG: Fixes of bugs detected by Coverity Scan.
* BUG: Process output is correctly flushed at process exit now.

[COMPILER]
* BUG: Fixes of bugs detected by Coverity Scan.

[ARCHIVER]
* BUG: Fixes of bugs detected by Coverity Scan.

[INFORMER]
* BUG: Fixes of bugs detected by Coverity Scan.

[GB.COMPRESS]
* BUG: Fixes of bugs detected by Coverity Scan.

[GB.DEBUG]
* BUG: Fixes of bugs detected by Coverity Scan.

[GB.EVAL]
* BUG: Fixes of bugs detected by Coverity Scan.

[GB.IMAGE]
* BUG: Fixes of bugs detected by Coverity Scan.

[GB.IMAGE.EFFECT]
* BUG: Fixes of bugs detected by Coverity Scan.

[GB.VB]
* BUG: Fixes of bugs detected by Coverity Scan.


git-svn-id: svn://localhost/gambas/trunk@5493 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-01-06 16:13:31 +00:00
Tobias Boege
446ca03396 [GB.DATA]
* OPT: Remove unused function (reported by Coverity Scan/Emil Lenngren)



git-svn-id: svn://localhost/gambas/trunk@5491 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-01-05 14:28:37 +00:00
Benoît Minisini
b8260e2aba [INTERPRETER]
* BUG: Some fixes of bugs detected by Coverity Scan.
* NEW: Raise a 'Filename too long' error now when a too long file path is
  detected inside a file management function.
* NEW: System.TimeZone is a new property that returns the current timezone
  as an offset in seconds that must be added to a local time to get UTC.

[COMPILER]
* BUG: Some fixes of bugs detected by Coverity Scan.

[GB.IMAGE]
* BUG: Some fixes of bugs detected by Coverity Scan.


git-svn-id: svn://localhost/gambas/trunk@5490 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-01-04 23:24:37 +00:00
Benoît Minisini
13dd04d5a4 [DEVELOPMENT ENVIRONMENT]
* BUG: Correctly initalize the help browser layout.
* NEW: Use the new Image.Fuzzy() method to draw a drop shadow in the 
  welcome screen text.

[COMPILER]
* NEW: The GB_PCODE_VERSION environment variable can take 'X.YY' as version 
  instead of 'X.YY.ZZZZ', which is actually useless.

[GB.COMPRESS]
* BUG: Remove useless code never compiled.

[GB.DBUS]
* BUG: Fix a possible memory leak in a debugging routine.

[GB.GSL]
* BUG: Remove useless code never compiled.

[GB.GTK]
* NEW: Implement a cairo surface cache in the Image class, so that drawing
  the same image several times trigger a GdkPixbuf -> Cairo surface 
  conversion once.
* BUG: Slider and Scrollbar controls now raise the Change event only if the
  value has really changed.

[GB.NET]
* BUG: Remove useless code never compiled.

[GB.NET.CURL]
* BUG: Remove useless code never compiled.

[GB.NET.SMTP]
* BUG: Remove useless code never compiled.

[GB.V4L]
* BUG: Remove useless code never compiled.


git-svn-id: svn://localhost/gambas/trunk@5489 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-01-03 22:06:35 +00:00
Benoît Minisini
1e086db43d [COMPILER]
* NEW: The GB_PCODE_VERSION environment variable tells the compiler to use
  a different bytecode version that the current one. Use that hack only if
  you know exactly what you are doing.


git-svn-id: svn://localhost/gambas/trunk@5488 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-01-03 11:01:05 +00:00
Benoît Minisini
f0d6f1a256 [GB.GTK]
* NEW: Remove old GDK / X11 drawing code.

[GB.IMAGE]
* NEW: Image.Fuzzy() is a new blur method based on the 'StackBlur'
  algorithm made by Mario Klingemann.


git-svn-id: svn://localhost/gambas/trunk@5487 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-01-02 15:56:24 +00:00
Benoît Minisini
dbf5689f9a [INTERPRETER]
* BUG: Check process stack pointer with a bigger margin so that we get 
  'Stack overflow' errors instead of segfaults.

[GB.GTK]
* BUG: Fix menu bar layout when the window is shown for the first time.

[GB.GUI.BASE]
* BUG: Don't set the background color of ScrollArea scrollbars.

[GB.QT4]
* NEW: Remove any useless reference to Q3ScrollView.
* OPT: Paint.ClipRect is now optimized when the clipping region is a single
  rectangle.


git-svn-id: svn://localhost/gambas/trunk@5481 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-01-01 11:55:40 +00:00
Benoît Minisini
1c940acd0c [WIKI CGI SCRIPT]
* BUG: Fix history page.

[GB.GUI.BASE]
* OPT: ScrollArea scrollbars should not flicker anymore during a resizing
  operation.
* BUG: Fix HSPlit and VSplit  behaviour when the visibility of a child
  changes.
* NEW: HSplit.Layout and VSplit.Layout now return the width of an hidden 
  child as zero.

[GB.QT4]
* OPT: Optimize clipping when the clipping area is a rectangle.


git-svn-id: svn://localhost/gambas/trunk@5480 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-12-31 03:13:04 +00:00
Benoît Minisini
d76ae3b004 [INTERPRETER]
* NEW: Pointer to string conversion now uses hexadecimal numbers.

[GB.QT4]
* BUG: Clipping now works when drawing pictures or images.


git-svn-id: svn://localhost/gambas/trunk@5478 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-12-30 14:34:43 +00:00
Benoît Minisini
2c88e76fd3 [INTERPRETER]
* BUG: Fix compilation on 32 bits systems.

[GB.FORM]
* NEW: DateChooser got a boolean Border property.
* NEW: ColorChooser got a boolean Border property.

[GB.GTK]
* BUG: Style drawing methods should be correctly clipped now.
* BUG: Compilation with older versions of librsvg should work now.
* BUG: Setting the Paint.Font property with a control font has no side 
  effects anymore.
* BUG: Drawing richt text and getting rich text size now wrap the text the
  same way.


git-svn-id: svn://localhost/gambas/trunk@5474 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-12-29 23:19:20 +00:00
Benoît Minisini
d8d9e98961 [INTERPRETER]
* NEW: Pointer can be converted to String like Integer or Long.

[DEVELOPMENT ENVIRONMENT]
* BUG: Correctly update the '~/.fonts.conf' file when installing the Gambas 
  font.

[GB.GTK]
* NEW: Remove HSplit and VSplit controls.

[GB.GUI.BASE]
* NEW: HSplit and VSplit controls are now implemented with Gambas.
* BUG: Fix scrollbar layout of ScrollArea and all its descendants.

[GB.QT4]
* NEW: Remove HSplit and VSplit controls.


git-svn-id: svn://localhost/gambas/trunk@5472 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-12-29 10:17:38 +00:00
Benoît Minisini
4513050c81 [INTERPRETER]
* BUG: Do not leak memory if System.Shell is used.


git-svn-id: svn://localhost/gambas/trunk@5470 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-12-27 15:18:16 +00:00
Benoît Minisini
d5cc03fbdc [INTERPRETER]
* BUG: Add the Even() and Odd() routines to the information file.


git-svn-id: svn://localhost/gambas/trunk@5468 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-12-24 13:38:17 +00:00
Benoît Minisini
dfcdd53552 [INTERPRETER]
* NEW: Check at startup that temporary directories are really directories 
  and not symbolic links.


git-svn-id: svn://localhost/gambas/trunk@5464 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-12-22 19:51:30 +00:00
Benoît Minisini
c61a906431 [DEVELOPMENT ENVIROMNENT]
* BUG: Do 'svn cleanup' in the parent directory of the project.

[COMPILER]
* BUG: Do not emit inaccurate line number information for forms and global
  variables with no initialization.

[INTERPRETER]
* BUG: When creating the process temporary directory, check the permissions
  of both the top directory (gambas.<userid>) and the process directory 
  inside.


git-svn-id: svn://localhost/gambas/trunk@5461 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-12-22 00:23:51 +00:00
Benoît Minisini
643ef0c03c [COMPILER]
* BUG: Remove debugging messages.


git-svn-id: svn://localhost/gambas/trunk@5453 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-12-19 21:58:47 +00:00
Benoît Minisini
ca59b5880f [COMPILER]
* NEW: Emit line positions in debugging information for global 
  initializations.


git-svn-id: svn://localhost/gambas/trunk@5452 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-12-19 21:55:16 +00:00
Emil Lenngren
c7653c8bcf [GB.JIT]
* NEW: Support the new QUIT syntax with an exit code.
* NEW: Support raising events in parent classes.


git-svn-id: svn://localhost/gambas/trunk@5447 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-12-19 02:10:22 +00:00
Benoît Minisini
108ef641cc [GB.DRAW]
* BUG: Correctly check that there is a current paint device in all Paint 
  methods and properties.


git-svn-id: svn://localhost/gambas/trunk@5440 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-12-15 22:59:57 +00:00
Benoît Minisini
7802e56a7b [INTERPRETER]
* BUG: Ensure that the interpreter temporary directory is owned by the 
  current user and that its rights are accurate. Otherwise abort.


git-svn-id: svn://localhost/gambas/trunk@5438 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-12-15 02:27:42 +00:00
Benoît Minisini
acbd6bd8a1 [DEVELOPMENT ENVIRONMENT]
* BUG: Fix how documentation pages of code and libraries written in Gambas 
  are generated.
* NEW: Some little fixes in Gambas terminal fonts.

[GB.COMPRESS.ZLIB]
* BUG: Fix the driver that was not working anymore.

[GB.COMPRESS.BZLIB2]
* BUG: Fix the driver that was not working anymore.


git-svn-id: svn://localhost/gambas/trunk@5435 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-12-14 01:47:32 +00:00
Benoît Minisini
9f8dbc2f7d [GB.IMAGE]
* NEW: New API to return the image format as a string.

[GB.IMAGE.EFFECT]
* BUG: Fix the histogram inversion, and inversion in other effects with 
  GTK+ images.


git-svn-id: svn://localhost/gambas/trunk@5417 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-12-08 02:17:49 +00:00
Benoît Minisini
5a547fbb10 [DEVELOPMENT ENVIRONMENT]
* NEW: Use a big font for displaying cursor position in editors.

[GB.DRAW]
* NEW: Paint.Arc() and Paint.Ellipse() take a new optional boolean argument
  that tells if a pie must be drawn instead of a chord.

[GB.FORM]
* NEW: LCDLabel now has an HighlightColor property that allows to define 
  the color of the glow. By default, no glow is drawn.

[GB.GTK]
* BUG: Fix control background drawing routine.
* NEW: Implement the new "Pie" argument of Paint.Arc() and Paint.Ellipse().

[GB.GUI.BASE]
* BUG: Draw.Ellipse() and Draw.Circle() now draw a pie instead of a chord.

[GB.QT4]
* NEW: Implement the new "Pie" argument of Paint.Arc() and Paint.Ellipse().


git-svn-id: svn://localhost/gambas/trunk@5413 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-12-06 00:21:16 +00:00
Benoît Minisini
2476e0a2a2 [DEVELOPMENT ENVIRONMENT]
* BUG: The project tree control now uses the same icons as the main project 
  tree view.
* NEW: Support for LCDLabel.

[EXAMPLES]
* BUG: MediaPlayer: Remove uses of the DrawingArea.Painted property.

[INTERPRETER]
* BUG: The GB.GetProperty() API has been fixed, and now use the datatype of 
  the property for the return value.
* OPT: Remove some useless table symbol class at class loading for native 
  classes that do not raise events.

[GB.DRAW]
* NEW: PaintMatrix is now creatable.

[GB.FORM]
* NEW: LCDLabel is a new control that displays its contents with sixteen 
  segments LCD digits.

[GB.MEDIA]
* BUG: Remove the useless MediaPlayer.Visualisation property.


git-svn-id: svn://localhost/gambas/trunk@5412 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-12-05 03:36:44 +00:00
Benoît Minisini
9fcc50b488 [DEVELOPMENT ENVIRONMENT]
* NEW: Update markup syntax with support for indexes.

[WIKI CGI SCRIPT]
* NEW: Support for component help written in *.info files.
* BUG: Automatic links work again.

[GB.DRAW]
* BUG: Fix Point and PointF InRect() method signature.

[GB.GUI.BASE]
* BUG: TreeView Click event correctly sets the Item property.
* BUG: Remove the useless GridView.Data.Draw property.
* BUG: Remove the GridView KeyPress event override.
* BUG: Fix the GridView Draw event signature.

[GB.QT4.WEBKIT]
* NEW: WebElement.Paint() now takes an optional clipping rectangle 
  argument.


git-svn-id: svn://localhost/gambas/trunk@5410 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-12-03 12:56:41 +00:00
Tobias Boege
24386639bf [GB.DATA]
* NEW: Finish the List class
* NEW: Add List.Clear(). How could I go without since now?
* OPT: FYI, Current and enumerators remain relative to the _beginning_ of
  the list if they're removed in order to can access all elements in an
  enumeration.
* NEW: Return NULL for an invalid List.Current instead of raising an error.
  However, the attempt to remove an invalid Current still results in that
  error.



git-svn-id: svn://localhost/gambas/trunk@5403 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-11-30 20:34:11 +00:00
Benoît Minisini
3507637a45 [DEVELOPMENT ENVIRONMENT]
* BUG: Get rid of the last use of the deprecated DrawingArea.Painted 
  property.

[INTERPRETER]
* NEW: The deprecated API message now displays the current code position.

[GB.FORM]
* NEW: The FileChooser and DirChooser label that displays the current 
  directory now "ellipsized" it if there is not enough room.

[GB.GTK]
* BUG: All style drawing methods now draw at the correct position.
* NEW: Start replacing old GDK drawing methods by Cairo methods.

[GB.MAP]
* NEW: Rename the MapViewer control as MapView.
* BUG: Don't redefine standard events. Use a proxy instead.


git-svn-id: svn://localhost/gambas/trunk@5396 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-11-29 12:43:29 +00:00
Benoît Minisini
f131eb6060 [COMPILER]
* BUG: Prevent self-inheritance.


git-svn-id: svn://localhost/gambas/trunk@5394 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-11-29 11:41:42 +00:00
Benoît Minisini
e04e38e170 [GB.DRAW]
* BUG: Fix the '_call_ special methods of Rect, RectF, Point and PointF, 
  that must be static.

[GB.GUI.BASE]
* BUG: Fix Rect symbol clash in Draw.Zoom.
* NEW: ScrollArea.Painted property is now deprecated.


git-svn-id: svn://localhost/gambas/trunk@5387 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-11-28 03:32:55 +00:00
Benoît Minisini
2f4d1b7d2e [GB.DRAW]
* BUG: Fix Paint.ZoomImage() method.

[GB.GTK]
* BUG: Paint.Begin() correctly initializes the line width to 1.0.

[GB.GUI.BASE]
* NEW: Draw.Polygon now uses Paint.Polygon.


[GB.QT4]
* BUG: Clipboard.Type correctly returns Clipboard.Image after an image has 
  been copied to the clipboard.


git-svn-id: svn://localhost/gambas/trunk@5386 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-11-27 23:40:28 +00:00
Benoît Minisini
a612052f95 [EXAMPLES]
* NEW: Paiting example: add an example for rounded rectangles.

[GB.DRAW]
* NEW: Paint.Polygon() is a new method that paints a closed polygon.
* NEW: Paint.Rectangle() now takes an optional radius argument. If its is
  specified with a value greater than zero, then a rounded rectangle is 
  painted.


git-svn-id: svn://localhost/gambas/trunk@5385 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-11-27 22:27:40 +00:00
Benoît Minisini
8bbe87a6d3 [DEVELOPMENT ENVIRONMENT]
* BUG: Remove uses of DrawingArea.Painted.

[GB.FORM]
* BUG: Remove uses of DrawingArea.Painted.

[GB.GUI.BASE]
* BUG: Fix Draw.Style.Box() method.

[GB.MAP]
* NEW: MapPoint.Distance() is a new method that returns the geodesic 
  distance between two points.
* NEW: Map.From() is a new method that returns the position of a point from
  an initial point, a direction and a distance.
* NEW: Map.Bearing() is a new method that returns the direction from an 
  initial point to a destination point.


git-svn-id: svn://localhost/gambas/trunk@5384 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-11-27 20:10:39 +00:00
Benoît Minisini
520e978feb [DEVELOPMENT ENVIRONMENT]
* NEW: Update error messages.

[GB.DRAW]
* NEW: The Draw class has been removed.
* NEW: Paint.Ellipse() is a new method that paints an ellipse.
* NEW: Paint.TextSize() returns the bounding box of a text like 
  Draw.TextWidth() and Draw.TextHeight() did, which is not the same thing 
  as Paint.TextExtents().
* NEW: Paint.RichTextSize() returns the bounding box of a rich text like 
  Draw.RichTextWidth() and Draw.RichTextHeight() did, which is not the same 
  thing as Paint.RichTextExtents().
* NEW: Paint.FillRect() fills a rectangle with a specific color.
* NEW: Paint.DrawImage() takes an extra 'Source' argument which is a 
  rectangle describing a piece of the source image.
* NEW: Paint.DrawPicture() now replaces the old Draw.Picture() method.
* NEW: Paint.ZoomImage() now replaces the old Draw.Zoom() method.
* NEW: The default line width after a Paint.Begin() is one pixel now.

[GB.GTK]
* NEW: DrawingArea.Painted has been deprecated.
* BUG: Don't use the 'cairo_set_device_offset' method to draw on a 
  DrawingArea, but a matrix translation.
* NEW: Support for the new Paint methods.
* NEW: The old Draw.Style methods have been moved to the Style class.
* NEW: You cannot draw on a Window anymore.

[GB.GUI.BASE]
* NEW: Do not highlight the sorted column in GridView, TreeView, ListBox... 
  if there is only one column.
* NEW: Implement a new Draw class that simulates the old one by using the
  Paint class.

[GB.JIT]
* BUG: Fix the argument order of E_NSYMBOL error message.

[GB.QT4]
* NEW: DrawingArea.Painted has been deprecated.
* NEW: Support for the new Paint methods.
* NEW: The old Draw.Style methods have been moved to the Style class.
* NEW: You cannot draw on a Window anymore.


git-svn-id: svn://localhost/gambas/trunk@5382 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-11-27 18:42:24 +00:00
Benoît Minisini
7326cc894b [GB.DRAW]
* NEW: Paint.DrawImage() now takes a source rectangle.
* NEW: Paint.DrawPicture() is a replacement for Draw.Picture().
* NEW: Paint.ZoomImage() is a replacement for Draw.Zoom().

[GB.GTK]
* NEW: Start implementing new Paint methods.

[GB.QT4]
* NEW: Start implementing new Paint methods.


git-svn-id: svn://localhost/gambas/trunk@5376 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-11-26 06:33:49 +00:00
Tobias Boege
285cf7a578 [GB.DATA]
* BUG: Fix division by zero when read/write pointer is set on 0-length
  Circular (useless but legal).



git-svn-id: svn://localhost/gambas/trunk@5375 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-11-25 19:09:21 +00:00
Benoît Minisini
7af5ee2344 [GB.DRAW]
* NEW: Paint.BrushOrigin is a new property that allows to define the origin 
  of the brush.
* NEW: Paint.FillRect is a new property equivalent to Draw.FillRect.

[GB.GTK]
* NEW: Support for the new Paint methods.

[GB.GUI.BASE]
* NEW: Start to implement a Draw static class based on the Paint class.
  That class aims at replacing the current Draw class. As it will be based 
  on the Paint class, it will be able to act on Image and Printer, making
  the old Gambas 2 printing code works with Gambas 3 directly.

[GB.QT4]
* NEW: Support for the new Paint methods.


git-svn-id: svn://localhost/gambas/trunk@5365 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-11-25 01:39:49 +00:00
Benoît Minisini
1d7db62a60 [GB.DRAW]
* BUG: Guess what: fix compilation of gb.draw (IV).


git-svn-id: svn://localhost/gambas/trunk@5363 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-11-24 22:39:13 +00:00
Benoît Minisini
46880072e4 [GB.DRAW]
* BUG: Fix compilation of gb.draw (third episode).


git-svn-id: svn://localhost/gambas/trunk@5362 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-11-24 22:26:07 +00:00
Benoît Minisini
221c207082 [GB.DRAW]
* BUG: Fix compilation of gb.draw (again!).


git-svn-id: svn://localhost/gambas/trunk@5361 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-11-24 22:20:39 +00:00
Benoît Minisini
a02623b6eb [GB.DRAW]
* BUG: Fix compilation of gb.draw.


git-svn-id: svn://localhost/gambas/trunk@5360 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-11-24 21:41:28 +00:00
Benoît Minisini
e51fc2d951 [INTERPRETER]
* NEW: The RAISE instruction now can raise events defined in a parent 
  class.
* NEW: Timer: The Trigger method now does nothing if there is an already
  pending trigger. This behaviour is not backward-compatible, so it may be
  removed if problems arise.

[COMPILER]
* NEW: The RAISE instruction now can raise events defined in a parent 
  class.

[GB.DRAW]
* NEW: Implement standard operators in Point and PointF classes.
* NEW: Automatic conversion between Point and PointF.
* NEW: 'CDraw.c' and 'CDraw.h' source files have been renamed as 'cdraw.c' 
  and 'cdraw.h'.
* NEW: Rect.Center() and RectF.Center() are two new methods that return the 
  center of the rectangle.

[GB.FORM]
* NEW: FileChooser: tar archives now can be uncompressed. 


git-svn-id: svn://localhost/gambas/trunk@5359 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-11-24 18:52:11 +00:00
Benoît Minisini
225c6e0b40 [DEVELOPMENT ENVIRONMENT]
* NEW: Use DesltopMime.FromFile() method to handle project data files.
* BUG: Installing the Gambas fonts override the old ones that could be
  already installed.
* NEW: Update the Gambas fonts.

[GB.DESKTOP]
* BUG: DesktopFile.Run() now handle programs that does not specify any
  argument pattern (%u, %f, and so on) in its command description.

[GB.DRAW]
* NEW: Add a RectF class, that is a rectangle with Float coordinates.
* NEW: Add a Point class, that is just a point with two Integer 
  coordinates.
* NEW: Add a PointF class, that is just a point with two Float
  coordinates.

[GB.GUI.BASE]
* BUG: GridView and TreeView controls should not lose any MouseDown event
  anymore.
* BUG: Fix previous TreeView optimizations.

[GB.MAP]
* BUG: Rename the "map" class as "Map".


git-svn-id: svn://localhost/gambas/trunk@5354 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-11-24 01:16:40 +00:00
Benoît Minisini
a7c3939e3d [DEVELOPMENT ENVIRONMENT]
* BUG: Be sure that the welcome dialog filter has the focus.

[WEBSITE MAKER]
* NEW: Update for 3.3.4.

[GB.DB]
* BUG: A failing table or user add does not leak memory anymore.
* BUG: Fix the removal method of the .SubCollection virtual class.

[GB.DB.SQLITE3]
* BUG: Detect serial fields correctly now.

[GB.QT4]
* BUG: Enusre that embedded windows emit their Open event before any Move, 
  Resize events...


git-svn-id: svn://localhost/gambas/trunk@5340 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-11-20 01:37:26 +00:00
Benoît Minisini
f7992f248d [COMPILER]
* BUG: Don't declare virtual classes now present in the *.list files.

[INFORMER]
* BUG: Put virtual classes in *.list files so that the IDE is aware of 
  their existence.


git-svn-id: svn://localhost/gambas/trunk@5336 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-11-18 20:07:31 +00:00
Benoît Minisini
723fca96d0 [INTERPRETER]
* NEW: Move the '.SubCollection' virtual class to the gb.db. component.

[GB.DB]
* NEW: Move the '.SubCollection' virtual class to the gb.db. component.

[GB.FORM]
* BUG: TabPanel: Fix the algorithm ensuring that the current tab is 
  visible.


git-svn-id: svn://localhost/gambas/trunk@5326 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-11-14 22:24:15 +00:00
Benoît Minisini
0282ac072f [COMPILER]
* BUG: Fix comments parser.


git-svn-id: svn://localhost/gambas/trunk@5314 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-11-10 12:21:44 +00:00
Benoît Minisini
a78a58f0f4 [COMPILER]
* BUG: As usual, forgot to add the new source files.


git-svn-id: svn://localhost/gambas/trunk@5312 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-11-10 00:28:01 +00:00
Benoît Minisini
25b8edfd44 [DEVELOPMENT ENVIRONMENT]
* NEW: Support for the help comments integrated into the *.info files by 
  the compiler.
* NEW: Use the help comments stored in libraries and display them in them
  help tooltips.
* BUG: Remove duplicates in the automatic completion list.
* BUG: The symbol syntax displayed in the help now correctly follows the
  "Keywords in uppercase" setting.
* NEW: Class help comments are now help comments located at the beginning
  of the source file that starts with three quotes and a space: `''' `.

[COMPILER]
* NEW: Support for help comments on public symbols. They are automatically 
  integrated into the *.info information files.


git-svn-id: svn://localhost/gambas/trunk@5311 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-11-10 00:19:53 +00:00
Benoît Minisini
a716682e1e [INTERPRETER]
* BUG: NULL can be converted to a pointer now.


git-svn-id: svn://localhost/gambas/trunk@5310 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-11-09 20:15:06 +00:00
Benoît Minisini
5d9a781017 [DEVELOPMENT ENVIRONMENT]
* BUG: Right mouse button can select controls again in form editor.

[GB.GTK]
* NEW: DragLeave is a new event raised by any control when the mouse leave
  a control during a DnD operation, or when the DnD operation terminates.
* NEW: DragMove and DragLeave events take the proxy into account. 

[GB.GUI.BASE]
* NEW: ScrollArea, GridView, TreeView... now automatically scroll during a
  DnD operation.
* BUG: Remove the overriden MouseDown event from the GridView class.
* BUG: A DnD operation does not eat the next mouse click anymore in 
  GridView, TreeView... controls.

[GB.QT4]
* NEW: DragLeave is a new event raised by any control when the mouse leave
  a control during a DnD operation, or when the DnD operation terminates.
* NEW: DragMove and DragLeave events take the proxy into account. 


git-svn-id: svn://localhost/gambas/trunk@5303 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-11-07 22:51:04 +00:00
Tobias Boege
b417f1861e [GB.DATA]
* OPT: Great overhaul of List algorithms. Beware: Still buggy.
* OPT: Make list chunks carry multiple Variants to improve cache locality.
* OPT: Don't traverse List forwards/backwards when the absolute value of
  index is past the half of Count.
* NEW: Introduce List.Backwards - a virtual object to enumerate backwards
* NEW: Don't use List.Current as enumeration pointer.
* NEW: Begin enumeration at the first/last node.
* NEW: Traverse backwards when given negative index to _get.
* NEW: Make Current invalid by default.
* NEW: Assign first/last element when MoveNext()/MovePrev() is issued on an
  invalid Current.
* NEW: Use List.Current as pointer for the Find*() methods, too.
* NEW: Assign first/last element when FindNext()/FindPrev() is issued on an
  invalid Current.
* NEW: Don't return an index from Find*() methods because it is not the way
  linked list are dealt with.
* NEW: Make insertion and removal of elements safe in enumerations.
* NEW: When Current (or enumerator) is removed, the pointer remains relative
  to the beginning of the List but it never wraps around the end.
* BUG: Correctly *cycle* with {Move,Find}{Next,Prev}()



git-svn-id: svn://localhost/gambas/trunk@5302 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-11-06 21:03:07 +00:00
Benoît Minisini
34de79ef3d [DEVELOMENT ENVIRONMENT]
* BUG: Disable embedded http server.

[INTERPRETER]
* BUG: Fix a crash in String.Comp() when one of the two string is null.

[GB.FORM]
* BUG: Don't show useless menus in the DirView popup menu of a DirChooser 
  or FileChooser control.
* BUG: Do not scroll the TabPanel tab bar if not really necessary.

[GB.GUI.BASE]
* BUG: For backward-compatibility reasons, you can now set the value of 
  any arbitrary positive column index of a ColumnView item.


git-svn-id: svn://localhost/gambas/trunk@5301 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-11-06 20:11:20 +00:00
Benoît Minisini
6902dc7dae [INTERPRETER]
* BUG: Using Enum.Index outside of an enumeration now raises an error 
  instead of crashing.


git-svn-id: svn://localhost/gambas/trunk@5270 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-11-01 13:19:11 +00:00
Benoît Minisini
588e0f3942 [DEVELOPMENT ENVIRONMENT]
* BUG: Fix scrolling of code editor procedure list.
* BUG: Automatic local variable declaration now works correctly when a 
  method named "Get" is called inside the analyzed expression.

[COMPILER]
* NEW: "[]" now is compiled to return a array with no elements.

[INTERPRETER]
* BUG: Array with no elements can be casted to any other array datatype.

[GB.GUI.BASE]
* BUG: Fix visibility of expanded TreeView items.

[GB.QT4.EXT]
* NEW: When the Editor loses the focus, it does not scroll to the cursor 
  position automatically anymore.


git-svn-id: svn://localhost/gambas/trunk@5266 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-10-30 23:44:24 +00:00
Benoît Minisini
8edf201b34 [INTERPRETER]
* BUG: Fix profiling of WAIT instruction.


git-svn-id: svn://localhost/gambas/trunk@5260 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-10-29 00:46:53 +00:00
Benoît Minisini
25e6253672 [CONFIGURATION]
* BUG: The default prefix is /usr in component directories too.
* NEW: Uninstall mime handler and mime icons in 'make uninstall'.

[GB.GTK]
* NEW: Replace the old ListBox control by the one in gb.gui.base.

[GB.QT4]
* NEW: Replace the old ListBox control by the one in gb.gui.base.
* OPT: Some little optimizations in ScrollView.
* OPT: Changing the geometry of a control whose Ignore property is set does
  not trigger parent arrangement routine anymore.


git-svn-id: svn://localhost/gambas/trunk@5258 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-10-28 19:21:59 +00:00
Benoît Minisini
84bcc9052f [CONFIGURATION]
* BUG: Fix compilation of Gambas.

[DEVELOPMENT ENVIRONMENT]
* NEW: Change the proportional font size list in the option dialog. Use a
  5% size increment.

[INFORMER]
* NEW: gbi3 now displays include warning only if the GBI_DEBUG environment
  variable is set to "1".

[GB.FORM]
* NEW: Add a FontChooser Border property.
* BUG: Support for Underline and Strikeout come back in FontChooser.

[GB.GUI.BASE]
* NEW: ScrollArea now raise a Resize event when the client area is resized
  because of changes in scrollbars visibility.
* BUG: Changing a TreeView item property now correctly refreshes the view.
* OPT: The height of TreeView rows is now refreshed correctly.

[GB.QT4]
* BUG: The menu bar height is correctly refreshed if the application font
  changes.



git-svn-id: svn://localhost/gambas/trunk@5257 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-10-28 14:35:31 +00:00
Benoît Minisini
0de1545f21 [DEVELOPMENT ENVIRONMENT]
* BUG: Fix option dialog layout.

[GB.FORM]
* NEW: New FontChooser control design.

[GB.GTK]
* BUG: Fix gb.gtk compilation.
* NEW: Add Window.Indent arrangement property.

[GB.GUI.BASE]
* BUG: Setting the text of the ColumnView columns now works correctly.
* NEW: The ListBox Gambas implementation is finished, but has not replaced
  the old one yet.

[GB.QT4]
* NEW: Add Window.Indent arrangement property.


git-svn-id: svn://localhost/gambas/trunk@5256 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-10-28 00:28:26 +00:00
Benoît Minisini
8539a2a02d [DEVELOPMENT ENVIRONMENT]
* NEW: A new option that defines the default application font.
* NEW: The font options have been redesigned.
* BUG: Various fixes implied by the new TreeView control implementation.

[WIKI CGI SCRIPT]
* NEW: Page whose title begins with "~" are class page synonymous.

[INTERPRETER]
* BUG: Calling the _unknown method on an anonymous object reference won't
  crash anymore.
* NEW: Class.Exist() is a new method that returns if a class has a specific
  symbol.

[GB.GTK]
* NEW: The Container Find() method has been renamed as FindChild(). The 
  _unknown method has been implemented to handle backward compatibility.
* BUG: Fix string to Font conversion for fonts whose name starts with 
  "nan" or other special numeric strings.

[GB.GUI.BASE]
* BUG: ScrollView.EnsureVisible() and GridView.EnsureVisible() methods when 
  there is a frame.
* NEW: MyListBox is the initial implementation of a ListBox control 
  entirely written in Gambas.
* BUG: Renaming a TreeView item now correctly selects it before.

[GB.OPENGL]
* BUG: Fix an error message in deprecated constants handler routine.

[GB.QT4]
* NEW: The Container Find() method has been renamed as FindChild(). The 
  _unknown method has been implemented to handle backward compatibility.


git-svn-id: svn://localhost/gambas/trunk@5254 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-10-27 18:59:14 +00:00
Benoît Minisini
d800d7e136 [INTERPRETER]
* BUG: Fix the order of component exported classes loading after the 
  project has been loaded.
* BUG: Fix GB.CanRaise() API.

[GB.DB.FORM]
* NEW: DataView.Sorted is a new property that tells if the data can be 
  sorted by clicking on the column headers.
* NEW: DataView columns now show sort indicators, and data can be sorted in
  descending order.
* NEW: DataSource.Ascending is a new property that defines the order of the
  sort defined by the DataSource.Sort property.

[GB.FORM]
* NEW: Remove all controls that were moved to gb.gui.base.
* NEW: FileView file size units are translatable now.

[GB.GTK]
* NEW: Remove TreeView, ListView and ColumnView.
* NEW: Control.Tracking takes the proxy into account.
* NEW: Remove the Gambas part.

[GB.GUI.BASE]
* NEW: gb.gui.base is a new hidden component that is automatically loaded 
  by gb.qt4 and gb.gtk. It implements the following controls and classes 
  entirely in Gambas: TreeView, ListView, ColumnView, IconView, Action,
  ScrollArea. These classes were located in gb.form and in the Gambas part
  of GUI components before.

[GB.QT4]
* NEW: Remove TreeView, ListView and ColumnView.
* NEW: Control.Tracking takes the proxy into account.
* NEW: Remove the Gambas part.

[GB.WEB]
* NEW: Request.Query and Request.Path can be modified now.
* BUG: Overriding a CGI variable with Null works now.


git-svn-id: svn://localhost/gambas/trunk@5251 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-10-27 00:28:55 +00:00
Benoît Minisini
16679fdd5d [DEVELOPMENT ENVIRONMENT]
* BUG: Events of class written in Gambas are correctly detected now.
* BUG: Automatic local variable declaration now correctly analyze 
  expressions like "A.B" in all cases.
* NEW: Use a SidePanel to display the stack backtrace.

[GB.DB]
* BUG: DB.Quote(..., True) now does a table name quoting in all cases.

[GB.DB.FORM]
* BUG: The database controls now can handle table names that are reserved
  SQL keywords.

[GB.FORM]
* NEW: Start implementing TreeView entirely in Gambas.
* BUG: Removing GridView rows correctly resets the row heights.
* NEW: GridView now raises a Draw event that allows to paint a cell with 
  any drawing methods.


git-svn-id: svn://localhost/gambas/trunk@5250 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-10-23 11:21:43 +00:00
Benoît Minisini
c5debe2304 [INTERPRETER]
* BUG: The event handler check routine should not crash anymore.


git-svn-id: svn://localhost/gambas/trunk@5249 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-10-22 16:22:15 +00:00
Benoît Minisini
fb33a73b86 [INTERPRETER]
* NEW: Accept event handlers with a variable number of arguments.
* BUG: Remove a debugging message.

[GB.IMAGE.EFFECT]
* BUG: Image.Histogram() now correctly handle ABGR images.
* BUG: Remove a debugging message.


git-svn-id: svn://localhost/gambas/trunk@5248 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-10-22 14:09:05 +00:00
Benoît Minisini
53c284099b [DEVELOPMENT ENVIRONMENT]
* BUG: The name of GridView controls is now always visible in the form
  editor.

[INTERPRETER]
* NEW: Support for new QUIT syntax.
* NEW: Do not display overriding prefix in class names.

[COMPILER]
* NEW: QUIT now can takes an optional argument which is the program return 
  value.

[GB.ARGS]
* BUG: The "--version" option is not "----version" anymore
* NEW: If an error occurs, returns 1 as exit value and not 0.

[GB.FORM]
* BUG: GridView is correctly updated now when the Border property is set.


git-svn-id: svn://localhost/gambas/trunk@5246 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-10-19 21:00:35 +00:00
Benoît Minisini
72ee74e8d4 [DEVELOPMENT ENVIRONMENT]
* NEW: Draw the projet property dialog library list with a GridView.

[INTERPRETER]
* BUG: Fix class overriding routine.

[GB.ARGS]
* NEW: 'gb.args' is a new component that analyzes the command-line options,
  and automatically handles the "--help" option.

[GB.HTTPD]
* BUG: Hide the component.


git-svn-id: svn://localhost/gambas/trunk@5241 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-10-15 10:06:37 +00:00
Benoît Minisini
17a0748815 [CONFIGURATION]
* NEW: Each component installation now generates all information files
  systematically, to fix possible dependencies between components written
  in Gambas.

[DEVELOPMENT ENVIRONMENT]
* NEW: Running a project using the 'gb.web' component now automatically
  starts the embedded HTTP server.

[INTERPRETER]
* NEW: Class overriding is retrospective now.
* NEw: System._Breakpoint() is a new hidden method that raises a 
  breakpoint. Very useful for debugging.

[GB.GTK]
* BUG: The Action.Register() method must not crash when called during class 
  clean-up.

[GB.HTTPD]
* NEW: Define a custom exported HTTP server name.

[GB.JIT]
* BEW: Support for new class overriding (the CLASS structure has lost one 
  field).

[GB.QT4]
* BUG: The Action.Register() method must not crash when called during class 
  clean-up.


git-svn-id: svn://localhost/gambas/trunk@5240 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-10-14 22:42:53 +00:00
Benoît Minisini
fedc591dfc [INTERPRETER]
* BUG: Implicit array conversion now correctly preserves dimensions.


git-svn-id: svn://localhost/gambas/trunk@5237 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-10-14 10:52:02 +00:00
Benoît Minisini
2ab47c59e0 [COMPILER]
* NEW: Support for IF ... THEN ... ELSE syntax on the same line.


git-svn-id: svn://localhost/gambas/trunk@5236 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-10-13 22:43:36 +00:00
Benoît Minisini
4ecc3420e6 [GB.IMAGE]
* BUG: Fix Image.RotateRight() algorithm.


git-svn-id: svn://localhost/gambas/trunk@5235 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-10-13 09:46:35 +00:00
Benoît Minisini
06977c713d [GB.IMAGE]
* BUG: Image.RotateRight() now really rotates to the right.


git-svn-id: svn://localhost/gambas/trunk@5233 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-10-11 20:39:06 +00:00
Benoît Minisini
8701a2f020 [INTERPRETER]
* BUG: Fix symbol table search that could sometimes fail with non ASCII 
  characters.

[ARCHIVER]
* NEW: Add '.public' directory to executables.
* NEW: A new '-i' option not to display warnings when an information file 
  include fails.


git-svn-id: svn://localhost/gambas/trunk@5230 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-10-10 14:58:14 +00:00
Benoît Minisini
6c2bb03d7c [DEVELOPMENT ENVIRONMENT]
* NEW: Support for the new 'Public' project virtual directory, which is 
  '.public' on the disk.

[SCRIPTER]
* NEW: Support for a new '-f- option that compile the script with JIT 
  compilation enabled.

[GB.DESKTOP]
* BUG: Remove _Desktop.ActivateWindow() method.

[GB.HTTPD]
* NEW: The embedded HTTP server now can serve static files located in the 
  '.public' hidden project directory.


git-svn-id: svn://localhost/gambas/trunk@5226 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-10-07 21:12:53 +00:00
Benoît Minisini
0d88e31a1a [COMPILER]
* BUG: Error messages are correctly printed when warnings are disabled.


git-svn-id: svn://localhost/gambas/trunk@5223 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-10-02 20:31:06 +00:00
Benoît Minisini
a68336da9b [CONFIGURATION]
* NEW: Switch to 3.3.90 version.

[WEBSITE MAKER]
* NEW: Update for 3.3.2 version.

[INTERPRETER]
* NEW: New API for getting information about a file.

[GB.DESKTOP]
* NEW: _Desktop.Time is a new property that returns the last X11 timestamp.
* NEW: _Desktop.ActivateWindow() is a new method that will be removed in a 
  next commit.
* NEW: DesktopWindow.Activate() is a new method to activate a window.

[GB.GTK]
* NEW: New GB_INFO constant to return the last X11 timestamp to other 
  components.

[GB.HTTPD]
* NEW: Reindent source files.

[GB.QT4]
* NEW: New GB_INFO constant to return the last X11 timestamp to other 
  components.

[GB.QT4.WEBKIT]
* BUG: Fix WebHitTest.Editable property declaration.


git-svn-id: svn://localhost/gambas/trunk@5221 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-10-02 08:01:25 +00:00
Benoît Minisini
41b6a93cef [EXAMPLES]
* BUG: Fix Embedded window layout.

[INTERPRETER]
* NEW: The '-H' option now runs the interpreted program as a CGI script
  through an embedded HTTP server.

[GB.HTTPD]
* NEW: New hidden component that embeds an HTTP server that runs the 
  project as a CGI script. It is activated by a new interpreter option.
  Warning! This is highly experimental. The HTTP server is based on the
  thttpd source code.

[GB.WEB]
* BUG: As the _init static class is always executed at startup for exported
  classes, delay the intialization of Session class the first time one of 
  its properties is used.
* BUG: If the SCRIPT_NAME CGI variable equals nothing or "/", set it to 
  "/." so that it can be concatenated to any path and still gives a valid
  url.
* BUG: Support for explicit URL ports.
* NEW: Application.Port is a new property that returns the port used by the 
  HTTP request.


git-svn-id: svn://localhost/gambas/trunk@5209 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-09-27 20:52:08 +00:00
Benoît Minisini
619f6c0e3c [GB.DATA]
* BUG: Add 'list.h' to the source file list.


git-svn-id: svn://localhost/gambas/trunk@5195 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-09-23 18:32:39 +00:00
Benoît Minisini
2dcaa54c91 [INTERPRETER]
* BUG: The debugger won't crash anymore when trying to continue after an 
  error has been raised inside a component.


git-svn-id: svn://localhost/gambas/trunk@5183 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-09-21 11:09:07 +00:00
Benoît Minisini
54150a91e0 [DEVELOPMENT ENVIRONMENT]
* NEW: Some little redesign of the welcome dialog.
* NEW: Remove the "Alternate" theme color.

[COMPILER]
* NEW: New WebPage syntaxes: <<Include>>, <</Include>>, <%/%>, <<--->>.

[GB.EVAL]
* NEW: Highlight.Alternate has been deprecated.

[GB.EVAL.HIGHLIGHT]
* NEW: Support for the new WebPage syntaxes.

[GB.QT4.EXT]
* NEW: Editor: The alternate background is automatically computed.
* NEW: Editor: Brace highlighting now works on alternate background.
* NEW: Highlight.Alternate has been deprecated.


git-svn-id: svn://localhost/gambas/trunk@5177 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-09-20 02:29:37 +00:00
Benoît Minisini
0f985417cf [DEVELOPMENT ENVIRONMENT]
* NEW: Use Terminus as default fixed font if it is installed on the system.
* BUG: Don't load a component description if that component has the same 
  name as the current project. This is a temporary incorrect fix!

[INTERPRETER]
* BUG: Fix Classes enumeration.

[GB.DESKTOP]
* BUG: Fix X11 client message sending routine on 64 bits OS.
* BUG: Fix all DesktopWindow properties that read or change the state of 
  the window.

[GB.GTK]
* NEW: Fonts.Exist() is a new method that returns if a specific font family 
  exists.

[GB.QT4]
* NEW: Fonts.Exist() is a new method that returns if a specific font family 
  exists.


git-svn-id: svn://localhost/gambas/trunk@5171 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-09-17 11:13:32 +00:00
Benoît Minisini
b174b79ada [DEVELOPMENT ENVIRONMENT]
* NEW: Display a PDF icon for PDF files.

[GB.FORM]
* NEW: Add a PDF icon to the stock.

[GB.FORM.STOCK]
* NEW: Add a PDF icon.

[GB.GTK]
* BUG: Printer.From and Printer.To now always return zero if all pages must 
  be printed.

[GB.QT4]
* BUG: If not page has to be printed, then the Print() method correctly 
  returns the Printer object to an inactive state.


git-svn-id: svn://localhost/gambas/trunk@5170 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-09-16 14:54:10 +00:00
Benoît Minisini
7cba8c08e0 [INTERPRETER]
* OPT: Conversion between byte index and UTF-8 character index of the last 
  string has been optimized when that last string is big.

[GB.EVAL.HIGHLIGHT]
* OPT: Optimization of HTML syntax highlighting for big lines. That 
  optimization should be handled by the interpreter automatically.


git-svn-id: svn://localhost/gambas/trunk@5167 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-09-15 02:17:12 +00:00
Tobias Boege
4f57ded502 [CONFIGURATION]
* NEW: Rename gb.adt to gb.data
* NEW: Mark gb.data as "Unfinished"

[GB.DATA]
* OPT: Block all changes from my working copy until they are mature. The
  interface is considered to be stable (although some details in behaviour
  will change); this justifies the "unfinished" state.



git-svn-id: svn://localhost/gambas/trunk@5147 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-09-09 20:20:47 +00:00
Benoît Minisini
c7bdcd4947 [INTERPRETER]
* BUG: Fix error handler calls.


git-svn-id: svn://localhost/gambas/trunk@5145 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-09-09 17:24:54 +00:00
Benoît Minisini
3ba6513b6d [INTERPRETER]
* BUG: Fix the enumeration API. GB.ListEnum() has been replaced by 
  GB.BeginEnum() and GB.EndEnum(), that save the state of the internal
  current enumeration.

[GB.MIME]
* BUG: Raise an error when the MimeMessage constructor fails while parsing
  a message.

[GB.NET.POP3]
* BUG: _Pop3Client_Message must not inherit MimeMessage.
* NEW: _Pop3Client_Message has a new Message property that returns the 
  decoded MimeMessage.
* NEW: _Pop3Client_Message has a new Deleted property that returns if the
  message has been deleted.
* NEW: _Pop3Client_Message has a new Id property that returns the 
  message id, which is its index plus one.
* NEW: _Pop3Client_Message has a new Index property that returns the 
  message index, which is its id minus one.
* BUG: Hides protocol dependent routines.
* NEW: The error returned by the Pop3 client is directly used for the error 
  message.
* OPT: Remove duplicated code in TCPClient and SSLCLient. Centralize it in 
  the PopClient parent class.
* BUG: Fix the single line response reading of SSLClient.
* BUG: Fix the multiple line response reading of SSLClient and TCPClient.
* BUG: Do not display password on the standard error in debugging mode, but 
  eight "*" characters instead.
* NEW: Many methods do not return a boolean status, but raise an error 
  instead.
* BUG: Methods that return their result as a boolean status now return TRUE
  if they fail, not if they succeed (this is the Gambas convention).
* BUG: Fix the Pop3CLient.List() method.
* NEW: Rename the Pop3Client UniqueId() method as ListUniqueId().
* BUG: Fix the Pop3Client.ListUniqueId() method.


git-svn-id: svn://localhost/gambas/trunk@5134 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-09-06 16:20:54 +00:00
Benoît Minisini
1937a67353 [DEVELOPMENT ENVIRONMENT]
* NEW: Pressing SHIFT with the RETURN key prevents automatic variable 
  declaration.
* BUG: Automatic variable declaration takes TRY into account.
* BUG: Automatic variable declaration now understands more expressions.
* NEW: Add a filter to the example tab of the open project dialog.

[INTERPRETER]
* NEW: String.UCaseFirst() is a new method that capitalize the first letter
  of an UTF-8 string.

[COMPILER]
* NEW: If a function argument is enclosed with braces, then no warning is
  emitted if it overrides a global symbol.

[GB.FORM]
* BUG: Transparent SidePanel controls do not eat one pixel of their 
  contents anymore.
* NEW: TabPanel draws its focus highlight differently.
* NEW: ScrollArea now draws a shadow only if the corresponding scrollbar is
  visible.


git-svn-id: svn://localhost/gambas/trunk@5128 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-09-05 18:36:59 +00:00
Benoît Minisini
28c9d6d59b [COMPILER]
* NEW: Make one warning for each symbol kind that is overridden.

[GB.DB.FORM]
* BUG: Fix warnings.

[GB.DESKTOP]
* BUG: Fix some warnings.

[GB.EVAL.HIGHLIGHT]
* BUG: Correctly rewrite the following keywords with no spurious space 
  after: TRUE, FALSE, NULL, +INF, -INF.

[GB.FORM]
* BUG: Fix warnings.

[GB.FORM.MDI]
* BUG: Fix warnings.

[GB.WEB]
* BUG: Fix warnings.


git-svn-id: svn://localhost/gambas/trunk@5125 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-09-04 23:11:11 +00:00
Benoît Minisini
0026fb1489 [DEVELOPMENT ENVIRONMENT]
* NEW: Support for compiler warnings.
* BUG: Fix all detected warnings.

[COMPILER]
* NEW: A new compiler option '-w' to let it emit warnings.
* NEW: Emit warnings for unused variables, arguments, functions and for 
  local symbols that override global symbols. Public symbols are of course 
  not taken into account.
* NEW: If an argument is surrounded by braces, no warning will be emitted
  if the argument is not used.

[GB.EVAL]
* NEW: OPTIONAL keyword is always followed by a space now when rewriting 
  Gambas code.


git-svn-id: svn://localhost/gambas/trunk@5122 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-09-04 07:29:39 +00:00
Benoît Minisini
dde26cb313 [DEVELOPMENT ENVIRONMENT]
* BUG: Moving, renaming or deleting a source file now should correctly
  refresh the search list, the breakpoint list and the task list.

[GB.FORM]
* NEW: ScrollArea draws a focus border when it has focus.

[GB.NET.POP3]
* NEW: Make Pop3Client a virtual control like SmtpClient.


git-svn-id: svn://localhost/gambas/trunk@5121 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-09-03 23:40:59 +00:00