Commit graph

143 commits

Author SHA1 Message Date
Benoît Minisini
2402db91f0 [INTERPRETER]
* NEW: Support for imaginary number syntax. For example, using "3i" will 
  automatically load the gb.gsl component, create the corresponding complex 
  number and return it.

[COMPILER]
* NEW: Support for imaginary number syntax.

[GB.EVAL]
* NEW: Support for imaginary number syntax.

[GB.GSL]
* NEW: Support for imaginary number syntax.
* NEW: Vector class is now generic, and has two child classes: FloatVector 
  and ComplexVector, depending on the type of its elements.
* BUG: Support for arithmetic operators on Vector class has been removed. 
  It had too many problems.


git-svn-id: svn://localhost/gambas/trunk@4918 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-08 23:23:24 +00:00
Emil Lenngren
393decb5e1 [GB.JIT]
* NEW: Implement _unknown.
* BUG: Remove some warnings.

[INTERPRETER]
* BUG: Fix exception handling for JIT functions.


git-svn-id: svn://localhost/gambas/trunk@4909 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-08 14:53:23 +00:00
Benoît Minisini
6c54a66760 [INTERPRETER]
* BUG: Correctly release or keep the return value of a function when 
  destructors are called during epilogue.


git-svn-id: svn://localhost/gambas/trunk@4863 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-06-27 01:14:05 +00:00
Benoît Minisini
b98a33c671 [INTERPRETER]
* BUG: If there is an error, wake up the debugger on the current stack 
  position. Return to the last encountered line break after, not before.


git-svn-id: svn://localhost/gambas/trunk@4841 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-06-17 09:12:31 +00:00
Benoît Minisini
64fef6f598 [DEVELOPMENT ENVIRONMENT]
* BUG: If the project is read-only, the profile file is stored in the 
  process temporary directory in /tmp instead of the project directory.
* NEW: The name of profile files now follows this scheme: '.N.prof', where
  'N' is an index incremented each time the project is run.
* BUG: Toolbars and popup-menus are correctly updated at first load form
  text, source and form editors.
* BUG: Do not show or hide toolbars buttons outside of the toolbar 
  'Configure' event.

[INTERPRETER]
* NEW: The '-p' option now takes the profile file path as argument.

[GB.DEBUG]
* NEW: The profile file path can be specified on the command line.

[GB.FORM.MDI]
* NEW: Configured toolbars are drawn with a red frame.

[GB.GTK]
* BUG: Remove warnings displayed by the Control Raise() and Lower() 
  methods.
* BUG: Draw.Style methods now are correctly clipped.


git-svn-id: svn://localhost/gambas/trunk@4820 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-06-10 14:58:45 +00:00
Benoît Minisini
6b2e5d0776 [CONFIGURATION]
* BUG: Add gb.jit directory in the top Makefile.am so that it is compiled.

[INTERPRETER]
* NEW: System.Profile now only deactivate the instruction profiling. 
  Function calls keep being profiled. That way the IDE can read the profiled
  output without crashing!


git-svn-id: svn://localhost/gambas/trunk@4762 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-05-23 21:35:58 +00:00
Benoît Minisini
947e201117 [INTERPRETER]
* BUG: Now System.Profile has no effect if the project has not been started 
  in profiling mode from the IDE.


git-svn-id: svn://localhost/gambas/trunk@4761 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-05-23 20:15:32 +00:00
Emil Lenngren
3c912da3db [INTERPRETER]
* NEW: Switch to JIT compiler if available, and make it able to talk to gb.jit.
* BUG: GP must be NULL for new void stack frames.

[COMPILER]
* NEW: 'Fast' keyword means the class should be JIT-compiled.

[GB.JIT]
* NEW: JIT Compiler.



git-svn-id: svn://localhost/gambas/trunk@4759 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-05-23 19:26:15 +00:00
Benoît Minisini
07387ff660 [DEVELOPMENT ENVIRONMENT]
* NEW: Add some debugging options directly in the 'Debug' menu.
* NEW: A new option to activate the profiling of the debugged project.
* NEW: Profiling windows. Not finished yet.

[INTERPRETER]
* BUG: Fix a crash that could occur if a error is raised inside an event 
  handler.
* NEW: Support for profiling.
* BUG: Fix a crash that could occur if a error is raised inside a signal
  callback.

[GB.DEBUG]
* NEW: Support for profiling.

