Commit graph

3841 commits

Author SHA1 Message Date
Benoît Minisini
cfcb766e93 [DEVELOPMENT ENVIRONMENT]
* BUG: New menu are translatable by default.
* BUG: Image editor: Pasting does not crash anymore.


git-svn-id: svn://localhost/gambas/trunk@5821 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-30 14:23:33 +00:00
Benoît Minisini
9b4eaf2a47 [DEVELOPMENT ENVIRONMENT]
* NEW: Add a popup menu to the image editor save button that allows to 
  change the image format.
* BUG: Detect structure definition help comments.

[GB.GUI.BASE]
* BUG: Disable automatic shortcuts in popup menus for the moment, it breaks 
  too many things.


git-svn-id: svn://localhost/gambas/trunk@5820 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-30 13:58:18 +00:00
Benoît Minisini
a72e92ae47 [INTERPRETER]
* 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
2013-08-30 07:12:36 +00:00
Benoît Minisini
e182fbd2db [INTERPRETER]
* BUG: Continue on fixing "stop watching on end of file" algorithm...


git-svn-id: svn://localhost/gambas/trunk@5818 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-29 20:52:14 +00:00
Benoît Minisini
aa99eaa6bf [INTERPRETER]
* BUG: Fix "stop watching on end of file" algorithm again.


git-svn-id: svn://localhost/gambas/trunk@5817 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-29 20:21:20 +00:00
Benoît Minisini
ef8307793d [INTERPRETER]
* 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
2013-08-29 19:15:14 +00:00
Benoît Minisini
95cc0108e2 [DEVELOPMENT ENVIRONMENT]
* NEW: Add Islandic language.


git-svn-id: svn://localhost/gambas/trunk@5815 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-29 19:02:04 +00:00
Benoît Minisini
768a42416d [GB.QT4]
* BUG: Make gb.qt4 compiles on ARM again.


git-svn-id: svn://localhost/gambas/trunk@5814 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-29 17:37:01 +00:00
Tobias Boege
1952bfd047 [GB.DB.SQLITE3]
* BUG: VARYING CHARACTER() is taken as a text type now, not a boolean.



git-svn-id: svn://localhost/gambas/trunk@5813 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-28 12:16:39 +00:00
Tobias Boege
11d42882b5 [GB.DATA]
* 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
2013-08-19 22:48:29 +00:00
Benoît Minisini
4830af856b [INTERPRETER]
* 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
2013-08-19 21:45:13 +00:00
Benoît Minisini
3d820edb15 [GB.QT4]
* BUG: Rewrite the Container.FindChild() method because the QT4 method
  excludes children outside of its geometry, and because that geometry may 
  be not yet computed.


git-svn-id: svn://localhost/gambas/trunk@5810 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-19 20:18:28 +00:00
Benoît Minisini
6d8ce6ac9b [GB.FORM]
* NEW: FileChooser: Add a tool button for displaying file properties.

[GB.GTK]
* BUG: Fix broken popup and modal dialog management.
* BUG: Patch Style properties and methods for 'oxygen-gtk' widget theme.



git-svn-id: svn://localhost/gambas/trunk@5809 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-19 01:03:56 +00:00
Benoît Minisini
ddcf6a2cb0 [GB.GUI]
* NEW: Utility method that defines shortcuts for a popup menu.

[GB.GTK]
* NEW: Automatically define menu item shortcuts when a popup menu is shown.

[GB.QT4]
* NEW: Automatically define menu item shortcuts when a popup menu is shown.


git-svn-id: svn://localhost/gambas/trunk@5808 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-18 21:27:56 +00:00
Benoît Minisini
c3905c6c1c [DEVELOPMENT ENVIRONMENT]
* NEW: Allow more possible shortcuts in menu editor.
* NEW: Menu items can be non-translatable.


git-svn-id: svn://localhost/gambas/trunk@5807 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-18 18:59:03 +00:00
Benoît Minisini
6f62f9ae65 [DEVELOPMENT ENVIRONMENT]
* 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
2013-08-18 16:17:30 +00:00
Benoît Minisini
ae5f540c3b [DEVELOPMENT ENVIRONMENT]
* 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
2013-08-18 00:47:21 +00:00
Benoît Minisini
9666673ccc [GB.FORM]
* 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
2013-08-16 22:35:28 +00:00
Benoît Minisini
18a3af5ac9 [DEVELOPMENT ENVIRONMENT]
* BUG: CSV Import: Take the charset into account when displaying the file 
  preview.
