* BUG: Correctly initialize the Paint class when calling Paint.Begin() on
an already opened drawing device.
git-svn-id: svn://localhost/gambas/trunk@5959 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* 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
* 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: 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: 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: 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
* 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
* 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
* 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: 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: 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
* NEW: Image editor: Image brightness and constrast, clipboard management,
cut, copy & paste have been implemented. Many fixes everywhere.
* NEW: Image editor: Resize dialog has been enhanced.
[GB.IMAGE]
* BUG: Image.Copy() now checks its arguments better, so that it does not
generate images with garbage inside.
* NEW: Image.BrightnessContrast() is a new method that allows to change the
brightness and contrast of an image.
* OPT: Internal routines for color space conversion between HSV and RGB
have been optimized.
[GB.FORM]
* NEW: The ImageView Draw event now takes the image that has been drawn as
argument.
* NEW: ImageView.Brightness and ImageView.Contrast are two new properties
that allow to define the corresponding effects applied to the displayed
image.
git-svn-id: svn://localhost/gambas/trunk@5775 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Update copyright year to 2013.
[GB.FORM]
* NEW: ImageView is a new control that allows to view an image inside a
scrolled view, at different zoom levels.
* BUG: FileProperties now works correctly if 'gb.desktop' is not used.
* NEW: The FileProperties preview tab now uses an ImageView control and has
a toolbar to zoom the preview.
* BUG: Add the 'linux' and 'gnu' icon in the stock icon list.
git-svn-id: svn://localhost/gambas/trunk@5770 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: When the 'gb.web' component is selected, a new option is available
in the project property dialog: "Run in an embedded HTTP server".
(INTERPRETER]
* NEW: GB.System.Debug() is a new API that allows to know if the
interpreter is run in debugging mode.
[GB.DEBUG]
* NEW: The debugger tells the IDE when its prompt is the first one.
[GB.HTTPD]
* NEW: Reset locale to "C" before running the http server.
* BUG: The CGI "SCRIPT_NAME" variable is set to "/".
* NEW: The default CGI timeout is now 10 minutes.
* NEW: Behave accurately when run in debugging mode : only one CGI script
at a time is allowed.
* NEW: When run in debugging mode, there is no CGI timeout.
git-svn-id: svn://localhost/gambas/trunk@5765 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Components can have a new state: "Deprecated".
[DEVELOPMENT ENVIRONMENT]
* NEW: Add a filter to the component tab of the project property dialog.
[WEBSITE MAKER]
* BUG: Translations came back.
[GB.OPTION]
* NEW: This component is now deprecated.
[GB.V4L]
* NEW: This component is now deprecated.
git-svn-id: svn://localhost/gambas/trunk@5761 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: GB.ReturnSingle() is a new API that allows to return a Single from a
method or property implementation routine.
[GB.NET.POP3]
* NEW: Pop3Client has a new Remove() method to delete a message from its
index. Pop3Client.Remove(n) is just a synonymous for
Pop3Client[n].Delete.
[GB.OPENAL]
* NEW: New component for the OpenAL 3D audio library. Work in progress...
[GB.OPENGL]
* BUG: Fix a possible crash in GL.GenTextures(). I guess that bug will have
to be fixed in other equivalent routines.
git-svn-id: svn://localhost/gambas/trunk@5753 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Using a database URL in the Connection constructor works now.
git-svn-id: svn://localhost/gambas/trunk@5735 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* OPT: Shrink internal data structures and adjust algorithms likely
improving performance (noticably for the 'random' case of my stress test -
the 'best' case is almost on a par with Variant[] now).
* BUG: Fix difficult-to-spot List.Take() bugs due to difficulties with the
former internal data structures. The class now survives all my test cases
(without misbehaviour under valgrind).
* BUG: List.Take() never raises "Out of bounds" anymore if the list is empty
because that's an inappropriate error for a *circular* list. It raises an
error if an attempt is made to Take() an invalid Current which includes
the case that the List is empty.
git-svn-id: svn://localhost/gambas/trunk@5731 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix the frame position when dragging a control from the toolbar on
a container.
* NEW: The project file properties dialog is now based on the new
FileProperties control.
[INTERPRETER]
* NEW: GB.OnErrorBegin() and GB.OnErrorEnd() are two new APIs that allow to
register cleanup routines that are called when an error is raised between
the GB.OnErrorBegin() call and the GB.OnErrorEnd() call.
[INFORMER]
* BUG: The value of Float constants is now correctly dumped in *.info
files.
[GB.COMPLEX]
* NEW: Implement the same Complex.ToString() method as in gb.gsl.
[GB.DESKTOP]
* NEW: Desktop.DataDir is a new property that returns the directory where
the application must store its user-specific data.
* NEW: Desktop.ConfigDir is a new property that returns the directory where
the application must store its user-specific configuration.
* NEW: Desktop.CacheDir is a new property that returns the directory where
the application must store its user-specific cached data.
* NEW: Desktop.RuntimeDir is a new property that returns the directory
where the application must store its temporary runtime files.
* BUG: Fix a possible crash when searching a mimetype from the file
extension.
[GB.FORM]
* NEW: FileProperties is a new control that displays the properties of a
specific file or directory. It automatically computes the size of
directory contents through a background task.
* BUG: Setting the TabPanel.Border property now correctly refreshes its
layout.
* NEW: The stock icon map now can declare specific icons for specific
widget themes.
[GB.FORM.STOCK]
* NEW: Fix the 'tools' icon for elementary icon theme.
[GB.GSL]
* BUG: Fix the Vector.ToString() declaration.
[GB.QT4.EXT]
* NEW: The Editor.LineOffset property has been renamed as
Editor.LineNumberOffset.
git-svn-id: svn://localhost/gambas/trunk@5725 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: The Fractal example now uses eight background tasks to draw the
fractal.
[GB.IMAGE]
* NEW: Image.Pixels is a new property that allows to return the image
pixels as an integer array, and to set the image pixels from an integer
array.
git-svn-id: svn://localhost/gambas/trunk@5687 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Correctly handle functions with a variable number of arguments when
an array conversion occurs during argument parsing.
* BUG: The debugger now correctly displays and modifies arguments of
functions having a variable number of arguments.
[GB.DEBUG]
* BUG: The debugger now correctly displays and modifies arguments of
functions having a variable number of arguments.
git-svn-id: svn://localhost/gambas/trunk@5686 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Remove geometry classes and put them in the gb.geom component.
[GB.GEOM]
* NEW: New hidden component that implements all geometry classes: Point,
PointF, Rect and RectF.
git-svn-id: svn://localhost/gambas/trunk@5641 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fixes of bugs detected by Coverity Scan.
* BUG: Process output is correctly flushed at process exit now.
[COMPILER]
* BUG: Fixes of bugs detected by Coverity Scan.
[ARCHIVER]
* BUG: Fixes of bugs detected by Coverity Scan.
[INFORMER]
* BUG: Fixes of bugs detected by Coverity Scan.
[GB.COMPRESS]
* BUG: Fixes of bugs detected by Coverity Scan.
[GB.DEBUG]
* BUG: Fixes of bugs detected by Coverity Scan.
[GB.EVAL]
* BUG: Fixes of bugs detected by Coverity Scan.
[GB.IMAGE]
* BUG: Fixes of bugs detected by Coverity Scan.
[GB.IMAGE.EFFECT]
* BUG: Fixes of bugs detected by Coverity Scan.
[GB.VB]
* BUG: Fixes of bugs detected by Coverity Scan.
git-svn-id: svn://localhost/gambas/trunk@5493 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Some fixes of bugs detected by Coverity Scan.
* NEW: Raise a 'Filename too long' error now when a too long file path is
detected inside a file management function.
* NEW: System.TimeZone is a new property that returns the current timezone
as an offset in seconds that must be added to a local time to get UTC.
[COMPILER]
* BUG: Some fixes of bugs detected by Coverity Scan.
[GB.IMAGE]
* BUG: Some fixes of bugs detected by Coverity Scan.
git-svn-id: svn://localhost/gambas/trunk@5490 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Correctly initalize the help browser layout.
* NEW: Use the new Image.Fuzzy() method to draw a drop shadow in the
welcome screen text.
[COMPILER]
* NEW: The GB_PCODE_VERSION environment variable can take 'X.YY' as version
instead of 'X.YY.ZZZZ', which is actually useless.
[GB.COMPRESS]
* BUG: Remove useless code never compiled.
[GB.DBUS]
* BUG: Fix a possible memory leak in a debugging routine.
[GB.GSL]
* BUG: Remove useless code never compiled.
[GB.GTK]
* NEW: Implement a cairo surface cache in the Image class, so that drawing
the same image several times trigger a GdkPixbuf -> Cairo surface
conversion once.
* BUG: Slider and Scrollbar controls now raise the Change event only if the
value has really changed.
[GB.NET]
* BUG: Remove useless code never compiled.
[GB.NET.CURL]
* BUG: Remove useless code never compiled.
[GB.NET.SMTP]
* BUG: Remove useless code never compiled.
[GB.V4L]
* BUG: Remove useless code never compiled.
git-svn-id: svn://localhost/gambas/trunk@5489 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Remove old GDK / X11 drawing code.
[GB.IMAGE]
* NEW: Image.Fuzzy() is a new blur method based on the 'StackBlur'
algorithm made by Mario Klingemann.
git-svn-id: svn://localhost/gambas/trunk@5487 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix history page.
[GB.GUI.BASE]
* OPT: ScrollArea scrollbars should not flicker anymore during a resizing
operation.
* BUG: Fix HSPlit and VSplit behaviour when the visibility of a child
changes.
* NEW: HSplit.Layout and VSplit.Layout now return the width of an hidden
child as zero.
[GB.QT4]
* OPT: Optimize clipping when the clipping area is a rectangle.
git-svn-id: svn://localhost/gambas/trunk@5480 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Do 'svn cleanup' in the parent directory of the project.
[COMPILER]
* BUG: Do not emit inaccurate line number information for forms and global
variables with no initialization.
[INTERPRETER]
* BUG: When creating the process temporary directory, check the permissions
of both the top directory (gambas.<userid>) and the process directory
inside.
git-svn-id: svn://localhost/gambas/trunk@5461 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Correctly check that there is a current paint device in all Paint
methods and properties.
git-svn-id: svn://localhost/gambas/trunk@5440 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix how documentation pages of code and libraries written in Gambas
are generated.
* NEW: Some little fixes in Gambas terminal fonts.
[GB.COMPRESS.ZLIB]
* BUG: Fix the driver that was not working anymore.
[GB.COMPRESS.BZLIB2]
* BUG: Fix the driver that was not working anymore.
git-svn-id: svn://localhost/gambas/trunk@5435 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: New API to return the image format as a string.
[GB.IMAGE.EFFECT]
* BUG: Fix the histogram inversion, and inversion in other effects with
GTK+ images.
git-svn-id: svn://localhost/gambas/trunk@5417 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Use a big font for displaying cursor position in editors.
[GB.DRAW]
* NEW: Paint.Arc() and Paint.Ellipse() take a new optional boolean argument
that tells if a pie must be drawn instead of a chord.
[GB.FORM]
* NEW: LCDLabel now has an HighlightColor property that allows to define
the color of the glow. By default, no glow is drawn.
[GB.GTK]
* BUG: Fix control background drawing routine.
* NEW: Implement the new "Pie" argument of Paint.Arc() and Paint.Ellipse().
[GB.GUI.BASE]
* BUG: Draw.Ellipse() and Draw.Circle() now draw a pie instead of a chord.
[GB.QT4]
* NEW: Implement the new "Pie" argument of Paint.Arc() and Paint.Ellipse().
git-svn-id: svn://localhost/gambas/trunk@5413 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: The project tree control now uses the same icons as the main project
tree view.
* NEW: Support for LCDLabel.
[EXAMPLES]
* BUG: MediaPlayer: Remove uses of the DrawingArea.Painted property.
[INTERPRETER]
* BUG: The GB.GetProperty() API has been fixed, and now use the datatype of
the property for the return value.
* OPT: Remove some useless table symbol class at class loading for native
classes that do not raise events.
[GB.DRAW]
* NEW: PaintMatrix is now creatable.
[GB.FORM]
* NEW: LCDLabel is a new control that displays its contents with sixteen
segments LCD digits.
[GB.MEDIA]
* BUG: Remove the useless MediaPlayer.Visualisation property.
git-svn-id: svn://localhost/gambas/trunk@5412 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Finish the List class
* NEW: Add List.Clear(). How could I go without since now?
* OPT: FYI, Current and enumerators remain relative to the _beginning_ of
the list if they're removed in order to can access all elements in an
enumeration.
* NEW: Return NULL for an invalid List.Current instead of raising an error.
However, the attempt to remove an invalid Current still results in that
error.
git-svn-id: svn://localhost/gambas/trunk@5403 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix the '_call_ special methods of Rect, RectF, Point and PointF,
that must be static.
[GB.GUI.BASE]
* BUG: Fix Rect symbol clash in Draw.Zoom.
* NEW: ScrollArea.Painted property is now deprecated.
git-svn-id: svn://localhost/gambas/trunk@5387 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix Paint.ZoomImage() method.
[GB.GTK]
* BUG: Paint.Begin() correctly initializes the line width to 1.0.
[GB.GUI.BASE]
* NEW: Draw.Polygon now uses Paint.Polygon.
[GB.QT4]
* BUG: Clipboard.Type correctly returns Clipboard.Image after an image has
been copied to the clipboard.
git-svn-id: svn://localhost/gambas/trunk@5386 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Paiting example: add an example for rounded rectangles.
[GB.DRAW]
* NEW: Paint.Polygon() is a new method that paints a closed polygon.
* NEW: Paint.Rectangle() now takes an optional radius argument. If its is
specified with a value greater than zero, then a rounded rectangle is
painted.
git-svn-id: svn://localhost/gambas/trunk@5385 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Remove uses of DrawingArea.Painted.
[GB.FORM]
* BUG: Remove uses of DrawingArea.Painted.
[GB.GUI.BASE]
* BUG: Fix Draw.Style.Box() method.
[GB.MAP]
* NEW: MapPoint.Distance() is a new method that returns the geodesic
distance between two points.
* NEW: Map.From() is a new method that returns the position of a point from
an initial point, a direction and a distance.
* NEW: Map.Bearing() is a new method that returns the direction from an
initial point to a destination point.
git-svn-id: svn://localhost/gambas/trunk@5384 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Update error messages.
[GB.DRAW]
* NEW: The Draw class has been removed.
* NEW: Paint.Ellipse() is a new method that paints an ellipse.
* NEW: Paint.TextSize() returns the bounding box of a text like
Draw.TextWidth() and Draw.TextHeight() did, which is not the same thing
as Paint.TextExtents().
* NEW: Paint.RichTextSize() returns the bounding box of a rich text like
Draw.RichTextWidth() and Draw.RichTextHeight() did, which is not the same
thing as Paint.RichTextExtents().
* NEW: Paint.FillRect() fills a rectangle with a specific color.
* NEW: Paint.DrawImage() takes an extra 'Source' argument which is a
rectangle describing a piece of the source image.
* NEW: Paint.DrawPicture() now replaces the old Draw.Picture() method.
* NEW: Paint.ZoomImage() now replaces the old Draw.Zoom() method.
* NEW: The default line width after a Paint.Begin() is one pixel now.
[GB.GTK]
* NEW: DrawingArea.Painted has been deprecated.
* BUG: Don't use the 'cairo_set_device_offset' method to draw on a
DrawingArea, but a matrix translation.
* NEW: Support for the new Paint methods.
* NEW: The old Draw.Style methods have been moved to the Style class.
* NEW: You cannot draw on a Window anymore.
[GB.GUI.BASE]
* NEW: Do not highlight the sorted column in GridView, TreeView, ListBox...
if there is only one column.
* NEW: Implement a new Draw class that simulates the old one by using the
Paint class.
[GB.JIT]
* BUG: Fix the argument order of E_NSYMBOL error message.
[GB.QT4]
* NEW: DrawingArea.Painted has been deprecated.
* NEW: Support for the new Paint methods.
* NEW: The old Draw.Style methods have been moved to the Style class.
* NEW: You cannot draw on a Window anymore.
git-svn-id: svn://localhost/gambas/trunk@5382 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Paint.DrawImage() now takes a source rectangle.
* NEW: Paint.DrawPicture() is a replacement for Draw.Picture().
* NEW: Paint.ZoomImage() is a replacement for Draw.Zoom().
[GB.GTK]
* NEW: Start implementing new Paint methods.
[GB.QT4]
* NEW: Start implementing new Paint methods.
git-svn-id: svn://localhost/gambas/trunk@5376 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix division by zero when read/write pointer is set on 0-length
Circular (useless but legal).
git-svn-id: svn://localhost/gambas/trunk@5375 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Paint.BrushOrigin is a new property that allows to define the origin
of the brush.
* NEW: Paint.FillRect is a new property equivalent to Draw.FillRect.
[GB.GTK]
* NEW: Support for the new Paint methods.
[GB.GUI.BASE]
* NEW: Start to implement a Draw static class based on the Paint class.
That class aims at replacing the current Draw class. As it will be based
on the Paint class, it will be able to act on Image and Printer, making
the old Gambas 2 printing code works with Gambas 3 directly.
[GB.QT4]
* NEW: Support for the new Paint methods.
git-svn-id: svn://localhost/gambas/trunk@5365 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: The RAISE instruction now can raise events defined in a parent
class.
* NEW: Timer: The Trigger method now does nothing if there is an already
pending trigger. This behaviour is not backward-compatible, so it may be
removed if problems arise.
[COMPILER]
* NEW: The RAISE instruction now can raise events defined in a parent
class.
[GB.DRAW]
* NEW: Implement standard operators in Point and PointF classes.
* NEW: Automatic conversion between Point and PointF.
* NEW: 'CDraw.c' and 'CDraw.h' source files have been renamed as 'cdraw.c'
and 'cdraw.h'.
* NEW: Rect.Center() and RectF.Center() are two new methods that return the
center of the rectangle.
[GB.FORM]
* NEW: FileChooser: tar archives now can be uncompressed.
git-svn-id: svn://localhost/gambas/trunk@5359 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Use DesltopMime.FromFile() method to handle project data files.
* BUG: Installing the Gambas fonts override the old ones that could be
already installed.
* NEW: Update the Gambas fonts.
[GB.DESKTOP]
* BUG: DesktopFile.Run() now handle programs that does not specify any
argument pattern (%u, %f, and so on) in its command description.
[GB.DRAW]
* NEW: Add a RectF class, that is a rectangle with Float coordinates.
* NEW: Add a Point class, that is just a point with two Integer
coordinates.
* NEW: Add a PointF class, that is just a point with two Float
coordinates.
[GB.GUI.BASE]
* BUG: GridView and TreeView controls should not lose any MouseDown event
anymore.
* BUG: Fix previous TreeView optimizations.
[GB.MAP]
* BUG: Rename the "map" class as "Map".
git-svn-id: svn://localhost/gambas/trunk@5354 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Be sure that the welcome dialog filter has the focus.
[WEBSITE MAKER]
* NEW: Update for 3.3.4.
[GB.DB]
* BUG: A failing table or user add does not leak memory anymore.
* BUG: Fix the removal method of the .SubCollection virtual class.
[GB.DB.SQLITE3]
* BUG: Detect serial fields correctly now.
[GB.QT4]
* BUG: Enusre that embedded windows emit their Open event before any Move,
Resize events...
git-svn-id: svn://localhost/gambas/trunk@5340 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Move the '.SubCollection' virtual class to the gb.db. component.
[GB.DB]
* NEW: Move the '.SubCollection' virtual class to the gb.db. component.
[GB.FORM]
* BUG: TabPanel: Fix the algorithm ensuring that the current tab is
visible.
git-svn-id: svn://localhost/gambas/trunk@5326 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Support for the help comments integrated into the *.info files by
the compiler.
* NEW: Use the help comments stored in libraries and display them in them
help tooltips.
* BUG: Remove duplicates in the automatic completion list.
* BUG: The symbol syntax displayed in the help now correctly follows the
"Keywords in uppercase" setting.
* NEW: Class help comments are now help comments located at the beginning
of the source file that starts with three quotes and a space: `''' `.
[COMPILER]
* NEW: Support for help comments on public symbols. They are automatically
integrated into the *.info information files.
git-svn-id: svn://localhost/gambas/trunk@5311 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Right mouse button can select controls again in form editor.
[GB.GTK]
* NEW: DragLeave is a new event raised by any control when the mouse leave
a control during a DnD operation, or when the DnD operation terminates.
* NEW: DragMove and DragLeave events take the proxy into account.
[GB.GUI.BASE]
* NEW: ScrollArea, GridView, TreeView... now automatically scroll during a
DnD operation.
* BUG: Remove the overriden MouseDown event from the GridView class.
* BUG: A DnD operation does not eat the next mouse click anymore in
GridView, TreeView... controls.
[GB.QT4]
* NEW: DragLeave is a new event raised by any control when the mouse leave
a control during a DnD operation, or when the DnD operation terminates.
* NEW: DragMove and DragLeave events take the proxy into account.
git-svn-id: svn://localhost/gambas/trunk@5303 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* OPT: Great overhaul of List algorithms. Beware: Still buggy.
* OPT: Make list chunks carry multiple Variants to improve cache locality.
* OPT: Don't traverse List forwards/backwards when the absolute value of
index is past the half of Count.
* NEW: Introduce List.Backwards - a virtual object to enumerate backwards
* NEW: Don't use List.Current as enumeration pointer.
* NEW: Begin enumeration at the first/last node.
* NEW: Traverse backwards when given negative index to _get.
* NEW: Make Current invalid by default.
* NEW: Assign first/last element when MoveNext()/MovePrev() is issued on an
invalid Current.
* NEW: Use List.Current as pointer for the Find*() methods, too.
* NEW: Assign first/last element when FindNext()/FindPrev() is issued on an
invalid Current.
* NEW: Don't return an index from Find*() methods because it is not the way
linked list are dealt with.
* NEW: Make insertion and removal of elements safe in enumerations.
* NEW: When Current (or enumerator) is removed, the pointer remains relative
to the beginning of the List but it never wraps around the end.
* BUG: Correctly *cycle* with {Move,Find}{Next,Prev}()
git-svn-id: svn://localhost/gambas/trunk@5302 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix scrolling of code editor procedure list.
* BUG: Automatic local variable declaration now works correctly when a
method named "Get" is called inside the analyzed expression.
[COMPILER]
* NEW: "[]" now is compiled to return a array with no elements.
[INTERPRETER]
* BUG: Array with no elements can be casted to any other array datatype.
[GB.GUI.BASE]
* BUG: Fix visibility of expanded TreeView items.
[GB.QT4.EXT]
* NEW: When the Editor loses the focus, it does not scroll to the cursor
position automatically anymore.
git-svn-id: svn://localhost/gambas/trunk@5266 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Events of class written in Gambas are correctly detected now.
* BUG: Automatic local variable declaration now correctly analyze
expressions like "A.B" in all cases.
* NEW: Use a SidePanel to display the stack backtrace.
[GB.DB]
* BUG: DB.Quote(..., True) now does a table name quoting in all cases.
[GB.DB.FORM]
* BUG: The database controls now can handle table names that are reserved
SQL keywords.
[GB.FORM]
* NEW: Start implementing TreeView entirely in Gambas.
* BUG: Removing GridView rows correctly resets the row heights.
* NEW: GridView now raises a Draw event that allows to paint a cell with
any drawing methods.
git-svn-id: svn://localhost/gambas/trunk@5250 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Accept event handlers with a variable number of arguments.
* BUG: Remove a debugging message.
[GB.IMAGE.EFFECT]
* BUG: Image.Histogram() now correctly handle ABGR images.
* BUG: Remove a debugging message.
git-svn-id: svn://localhost/gambas/trunk@5248 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Some little redesign of the welcome dialog.
* NEW: Remove the "Alternate" theme color.
[COMPILER]
* NEW: New WebPage syntaxes: <<Include>>, <</Include>>, <%/%>, <<--->>.
[GB.EVAL]
* NEW: Highlight.Alternate has been deprecated.
[GB.EVAL.HIGHLIGHT]
* NEW: Support for the new WebPage syntaxes.
[GB.QT4.EXT]
* NEW: Editor: The alternate background is automatically computed.
* NEW: Editor: Brace highlighting now works on alternate background.
* NEW: Highlight.Alternate has been deprecated.
git-svn-id: svn://localhost/gambas/trunk@5177 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Use Terminus as default fixed font if it is installed on the system.
* BUG: Don't load a component description if that component has the same
name as the current project. This is a temporary incorrect fix!
[INTERPRETER]
* BUG: Fix Classes enumeration.
[GB.DESKTOP]
* BUG: Fix X11 client message sending routine on 64 bits OS.
* BUG: Fix all DesktopWindow properties that read or change the state of
the window.
[GB.GTK]
* NEW: Fonts.Exist() is a new method that returns if a specific font family
exists.
[GB.QT4]
* NEW: Fonts.Exist() is a new method that returns if a specific font family
exists.
git-svn-id: svn://localhost/gambas/trunk@5171 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Rename gb.adt to gb.data
* NEW: Mark gb.data as "Unfinished"
[GB.DATA]
* OPT: Block all changes from my working copy until they are mature. The
interface is considered to be stable (although some details in behaviour
will change); this justifies the "unfinished" state.
git-svn-id: svn://localhost/gambas/trunk@5147 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix the enumeration API. GB.ListEnum() has been replaced by
GB.BeginEnum() and GB.EndEnum(), that save the state of the internal
current enumeration.
[GB.MIME]
* BUG: Raise an error when the MimeMessage constructor fails while parsing
a message.
[GB.NET.POP3]
* BUG: _Pop3Client_Message must not inherit MimeMessage.
* NEW: _Pop3Client_Message has a new Message property that returns the
decoded MimeMessage.
* NEW: _Pop3Client_Message has a new Deleted property that returns if the
message has been deleted.
* NEW: _Pop3Client_Message has a new Id property that returns the
message id, which is its index plus one.
* NEW: _Pop3Client_Message has a new Index property that returns the
message index, which is its id minus one.
* BUG: Hides protocol dependent routines.
* NEW: The error returned by the Pop3 client is directly used for the error
message.
* OPT: Remove duplicated code in TCPClient and SSLCLient. Centralize it in
the PopClient parent class.
* BUG: Fix the single line response reading of SSLClient.
* BUG: Fix the multiple line response reading of SSLClient and TCPClient.
* BUG: Do not display password on the standard error in debugging mode, but
eight "*" characters instead.
* NEW: Many methods do not return a boolean status, but raise an error
instead.
* BUG: Methods that return their result as a boolean status now return TRUE
if they fail, not if they succeed (this is the Gambas convention).
* BUG: Fix the Pop3CLient.List() method.
* NEW: Rename the Pop3Client UniqueId() method as ListUniqueId().
* BUG: Fix the Pop3Client.ListUniqueId() method.
git-svn-id: svn://localhost/gambas/trunk@5134 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Make one warning for each symbol kind that is overridden.
[GB.DB.FORM]
* BUG: Fix warnings.
[GB.DESKTOP]
* BUG: Fix some warnings.
[GB.EVAL.HIGHLIGHT]
* BUG: Correctly rewrite the following keywords with no spurious space
after: TRUE, FALSE, NULL, +INF, -INF.
[GB.FORM]
* BUG: Fix warnings.
[GB.FORM.MDI]
* BUG: Fix warnings.
[GB.WEB]
* BUG: Fix warnings.
git-svn-id: svn://localhost/gambas/trunk@5125 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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