[GB.FORM]
* NEW: GridView now raises a Sort event when the sort properties are 
  changed.
* BUG: Fix a crash when changing the IconPanel Count property.

[GB.GTK]
* BUG: Fix the Font.Copy() method.


git-svn-id: svn://localhost/gambas/trunk@4740 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-05-19 02:55:05 +00:00
Benoît Minisini
9e259995ea [INTERPRETER]
* OPT: Use mmap() to allocated the stack, not malloc(). Consequently, 
  calling functions recursively are now very fast.

[COMPILER]
* NEW: New FAST keyword.


git-svn-id: svn://localhost/gambas/trunk@4536 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-03-06 01:50:41 +00:00
Benoît Minisini
1fc5a474de [INTERPRETER]
* NEW: New GOSUB instruction. You return from a GOSUB with the RETURN 
  instruction alone. Consequently, you cannot exit from a 'SUB' with it if
  there is a pending GOSUB. The GOSUB stack is only limited by the
  available memory.

[COMPILER]
* NEW: New GOSUB instruction.


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


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


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

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

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

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

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

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

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

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

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

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


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

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


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



git-svn-id: svn://localhost/gambas/trunk@4489 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-02-19 16:13:38 +00:00
Benoît Minisini
dd3b512daf [CONFIGURATION]
* NEW: Update copyrights.


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

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

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


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


git-svn-id: svn://localhost/gambas/trunk@4277 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-12-13 04:48:47 +00:00
Benoît Minisini
df80468b96 [INTERPRETER]
* BUG: Fix function calls for functions taking optional arguments and extra
  arguments.


git-svn-id: svn://localhost/gambas/trunk@4223 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-10-28 01:54:10 +00:00
Benoît Minisini
aae2aee181 [INTERPRETER]
* OPT: Optimize the inequality comparison operators by putting them into
  the gbx_exec_loop.c source file.


git-svn-id: svn://localhost/gambas/trunk@4113 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-09-09 01:50:57 +00:00
Benoît Minisini
7923377850 [INTERPRETER]
* OPT: A little optimization in string allocation.
* OPT: Optimize returning from a function.
* OPT: A little optimization in conditonal jump.


git-svn-id: svn://localhost/gambas/trunk@4108 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-09-08 20:08:33 +00:00
Benoît Minisini
2df008159f [INTERPRETER]
* NEW: The LIKELY() and UNLIKELY() macros do nothing now, as it seems that
  recent CPUs are better than humans for branch prediction.
* BUG: Error.Backtrace is accurate now.


git-svn-id: svn://localhost/gambas/trunk@4066 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-08-31 02:28:48 +00:00
Benoît Minisini
005fb507bf [INTERPRETER]
* NEW: Abort if a native class declares the same symbol twice.
* NEW: Two more standard error messages declared in gambas.h


git-svn-id: svn://localhost/gambas/trunk@3989 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-08-07 19:48:08 +00:00
Benoît Minisini
cd83028ccd [DEVELOPPEMENT ENVIRONMENT]
* BUG: Modifying table fields and indexes many times now works correctly.
* BUG: Fix drag & drop between two IDE windows.
* NEW: Pretty printer now acts on selected text.
* NEW: CSV import and automatic field conversion now can deal with both
  localized and non-localized data (i.e. floating point numbers with point
  or comma).

[GB.DB]
* BUG: Type mismatch error is correctly raised now when setting the value
  of a Result field.

[GB.DB.FORM]
* BUG: Some fixes in DataComboView.

[GB.FORM]
* NEW: IconPanel now automatically resizes the left panel to fit its 
  contents.


git-svn-id: svn://localhost/gambas/trunk@3971 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-08-05 16:03:59 +00:00
Benoît Minisini
a84e5fa1e2 [INTERPRETER]
* NEW: The Main startup function now can return a value. If that value is 
  an integer or a boolean, then it will be the exit value returned to the 
  parent process.
* NEW: The Application.Return property has been removed.


git-svn-id: svn://localhost/gambas/trunk@3951 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-07-26 00:28:52 +00:00
Benoît Minisini
7b76eb76f0 [INTERPRETER]
* NEW: Remove useless Qt 3 shared library preloading support.


git-svn-id: svn://localhost/gambas/trunk@3949 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-07-24 16:55:09 +00:00
Benoît Minisini
2fbf67cb29 [CONFIGURATION]
* NEW: Update FSF address in every source file.


