Commit graph

241 commits

Author SHA1 Message Date
Benoît Minisini
bb6f47038e [INTERPRETER]
* NEW: New interpreter API to browse the project contents.
* BUG: RDir(".") does not crash anymore.


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

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

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


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

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


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

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

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


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


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

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

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

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

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


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

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

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

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

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

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

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


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

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

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

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

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


git-svn-id: svn://localhost/gambas/trunk@2669 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-02-07 23:10:41 +00:00
Benoît Minisini
6d3201bc1f [WIKI CGI SCRIPT]
* BUG: Linkification does not erase symbols references anymore.

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

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


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



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

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


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

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

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


git-svn-id: svn://localhost/gambas/trunk@2582 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-01-01 14:55:13 +00:00
Benoît Minisini
47d0aa711c [CONFIGURATION]
* NEW: Architecture detection.
* NEW: Updated libtool macros.

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

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

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

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


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

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

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

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

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

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


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

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

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


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

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

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

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

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

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

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

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


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

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

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

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

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


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

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


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

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

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

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

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

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

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


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

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

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

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


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

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


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

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

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

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

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

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

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


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


git-svn-id: svn://localhost/gambas/trunk@2241 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-08-17 10:41:51 +00:00
Benoît Minisini
dc8e806ae7 [DEVELOPMENT ENVIRONMENT]
* NEW: Arabic translation updated.

[INTERPRETER]
* NEW: A new method in the interpreter API to read a value in memory and 
  store it in a Gambas value slot.

[GB.DB.ODBC]
* BUG: Fix a warning.


git-svn-id: svn://localhost/gambas/trunk@2206 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-08-02 22:48:08 +00:00
Benoît Minisini
656364fe57 [ARCHIVER]
* NEW: Connection files are added to executables.

[GB.DB]
* NEW: A Gambas part has been added to the component to implement the 
  Connections class. This class is a static pseudo-collection that 
  automatically creates Connection objects for connection files located in
  the ".connection" project directory.


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

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



git-svn-id: svn://localhost/gambas/trunk@2091 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-07-08 19:57:50 +00:00
Benoît Minisini
ca0292fd58 [DEVELOPMENT ENVIRONMENT]
* NEW: Change the CTRL+W shortcut to F12.
* BUG: Double-clicking on a control in the form editor now correctly moves 
  inside the event handler in all cases.
* NEW: Start enhancing the file information dialog.
* BUG: The file information dialog returns the accurate number of modules, 
  classes, and forms again.

[INTERPRETER]
* NEW: Mac OS X is a FreeBSD.

[GB.QT.EXT]
* BUG: Fix the undo and redo commands in the Editor when some text has been
  colorized.

[GB.QT4.EXT]
* BUG: Fix the undo and redo commands in the Editor when some text has been 
  colorized.


git-svn-id: svn://localhost/gambas/trunk@2074 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-07-04 23:54:00 +00:00
Benoît Minisini
5f8e273edf [DEVELOPMENT ENVIRONMENT]
* BUG: The button that switches between form and class editor is not shown 
  anymore when a module or a class is edited.

[GB.GTK]
* BUG: Font management was redesigned. It does not leak memory anymore,
  and now behaves like in gb.qt.
* BUG: Tristate CheckBox controls now work as expected.
* BUG: Destroy pending deleted controls before entering the event loop, to
  avoid some memory leaks if the event loop is immediately aborted.
* BUG: Detach destroyed controls from their event listener, as in gb.qt.
* BUG: Now menu shortcuts are active even if the menu bar is hidden. But 
  the menu must be visible. To create an hidden active top-level menu, just 
  set its Text property to NULL, but keep it visible.
* NEW: Top-level menus with a void Text property are not shown anymore.
* BUG: Showing and hiding top-level menu now work correctly.

[GB.QT]
* BUG: Font properties are correctly inherited between containers and 
  children controls.
* BUG: Showing a tray icon does not eat focus events anymore.
* NEW: Top-level menus with a void Text property are not shown anymore.

[GB.QT4]
* BUG: Font properties are correctly inherited between containers and 
  children controls.
* BUG: Shortcut management was fixed.
* BUG: Now menu shortcuts are active even if the menu bar is hidden. But 
  the menu must be visible. To create an hidden active top-level menu, just 
  set its Text property to NULL, but keep it visible.
* NEW: Top-level menus with a void Text property are not shown anymore.
* BUG: Showing and hiding top-level menu now work correctly.


git-svn-id: svn://localhost/gambas/trunk@2034 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-06-22 11:16:34 +00:00
Benoît Minisini
b6097b30d7 [INTERPRETER]
* NEW: Some enhancements in memory allocation debugging.

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

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