* BUG: Don't automatically hide the console tab when displaying the 
  database editor.
* BUG: ImageEditor: many fixes everywhere.


git-svn-id: svn://localhost/gambas/trunk@5803 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-16 22:33:39 +00:00
Alexander Kuiper
040cd397fa [GB.XML.RPC]
BUG: miniServer would give an out-of-bound if content-length is wrong


git-svn-id: svn://localhost/gambas/trunk@5802 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-16 16:04:28 +00:00
Benoît Minisini
7181a4f6ba [GB.NET.CURL]
* BUG: Try to make gb.net.curl compile with old versions of libcurl.


git-svn-id: svn://localhost/gambas/trunk@5801 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-15 19:20:52 +00:00
Benoît Minisini
9ffdd925ab [GB.DB.FORM]
* NEW: DataCheckBox is a new data control that displays a checkbox for a
  boolean database field.


git-svn-id: svn://localhost/gambas/trunk@5800 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-15 15:15:19 +00:00
Benoît Minisini
ee9b817c6c [DEVELOPMENT ENVIRONMENT]
* NEW: Hitting "[" just after a "." now hides the automatic completion. 
  This is for the new ".[xxx]" syntax.


git-svn-id: svn://localhost/gambas/trunk@5799 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-15 14:46:54 +00:00
Benoît Minisini
7a4dae617b [COMPILER]
* 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
2013-08-15 14:36:44 +00:00
Benoît Minisini
f318c2ba39 [COMPILER]
* 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
2013-08-15 14:16:17 +00:00
Benoît Minisini
f2f2b99cc4 [GB.GTK]
* BUG: Remove some remaining GDK_KEY_* constant so that it compiles on old 
  GTK+ libraries.


git-svn-id: svn://localhost/gambas/trunk@5796 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-14 16:59:04 +00:00
Benoît Minisini
e05d425979 [DEVELOPMENT ENVIRONMENT]
* 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
2013-08-13 23:41:50 +00:00
Benoît Minisini
d452797475 [DEVELOPMENT ENVIRONMENT]
* 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
2013-08-13 22:28:41 +00:00
Benoît Minisini
e737d66459 [GB.FORM]
* BUG: ButtonBox border is now drawn correctly with QtCurve.

[GB.QT4]
* BUG: Fix focus style routine for QtCurve.


git-svn-id: svn://localhost/gambas/trunk@5793 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-13 14:55:17 +00:00
Benoît Minisini
5203d61969 [DEVELOPMENT ENVIRONMENT]
* 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
2013-08-13 12:18:32 +00:00
Benoît Minisini
d405727342 [INTERPRETER]
* 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
2013-08-12 20:48:45 +00:00
Benoît Minisini
30c67b1fcd [INTERPRETER]
* 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
2013-08-12 20:01:24 +00:00
Benoît Minisini
4f48f05047 [GB.CLIPPER]
* BUG: Fix component information file.


git-svn-id: svn://localhost/gambas/trunk@5789 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-12 01:53:19 +00:00
Benoît Minisini
c0d038b9f2 [DEVELOPMENT ENVIRONMENT]
* 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
2013-08-12 01:50:46 +00:00
Benoît Minisini
670d2e3f82 [DEVELOPMENT ENVIRONMENT]
* NEW: ImageEditor: Effects and painting now acts on the current selected 
  shape only.

[GB.FORM.MDI]
* BUG: ToolBar: Expander and separators are correctly visible again.


git-svn-id: svn://localhost/gambas/trunk@5787 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-11 20:03:27 +00:00
Benoît Minisini
a802373d0b [GB.FORM]
* BUG: Fix a possible infinite loop in TabBar layout management.

[GB.FORM.MDI]
* NEW: Horizontal toolbar layout has been redesigned. Now they grow 
  vertically if there is not enough place for all toolbar elements. 
  Vertical toolbars are not done yet.


git-svn-id: svn://localhost/gambas/trunk@5786 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-11 19:37:28 +00:00
Benoît Minisini
cafa282104 [DEVELOPMENT ENVIRONMENT]
* NEW: ImageEditor: Other bug fixes. A new button to duplicate the current 
  selection.


git-svn-id: svn://localhost/gambas/trunk@5785 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-11 07:32:03 +00:00
Benoît Minisini
3fe9263a0a [DEVELOPMENT ENVIRONMENT]
* NEW: ImageEditor: Fix and enhance magnets management. Add grid. Other bug
  fixes.

[GB.GEOM]
* BUG: Fix signature of RectF.Union and Rect.Intersection methods.