git-svn-id: svn://localhost/gambas/trunk@3870 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-06-03 00:51:09 +00:00
Benoît Minisini
60a53306c3 [INTERPRETER]
* BUG: Recursive release of pending objects at program's end is more robust 
  now.


git-svn-id: svn://localhost/gambas/trunk@3869 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-06-03 00:19:33 +00:00
Benoît Minisini
0c678f3cba [DEVELOPMENT ENVIRONMENT]
* NEW: Little changes in Sapphire theme.
* BUG: Fix text editor toolbar tooltips.
* NEW: Support for C and C++ files.
* BUG: Support for procedure folding and unfolding shortcuts in the text 
  editor.
* NEW: A "Paste special" button in the code editor toolbar.

[GB.EVAL.HIGHLIGHT]
* NEW: C and C++ syntax hilighting.

[GB.FORM.MDI]
* BUG: Don't try to optimize Toolbar separators in design mode.

[GB.QT4.EXT]
* NEW: In Editor, highlight both matching braces now.


git-svn-id: svn://localhost/gambas/trunk@3770 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-04-16 00:25:07 +00:00
Benoît Minisini
b936c83f0d [CONFIGURATION]
* NEW: Update copyright strings.

[DEVELOPMENT ENVIRONMENT]
* NEW: Display menu shortcuts inside the form editor.


git-svn-id: svn://localhost/gambas/trunk@3670 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2011-03-21 00:04:10 +00:00
Benoît Minisini
cdcf6cdac9 [DEVELOPMENT ENVIRONMENT]
* BUG: Code indentation routine correctly handles structures now.

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

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

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

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

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


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


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

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

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

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

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


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

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

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

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

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

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


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

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


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

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

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

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

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

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


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

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


git-svn-id: svn://localhost/gambas/trunk@3175 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-09-01 20:46:09 +00:00
Benoît Minisini
9a265c4201 [INTERPRETER]
* BUG: Last optimization was a bad idea.


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


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

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

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

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


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

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


git-svn-id: svn://localhost/gambas/trunk@3151 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-08-28 12:33:05 +00:00
Benoît Minisini
40263e9bd7 [INTERPRETER]
* BUG: Correctly fix the management of return value in native function 
  calls.


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

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


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

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

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


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

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

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


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

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

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


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


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


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

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


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

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

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


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

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

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



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

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

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

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


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


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

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


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


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

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

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

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



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

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


git-svn-id: svn://localhost/gambas/trunk@2912 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-04-26 09:36:47 +00:00
Benoît Minisini
7f00049b8b [INTERPRETER]
* BUG: Inherited startup Main methods work again.


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

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


git-svn-id: svn://localhost/gambas/trunk@2806 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2010-03-18 06:05:17 +00:00
Benoît Minisini
0665d5f720 [CONFIGURATION]
* BUG: Configuration summary should be printed correctly again.
* NEW: README file was updated.

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

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


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

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

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


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

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

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

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


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

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

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

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

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

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


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

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

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


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


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

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

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

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


git-svn-id: svn://localhost/gambas/trunk@2442 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-11-28 01:22:00 +00:00
Benoît Minisini
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
d3501bf140 [DEVELOPMENT ENVIRONMENT]
* NEW: Work continues on integrating the database manager.
* NEW: Some cosmetic changes in the way controls are drawing on the form
  editor.
* NEW: Panels with Border property set to None are now drawn with a light 
  border.
* BUG: Fix the "Show tab" button and menu.

[INTERPRETER]
* NEW: _attach is a new dynamic special method that is called when an 
  object is attached to or detached from its event observer. The first 
  argument of this method is the event observer, and the second argument 
  the event handler prefix.

[COMPILER]
* NEW: An expression can be a NEW instruction now. Beware that it does not 
  work inside braces.

[GB.DB]
* BUG: Fix an error message in the sqlite handler.

[GB.DB.FORM]
* NEW: DataSource.Table can now be any SQL query. The Filter property is 
  ignored in that case.
* BUG: Setting DataSource.Table to NULL correctly resets the DataSource and
  its children.
* NEW: DataView automatically adjusts the height of its rows to the 
  contents.
* NEW: DataSource.CacheSize is a new property to set the number of rows 
  stored in the internal DataSource cache. When this property is set to 
  zero, the cache size takes its default value (64 rows).

