Commit graph

323 commits

Author SHA1 Message Date
Benoît Minisini
0026fb1489 [DEVELOPMENT ENVIRONMENT]
* NEW: Support for compiler warnings.
* BUG: Fix all detected warnings.

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

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


git-svn-id: svn://localhost/gambas/trunk@5122 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-09-04 07:29:39 +00:00
Tobias Boege
a7605476f3 [GB.ADT]
* NEW: Rewrite List class
* BUG: Fix memory leaks from breaking list enumeration
* BUG: Replace element destruction postponing in Deque by new API calls



git-svn-id: svn://localhost/gambas/trunk@5100 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-08-30 01:51:01 +00:00
Benoît Minisini
11c1bfe4b9 [GB.TASK]
* NEW: The component has been removed.


git-svn-id: svn://localhost/gambas/trunk@5080 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-08-26 16:26:13 +00:00
Benoît Minisini
796f6b023d [INTERPRETER]
* NEW: GB.Serialize() is a new API that serializes a Gambas value to a 
  file.
* NEW: GB.UnSerialize() is a new API that serializes a Gambas value from
  a file.

[GB.FORM]
* BUG: Stock.Icons works correctly in all cases now.

[GB.TASK]
* NEW: Task is not a stream anymore.
* NEW: The Task Read event now takes an argument, which is the data printed
  on the task standard output. Normally, the data will come line by line.
* NEW: The Task Main method now can return any serializable value to its 
  parent.
* NEW: Task.Value is a new property that return the value returned by the
  background task once it has terminated.


git-svn-id: svn://localhost/gambas/trunk@5079 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-08-26 01:54:57 +00:00
Benoît Minisini
091b94b1ed [INTERPRETER]
* NEW: Allow components to access the interpreter API through a pointer and 
  not a full structure. It is a little bit slower (one more indirection),
  but it uses less memory: one pointer instead of about 180.

[GB.GTK]
* NEW: Use the indirect API access.

[GB.QT4]
* NEW: Use the indirect API access.

[GB.TASK]
* NEW: Use the indirect API access.
* NEW: Task now is now a stream that can read the standard output of the 
  background task.
* NEW: Task now raises the Read event when the background task has printed
  something on its standard output.
* NEW: Task now raises the Error event when the background task has printed
  something on its standard error output. The event handler receives the
  data in its first argument.

[GB.XML.RPC]
* BUG: Some english fixes in some error messages.


git-svn-id: svn://localhost/gambas/trunk@5077 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-08-25 15:13:39 +00:00
Benoît Minisini
b8f6e09b8b [INTERPRETER]
* NEW: Add support for double-linked lists in the interpreter API.
* NEW: GB.Wait() is a new API that waits for a specific number of 
  milliseconds, exactly like the WAIT instruction (i.e. the event loop is
  run).
* NEW: GB.HasForked() is a new API that warns the interpreter that fork()
  has been called (he has to do some stuff).
* NEW: Remove the GB_POST_FUNC datatype from the API.

[GB.DBUS]
* BUG: Fix some compilation warnings.

[GB.TASK]
* NEW: gb.task is a new component that allows to run background tasks by
  "simply" forking the interpreter. Communication between the task and the
  main process has not been implemented yet.


git-svn-id: svn://localhost/gambas/trunk@5076 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-08-24 22:29:53 +00:00
Benoît Minisini
5133ebfb7f [GB.DB]
* BUG: Correctly handle null dates.

[GB.DB.FORM]
* NEW: DataControl now uses a DateBox to edit date values.

[GB.FORM]
* NEW: DateBox handles null dates now.
* NEW: MaskBox hides its contents now when it is the default one and it 
  does not have the focus.
* NEW: DateChooser displays a little cursor following the mouse inside the
  calendar and the time panel.

[GB.GTK]
* BUG: Fix popup management.
* BUG: Editable ComboBox  controls now have the right background.
* NEW: Automatically temporarily release the keyboard and the mouse when 
  the debugger stops the program.


git-svn-id: svn://localhost/gambas/trunk@5066 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-08-21 23:24:22 +00:00
Tobias Boege
c79d08669e [GB.ADT]
* BUG: Remove unnamed union due to compilation problems



git-svn-id: svn://localhost/gambas/trunk@5063 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-08-21 09:35:40 +00:00
Benoît Minisini
52b3040e07 [DEVELOPMENT ENVIRONMENT]
* NEW: Try to avoir Application.Busy flickering in some dialogs.

[EXAMPLES]
* NEW: New Tablet event inspired by a project made by Ricardo Díaz Martín.