git-svn-id: svn://localhost/gambas/trunk@2020 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-06-16 00:17:25 +00:00
Benoît Minisini
2cbf018690 [GB.GTK]
* BUG: Fix the file descriptor watch manager again.

[GB.NET]
* BUG: If writing on Socket fails, do not raise the Write event.


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

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

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

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

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

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


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

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

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

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

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


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

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

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

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

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

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


git-svn-id: svn://localhost/gambas/trunk@1971 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-05-22 14:52:36 +00:00
Benoît Minisini
a83d81f98d [CONFIGURATION]
* BUG: FreeBSD patches.

[INTERPRETER]
* BUG: FreeBSD patches.

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

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

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

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

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

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

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

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

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

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


git-svn-id: svn://localhost/gambas/trunk@1955 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-05-15 17:57:29 +00:00
Benoît Minisini
283a5c3e78 [DEVELOPMENT ENVIRONMENT]
* NEW: Support for Hindi language.

[INTERPRETER]
* BUG: The Atnh() function has been fixed.


git-svn-id: svn://localhost/gambas/trunk@1931 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-04-22 08:50:40 +00:00
Benoît Minisini
238da73bb3 [DEVELOPMENT ENVIRONMENT]
* NEW: Add support for extra package dependencies.
* BUG: The right column of the property sheet is not too wide anymore.

[GB.GTK]
* BUG: Fix the ComboBox.Add() method slowness.

[GB.QT]
* BUG: Borderless modal windows do not show any border anymore with 
  Metacity.

[GB.XML.RPC]
* BUG: Event management was fixed, thanks to Ron.
* BUG: RcpArray.Copy() now returns an RpcArray object.


git-svn-id: svn://localhost/gambas/trunk@1918 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-04-03 22:29:51 +00:00
Benoît Minisini
e2c952c375 [DEVELOPMENT ENVIRONMENT]
* BUG: UTF-8 characters are allowed in project data file names now.

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

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

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

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

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

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

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


git-svn-id: svn://localhost/gambas/trunk@1868 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-02-12 16:43:25 +00:00
Benoît Minisini
741cd010cd [COMPILER]
* NEW: Add the '^=' assignment operator.


git-svn-id: svn://localhost/gambas/trunk@1837 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-01-30 01:28:35 +00:00
Benoît Minisini
b458334f0b [GB.CAIRO]
* NEW: Transformation and matrix functions were implemented.

[GB.IMAGE]
* NEW: The format conversion function comes back in the gb.image API.

[GB.IMAGE.IO]
* NEW: New component for loading and saving images.


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

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

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

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


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

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

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

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

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

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

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

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

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

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

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


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

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

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

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

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

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

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


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

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

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


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

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

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

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


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

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

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


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

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

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



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

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

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


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

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


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

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

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


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

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

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

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

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


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

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

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

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

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

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

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


git-svn-id: svn://localhost/gambas/trunk@1493 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-08-14 19:42:27 +00:00
Benoît Minisini
0eb9507c52 [DEVELOPMENT ENVIRONMENT]
* BUG: Do not abort if you try to open a dead symbolic link.

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

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

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


git-svn-id: svn://localhost/gambas/trunk@1481 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-07-22 21:31:17 +00:00
Benoît Minisini
dcea4334d7 [DEVELOPMENT ENVIRONMENT]
* NEW: The signature popup now underlines the argument under the cursor.
* NEW: A new option to minimize the IDE when the project is run.
* NEW: Replaced the '[Modified]' text in the title of a modified form or 
  class by a star.
* BUG: GridView, TableView, TextEdit and Editor are correctly refreshed in 
  the form editor when they are renamed.


git-svn-id: svn://localhost/gambas/trunk@1468 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-07-19 13:35:36 +00:00
Benoît Minisini
9b46a269c7 [DEVELOPMENT ENVIRONMENT]
* NEW: Adds a popup menu to the console window.

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

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

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

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

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

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

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


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

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

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

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

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

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

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


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


git-svn-id: svn://localhost/gambas/trunk@1355 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-05-03 15:07:55 +00:00
Benoît Minisini
f275928af5 [CONFIGURATION]
* NEW: Makes better configuration warning messages when detecting libintl 
  and libiconv libraries.

[DEVELOPMENT ENVIRONMENT]
* NEW: The About dialog box was redesigned. The Hall Of Fame is now 
  displayed with a cool animation.
* NEW: The entire project was adapted to the new way of calculating
  Desktop.Scale.
* NEW: When loading a Gambas 2 form, the form editor tries to adapt to the
  new way of calculating Desktop.Scale automatically.

[COMPILER]
* BUG: Adds many error messages when a compiler limit is reached: too many 
  static symbols in a same class, too many dynamic symbols, too many 
  functions, and so on.