git-svn-id: svn://localhost/gambas/trunk@5784 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-11 07:10:41 +00:00
Benoît Minisini
3d1ae540ae [GB.GTK]
* BUG: Use the deprecated GDK key constants, otherwise the component does 
  not compile with old GTK+ libraries.


git-svn-id: svn://localhost/gambas/trunk@5783 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-11 00:36:47 +00:00
Tobias Boege
33cf182cd0 [GB.DATA]
* BUG: Remove inclusion of c_avltree.h which is not yet versioned.



git-svn-id: svn://localhost/gambas/trunk@5782 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-10 08:22:34 +00:00
Benoît Minisini
668d920ef3 [DEVELOPMENT ENVIRONMENT]
* BUG: ImageEditor: Use a plain color if the Shape tab is selected.


git-svn-id: svn://localhost/gambas/trunk@5781 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-09 22:20:10 +00:00
Benoît Minisini
02bc9ddd03 [DEVELOPMENT ENVIRONMENT]
* NEW: ImageEditor: Add support for predefined shapes. Not very useful 
  actually, as you cannot resize them indepently of the current selection.


git-svn-id: svn://localhost/gambas/trunk@5780 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-09 22:19:06 +00:00
Benoît Minisini
56c65ddcb4 [DEVELOPMENT ENVIRONMENT]
* 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
2013-08-09 20:42:38 +00:00
Tobias Boege
b4c71163ee [GB.DATA]
* 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
2013-08-09 18:31:20 +00:00
Benoît Minisini
ef1f29700e [DEVELOPMENTE ENVIRONMENT]
* NEW: ImageEditor: List of last recently used gradients has been 
  implemented. Many bug fixes everywhere.
* NEW: ImageEditor: The direction of line, rectangle or ellipse tells if it
  is added or substracted to the current selection.
* OPT: ImageEditor: The refresh of the balance effect on the current 
  selection has been optimized.
* NEW: ImageEditor: A dialog to enlarge or shrink the selection with a
  given number of pixels. Only works on rectangles and ellipses.


git-svn-id: svn://localhost/gambas/trunk@5777 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-07 22:35:58 +00:00
Benoît Minisini
3c1353f233 [DEVELOPMENT ENVIRONMENT]
* 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
2013-08-07 03:14:27 +00:00
Benoît Minisini
e63e8777a1 [DEVELOPMENT ENVIRONMENT]
* 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
2013-08-06 17:28:13 +00:00
Benoît Minisini
4cc551c120 [GB.GTK]
* BUG: Fix the name of new modifier key constants.


git-svn-id: svn://localhost/gambas/trunk@5774 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-06 15:23:11 +00:00
Benoît Minisini
6700efc27b [DEVELOPMENT ENVIRONMENT]
* BUG: Image editor: Fix magnets points.
* NEW: Image editor: The clipboard brush panel works correctly now.
* NEW: Image editor: 0.25x and 0.5x zooms are allowed now.
* NEW: Image editor: 'Cut' operation has been implemented.


git-svn-id: svn://localhost/gambas/trunk@5773 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-05 22:56:29 +00:00
Benoît Minisini
723a203185 [DEVELOPMENT ENVIRONMENT]
* NEW: New image editor, not yet finished. Use with care!

[GB.FORM]
* NEW: ImageView now export some of the properties and methods of its inner 
  ScrollArea.
* NEW: ImageView has now two new methods to convert between image 
  coordinates and view coordinates.
* NEW: ImageView.Grid is a new property that defines if the grid should be 
  visible.
* NEW: ImageView.UseMouse is a new property that defines if scrolling the 
  image by using the mouse inside the view is possible.

[GB.GTK]
* NEW: Key.Shift, Key.Alt, Key.Ctrl and Key.Meta now always returns the 
  actual state of the corresponding modifier.
* NEW: Key.ShiftKey, Key.AltKey, Key.CtrlKey and Key.MetaKey are four new
  constants that are returned by Key.Code when the corresponding key is 
  pressed or released.

[GB.QT4]
* NEW: Key.Shift, Key.Alt, Key.Ctrl and Key.Meta now always returns the 
  actual state of the corresponding modifier.
* NEW: Key.ShiftKey, Key.AltKey, Key.CtrlKey and Key.MetaKey are four new
  constants that are returned by Key.Code when the corresponding key is 
  pressed or released.


git-svn-id: svn://localhost/gambas/trunk@5772 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-08-05 22:18:36 +00:00