[GB.WEB.GUI]
* BUG: WebTree: In single selection mode, you can't unselect the selected item with the mouse anymore.
* BUG: WebTree: Settings the Mode property correctly update the control.
[GB.WEB.GUI]
* BUG: Session: Add the server port to the session cookie.
* BUG: WebTree: The Clear() method correctly triggers a refresh.
* OPT: WebTree: Don't trigger useless refreshes when selection changes.
* BUG: Accumulates WebTextBox and WebTextArea changes, and send them just before the next request.
[GB.FORM.EDITOR]
* NEW: TextEditor: Do not show the 'goto' panel if there is only one line.
* NEW: TextEditor: Redesign the 'goto' panel.
* NEW: TextEditor: Update French translation.
[GB.DBUS.TRAYICON]
* BUG: Raise the 'LayoutUpdated' D-Bus signal when the current desktop is 'Cinnamon', otherwise the menu is not refreshed.
Cinnamon seems to ignore the return value of the 'AboutToShow' event.
[GB.GUI.BASE]
* NEW: GridView: Add 'GridView.Columns.Padding' property for an additional cell horizontal padding.
* NEW: GridView: Add 'GridView.Rows.Padding' property for an additional cell vertical padding.
* NEW: ListBox: Add a 'Grid' property, that adds a grid and some padding inside cells when set.
[GB.DB.FORM]
* BUG: DataView: Make blob editor fully translated.
* NEW: DataView: Custom column alignment is taken into account now.
* NEW: Update French translation.
[GB.WEB.GUI]
* NEW: WebControl: Implement 'Enter' and 'Leave' event.
* NEW: DrawingArea: Implement 'MouseDown', 'MouseUp', and 'MouseMove' events. At the moment 'MouseMove' are raised only when a button is pressed.
* BUG: Paint: Do not crash if no brush has been defined. Let the underlying driver use the default brush instead.
[GB.WEB.GUI]
* NEW: DrawingArea: The canvas now resizes automatically, and send its size to the server.
* NEW: Paint: Implement 'Width' and 'Height' properties.
* NEW: Paint: Add 'Translate()', 'Rotate()', 'Scale()' and 'Reset()' methods.
* NEW: Paint: Add write-only 'Operator' property. Not all composition modes are supported at the moment.
* BUG: Move focus frame when the window is resized.
[GB.WEB.GUI]
* NEW: Make the ';' explicit in internally generated javascript.
* NEW: Add 'gb.geom' as a new dependency.
* NEW: Paint: Implement 'DrawImage' method.
* BUG: Paint: Fix gradient generation routine in 'lib.js'.
* NEW: DrawingArea: Do not include the refresh code inside the main page HMTL.
[GB.WEB.GUI]
* NEW: Color: Replace 'WebControl._GetColor()' by 'Color.ToHTML()'.
* NEW: Paint: Handle the 'PaintBrush' class directly in the Paint class. The paint driver job is just translating it into javascript.
* NEW: Paint: Remove the javascript generation routine from the Gradient class and move it to the paint driver.
* NEW: Paint: Add the 'Paint.Color' method that creates a color brush.
* NEW: Paint: Move the 'PaintBrush' type constants to the 'PaintDriver' class.
[GB.WEB.GUI]
* NEW: handle colors with PaintBrush.class
I do not think colors is needed in PaintBrush as can simply be the argument for Fill/Stroke. I added it as GUI Paint class does it a similar way.
[GB.WEB.GUI]
* OPT: do not Export Gradient.class
* OPT: Remove Paint.Brush property and replace with Paint.SetBrush() and hidden paint._GetBrush() methods
* OPT: Rename Color.ToJS() to Color.ToHTML()
* OPT: Hide PaintBrush methods for internal use only with relevant methods.
* OPT: Check for String datatype when checking Style argument.
* NEW: default to use Brush if Style is ommited from Fill() Stroke() methods
* OPT: Replace the gw.gradient.getvar() method of lib.js with gw.paint.makeGradient()
[GB.GUI.BASE]
* NEW: IconView: Item shape now follows the icon size and the text size.
* BUG: IconView: Setting the 'Selection' property now work correctly.
[GB.WEB.GUI]
* NEW: Paint.RadialGradient() Raidal (circular) gradients
* NEW: Color.ToJS(GBColor As Integer) As String. converts a gambas color integer into javascript code.
* OPT: create a Paint folder for all Paint related classes
[GB.FORM]
* NEW: FileView: Add a 'ShowTitle' property, that toggles a title bar.
* NEW: FileView: 'Title' is a new property that allows to define the title displayed on top. By default it's the path of the current directory.
* NEW: FileView: Add a 'Filter' event, that allows to filter what is displayed file by file.
* NEW: FileView: 'Paths' is a new property that returns the absolute paths of all selected elements.
* NEW: FileView: Automatic support of drag & drop.
* NEW: FileView: 'Copy()' is a new method that copy the selected elements to the clipboard as a "text/uri-list".
* NEW: Update icon map.
[GB.GUI.BASE]
* NEW: Clipboard: Remove 'CopyPath()' and 'CopyPaths()' methods.
* NEW: Clipboard: 'Copy()' now can takes a file path array as soon as the mime type is "text/uri-list".
* NEW: Clipboard: 'Paste()' now returns a file path array as soon as the mime type is "text/uri-list".
* NEW: Drag: 'Drag()' now can takes a file path array as soon as the mime type is "text/uri-list".
* BUG: GridView: 'RowAt()' now returns rows at negative coordinates.
* BUG: GridView: Use 'Color.TextBackground' when the 'Background' property is set to 'Color.Default'.
* NEW: IconView: Add 'Scroll' event.
* NEW: IconView: Rubberband selection is more clever.
* NEW: IconView: Support for DnD.
* BUG: IconView: Use 'Color.TextBackground' when the 'Background' property is set to 'Color.Default'.
* NEW: ScrollArea: Automatic scrolling during DnD now should work as expected.
* NEW: Drag: The Dnd Frame now has a darker border.
[GB.GUI.BASE]
* BUG: IconView: UnselectAll() now always reset the current item.
* NEW: IconView: ESC key now unselects all items.
* BUG: IconView: Fix computation of text icon position when renaming.
[GB.FORM]
* NEW: New stock icon 'import' and 'export'.
* NEW: FileView: Add a Refresh event that triggers just after the FileView has refreshed its contents.
* NEW: FileView: Add FileCount, DirCount and TotalSize properties, to get statistics on the current directory contents.
* NEW: FileView: Add a permission column in detailed view mode.
* NEW: FileView: Display a 'lock' emblem on non-readable files in icon view mode.
[GB.GUI.BASE]
* BUG: GridView: Take custom row border into account correctly.
* NEW: IconView: Selection is new property that returns an array of the keys of all selected items.
* NEW: IconView: Selection is updated during rubberband selection.
* NEW: ColumnView: The extra columns have now a default horizontal padding.
[GB.FORM.EDITOR]
* NEW: TextEditor: Add a default popup menu.
* NEW: TextEditor: Add a panel to go to a specific line.
* NEW: TextEditor: ShowFindPanel() and ShowGotoPanel() are now public methods for showing the action panels.
[GB.UTIL]
* NEW: String.IsEmail() is a new function that checks if a string seems to be an e-mail address.
* NEW: String.IsIP() is a new function that checks if a string is an IPv4 address.
* NEW: String.IsIPv6() is a new function that checks if a string is an IPv6 address.
[GB.WEB.GUI]
* BUG: WebAudio: Fix a lot of bugs and implementation problems.
* NEW: WebAudio: Tracking is a new property that tells if the Position property is updated in real-time.
* NEW: WebAudio.AutoPlay, Autoplay audio on loading.
* NEW: WebAudio.Sources for alternative <source> items.
* NEW: WebAudio_Ready() event fires when audio has loaded.
* NEW: WebAudio_Position() event fires as audio position changes during play.
* NEW: WebAudio_End() event fires when a track finishes
* NEW: WebAudio_Pause() event triggers when audio pauses.
* NEW: Property WebAudio.Duration gets song length.
* NEW: Property WebAudio.Position, get or set song position.
* NEW: Property Paused gets or sets paused state.
* OPT: do not reset play position to 0 on play in lib.js so audio can un-pause.
* OPT: clean up code and add inline wiki help to WebAudio.