[GB.GTK]
* NEW: Desktop.Scale is now half the font ascent, not half the font height.
* NEW: Color.Medium() method was replaced by Color.Mix(), that takes a new
  optional argument indicating the relative weight of the second color.
  
[GB.QT]
* NEW: Desktop.Scale is now half the font ascent, not half the font height.
* NEW: Color.Medium() method was replaced by Color.Mix(), that takes a new
  optional argument indicating the relative weight of the second color.

[GB.QT.EXT]
* BUG: Editor now correctly highlight its frame according to the focus 
  change on styles that have use of that.


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

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

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


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

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

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

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

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


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

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

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

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


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

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

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

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


git-svn-id: svn://localhost/gambas/trunk@1261 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-03-26 16:28:18 +00:00
Benoît Minisini
46a573b710 [INTERPRETER]
* BUG: Fix debugging memory management code.


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

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


git-svn-id: svn://localhost/gambas/trunk@1226 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-03-21 15:39:46 +00:00
Benoît Minisini
02aa33396f [INTERPRETER]
* BUG: Creates a replacement implementation of cfmakeraw().


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


git-svn-id: svn://localhost/gambas/trunk@1213 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-03-21 00:55:43 +00:00
Benoît Minisini
7759900148 [INTERPRETER]
* BUG: Defines sighandler_t when it is not defined by the system includes.


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

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

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



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

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

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

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


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

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

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

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

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

git-svn-id: svn://localhost/gambas/trunk@1187 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-03-17 14:54:17 +00:00
Benoît Minisini
5f900c0b68 [DEVELOPMENT ENVIRONMENT]
* NEW: English and french tips were updated. A new tip was added.
* NEW: Files that were opened at project close are automatically reopened
  when the project is loaded again.
* NEW: A warning message is displayed when the GNU translation tools are
  not installed.
* BUG: The code editor method combo-box is correctly updated now.
* BUG: Some fixes in the automatic completion.
* BUG: Replace points by dash in the name of packages generated by the IDE
  packager.
* NEW: Updated russian translation
* NEW: Updated french translation

[DATABASE MANAGER]
* NEW: Updated russian translation

[EXAMPLES]
* BUG: Fixed the Gravity and the GameOfLife examples so that they do not
  use public form controls anymore.

[INTERPRETER]
* OPT: Many optimizations in the string substitution routines, the 
  internal datatype conversions, the INPUT and LINE INPUT instructions, the 
  error messages generation, the object and string reference counting, and
  the memory allocation routines.
* NEW: Opening a device file in direct mode (FOR READ/WRITE) is now 
  automatically non blocking.
* OPT: Lof() now only tries its different methods (ioctl and lseek) once.
* BUG: Val() now ignores thousand separators characters at the end of the 
  number.
* NEW: A new flag for enabling the stack trace generation at each error.

[GB.DEBUG]
* BUG: The gb.debug component interface declaration was not 64-bits aware.

[GB.EVAL]
* BUG: The Highlight.Purge() method now correctly deals with non-ASCII 
 characters.

[GB.FORM]
* BUG: TableView.Edit() does not raise a "read-only combo-box" error 
  anymore.
  
[GB.FORM.DIALOG]
* BUG: Dialog buttons now are never cut.

[GB.GTK]
* BUG: Cached drawing areas are correctly redrawn now.
* BUG: Loading big images now works correctly. There is apparently a bug 
  in the GTK+ image loader, and I found a workaround.
* BUG: Message boxes correctly display the text of their buttons now.

[GB.QT]
* BUG: The Open, and initial Move and Resize event of embedded forms are 
  now always raised when you call the Show method or if you set the Visible
  property. Before, it was raised when the embedded form was actually 
  shown.

[GB.SETTINGS]
* NEW: Settings are now stored in ~/.config/gambasX, where X is the 
  gambas version number.
* BUG: Strings are correctly quoted inside the settings file now.

[GB.WEB]
* NEW: Application.Protocol is a new property that allows to tell the 
  component that the protocol is not necessarily "http".


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

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

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

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

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


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

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


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



git-svn-id: svn://localhost/gambas/trunk@1080 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-02-18 23:07:24 +00:00
Benoît Minisini
1e791cee6b [CONFIGURATION]
* BUG: The external gettext library is now used only on OpenBSD. If needed,
  other systems can be added of course.
* BUG: Fix Qt moc detection for OpenBSD.

[DEVELOPMENT ENVIRONMENT]
* NEW: In the menu editor, a new menu is now inserted after the current 
  menu and not before.

[INTERPRETER]
* BUG: Object.Attach() and Object.Detach() now correctly deals with
  Observer objects.

[COMPILER]
* NEW: When a form method declaration has no END keyword, the error 
  message is now accurate. It does not talk about the form definition 
  anymore.