[GB.DRAW]
* NEW: Paint.DrawImage() takes a new optional argument that defines the 
  opacity of the drawing, between 0 and 1.

[GB.FORM]
* NEW: ScrollArea.Tablet is a new property that allows it to catch tablet 
  events.

[GB.GTK]
* BUG: Support for tablet events.
* BUG: Make mouse events in gb.gtk and gb.qt3 behave the same way.
* NEW: Mouse.State is a new property that return the state of all mouse 
  buttons as specified by the current mouse event.
* NEW: Mouse.Button now only returns the index of the button that triggered 
  the mouse event.
* BUG: Fix a typo in the name of the Pointer.YTilt property.
* BUG: DrawingArea.Tablet now works correctly when the DrawingArea is not
  cached.

[GB.QT4]
* BUG: Mouse events from tablet now get accurate button information.
* BUG: Make mouse events in gb.gtk and gb.qt3 behave the same way.
* NEW: Mouse.State is a new property that return the state of all mouse 
  buttons as specified by the current mouse event.
* NEW: Mouse.Button now only returns the index of the button that triggered 
  the mouse event.
* BUG: Fix a typo in the name of the Pointer.YTilt property.


git-svn-id: svn://localhost/gambas/trunk@5057 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-08-19 13:01:57 +00:00
Tobias Boege
c2cc6479e0 [GB.ADT]
* BUG: Remove left-overs from local build - Sorry.



git-svn-id: svn://localhost/gambas/trunk@5056 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-08-18 21:52:12 +00:00
Tobias Boege
f81c83c4f2 [CONFIGURATION]
* NEW: Move gb.adt to main/lib/adt. It doesn't have extra dependencies



git-svn-id: svn://localhost/gambas/trunk@5055 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-08-18 21:46:25 +00:00
Benoît Minisini
35368a3648 [DEVELOPMENT ENVIRONMENT]
* BUG: Fix profiling of Eval() calls.

[INTERPRETER]
* NEW: GB.ReturnBorrow() is a new API to temporarily borrow the return 
  value.
* NEW: GB.ReleaseBorrow() is a new API to release the return value borrowed
  by the previous function, without releasing it.

[GB.DEBUG]
* BUG: Fix profiling of Eval() calls.

[GB.V4L]
* BUG: Fix a compilation warning.


git-svn-id: svn://localhost/gambas/trunk@5053 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-08-18 13:06:58 +00:00
Benoît Minisini
c3e481cd39 [GB.IMAGE]
* NEW: Image.RotateLeft() and Image.RotateRight() are two new methods for
  rotating a image by 90° step.


git-svn-id: svn://localhost/gambas/trunk@5049 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-08-16 20:33:21 +00:00
Benoît Minisini
2b0c757410 [GB.COMPLEX]
* BUG: Correctly implement arithmetic operators.


git-svn-id: svn://localhost/gambas/trunk@5041 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-08-14 14:11:59 +00:00
Benoît Minisini
684e7bbfb5 [GB.SIGNAL]
* NEW: Rewrote the component to use the signal management routines included 
  in the interpreter.


git-svn-id: svn://localhost/gambas/trunk@5039 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-08-14 09:53:03 +00:00
Benoît Minisini
daf3a53a4b [INTERPRETER]
* BUG: Fix Error.Propagate().

[GB.EVAL]
* NEW: Highlight TODO/FIXME/NOTE commentaries like help commentaries.


git-svn-id: svn://localhost/gambas/trunk@4997 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-29 15:50:27 +00:00
Benoît Minisini
97718051b1 [DEVELOPMENT ENVIRONMENT]
* OPT: New optimizations in profile file size.
* NEW: PageUp and PageDown keys now work as expected in the project filter 
  box.

[INTERPRETER]
* NEW: Support for new profile file format.

[GB.DEBUG]
* OPT: New profile file format.

[GB.LIBXML]
* NEW: Make this component exclude gb.xml.

[GB.XML]
* NEW: Make this component exclude gb.libxml.


git-svn-id: svn://localhost/gambas/trunk@4961 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-17 16:24:48 +00:00
Benoît Minisini
1d0ebd5999 [DEVELOPMENT ENVIRONMENT]
* NEW: The project tree filter box now tries to keep the focus.
* NEW: Hitting ENTER in the project filter box opens the current selected 
  file.
* NEW: Using arrows keys in the project filter box now moves the project
  tree cursor.
* NEW: CTRL+L now sets the focus back to the project filter box.
* NEW: Hitting ESC in the project filter box now resets the filter.
* NEW: Add support for gb.gsl component in the project creation dialog.