[GB.DB.SQLITE2]
* BUG: Fix a crash in datatype mapping.

[GB.DB.SQLITE3]
* BUG: Fix a crash in datatype mapping.

[GB.QT4]
* BUG: Window.AutoResize property works as expected now.
* OPT: Some optimizations in GridView.
* NEW: GridView.Rows[].Visible returns if a specific row is visible.
* NEW: GridView.Rows[].EnsureVisible ensures that a specific row is 
  visible.
* BUG: Draw.Style.Panel draws the same thing as a panel border now.
* BUG: Window.Closed always returns the accurate value now.


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

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



git-svn-id: svn://localhost/gambas/trunk@2091 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-07-08 19:57:50 +00:00
Benoît Minisini
0c14eb0bdb [DEVELOPMENT ENVIRONMENT]
* NEW: Remove the project stack size option.

[INTERPRETER]
* NEW: Make the stack grow as needed. Note that the stack will never 
  shrink.

[GB.DEBUG]
* BUG: This component now compiles correctly.


git-svn-id: svn://localhost/gambas/trunk@1987 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-05-27 18:42:48 +00:00
Benoît Minisini
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
a282449a85 [INTERPRETER]
* BUG: Arguments passed by reference do not crash randomly anymore.


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

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

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

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

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


git-svn-id: svn://localhost/gambas/trunk@1858 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2009-02-04 22:51:20 +00:00
Benoît Minisini
85246fbaaa [CONFIGURATION]
* NEW: Upgrade libtool autoconf macros and libltdl sources to the 1.5.26 
  version.

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

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

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

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

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

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

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

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

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

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


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

[GB.QTE]
* BUG: Fix compilation.


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

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

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

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

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

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

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

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

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

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


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

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

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

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

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

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

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


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


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

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

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

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


git-svn-id: svn://localhost/gambas/trunk@1302 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-04-07 22:31:35 +00:00
Benoît Minisini
c9dd8bcefe [INTERPRETER]
* BUG: Fixes the string management optimizations.
* OPT: Optimization of the string search function (InStr, RInstr).
* OPT: Optimization of the Split() function.
* OPT: Optimization of local variables initialization when entering a
  method.

[GB.NET.SMTP]
* BUG: Fixes the Makefile.am file so that the component compiles if the 
  glib library is installed in a non-standard directory.

[GB.QTE.EXT]
* BUG: Fixes the gb.qte.ext.component file.



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

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

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



git-svn-id: svn://localhost/gambas/trunk@1199 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-03-19 14:32:30 +00:00
Benoît Minisini
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
e4d7400aa3 [CONFIGURATION]
* NEW: Removed the out-of-date README.FEDORA and README.REDHAT files.

[EXAMPLES]
* BUG: Fixed the MoviePlayer example.
* BUG: Fixed the Clock example.

[WIKI CGI SCRIPT]
* NEW: More titles and less borders.

[INTERPRETER]
* BUG: Uses the accurate method prototypes for Byte, Short and Single array
  classes.
* BUG: Many fixes in the error management.

[GB.DB]
* BUG: Fixed many warnings and some 64 bits stuff in all database drivers.

[GB.DEBUG]
* NEW: More explicit error messages when the creation of debugger fifos 
  fails.

[GB.COMPRESS.ZLIB]
* BUG: Fixed the compilation on 64 bits OS.

[GB.CORBA]
* NEW: Fixed some warnings.

[GB.GTK]
* NEW: Fixed some warnings.

[GB.IMAGE]
* NEW: Fixed some warnings.

[GB.NET.SMTP]
* NEW: Fixed some warnings.

[GB.PDF]
* NEW: Fixed some warnings.

[GB.QT.KDE]
* NEW: Fixed some warnings.

[GB.SDL]
* NEW: Fixed some warnings.

[GB.SDL.SOUND]
* NEW: Fixed some warnings.

[GB.XML]
* NEW: Fixed some warnings.

[GB.XML.XLST]
* NEW: Fixed some warnings.



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

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

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


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

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

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

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



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

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

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

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

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


git-svn-id: svn://localhost/gambas/trunk@1033 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-01-23 19:56:18 +00:00
Benoît Minisini
96f68f5ce4 [INTERPRETER]
* BUG: Passing arguments by reference really works now.


git-svn-id: svn://localhost/gambas/trunk@1021 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-01-20 14:02:37 +00:00
Benoît Minisini
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
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
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