[GB.GTK]
* BUG: The use of alternative input methods do not print warnings anymore.


git-svn-id: svn://localhost/gambas/trunk@1067 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-02-14 11:59:36 +00:00
Benoît Minisini
bd322efa9c [DEVELOPMENT ENVIRONMENT]
* BUG: Use TextEdit.RichText insted of TextEdit.Text.
* BUG: END SUB can be the end of a method. The class analyze now takes 
  that into account.

[HELP]
* BUG: Fixed the generated treeview.

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

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

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

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


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

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

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


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

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

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

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



git-svn-id: svn://localhost/gambas/trunk@1038 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-01-25 15:01:02 +00:00
Benoît Minisini
ec7ab0c811 [CONFIGURATION]
* NEW: Support for installing control icons in native components.

[64 BITS]
* BUG: Fixed some uses of long datatype in the gb.qt.ext component, the 
  Splitter and the Container class of gb.qt.
* BUG: Fixed some declarations in the gb.net.curl component.
* NEW: Pointer[] is a new class that represents an array of Pointer values.
* BUG: All gb.qt, gb.gtk and gb.desktop methods that deal with X11 Window 
  identifiers now use Pointer and Pointer[] datatypes instead of Integer 
  and Integer[].
* BUG: The Embedder example was updated according to the change above.

[INTERPRETER]
* BUG: Fixed the static array management that was broken by the 64 bits
  changes.

[GB.DEBUG]
* BUG: Debug.Write now does nothing if Debug.Start has not been called.

[GB.GTK]
* BUG: Fixed the implementation of the Message class that was broken.
* BUG: Fixed a crash in the Watcher class.
* BUG: Fixed the Image.Flip() and Image.Mirror() methods.
* BUG: Fixed a potential crash in timer management.
* NEW: The GridView Select event was implemented.


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

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


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

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

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

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

git-svn-id: svn://localhost/gambas/trunk@1014 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-01-19 01:36:38 +00:00
Benoît Minisini
9d6302d702 [INFORMER]
* BUG: Fixed the informer that was creating bad *.info files for native 
  components.

[GB.QT.EXT]
* NEW: TextEdit text properties were splitted in normal and rich text. Now
  you have TextEdit.Text that returns the text without the markups, and
  TextEdit.RichText that returns the text with the markups. 
  TextEdit.Selection has the two same properties for the selected text.


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

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

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


git-svn-id: svn://localhost/gambas/trunk@1011 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-01-18 13:43:10 +00:00
Benoît Minisini
4c02c6d338 ******** Merged /branches/64bits r918:1003 into /trunk
[CONFIGURATION]
* NEW: 64 bits port.

[EXAMPLES]
* BUG: Fixed the AnalogWatch example.

[WIKI CGI SCRIPT]
* NEW: Some little cosmetic changes.

[INTERPRETER]
* NEW: The extern function implementation has been redesigned and is now
  based on libffi, so that it works on 64 bits system. Because of a flaw in
  the compiler design, projects that use the Pointer datatype must be
  recompiled to be used on a 64 bits system. This flaw will be fixed in
  Gambas 3.
* OPT: Put some tables into read-only memory. About 1000 bytes are saved
  for each running interpreter, except the first one.
* BUG: Does not crash anymore if a component cannot be loaded.
* NEW: Spanish translation updated.
* NEW: A new interpreter API for returning a pointer.

[COMPILER]
* BUG: Correctly compiles LONG constants inside code.

[GB.DEBUG]
* BUG: Compiles and links the gb.debug components with the thread
  libraries.

[GB.DB.SQLITE3]
* BUG: Getting the primary index of a table without primary index is safe
  now.

[GB.GTK]
* BUG: Modified the GLib priority of watched descriptors, as the main loop 
  could enter in a loop in which user interface events were not managed.
* BUG: Message boxes use application title without crashing now.

[GB.OPENGL]
* BUG: Disable dead code.

[GB.QT.EXT]
* BUG: TextEdit.TextWidth and TextEdit.TextHeight were not declared as
  read-only properties.

[GB.XML.XSLT]
* BUG: XSLT class is now declared as being not creatable.


git-svn-id: svn://localhost/gambas/trunk@1006 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-01-17 21:39:26 +00:00
Laurent Carlier
7cc7c5eaaa Remove a lot of OS_OPENBSD check, move a lot of strcpy to strlcpy, strcat to strlcat and sprintf to snprintf. Only few of them are left.
git-svn-id: svn://localhost/gambas/trunk@919 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-01-06 20:06:44 +00:00
Benoît Minisini
beba6d9435 [64 BITS]
* NEW: Continue on fixing the use of long datatype.


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

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

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

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

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


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



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