* BUG: Undo one change of last revision: reading a stream from a memory
stream is a special case. It reads a null-terminated C string, and not a
serialized Gambas string.
* NEW: OPEN STRING is a new instruction that allows to use a string as a
stream. Writing to it appends the written data to the end of the string
at the moment.
* NEW: Closing a string stream returns the data written to the stream as a
new string.
[COMPILER]
* NEW: New OPEN STRING instruction.
* NEW: OPEN MEMORY and OPEN PIPE are synonymous of the MEMORY and PIPE
instructions alone.
[GB.EVAL]
* NEW: Highlight the new OPEN STRING instruction correctly.
git-svn-id: svn://localhost/gambas/trunk@5941 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: VarPtr() correctly works on method arguments.
* BUG: Reading a string from a memory stream now works correctly.
git-svn-id: svn://localhost/gambas/trunk@5940 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Correctly check that there is a current enumeration if the Enum
class methods and properties.
* NEW: Enum.Stopped is a new property that returns if the current
enumeration has been stopped.
* BUG: The [] operator is now correctly overridden in classes inheriting an
array class or Collection.
git-svn-id: svn://localhost/gambas/trunk@5935 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: If one GUI component fails to load, try the other one.
* NEW: Abort if no GUI component is found.
* NEW: Define the GB_GUI environment variable with the GUI component
actually loaded.
[GB.GUI.OPENGL]
* NEW: Always load the OpenGL support component associated with what lies
in the GB_GUI environment variable.
git-svn-id: svn://localhost/gambas/trunk@5925 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Don't detach a process that returns an error otherwise the Kill
event is lost.
git-svn-id: svn://localhost/gambas/trunk@5921 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Support for the GB_PATH environment variable, that gives the Gambas
interpreter path if set.
git-svn-id: svn://localhost/gambas/trunk@5918 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Add the description of 'gb.memcached' and 'gb.logging' components.
* NEW: Update error messages translation.
[INTERPRETER]
* NEW: Allow some error messages to be untranslatable by using a void macro
named '$(...)' around the string.
[GB.FORM]
* BUG: The status of FileChooser and DirChooser toolbar icons is correctly
initialized now.
* BUG: Reading the FileChooser.ShowPreview property does not crash anymore.
git-svn-id: svn://localhost/gambas/trunk@5912 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix a structure declaration for ARM architecture.
[GB.CLIPPER]
* BUG: Fix the signature of some methods.
git-svn-id: svn://localhost/gambas/trunk@5900 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Synchronize the 'gambas.h' header with the internal date management
changes of rev. #5871.
git-svn-id: svn://localhost/gambas/trunk@5873 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix the "search" link.
[INTERPRETER]
* NEW: Date() and Time() now takes the milliseconds as an extra optional
argument.
* BUG: Time() with one argument correctly converts it to a date.
* NEW: Date() and Time() now always check the range validity of their
arguments.
[GB.DB.FORM]
* NEW: DataControl does not change the background of mandatory field and
the font of primary key fields anymore.
* NEW: DateControl.Control is a new property that returns the underlying
control used for editing the field data.
[GB.GUI.BASE]
* NEW: HSplit and VSplit have a new Border property that define if the
splitter separator is visible or not.
* NEW: HSplit and VSplit now take the Spacing property into account.
git-svn-id: svn://localhost/gambas/trunk@5871 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Always use "svn --force" when deleting a file in a project under
version control.
[INTERPRETER]
* BUG: Fix a structure alignment for ARM architecture.
[GB.FORM]
* NEW: The image preview background task is now run with a lower priority.
git-svn-id: svn://localhost/gambas/trunk@5868 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Correctly raise a syntax error if the FOR EACH variable is not
immediately followed by the IN keyword.
git-svn-id: svn://localhost/gambas/trunk@5867 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Application.Priority is a new property that allows to define the
scheduling priority of the current process (or task). See it as an
interface to the nice() system call.
git-svn-id: svn://localhost/gambas/trunk@5866 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: List: Fix two false positive compiler warnings on some systems.
* BUG: AvlTree: Don't forward-declare a typedef. It bothers some compilers.
* BUG: Also update Key from AvlTree_get().
* BUG: Invalidate the enumerators in AvlTree.Clear()
git-svn-id: svn://localhost/gambas/trunk@5865 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Task.Stop now behaves correctly if the task has not been yet
actually started.
* NEW: Stopped task temporary files are automatically removed.
git-svn-id: svn://localhost/gambas/trunk@5861 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Remove as much "packed" structure declaration as possible, to
prevent possible bugs on ARM architecture.
git-svn-id: svn://localhost/gambas/trunk@5860 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix a structure declaration that prevented the compiler to work
correctly on the ARM architecture.
git-svn-id: svn://localhost/gambas/trunk@5856 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: ImageEditor: Fix a crash that occurs after something having pasted.
[EXAMPLES]
* NEW: Md2Model example has been redesigned. It now displays a lot of
models between six different ones.
[INTERPRETER]
* BUG: Fix a crash when an error is raised while the startup class is not
ready.
[GB.GEOM]
* BUG: Fix the conversion from Point/PointF to Float that internally uses
the Abs() function.
[GB.GTK]
* NEW: Visible trayicons prevent the eventloop from stopping.
[GB.OPENGL.SGE]
* NEW: The component sources are now located inside the gb.opengl
directory.
* NEW: The component interface has been redesigned.
[GB.QT4]
* NEW: Visible trayicons prevent the eventloop from stopping.
[GB.QT4.OPENGL]
* BUG: The OpenGL clear color is now taken into account when clearing the
area before calling the Draw event handler.
git-svn-id: svn://localhost/gambas/trunk@5836 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Complete the french translation.
[INTERPRETER]
* BUG: Class reimplementation of Abs() now can return an object or a
floating-point number.
[GB.COMPLEX]
* BUG: Abs() on a Complex returns a Float.
[GB.GEOM]
* BUG: Abs() on a Point or a PointF returns a Float.
[GB.GSL]
* BUG: Abs() on a Complex returns a Float.
git-svn-id: svn://localhost/gambas/trunk@5835 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Support for inequality operators in the operator interface.
* NEW: The Sgn() function can be implemented by the operator interface.
[GB.GMP]
* NEW: BigInt now supports inequality operators.
* NEW: New methods: Odd(), Even()
* NEW: Logical operators as static methods: And, Or, Xor, Not.
* NEW: Bit manipulation as static methods: BSet, BClr, BChg, BTst.
git-svn-id: svn://localhost/gambas/trunk@5828 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix Abs() when that operator is implemented at class level, so that
it returns an object and not necesarrily a floating point value.
[GB.GMP]
* NEW: New component based on the Gnu Multiple Precision Arithmetic
Library. Only big integers (BigInt class) are partially implemented at
the moment.
git-svn-id: svn://localhost/gambas/trunk@5826 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Mark component as stable
[GB.OPENSSL]
* NEW: Mark component as stable
git-svn-id: svn://localhost/gambas/trunk@5825 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Mark the component as stable.
[GB.GUI.BASE]
* BUG: Draw.Picture() and Draw.Image() source arguments now work correctly.
* NEW: Add void constructors to HSplit and VSplit for the documentation.
git-svn-id: svn://localhost/gambas/trunk@5824 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix a possible false error when using LINE INPUT on non-blocking
streams.
[GB.FORM]
* NEW: LCDLabel.Value is a new property that is a synonymous of the Text
property for numerical values.
git-svn-id: svn://localhost/gambas/trunk@5819 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Continue on fixing "stop watching on end of file" algorithm...
git-svn-id: svn://localhost/gambas/trunk@5818 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Do not stop watching when reading up to a specified number of bytes.
git-svn-id: svn://localhost/gambas/trunk@5816 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Update copyright years.
* NEW: Have a stripped-down version of gb_common_string_temp.h to provide
STRING_compare() without producing compilation problems.
* NEW: AvlTree is a new Collection-like class implementing a balanced
binary search tree. It does _not_ utilise hashing in order to maintain
an order of the literal key strings given by the user (For Each thus
traverses from smallest to greatest key).
* NEW: Carry in a stripped-down version of Bob Jenkins' lookup3 hash
algorithm from the Public Domain. It was a last-minute decision to not use
it in AvlTree to maintain the literal key order.
git-svn-id: svn://localhost/gambas/trunk@5812 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Disable read watch when reading a stream fails for any reason: i/o
error, end-of-file...
git-svn-id: svn://localhost/gambas/trunk@5811 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: ImageEditor: Bug fixes. Clicking on the center button of a selected
shape now selects the next one whose center is about at the same place.
[GB.CLIPPER]
* BUG: Clipper Offset, Union, Intersection... methods now ensure that they
return closed polygons.
* NEW: Polygon.Orientation is a new property that returns the polygon
orientation.
git-svn-id: svn://localhost/gambas/trunk@5806 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* OPT: ImageEditor: Optimize the pen and eraser tools.
* NEW: ImageEditor: The popup menu allows to define the magnet grid of the
current selected shape.
[GB.CLIPPER]
* BUG: Polygon.Clean() does not close the polygon automatically.
* NEW: Polygon.Add() and Polygon.AddPoint() are two new methods to add a
point to a polygon.
* NEW: Polygon.Remove() is a new method to remove points from a polygon.
[GB.FORM]
* NEW: The ImageView draws nothing by itself if its Draw event is catched.
Drawing the image is then entirely up to the Draw event handler.
git-svn-id: svn://localhost/gambas/trunk@5805 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: SliderBox is a new control that displays a Slider and a SpinBox,
both being synchronized.
* NEW: The SidePanel transparent handle is now smaller when the SidePanel
is hidden.
git-svn-id: svn://localhost/gambas/trunk@5804 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Implement the "!xxx" syntax for the WITH ... END WITH control
structure.
git-svn-id: svn://localhost/gambas/trunk@5798 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: The ".[xxx]" syntax now can be used inside a WITH <object> ...
END WITH control structure. It is a synonymous for "<object>[xxx]".
git-svn-id: svn://localhost/gambas/trunk@5797 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: ImageEditor: Pressing SHIFT with the magic wand substracts to the
current selection.
* BUG: ImageEditor: Selection handles are correctly updated in all cases.
[GB.CLIPPER]
* NEW: Implementation of the three other boolean operations through the
Clipper.Intersection(), Clipper.Difference() and Clipper.ExclusiveOr()
methods.
git-svn-id: svn://localhost/gambas/trunk@5795 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: ImageEditor: the magic wand automatically merge the current
selection.
[GB.CLIPPER]
* NEW: Polygon is a new class that represents a polygon. It can be
automatically converted to and from PointF[].
* NEW: All methods now use Polygon and Polygon[] instead of PointF[] and
PointF[][].
* NEW: Clipper.Union() is a new method that returns the union of an array
of polygons.
git-svn-id: svn://localhost/gambas/trunk@5794 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: ImageEditor: The image size is displayed wen the mouse cursor is
outside of the view. Many bug fixes. The magic wand has been implemented.
JIT compiler is used to speed-up the routine.
[GB.CLIPPER]
* NEW: Clipper.OffsetPolygons has been renamed as Clipper.Offset.
* NEW: Clipper.Simplify and Clipper.Clean methods have been implemented.
[GB.DESKTOP]
* NEW: DesktopFile.Run() method now returns the created process object.
[GB.IMAGE]
* NEW: Color.Distance() is a new method that returns the RGBA distance
between two colours as a floating point value between 0.0 and 1.0.
git-svn-id: svn://localhost/gambas/trunk@5792 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Process.Ignore() is a new method that tells the interpreter to not
wait for the process end. If the interpreter exits, that process is then
automatically killed.
git-svn-id: svn://localhost/gambas/trunk@5791 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Process management is now reliable against processes killed and
started during process event handlers.
git-svn-id: svn://localhost/gambas/trunk@5790 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: ImageEditor: Invert the current selected shape reverses its points
order. Selection offset has been implemented on top of the new
gb.clipper component. Many bug fixes.
[GB.CLIPPER]
* NEW: This a new component based on the "Clipper" library. At the moment,
it only allows to offset a group of polygons from a specified pixel
delta.
git-svn-id: svn://localhost/gambas/trunk@5788 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: ImageEditor: Tons of bug fixes. The current selection and the
current pasted image can be moved, rotated and shrinked with the mouse.
* NEW: Image rotation tool.
[GB.DRAW]
* BUG: The PaintMatrix class is now really autonomous. It can be used
without a current drawing device.
* NEW: PaintMatrix.Copy() is a new method that copies a matrix.
* NEW: PaintMatrix.Map() is a new method that applies a matrix to a point
and returns the result.
[GB.FORM]
* NEW: ImageView can take the focus.
* BUG: DirChooser should not crash anymore when it cannot access a
bookmark.
[GB.GTK]
* NEW: Implementation of the new PaintMatrix design.
[GB.IMAGE]
* BUG: Image.Fuzzy() argument cannot be greater than 254.
[GB.QT4]
* NEW: Implementation of the new PaintMatrix design.
git-svn-id: svn://localhost/gambas/trunk@5779 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix possible bugs when updating an invalid Current.
* BUG: Really erase old elements instead of just marking them as Null to
prevent (potential) information leaks.
* OPT: Current and the enumerators (internally) carry list global indices
(LGI) which can be used as anchor points together with List.Count to speed
up traversals (always taking the shortest way through the list).
* OPT: Remove workaround code related to an enumerator bug fixed in #5749.
* NEW: Expose List.Current as a virtual object representing the current list
element which has Append() and Prepend() methods to manipulate the list
not only around its head. This breaks backwards compatibility.
* NEW: List.Value is what List.Current has meant formerly.
* NEW: Add List.Current.Index and List.Index which are an absolute index of
the current element into the list. These are guaranteed to be in bounds of
[-List.Count; List.Count - 1]. Note that each non-negative index has an
associated negative equivalent and vice versa. They work like the indices
given to List._get().
* NEW: Add a List.AutoNormalize property which instructs the list to
automatically make indices (like resulting from a calculation) fit into
the List bounds preserving the sign of the given index. This effectively
prevents any "Out of bounds" errors.
* NEW: Add List.MoveTo() to point Current to an index.
* NEW: List.Current.Is{First,Last,Valid} can be used to determine if Current
is the first or last element of the list or if it is valid, respectively.
git-svn-id: svn://localhost/gambas/trunk@5778 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Image editor: Support for gamma, hue, saturation and lightness
balance. Read-only mode has been implemented. Many bug fixes everywhere.
[GB.FORM]
* NEW: Remove Brightness and Contrast properties from the ImageView
control.
[GB.IMAGE]
* NEW: Image.BrightnessContrast has been removed.
* NEW: New balance methods: Image.Brightness, Image.Contrast, Image.Gamma,
Image.Hue, Image.Saturation, Image.Lightness.
* NEW: Image.BeginBalance() and Image.EndBalance() are two new methods that
allow to group calls to the previous methods, so that all the balances
are done in one shot.
git-svn-id: svn://localhost/gambas/trunk@5776 867c0c6c-44f3-4631-809d-bfa615b0a4ec