[INTERPRETER]
* NEW: Support for floating-point constants.
* BUG: The equality operators of the _operator interface now can return -1
  when a datatype is not supported.

[GB.COMPLEX]
* NEW: Remove methods that are implemented by the _operator interface.

[GB.QT4]
* OPT: Load clipboard format list only if the clipboard has changed.

[GB.GSL]
* NEW: Matrix can be compared with real or complex numbers. The number is
  then multiplied by the identity matrix before doing the comparison.


git-svn-id: svn://localhost/gambas/trunk@4958 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-16 16:30:55 +00:00
Benoît Minisini
df89e09b2e [INTERPRETER]
* NEW: '_operators' interface has been renamed as '_operator'.
* NEW: Arithmetic operators now can be applied on two objects with
  different classes. One at least must implement the '_operator' interface.
* NEW: Each class that implements the '_operator' interface has now an 
  automatic priority that follows the load order. When a binary operator 
  has two objects that implement two different '_operator' interface, the
  one having the highest priority is used.
* NEW: Implementing all methods in the '_operators' interface is not 
  mandatory anymore. If one method is not implemented, then it is replaced
  by a function that raises a 'Type mismatch' error.

[GB.GSL]
* NEW: Matrix arithmetic has been implemented.
* NEW: Matrix.Determinant() method.
* NEW: Matrix.Invert() method.
* NEW: Matrix.Transpose() method.
* NEW: Matrix _call special method multiplies a matrix by a vector.
* NEW: Vector <-> Array conversion.


git-svn-id: svn://localhost/gambas/trunk@4946 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-14 02:49:57 +00:00
Benoît Minisini
89d42c3d40 [INTERPRETER]
* NEW: Add a new API to create an object without calling the constructors.

[GB.CRYPT]
* BUG: Fix bad casting of strcmp() return value to boolean. The same 
  security flaw has been found in MySQL recently. See 
  http://seclists.org/oss-sec/2012/q2/493

[GB.GTK]
* BUG: Fix bad casting of strcmp() return value to boolean in the Font 
  management.

[GB.GSL]
* NEW: Matrix class built the same way as the Vector class, i.e. with the 
  ability to switch transparently between Float or Complex elements.


git-svn-id: svn://localhost/gambas/trunk@4945 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-12 23:34:14 +00:00
Benoît Minisini
6931d13491 [GB.GSL]
* OPT: Optimize Complex arithmetic by avoiding unneeded object creations.


git-svn-id: svn://localhost/gambas/trunk@4940 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-10 20:33:26 +00:00
Benoît Minisini
a9fbd40cd8 [INTERPRETER]
* NEW: Implement the ^ operator in the '_operators' interface.

[GB.COMPLEX]
* NEW: Implement the ^ operator.

[GB.GSL]
* NEW: Implement the ^ operator in the Complex class.


git-svn-id: svn://localhost/gambas/trunk@4931 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-10 02:37:39 +00:00
Benoît Minisini
a3966cf195 [DEVELOPMENT ENVIRONMENT]
* BUG: Array of classes exported by a component are now correctly handled
  by the component interface analyzer.

[INTERPRETER]
* BUG: The _operators interface now correctly takes into account the
  "Float - Object" case.

[GB.GSL]
* NEW: Redesign of the Polynomial class. Now it implements a polynomial 
  that can switch between real and complex coefficients transparently.
* NEW: The ComplexPolynomial class has been removed.


git-svn-id: svn://localhost/gambas/trunk@4929 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-10 00:13:00 +00:00
Benoît Minisini
9a46cc0486 [INTERPRETER]
* NEW: Temporary hack in the GB.New() API so that we can pass a number of 
  arguments in some cases.

[GB.COMPLEX]
* OPT: Do not create complex objects during arithmetic operations when we 
  are sure that we can reuse a temporary one. That trick can be used in any
  '_operators' interface.


git-svn-id: svn://localhost/gambas/trunk@4925 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-09 17:10:21 +00:00
Benoît Minisini
fa552f69c1 [DEVELOPMENT ENVIRONMENT]
* NEW: New gb.complex component

[INTERPRETER]
* BUG: Automatic array conversion now works with not yet loaded array 
  classes.

[GB.COMPLEX]
* NEW: New component that implements a rudimentary management of complex 
  numbers. This component is automatically loaded if a complex number
  constant is encountered and no loaded component can already handle 
  complex numbers.


git-svn-id: svn://localhost/gambas/trunk@4924 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-09 15:37:42 +00:00
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
Benoît Minisini
bbe3baa41e [GB.SIGNAL]
* BUG: Remove an apparently useless type definition, and fix compilation on 
  recent Linux kernels.


git-svn-id: svn://localhost/gambas/trunk@4902 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-07 22:18:14 +00:00
Benoît Minisini
307e7d396f [INTERPRETER]
* BUG: Raise the Kill event of a Process after having closed its I/O 
  streams.

[GB.DEBUG]
* NEW: Debug.GetSignal() is a new method that returns the description of a 
  signal from its numeric value.


git-svn-id: svn://localhost/gambas/trunk@4892 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-03 18:21:54 +00:00
Benoît Minisini
ddff42d95b [GB.OPTION]
* BUG: The component is now compatible with the new way of arguments 
  handling, and does not crash anymore.


git-svn-id: svn://localhost/gambas/trunk@4890 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-03 17:32:39 +00:00
Emil Lenngren
76e3dee4d0 [GB.JIT]
* NEW: Can now profile each line of code, but beware: profiling makes the program much much slower.

[GB.DEBUG]
* OPT: Now DEBUG_calc_line_from_position has logaritmic time complexity instead of linear. That makes profiling each line much faster for large functions!


git-svn-id: svn://localhost/gambas/trunk@4886 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-02 22:38:29 +00:00
Benoît Minisini
f9d8a9c990 [GB.COMPRESS]
* BUG: Fix internal structure of Uncompress object.


git-svn-id: svn://localhost/gambas/trunk@4867 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-06-28 18:06:05 +00:00
Benoît Minisini
7cab7622bf [GB.DRAW]
* BUG: Fix Draw.Picture() when using the transformation matrix and not 
  specifying height or width.


git-svn-id: svn://localhost/gambas/trunk@4866 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-06-27 18:06:10 +00:00
Benoît Minisini
02d1089079 [GB.EVAL]
* BUG: Highlight.TextAfter returns the code as it should be displayed, even
  if the Rewrite argument of Highlight.Analyze() is FALSE.


git-svn-id: svn://localhost/gambas/trunk@4844 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-06-17 17:56:45 +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
835dd33dcf [GB.DEBUG]
* NEW: GB_PROFILE_MAX environment variable now can take the maximum size of 
  a profile file in megabytes. The default value is 512 Mb. The minimum
  value is 128 Mb, and the maximum value is 4096 Mb.


git-svn-id: svn://localhost/gambas/trunk@4816 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-06-09 13:39:47 +00:00
Benoît Minisini
442f8ce70e [CONFIGURATION]
* NEW: Switch version to 3.2.0.

[GB.XML]
* BUG: Fix a 64-bits compilation warning.



git-svn-id: svn://localhost/gambas/trunk@4815 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-06-09 02:44:17 +00:00
Benoît Minisini
ff93548e41 [DEVELOPMENT ENVIRONMENT]
* BUG: Profile windows correctly display line numbers now.

[GB.FORM]
* NEW: Hidden transparent SidePanel controls now have a large handle.

[GB.QT4.EXT]
* NEW: Editor: Line numbers are not drawn behind a procedure separator.
* NEW: Editor.NoFolding is a new flag to disable procedure folding support.
* NEW: Editor.LineOffset is a new property to define the line number just
  before the first displayed line (zero by default).


git-svn-id: svn://localhost/gambas/trunk@4803 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-06-02 14:44:00 +00:00
Benoît Minisini
326c380ff6 [DEVELOPMENT ENVIRONMENT]
* NEW: Handle the FAST keyword in function declaration.

[COMPILER]
* NEW: Each function can be declared individually FAST. The keyword must be
  the first one on the line.

[GB.EVAL]
* NEW: Handle the FAST keyword in function declaration.


git-svn-id: svn://localhost/gambas/trunk@4769 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-05-24 12:05:21 +00:00
Benoît Minisini
8056acb60d [GB.DEBUG]
* BUG: gb.debug must not be hidden, stupid!


git-svn-id: svn://localhost/gambas/trunk@4765 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-05-23 23:40:26 +00:00
Benoît Minisini
327add9439 [GB.DEBUG]
* NEW: The component is hidden now.
* BUG: Do not crash anymore when profiling Eval().

[GB.JIT]
* NEW: The component is hidden now.


git-svn-id: svn://localhost/gambas/trunk@4763 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-05-23 23:23:00 +00:00
Benoît Minisini
d356f49366 [DEVELOPMENT ENVIRONMENT]
* NEW: Some little redesign of the profiling GUI.

[EXAMPLES]
* OPT: Little optimization in GameOfLife example.

[INTERPRETER]
* NEW: System.Profile is a new property to disable or enable the
  profiling at run time. Profiling can only be enabled if debugging
  information are available.

[GB.DEBUG]
* NEW: Abort the program if the profile file is bigger than 512M.


git-svn-id: svn://localhost/gambas/trunk@4753 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-05-21 22:13:58 +00:00
Benoît Minisini
9fa35120a4 [DEVELOPMENT ENVIRONMENT]
* BUG: Profiling: The total function duration is now the same as the sum of 
  each line of code duration.

[WEBSITE MAKER]
* NEW: Add a "Release Notes" link in the menu panel.

[GB.DEBUG]
* NEW: Optimize the profile file format a bit.


git-svn-id: svn://localhost/gambas/trunk@4751 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-05-21 11:35:13 +00:00
Benoît Minisini
70afe05d8d [DEVELOPMENT ENVIRONMENT]
* NEW: Handle new format of profile files.

[INTERPRETER]
* NEW: ON ... GOTO and ON ... GOSUB instructions.

[WEBSITE MAKER]
* NEW: An explicit link button that displays the 'news' page.

[COMPILER]
* NEW: ON ... GOTO and ON ... GOSUB instructions.

[GB.DEBUG]
* NEW: New format for profile, more compact and faster to read.


git-svn-id: svn://localhost/gambas/trunk@4748 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-05-21 01:09:35 +00:00
Benoît Minisini
b5c6820986 [INTERPRETER]
* NEW: Allow to profile time spent waiting for events.

[GB.DEBUG]
* BUG: New profile file format that allows to profile lines of code that
  are function calls.

[GB.GTK]
* NEW: Profile time spent waiting for events.

[GB.QT4]
* NEW: Profile time spent waiting for events.


git-svn-id: svn://localhost/gambas/trunk@4747 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-05-20 17:58:34 +00:00
Benoît Minisini
f93affd8e9 [DEVELOPMENT ENVIRONMENT]
* NEW: Display callees and callers in the profile window.
* NEW: Display profiling of each line of code.

[INTERPRETER]
* NEW: Activate profiling at the line of code level. Beware, things become
  slower!

[GB.DEBUG]
* NEW: Fix profiling at the line of code level.

[GB.FORM]
* NEW: GridView: Add a Scroll() method.

[GB.QT4.EXT]
* NEW: Editor: Add a ScrollBar property.
* NEW: Editor: Add ScrollX and ScrollY properties.
* NEW: Editor: Add a Scroll method.


git-svn-id: svn://localhost/gambas/trunk@4745 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-05-20 02:21:43 +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
c095cd3f98 [EXAMPLES]
* NEW: PhotoTouch and MediaPlayer examples now use the gb.gui component.

[GB.GTK]
* NEW: Make GTK+ controls borderless, so that they are "transparent" like 
  gb.qt4 controls. This is work in progress! The PhotoTouch example now 
  works correctly with gb.gtk, the brightness dialog excepted.
* BUG: ScrollBars are correctly initalized now.
* BUG: Container.Find() does not take hidden controls into account anymore.

[GB.IMAGE]
* BUG: Image.Opacity() can handle images with premultiplied alpha correctly 
  now.

[GB.FORM]
* BUG: IconView: Item text is ellipsized without printing GTK+ warnings 
  anymore.


git-svn-id: svn://localhost/gambas/trunk@4729 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-05-15 01:22:45 +00:00
Benoît Minisini
4afe7caf6b [INTERPRETER]
* BUG: Disable debugging messages from signal management routines.

[GB.SIGNAL]
* NEW: Call previous signal handlers automatically when a specific signal 
  is catched.


git-svn-id: svn://localhost/gambas/trunk@4722 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-05-08 17:15:54 +00:00
Benoît Minisini
30f9a40f2b [INTERPRETER]
* NEW: Rename all API related to components, and fix components using them.
* NEW: New signal API that allows to catch signals from the event loop.

[GB.GTK]
* BUG: Use g_object_unref() instead of rsvg_handle_free() now.


git-svn-id: svn://localhost/gambas/trunk@4721 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-05-08 15:32:33 +00:00
Benoît Minisini
8acbd755a2 [GB.GUI.OPENGL]
* NEW: That new switcher component chooses between gb.gtk.opengl and 
  gb.qt4.opengl according to the current desktop in use.


git-svn-id: svn://localhost/gambas/trunk@4719 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-05-06 21:09:42 +00:00