Commit graph

1504 commits

Author SHA1 Message Date
Benoît Minisini
cb3c488454 [INTERPRETER]
* NEW: New error constant in API header.


git-svn-id: svn://localhost/gambas/trunk@7066 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-05-10 10:42:24 +00:00
Benoît Minisini
43f26cd8ff [CONFIGURATION]
* NEW: gb.qt5 component.

[EXAMPLES]
* BUG: Fix WebBrowser example.

[INTERPRETER]
* NEW: Fix compilation of EXEC and SHELL for older bytecode versions.

[GB.DB.FORM]
* NEW: Display the busy mouse cursor while loading SQL data.

[GB.QT4]
* NEW: Support for QT5.

[GB.QT5]
* NEW: Initial version of the QT5 component. Not everything is working. 
  There is no Embedder and TrayIcon controls.


git-svn-id: svn://localhost/gambas/trunk@7062 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-05-08 17:40:28 +00:00
Benoît Minisini
6717974cdc [INTERPRETER]
* NEW: Object.Lock() and Object.Unlock() are now recursive, i.e. you must 
  call Object.Unlock() as many times as Object.Lock() to actually unlock an 
  object.


git-svn-id: svn://localhost/gambas/trunk@7044 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-04-19 13:43:33 +00:00
Benoît Minisini
9180e0b643 [GB.SIGNAL]
* BUG: Raise an error instead of panicking when trying to catch the SIGKILL 
  or SIGSTOP signal.


git-svn-id: svn://localhost/gambas/trunk@7039 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-04-15 17:17:50 +00:00
Benoît Minisini
d87c0668cb [INTERPRETER]
* BUG: Don't crash if a regular expression has a missing closing '}'.


git-svn-id: svn://localhost/gambas/trunk@7036 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-04-13 17:04:43 +00:00
Benoît Minisini
38c2a48fc7 [GB.DB]
* BUG: Fix a memory leak in the Connection.Delete() method.


git-svn-id: svn://localhost/gambas/trunk@7027 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-04-11 08:37:24 +00:00
Benoît Minisini
706648c7c8 [WEBSITE MAKER]
* NEW: Upgrade to 3.7.1 version.

[GB.DB]
* NEW: Connection.SQL is a new property that returns a new SQLRequest 
  object that can be used for forging a SQL request whose syntax is adapted
  to the target connection.
* NEW: SQLRequest is a new class that helps to build a SQL request whose 
  syntax is adapted to a specific connection. The name of table fields are 
  always quoted so that they can include reserved characters.

[GB.DB.FORM]
* NEW: Use the new SQL property of the Connection object to build request.
* BUG: Fields with special characters in their name are now correctly
  quoted, thanks to the new SQL forgin mechanism.

[GB.DB]
* BUG: Don't crash when a SQLite database is not found and if the hostname 
  is null.
* NEW: GB_DB_DEBUG is a new environmental variable that allows to 
  externally set the DB.Debug property.
  
[GB.EVAL.HIGHLIGHT]
* NEW: SQL higlighting: the '`' quote character is taken into account now.


git-svn-id: svn://localhost/gambas/trunk@7020 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-04-03 21:11:18 +00:00
Benoît Minisini
6db6ea879a [INTERPRETER]
* BUG: Shell$() now quotes quotes correctly.


git-svn-id: svn://localhost/gambas/trunk@6997 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-03-22 12:12:23 +00:00
Benoît Minisini
bd4f4931af [INTERPRETER]
* BUG: Do not read ahead file descriptors ready to read opened using the 
  ".xx" special name.


git-svn-id: svn://localhost/gambas/trunk@6995 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-03-20 06:48:04 +00:00
Benoît Minisini
3de004cff2 [INTERPRETER]
* BUG: Do not read ahead a ready to read file descriptor if we are in 
  direct mode and if the file is a not a regular file.


git-svn-id: svn://localhost/gambas/trunk@6994 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-03-19 23:23:47 +00:00
Benoît Minisini
0fbfdf5757 [INTERPRETER]
* BUG: Stream read ahead does not have to wait for the descriptor to be 
  ready for reading.


git-svn-id: svn://localhost/gambas/trunk@6993 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-03-19 13:50:35 +00:00
Benoît Minisini
855cd1218c [GB.DRAW]
* BUG: Fix Paint text method signatures.


git-svn-id: svn://localhost/gambas/trunk@6990 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-03-15 15:17:31 +00:00
Benoît Minisini
789deb8b65 [CONFIGURATION]
* BUG: Forgot to package 'main/lib/gb.component' file.


git-svn-id: svn://localhost/gambas/trunk@6968 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-03-10 12:27:08 +00:00
Benoît Minisini
298d0f54a0 [GB.DB]
* NEW: Add a Connections.Count property that returns the number of 
  connections defined in the current project / executable.


git-svn-id: svn://localhost/gambas/trunk@6954 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-03-07 10:26:01 +00:00
Benoît Minisini
c97a5b6349 [GB.DRAW]
* NEW: Don't clip the area argument of Paint.Begin().


git-svn-id: svn://localhost/gambas/trunk@6951 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-03-06 12:54:47 +00:00
Benoît Minisini
25a01ce68a [GB.DRAW]
* BUG: Fix Paint.Begin() signature.


git-svn-id: svn://localhost/gambas/trunk@6940 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-03-02 21:33:29 +00:00
Benoît Minisini
e55a104121 [GB.DRAW]
* BUG: Using Paint.Begin() on an already painted device automatically calls
  Paint.Save(), and Paint.Restore() will be called with Paint.End().


git-svn-id: svn://localhost/gambas/trunk@6939 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-03-02 21:14:20 +00:00
Benoît Minisini
cadfc8ba99 [GB.DRAW]
* BUG: Allow Paint.Begin() drawing areas to be imbricated.


git-svn-id: svn://localhost/gambas/trunk@6938 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-03-02 21:08:09 +00:00
Benoît Minisini
a07a02c086 [GB.DRAW]
* BUG: The optional painting area is correclty reset after a call to 
  Paint.Reset().
 

git-svn-id: svn://localhost/gambas/trunk@6936 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-03-02 18:20:56 +00:00
Benoît Minisini
7d72df028f [GB.DRAW]
* NEW: Paint.Begin() now takes a new optional argument that allows to 
  define the painting area as a sub-rectangle of the painting device.


git-svn-id: svn://localhost/gambas/trunk@6935 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-03-02 18:03:31 +00:00
Benoît Minisini
d89262600b [INTERPRETER]
* BUG: Force the interpreter to link with the system thread library, 
  whatever the global linker configuration is.


git-svn-id: svn://localhost/gambas/trunk@6916 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-02-26 22:44:20 +00:00
Benoît Minisini
be3411f211 [GB.PAINT]
* BUG: The PathExtents.Merge() method does not crash anymore.

[GB.V4L]
* BUG: Fix type in error messages.


git-svn-id: svn://localhost/gambas/trunk@6903 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-02-20 19:59:09 +00:00
Benoît Minisini
50fba09151 [CONFIGURATION]
* NEW: Compile and install gb.report2 component.

[DEVELOPMENT ENVIRONMENT]
* NEW: Add support for gb.report2 and gb.scanner.
* BUG: Correctly reset Application.Busy when opening a connection fails.
* BUG: Project property dialog: Fix management of required components.
* NEW: Project property dialog: Add management of excluded components.

[GB.DB]
* NEW: More detailed error message for SQLite connections.

[GB.DB.SQLITE3]
* NEW: More detailed error message for SQLite connections.


git-svn-id: svn://localhost/gambas/trunk@6892 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-02-05 20:34:44 +00:00
Benoît Minisini
b1447607f2 [INTERPRETER]
* NEW: Add end-of-line format constants to the interpreter API.

[GB.QT4]
* BUG: If a control triggers the arrangement of its parent contents, the 
  delayed visibility is realized so that the control is taken into account 
  by the arrangement routine.

[GB.QT4.EXT]
* NEW: Editor.EndOfLine is a new property that defines which end-of-line 
  format (gb.Unix, gb.Windows or gb.Mac) is used when retrieving text from 
  the control.


git-svn-id: svn://localhost/gambas/trunk@6882 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-02-03 23:45:41 +00:00
Benoît Minisini
f6106901a8 [GB.DB]
* BUG: Don't crash when opening a connection if the database driver is 
  unknown or not specified.


git-svn-id: svn://localhost/gambas/trunk@6870 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-01-25 22:49:31 +00:00
Benoît Minisini
253093035e [INTERPRETER]
* NEW: The Task return value is now persistent (it is stored inside the 
  Task object).


git-svn-id: svn://localhost/gambas/trunk@6857 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-01-23 00:52:18 +00:00
Benoît Minisini
825eb39923 [COMPILER]
* NEW: A symbol followed by a point is never interpreted as a function if 
  it is used as a function name in the current class.


git-svn-id: svn://localhost/gambas/trunk@6856 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-01-22 22:46:11 +00:00
Benoît Minisini
f6464dfe3d [GB.DB]
* BUG: Fix a crash when using the Connection.Collation property on a not 
  yet opened connection.
* BUG: The timeout is now really taken into account at database opening, 
  and it is 20 seconds by default as wanted initially.


git-svn-id: svn://localhost/gambas/trunk@6850 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-01-21 21:22:26 +00:00
Benoît Minisini
cb63d9ef1f [CONFIGURATION]
* NEW: Support for GNU/Hurd.

[INTERPRETER]
* NEW: Support for GNU/Hurd.

[GB.NET]
* NEW: Support for GNU/Hurd.


git-svn-id: svn://localhost/gambas/trunk@6847 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-01-21 00:52:56 +00:00
Benoît Minisini
6d0511cded [COMPILER]
* BUG: Remove a debugging message.


git-svn-id: svn://localhost/gambas/trunk@6839 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-01-17 23:33:38 +00:00
Benoît Minisini
2599961aca [DEVELOPMENT ENVIRONMENT]
* NEW: Get rid of the new warnings.
* NEW: Support for arguments without a datatype in function signatures.
* NEW: [ALT] + any brace character is a new editor shrotcut that add or 
  remove braces around the current word. Same thing for [ALT] + [<] or [>].
* NEW: Property editor: Add a clear button. Replace the MenuButton by a
  normal ComboBox.

[INTERPRETER]
* NEW: Support for the new '*.list' file format.

[COMPILER]
* NEW: New '*.list' file format that marks classes having static elements.
* NEW: A warning is emitted when a class having static elements is 
  overriden by a declaration. This is suspicious.
* NEW: A symbol in a local variable declaration, or a global variable or 
  property declaration can now be surrounded by braces to prevent a 
  possible warning.

[GB.FORM]
* NEW: Get rid of the new warnings.
* NEW: TabPanel[].Closable is a new property that defines if a specific tab
  has a close button.

[GB.FORM.MDI]
* NEW: Workspace: Try to minimize flickering during resizing. Not very
  successful.


git-svn-id: svn://localhost/gambas/trunk@6838 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-01-16 00:31:59 +00:00
Benoît Minisini
bf7e0659bd [WIKI]
* NEW: Take '*.help' help files into account.

[GB.DATA]
* NEW: Disable the help file generation from sources. It is useless for
  normal users.


git-svn-id: svn://localhost/gambas/trunk@6834 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-01-13 20:01:40 +00:00
Benoît Minisini
61e61e2dfa [HELP EXTRACTOR]
* NEW: Analyze the source files without 'gb.pcre'.

[GB.DATA]
* NEW: Activate help extraction from source files.


git-svn-id: svn://localhost/gambas/trunk@6831 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-01-12 20:04:33 +00:00
Benoît Minisini
d050bcab25 [CONFIGURATION]
* NEW: Modify the installation process so that it will be able to run the 
  'gbh3' tool to extract help from component source files. Not usable yet
  as long as 'gbh3' depends on 'gb.pcre'.

[HELP EXTRACTOR]
* NEW: Move 'gbh3' project from '/app/src' to '/main/tools'.
* NEW: Add new options that are needed by the installation process.


git-svn-id: svn://localhost/gambas/trunk@6829 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-01-11 23:41:41 +00:00
Benoît Minisini
fea6d3c2dd [DEVELOPMENT ENVIRONMENT]
* NEW: Use row borders in project property component list. But still use 
  cell borders in component / library requirements!

[GB.GEOM]
* BUG: RectF: Fix the implementation of several methods and properties.

[GB.GUI.BASE]
* NEW: Redesign the Border methods signature. They take a RectF instead of
  X, Y, Width, Height arguments.
* NEW: Border.GetRect() is a new method that returns the available border 
  inside as an integer rectangle.
* NEW: Border(...) now create a new Border object, like the constructor.
* NEW: Border.IsVoid() returns if the Border object will actually draw a
  border. The slash and backslash strokes are not taken into account.
* NEW: GridView.Collapse has been removed. Margin are always collapsed for
  row borders, and never collapsed for cell borders.
* BUG: GridView borders now work as expected.


git-svn-id: svn://localhost/gambas/trunk@6817 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-01-07 18:17:01 +00:00
Benoît Minisini
6b10bb831d [DEVELOPMENT ENVIRONMENT]
* NEW: Component/Library dependencies now are chosen from a new component 
  selection dialog.
* BUG: Database editor: Support for requests beginning with "WITH" or 
  "PRAGMA".

[WIKI CGI SCRIPT]
* NEW: New login panel.
* BUG: Fix creatable class detection.

[GB.FORM]
* BUG: IconPanel: The mouse wheel cannot select hidden tabs anymore.
* BUG: Wizard: Remove default padding for wizards having a border.

[GB.GUI.BASE]
* BUG: Border: Rewrite the painting routine. Simplify the clipping to help
  workaround Qt4 bugs.

[GB.DB.SQLITE]
* NEW: Mark the component as deprecated.

[GB.DB.SQLITE3]
* BUG: Support for PRAGMA requests. Start cleaning up the horrible C++ 
  classes.

[GB.QT4]
* BUG: Simplify the clipping management, because the old one was based on 
  the QPainterPath::intersected() Qt method that is buggy. Clipping mixed 
  with world transform matrix has still to be checked.


git-svn-id: svn://localhost/gambas/trunk@6815 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-01-06 22:44:35 +00:00
Benoît Minisini
0d9032c2a2 [DEVELOPMENT ENVIRONMENT]
* NEW: Description of the gb.util.web component.
* NEW: A component/library project now can define if its information should 
  include the information of other components. This is useful if your 
  component includes another component at runtime that is hidden, or that 
  it does not depend on.

[INFORMER]
* NEW: Support for information include of components written in Gambas.

[GB.GUI.BASE]
* OPT: Border: Use Single instead of Float for properties. It saves some 
  memory space.
* NEW: Border: Properties for diaognal strikes.
* BUG: Border: Fix style syntax analyze.

[GB.UTIL.WEB]
* NEW: A new component that provides useful routines for web applications.
  They were located in gb.web before.

[GB.WEB]
* NEW: 'gb.util.web' is now automatically loaded, to provide 
  backward-compatibility with Gambas 3.6 applications using 'gb.web'.


git-svn-id: svn://localhost/gambas/trunk@6812 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-01-05 20:51:21 +00:00
Benoît Minisini
35dbcb4b9d [INTERPRETER]
* BUG: Fix _call special method management again.


git-svn-id: svn://localhost/gambas/trunk@6810 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-01-04 23:41:09 +00:00
Benoît Minisini
90f04de1a9 [INTERPRETER]
* BUG: "create static" classes are now taken into account when using the 
  _call() special method.


git-svn-id: svn://localhost/gambas/trunk@6809 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-01-04 23:02:03 +00:00
Tobias Boege
0e069f3d04 [GB.DATA]
* BUG: GraphMatrix: Multiple simultaneous enumerations are possible now.



git-svn-id: svn://localhost/gambas/trunk@6807 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-01-04 18:32:33 +00:00
Benoît Minisini
e624fc7361 [DEVELOPMENT ENVIRONMENT]
* NEW: Project properties dialog: Make component filters visible again.
* NEW: Project properties dialog: To get help on a component, you have to
  double-click on it now. It opens a embedded web browser on the help. The
  back button of the browser goes back to the component list.

[WIKI CGI SCRIPT]
* NEW: Always put the login panel at the bottom of the startup page.


git-svn-id: svn://localhost/gambas/trunk@6803 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-01-03 21:52:17 +00:00
Benoît Minisini
5e92876cad [EXAMPLES]
* NEW: LCDLabel now uses gb.sdl2.audio.

[GB.FORM]
* BUG: The ToolPanel buttons now takes Style.FrameWidth into account.

[GB.GTK]
* BUG: Remove a debugging message.

[GB.QT4]
* BUG: Do not delete open windows later when the event loop is finished. 
  This is not supported by QT.


git-svn-id: svn://localhost/gambas/trunk@6797 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-01-02 14:31:23 +00:00
Benoît Minisini
a5f2cb1575 [FARM SERVER]
* NEW: Software screenshot can be deleted by the client.

[INTERPRETER]
* NEW: The little interpreter sleep is now done inside the watch file 
  descriptor read callback only. So no need to implement it in each
  component event loop.

[GB.SDL2]
* BUG: The SDL event loop now calls the interpreter event loop so that 
  timers and watched file descriptor are correctly handled.


git-svn-id: svn://localhost/gambas/trunk@6792 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-01-02 03:44:30 +00:00
Benoît Minisini
cc08725fe4 [INTERPRETER]
* NEW: Do not stop watching a file descriptor that is ready to read but has 
  no data.
* NEW: Sleep up to 10 ms if the event loop is called too often.


git-svn-id: svn://localhost/gambas/trunk@6791 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-01-02 02:22:22 +00:00
Benoît Minisini
d3ebb6ccc8 [CONFIGURATION]
* NEW: Update the state of many components.

[DEVELOPMENT ENVIRONMENT]
* NEW: The project property dialog now uses an IconPanel.
* NEW: New design of the component tab in the project property dialog.

[GB.GUI.BASE]
* NEW: GridView: The background of the sorted column is now lighter.

[GB.QT4.WEBKIT]
* NEW: WebView.History is a new virtual access to get the number of entries 
  in the history, to set or get the current history entry index, and to get
  or set the history maximum capacity.


git-svn-id: svn://localhost/gambas/trunk@6788 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2015-01-01 11:46:48 +00:00
Benoît Minisini
3d5894d409 [COMPILER]
* BUG: Fix a badly initialized variable in syntax tree analyze, that could
  lead to spurious "Expression too complex" errors.

[GB.EVAL]
* BUG: Fix a badly initialized variable in syntax tree analyze, that could
  lead to spurious "Expression too complex" errors.


git-svn-id: svn://localhost/gambas/trunk@6762 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-12-22 17:41:16 +00:00
Benoît Minisini
4faa9876bf [DEVELOPMENT ENVIRONMENT]
* BUG: Fix initial focus of welcome dialog.

[INTERPRETER]
* BUG: Release standard i/o File objects before cleaning up the classes, to 
  avoid an incorrect "circular reference" message.

[GB.GTK]
* NEW: Link to the pthread library explicitly.
* NEW: WAIT inside a keybord handler does not raise an error anymore. It 
  just print a warning message and does nothing.

[GB.GTK3]
* NEW: Link to the pthread library explicitly.
* NEW: WAIT inside a keybord handler does not raise an error anymore. It 
  just print a warning message and does nothing.

[GB.UTIL]
* NEW: Date.EasterDay returns the Easter day of a specific year.

[GB.QT4]
* NEW: Link to the pthread library explicitly.
* NEW: WAIT inside a keybord handler does not raise an error anymore. It 
  just print a warning message and does nothing.

[GB.QT4.EXT]
* NEW: Editor.Font property now can take any font in the IDE.


git-svn-id: svn://localhost/gambas/trunk@6754 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-12-20 15:24:00 +00:00
Tobias Boege
4c704fd2d5 [GB.DATA]
* BUG: GraphMatrix.Add() does not add identical vertices multiple times
  anymore.



git-svn-id: svn://localhost/gambas/trunk@6752 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-12-19 17:57:18 +00:00
Benoît Minisini
3c8efd56e9 [CONFIGURATION]
* NEW: Update chinese translations.

[EXAMPLES]
* NEW: Add screenshots, switch to 1.0 version, and publish.

[INTERPRETER]
* NEW: Allow WAIT to raise errors.

[GB.DESKTOP]
* NEW: DesktopWindow.Geometry is a new property that returns the geometry 
  of the window inside as a rectangle.
* NEW: DesktopWindow.Frame is a new property that returns the geometry 
  of the window outside (with the frame) as a rectangle.
* NEW: DesktopWindow.GetScreenshot() is a new method that returns a 
  screenshot of a window, with or without the frame.
* BUG: DesktopWindow X, Y, Width and Height properties return the window
  geometry without the frame.

[GB.GTK]
* NEW: Raise an error if WAIT is called during a keyboard event.

[GB.GTK3]
* NEW: Raise an error if WAIT is called during a keyboard event.

[GB.QT4]
* NEW: Raise an error if WAIT is called during a keyboard event.


git-svn-id: svn://localhost/gambas/trunk@6746 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-12-16 22:15:59 +00:00
Benoît Minisini
00a8259d59 [GB.DRAW]
* BUG: Raise an error if an immediate Paint drawing routine 
  (Paint.DrawImage, Paint.DrawText...) is called while there is a current 
  path, because this is not supported by gb.gtk.


git-svn-id: svn://localhost/gambas/trunk@6742 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-12-14 22:27:44 +00:00
Tobias Boege
fcf84aebfc [GB.DATA]
* BUG: Graph: Add the Weight property to the edge interface.



git-svn-id: svn://localhost/gambas/trunk@6731 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-12-13 13:27:33 +00:00
Benoît Minisini
b2eb17d344 [INTERPRETER]
* BUG: Correctly flush the output of a terminated child process.


git-svn-id: svn://localhost/gambas/trunk@6722 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-12-11 23:41:48 +00:00
Benoît Minisini
b4c89ab52b [INTERPRETER]
* BUG: Do read ahead for any watched file descriptor. It may break when 
  watching special device files, depending on its internal kernel driver 
  behaviour. We'll see.


git-svn-id: svn://localhost/gambas/trunk@6708 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-12-03 12:13:35 +00:00
Benoît Minisini
70fb104425 [GB.DB]
* BUG: Don't crash when trying to open a non-existing sqlite database with 
  the 'sqlite' pseudo-driver.


git-svn-id: svn://localhost/gambas/trunk@6705 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-12-02 08:28:24 +00:00
Tobias Boege
4333eb8046 [GB.DATA]
* BUG: Trie: Fix a memory leak when an object is replaced



git-svn-id: svn://localhost/gambas/trunk@6701 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-12-01 22:39:28 +00:00
Tobias Boege
182b46c308 [GB.DATA]
* NEW: Trie: New Add() and Remove() cosmetic methods.



git-svn-id: svn://localhost/gambas/trunk@6699 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-12-01 16:31:30 +00:00
Benoît Minisini
064ec73404 [INTERPRETER]
* BUG: 'Exec ... To' and 'Shell ... To' work correctly again.


git-svn-id: svn://localhost/gambas/trunk@6698 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-12-01 16:22:34 +00:00
Benoît Minisini
dfc8140da0 [INTERPRETER]
* BUG: The process error output callback now immediately closes its file 
  descriptor as soon as read() returns zero or an error, or if the Error
  event is not handled.


git-svn-id: svn://localhost/gambas/trunk@6694 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-12-01 11:51:27 +00:00
Benoît Minisini
1fcb7bd02e [INTERPRETER]
* BUG: Don't remove the possible watch when freeing the file. The file may 
  be closed, and the file descritor may have been reused!


git-svn-id: svn://localhost/gambas/trunk@6693 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-12-01 02:50:18 +00:00
Benoît Minisini
1a2901e961 [DEVELOPMENT ENVIRONMENT]
* NEW: Software farm: When installing a software, tags that are desktop 
  menu official categories are used for creating the '*.desktop' file. 
  Consequently, the menu entry shold go to an accurate location of the 
  desktop application menu.
* NEW: Software farm: Some little desgin fixes.
* NEW: Publishing dialog: Some little fixes.

[FARM SERVER]
* BUG: Fix two bugs in search software request.

[INTERPRETER]
* NEW: The data format 'u' displays all milliseconds digits as soon as 
  there is at least two 'u' characters, and not if there is exactly two 
  'u' characters only.

[GB.DESKTOP]
* NEW: DesktopFile.Categories is a new property to read or set the 
  categories of a desktop menu entry.


git-svn-id: svn://localhost/gambas/trunk@6692 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-12-01 00:47:48 +00:00
Benoît Minisini
89d56eb88f [DEVELOPMENT ENVIRONMENT]
* BUG: Don't crash when trying to download the offline help if 'wget' is 
  not installed on the system.
* BUG: Software farm: Don't create a '*.desktop' file if the software is a
  library or a component.
* NEW: Redesign the publish dialog by using a wizard.
* NEW: Use freedesktop categories as possible software tags.

[FARM SERVER]
* NEW: Add a 'size' field in the 'software' table, and an index to be able 
  to sort sotfwares by size later.

[INTERPRETER]
* BUG: Read data ahead before raising a Read event (on Process, File, or 
  any stream). Use the result of that read to detect EOF, as using the 
  stream end-of-file detection routine is not reliable.

[GB.FORM]
* BUG: FileProperties: Fix the media preview.

[GB.MEDIA.FORM]
* BUG: MediaView: Don't crash if the internal media player is not yet 
  initialized.


git-svn-id: svn://localhost/gambas/trunk@6691 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-30 22:41:41 +00:00
Benoît Minisini
03cd222bb8 [DEVELOPMENT ENVIRONMENT]
* NEW: Software farm: Software now can be safely installed or removed. The
  source checksum is checked, as well as the required components. Libraries
  and dependencies on other software are not yet taken into account. A
  '*.desktop' file is automatically created on installation now.

[INTERPRETER]
* NEW: Split() has a new behaviour when its escape argument has two 
  characters, the second one being the first splitting character. It uses
  the first character to escape splitting characters. For example,
  Split("a;b~;c;d",";","~;") returns ["a","b;c","d"].
* NEW: String[].Join() method handle the new Split syntax. 
  ["a","b;c","d"].Join(";","~;") returns "a;b~;c;d". Moreover, in the
  traditional escape syntax, the joined string are not escaped anymore if 
  they are void.

[GB.DESKTOP]
* NEW: DesktopFile.MimeTypes is a new property corresponding to the 
  'MimeType' entry of the '*.desktop' file.
* NEW: DesktopFile now can be used for creating or modifying '*.desktop' 
  files.


git-svn-id: svn://localhost/gambas/trunk@6689 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-30 00:30:32 +00:00
Tobias Boege
bf997fb0f3 [GB.DATA]
* BUG: Trie: Use sufficient bit widths in numerical constants (could cause
  data loss on 32 bit systems).
* BUG: TriePrefix: Don't drop reference counts of the Trie when the prefix
  is not found.



git-svn-id: svn://localhost/gambas/trunk@6688 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-29 18:55:41 +00:00
Benoît Minisini
25dc9cd30d [INTERPRETER]
* BUG: Retrieve the child process output correctly when it has terminated.
  No data should be lost anymore.
* NEW: Remove an unused internal stream method.


git-svn-id: svn://localhost/gambas/trunk@6687 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-29 15:29:10 +00:00
Benoît Minisini
40937ec321 [INTERPRETER]
* BUG: Process: Don't call the Read event if there is nothing to read.


git-svn-id: svn://localhost/gambas/trunk@6686 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-29 14:45:33 +00:00
Benoît Minisini
5796ac4e56 [DEVELOPMENT ENVIRONMENT]
* NEW: Software farm: Now softwares can be installed or removed. 
  Installation is not finished yet. Checksum, components and libraries are
  not checked. Desktop file is not created.
* NEW: Software farm: Design changes in the GUI.
* BUG: Offline help: The help timestamp is now used for detecting updates.
  File modification time is not used anymore as it is a localized time.
* BUG: Source archive files now ignore files named 'core'.

[INTERPRETER]
* BUG: SHELL now correctly resets the interpreter to '/bin/sh' if the 
  System.Shell property is reset to a null string.

[GB.DESKTOP]
* BUG: Desktop.NetworkAvailable now tries to find 'ifconfig' or 'ip' in 
  '/sbin' and '/usr/sbin' before relying on the PATH environment variable.


git-svn-id: svn://localhost/gambas/trunk@6685 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-29 14:20:31 +00:00
Benoît Minisini
996ff69d37 [INTERPRETER]
* BUG: Process: Don't check end of stream before calling the Read event. I
  don't remember what this test was supposed to fix, but for sure it leads
  to data loss if some data arrives just after the test.


git-svn-id: svn://localhost/gambas/trunk@6683 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-28 20:15:02 +00:00
Benoît Minisini
655f3474c7 [INTERPRETER]
* NEW: The process child errors raised before the exec() system call are 
  now catched in a separate function called by the compiler explicitly 
  after a SHELL or EXEC assignment.

[COMPILER]
* NEW: SHELL and EXEC assignments now call an hidden subroutine just after
  the assignment to immediately check for a possible child error.


git-svn-id: svn://localhost/gambas/trunk@6681 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-27 23:31:51 +00:00
Benoît Minisini
e4cd9bce1b [DEVELOPMENT ENVIRONMENT]
* BUG: Some fixes in the software farm window.

[INTERPRETER]
* NEW: Remove the GB.UnrefKeep() interpreter API, as it is not used 
  anymore.


git-svn-id: svn://localhost/gambas/trunk@6676 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-24 12:43:57 +00:00
Benoît Minisini
a607aaec6f [INTERPRETER]
* NEW: Apply the "close on exec" flag to all non-temporary file descriptors 
  opened by the interpreter.


git-svn-id: svn://localhost/gambas/trunk@6671 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-23 18:19:57 +00:00
Benoît Minisini
334c9d8beb [DEVELOPMENT ENVIRONMENT]
* NEW: Experimental "Gambas Software Farm" dialog. It allows to browse a 
  farm server, but voting and installing are not yet possible.
* NEW: Requests to the farm server are now displayed in a modal dialog with
  an optional progress bar.

[FARM SERVER]
* BUG: Fix many bugs.
* NEW: Search software by tags.

[GB.DB]
* BUG: Connections: Fix a not enough argument error.

[GB.FORM]
* NEW: URLLabel is a new control that displays a clickable URL. If the 
 'gb.desktop' component is loaded, then a browser is automatically opened 
  when clicking on the link.

[GB.GUI.BASE]
* NEW: ProgressBar now has a flat look. And a new Border property that
  allows to hide the border.

[GB.NET.CURL]
* NEW: HttpClient and FtpClient now raise a 'Cancel' event when their 
  Stop() method is called.
* BUG: Found a workaround for having accurate upload progress data.
* NEW: HttpClient.CopyFrom() is a new method that allows to fill an 
  HttpClient object with the configuration of another HttpClient object.

[GB.QT4]
* BUG: Do not use 'QEventLoop::DeferredDeletion' anymore, it is deprecated.
  Use qApp->sendPostedEvents() instead.


git-svn-id: svn://localhost/gambas/trunk@6665 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-23 02:22:57 +00:00
Benoît Minisini
ca89cbf459 [GB.DB]
* BUG: Fix Connection.ApplyTemplate() method.


git-svn-id: svn://localhost/gambas/trunk@6660 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-19 21:54:05 +00:00
Benoît Minisini
61cae601aa [WIKI SERVER]
* BUG: Some style fixes for lists.
* NEW: Automatically use the english page if the current page has not been 
  translated.
* NEW: Automatically use the parent class if possible when a symbol page 
  does not exist.

[GB.DB]
* BUG: Fix a 'not enough arguments' error in Connections.Create().

[GB.MARKDOWN]
* BUG: <hr> are now only generated from lines including only '*' or '-'. No
  space is allowed anymore.



git-svn-id: svn://localhost/gambas/trunk@6659 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-19 20:02:43 +00:00
Benoît Minisini
b0bb9fa480 [DEVELOPMENT ENVIRONMENT]
* BUG: Expression analyze now works correctly when ME or SUPER is used.

[FARM SERVER]
* NEW: Use the new automatic database creation feature.

[WIKI SERVER]
* NEW: Support for babelmark markdown syntax comparison.

[GB.DB]
* BUG: Don't crash at connection opening when no database name is 
  specified.
* NEW: The Connection class has now a part written in Gambas, and the C 
  part has been put in a parent hidden class named '_Connection'.
* NEW: Connection.GetTemplate() is a new method that return the description
  of the database as a string template.
* NEW: Connection.ApplyTemplate() is a new method that takes the previous
  template to initialize the structure of the database. If a table included
  in the description already exists, it is silently ignored.
* NEW: Connections.Create() is a new static method that create a specific
  database from a named connection and its template as saved by the IDE
  in the current project.


git-svn-id: svn://localhost/gambas/trunk@6657 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-19 18:45:18 +00:00
Benoît Minisini
dd41b47ef3 [DEVELOPMENT ENVIRONMENT]
* NEW: The structure of databases is now stored in the *.connection files.
  It will be used for an automatic database initialization feature.

[WEBSITE MAKER]
* NEW: Update for 3.6.2.

[WIKI CGI SCRIPT]
* BUG: Fix the display of page without headers.
* NEW: Indexes are now displayed on two or more columns.

[INTERPRETER]
* NEW: New GB.AllocZero() API for allocating memory and filling it with 
  zeros.

[GB.DB.MYSQL]
* OPT: Cache metadata queries during 30 secondes to speed up things.

[GB.FORM]
* NEW: MenuButton displays a focus rectangle now.

[GB.GUI.BASE]
* BUG: ProgressBar now raises native control events.


git-svn-id: svn://localhost/gambas/trunk@6652 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-16 21:40:47 +00:00
Benoît Minisini
04f57300c1 [COMPILER]
* NEW: USE now can be followed by a comma-separated list of component 
  names. That way the syntax is the same as what was implemented in the
  gambas scripter 'gbs3'.


git-svn-id: svn://localhost/gambas/trunk@6649 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-12 22:48:31 +00:00
Benoît Minisini
5b930daea7 [INTERPRETER]
* NEW: Support for the new USE instruction.

[COMPILER]
* NEW: A class header now can include USE "xxxx" declarations, where "xxxx"
  is a component name. It means that the specified component will be loaded
  when the class is initialized, the first time it is loaded.


git-svn-id: svn://localhost/gambas/trunk@6648 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-12 22:25:37 +00:00
Benoît Minisini
b887ad9b70 [CONFIGURATION]
* NEW: Update versions in Gambas projects.
* BUG: Remove some '.gambas' directories that must not be under version 
  control.

[DEVELOPMENT ENVIRONMENT]
* NEW: Update the offline help to the new wiki look.
* NEW: Rename the CRecentFile class as CRecentProject.

[WIKI CGI SCRIPT]
* NEW: Some little changes in the look.

[GB.FORM]
* BUG: SwitchButton: Remove a debugging message.

[GB.MARKDOWN]
* BUG: Remove the useless Markdown.Root property.


git-svn-id: svn://localhost/gambas/trunk@6638 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-11 15:36:40 +00:00
Benoît Minisini
f98642e44a [SCRIPTER]
* BUG: Be more intelligent when parsing arguments. Now all arguments after 
  the first non option argument are sent to the script process.

[INTERPRETER]
* OPT: Remove a previous optimization that made benchmarks slower, contrary 
  to what valgrind tells. No idea why exactly, maybe a valgrind cache
  simulation problem.

[BENCHMARKS]
* NEW: Do less in the polynom benchmark, so that it runs about as long as
  the other benchmarks.


git-svn-id: svn://localhost/gambas/trunk@6621 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-09 22:06:07 +00:00
Benoît Minisini
c1010a0ff0 [INTERPRETER]
* OPT: Move some rare instructions (breakpoints & quit management) out of 
  the main interpreter loop.

[COMPILER]
* NEW: The parser now assumes that an identifier is a subroutine taking 
  some arguments only if it is followed by an open brace.

[GB.EVAL]
* NEW: The parser now assumes that an identifier is a subroutine taking 
  some arguments only if it is followed by an open brace.


git-svn-id: svn://localhost/gambas/trunk@6620 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-09 21:50:42 +00:00
Benoît Minisini
0c2a60085c [WIKI CGI SCRIPT]
* NEW: Help comments of component classes and symbols are now automatically 
  used for creating non-existing documentation pages.
* NEW: Images are clickable in editing mode. They point at the image wiki 
  page.

[INTERPRETER]
* NEW: Url$() is a new function to encode an URL.
* NEW: FromUrl$() is a new function to decode an URL.
* NEW: FromBase64$() is now a synonymous for UnBase64$().

[GB.MEDIA]
* BUG: MediaPipeline.Pause() does nothing if the media is not playing. That
  avoid some GStreamer bad behaviour.

[GB.MEDIA.FORM]
* NEW: MediaView: Remove the ShowVideo property, it is useless.
* NEW: MediaView: The URL property can receive a true URL or a file path.
  The conversion is automatically done.
* BUG: MediaView: Do pause or stop the media file only if it has sense.
* NEW: MediaView: Hide the video part if the control height is too low.


git-svn-id: svn://localhost/gambas/trunk@6617 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-09 15:25:46 +00:00
Benoît Minisini
6a2aba1cca [INTERPRETER]
* BUG: Fix array accessor optimization on multi-dimensional native arrays.


git-svn-id: svn://localhost/gambas/trunk@6615 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-07 17:43:54 +00:00
Benoît Minisini
4c1be18584 [DEVELOPMENT ENVIRONMENT]
* NEW: The IDE now can edit *.gbs Gambas scripts. But there is no automatic 
  completion.
* NEW: Use labels instead of buttons inside project items.

[WEBSITE MAKER]
* NEW: Update for 3.6.1 version.

[GB.EVAL]
* NEW: Lines beginning with '#!' are highlighted like comments. It's the
  'shebang' of Gambas scripts.


git-svn-id: svn://localhost/gambas/trunk@6608 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-03 19:33:05 +00:00
Tobias Boege
59da5f36f0 [GB.DATA]
* BUG: Don't use forward typedefs as some compilers don't seem to
  understand them.
* BUG: Silence false positive compiler warnings.



git-svn-id: svn://localhost/gambas/trunk@6607 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-03 08:55:24 +00:00
Benoît Minisini
0c9d0a4585 [INTERPRETER]
* OPT: Array accessors have been optimized. The 'sort' benchmark is now 25% 
  faster.


git-svn-id: svn://localhost/gambas/trunk@6605 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-02 23:09:04 +00:00
Benoît Minisini
daf59c1971 [INTERRPETER]
* BUG: The internal UTF-8 string position cache now works in all cases.


git-svn-id: svn://localhost/gambas/trunk@6591 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-10-30 16:13:10 +00:00
Benoît Minisini
5e9eede49d [GB.DB]
* BUG: Try to retrieve the connection password only if the 'gb.desktop'
  component is loaded, and only display warning messages in that case.


git-svn-id: svn://localhost/gambas/trunk@6575 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-10-25 14:35:35 +00:00
Benoît Minisini
6734c6714a [DEVELOPMENT ENVIRONMENT]
* NEW: Work continues on the publish dialog box. Now tags and dependencies 
  can be edited, and a new user can be registered.

[FARM SERVER]
* NEW: Server is almost finished. You can now download a software, vote 
  for it, and search the software database.

[COMPILER]
* BUG: Dump boolean constants in *.info files the same way as the informer.

[GB.NET.CURL]
* BUG: HttpForm is not a control, contrary to its parent class HttpClient.


git-svn-id: svn://localhost/gambas/trunk@6570 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-10-24 20:06:18 +00:00
Benoît Minisini
d57578377c [DEVELOPMENT ENVIRONMENT]
* BUG: Don't use "sTable" as field name for the metadata table, because 
  apparently "STABLE" is a reserved word in PostgreSQL. Upgrade an already
  existing metadata table automatically.
* BUG: Don't crash when starting a search from a image or connection 
  editor.

[WEBSITE MAKER]
* NEW: Update for 3.6.

[GB.DB]
* NEW: Add support for databases like PostgreSQL that are not fully case 
  insensitive.

[GB.DB.POSTGRESQL]
* BUG: Automatically convert field names to lowercase when creating a 
  table.

[GB.GUI.BASE]
* BUG: IconView item renaming don't crash anymore.


git-svn-id: svn://localhost/gambas/trunk@6559 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-10-18 13:23:29 +00:00
Benoît Minisini
bd693ee0da [CONFIGURATION]
* NEW: Update version in project files.


git-svn-id: svn://localhost/gambas/trunk@6546 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-10-13 15:52:12 +00:00
Benoît Minisini
adddbcb0cd [GB.IMAGE]
* BUG: ImageStat() does not crash anymore.


git-svn-id: svn://localhost/gambas/trunk@6536 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-10-12 01:23:16 +00:00
Benoît Minisini
26f3daa0c5 [GB.FORM]
* NEW: FontChooser.ShowRelative is a new property that set if relative 
  sizes are allowed or not. They are allowed by default.

[GB.FORM.DIALOG]
* NEW: Dialog.FixedOnly is a new property to set if the font chooser will 
  show fixed fonts only.

[GB.QT4]
* BUG: DrawingArea.Clear now raises an error if the DrawingArea is cached 
  and if it currently being painted.

[GB.GTK]
* BUG: DrawingArea.Clear() works as expected now.
* BUG: DrawingArea.Clear now raises an error if the DrawingArea is cached 
  and if it currently being painted.

[GB.GTK3]
* BUG: DrawingArea.Clear now raises an error if the DrawingArea is cached 
  and if it currently being painted.
* BUG: No more warning printed when paiting or clearing a DrawingArea.


git-svn-id: svn://localhost/gambas/trunk@6528 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-10-10 19:23:44 +00:00
Benoît Minisini
c6d37cf4b8 [DEVELOPMENT ENVIRONMENT]
* NEW: Use the FontBox control in the option dialog.

[WIKI CGI SCRIPT]
* NEW: Add a preview button in editing mode.

[GB.DB]
* NEW: Database driver now have a flag to tell if they support collation or 
  not.

[GB.DB.POSTGRESQL]
* BUG: Use collation only if database version is greater or equal than 9.1.

[GB.FORM]
* NEW: Little design changes in the FontChooser control.
* BUG: Fix the FontBox control.
* NEW: FontBox.Default is a new property that defines which text is 
  displayed in the control when no font is set. By default, the application 
  default font name is used.

[GB.FORM.DIALOG]
* NEW: Add a custom font chooser dialog for Dialog.SelectFont().


git-svn-id: svn://localhost/gambas/trunk@6520 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-10-07 00:01:13 +00:00
Tobias Boege
2d81f8dff0 [GB.DATA]
* BUG: The 256 values of an input byte were mapped to just 128 bits of the
  trie children mask, so corruption could have happened with non-ASCII keys.
* BUG: Add a special case when using GB.AddString() on an empty key
* BUG: Fix a memory error from Trie.Complete()'s return value
* OPT: Use the Gambas API in trie.c to manage memory and thus remove error
  recovery since the interpreter will crash anyway
* OPT: Remove checks for "unsupported" characters as all 256 values of a
  byte are supported in this version of the code



git-svn-id: svn://localhost/gambas/trunk@6515 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-09-28 20:01:52 +00:00
Benoît Minisini
065e2c48b7 [DEVELOPMENT ENVIRONMENT]
* BUG: Clicking on the paste button correctly set the focus back to the 
  editor.

[WEBSITE MAKER]
* BUG: Fix pages not located in the wiki.

[EXAMPLES]
* BUG: PhotoTouch: Fix the example.

[COMPILER]
* NEW: Remove the Js$() function. Maybe it's not where it should be.

[INTERPRETER]
* NEW: Remove the Js$() function. Maybe it's not where it should be.
* BUG: Displaying a Result object in the debugger does not crash anymore.
* NEW: The GB.Realloc() API now calls GB.Alloc() if the pointer to 
  reallocate is null.

[GB.FORM]
* NEW: DateChooser: Make the time font size a little bit smaller.


git-svn-id: svn://localhost/gambas/trunk@6512 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-09-26 21:52:42 +00:00
Tobias Boege
c237307fff [GB.DATA]
* BUG: Trie: Fix Complete() method where the completion would be empty
  and a memory leak there



git-svn-id: svn://localhost/gambas/trunk@6507 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-09-23 19:37:58 +00:00
Tobias Boege
87c0ee3b3a [GB.DATA]
* NEW: Trie and TriePrefix are new classes which implement a Patricia Trie



git-svn-id: svn://localhost/gambas/trunk@6506 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-09-23 19:15:25 +00:00
Benoît Minisini
2f871f3a02 [DEVELOPMENT ENVIRONMENT]
* BUG: Fix a typo in an offline help message.
* NEW: The option dialog was reorganized so that user identity information 
  has itw own panel.
* NEW: The user identity is now written inside translation files.

[COMPILER]
* NEW: Write meaningful information in generated translation files.

[GB.FORM]
* BUG: Wizard: Fix the layout of wizard step titles.
* NEW: Add a new icon named 'identity'.

[GB.FORM.STOCK]
* NEW: Add a new icon named 'identity'.

[GB.WEB]
* BUG: The deprecated URL.Encode() and URL.Decode() functions now correctly 
  call URL.Quote() and URL.Unquote().


git-svn-id: svn://localhost/gambas/trunk@6503 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-09-23 00:27:31 +00:00
Benoît Minisini
7fa6cd0569 [DEVELOPMENT ENVIRONMENT]
* NEW: Database editor: Support for the new Collation field property.

[EXAMPLES]
* BUG: PdfViewer: Some little fixes.

[GB.DB]
* NEW: Table.Fields.Add() method takes a new optional argument to define
  the field collation.
* NEW: Connection.Collations is a new property that returns the list of
  available collations as a String array.
* NEW: Field.Collation is a new property that returns the collation of a
  specific table field.

[GB.DB.MYSQL]
* NEW: Support for field collations.

[GB.DB.ODBC]
* NEW: Raise an error when trying to use collations. It is not supported.

[GB.DB.POSTGRESQL]
* NEW: Support for field collations.

[GB.DB.SQLITE2]
* NEW: Raise an error when trying to use collations. It is not supported.

[GB.DB.SQLITE3]
* NEW: Support for field collations.

[GB.QT4]
* BUG: ComboBox.Border property can be set even if it is in read-only mode.


git-svn-id: svn://localhost/gambas/trunk@6494 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-09-22 02:52:05 +00:00
Benoît Minisini
a3c59253f6 [INTERPRETER]
* BUG: The PUSH CHAR byte code now works correctly with ASCII code greater 
  than 127.


git-svn-id: svn://localhost/gambas/trunk@6481 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-09-16 01:10:58 +00:00
Benoît Minisini
db2cb04d55 [DEVELOPMENT ENVIRONMENT]
* BUG: Use System.Exist() to check that 'wget' is installed before trying 
  to download the documentation.

[INTERPRETER]
* NEW: System.Exist() is a new method that returns if a specific program 
  can be found in the PATH environment variable.
* NEW: System.Find() is a new method that returns the absolute path of a 
  specific program according to the PATH environment variable.

[GB.GUI.BASE]
* NEW: Paint.DrawTextShadow() and Paint.DrawRichTextShadow() default radius 
  is now Desktop.Scale divided by three.
* NEW: Paint.DrawTextShadow() and Paint.DrawRichTextShadow() now take a new
  default argument to define the shadow opacity. The default value is 50%.


git-svn-id: svn://localhost/gambas/trunk@6479 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-09-15 20:05:43 +00:00
Benoît Minisini
3067da6c5d [DEVELOPMENT ENVIRONMENT]
* NEW: Support for the new Menu.Radio property.

[GB.DB]
* BUG: Add an explicit warning message when a connection password must be 
  retrieved and the 'gb.desktop' component is not loaded.

[GB.GTK]
* NEW: Menu has a new Radio property that defines if a menu item must act 
  as a radio button. All successive menu items having the Radio property 
  set are mutually exclusive.
* BUG: Fix how menu items are drawn.

[GB.GTK3]
* NEW: Menu has a new Radio property that defines if a menu item must act 
  as a radio button. All successive menu items having the Radio property 
  set are mutually exclusive.
* BUG: Fix how menu items are drawn.

[GB.QT4]
* NEW: Menu has a new Radio property that defines if a menu item must act 
  as a radio button. All successive menu items having the Radio property 
  set are mutually exclusive.


git-svn-id: svn://localhost/gambas/trunk@6477 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-09-15 03:28:41 +00:00
Tobias Boege
77ecdfeae5 [GB.DATA]
* NEW: Heap: Change the way objects are identified in Update.
* NEW: gb.data has a part written in Gambas now.
* NEW: PrioSet is a weaker (WRT ordering) variant of a PrioQueue which
  allows operations to be reasonably more efficient.



git-svn-id: svn://localhost/gambas/trunk@6472 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-09-14 00:18:58 +00:00
Benoît Minisini
315ced02f5 [INTERPRETER]
* NEW: When running an external process, search the PATH environment 
  variable before forking, so that if the program does not exist, an error 
  is immediately raised.


git-svn-id: svn://localhost/gambas/trunk@6471 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-09-13 20:37:50 +00:00
Tobias Boege
3a6db0ec55 [GB.DATA]
* NEW: Graph and GraphMatrix work now. Graph implementations in Gambas are
  as powerful as native ones.



git-svn-id: svn://localhost/gambas/trunk@6468 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-09-13 03:01:37 +00:00
Benoît Minisini
7e0011226b [INTERPRETER]
* NEW: System.Log() is a new method that send a message to the system log.
  Useful if you write a daemon.

[GB.FORM]
* NEW: New design of FileChooser and DirChooser.

[GB.GUI.BASE]
* BUG: Fix the automatic scrolling behaviour of GridView and all its 
  children classes.
* BUG: Fix new ligheter selection color of IconView.
* BUG: Fix automatic scrolling of newly expanded item in TreeView and 
  ColumnView.

[GB.GTK]
* BUG: Fix Style.ForegroundOf() method.

[GB.GTK3]
* BUG: Fix Style.BackgroundOf() method.

[GB.QT4]
* NEW: DrawingArea now raises a new Font event when its font changes.
* BUG: Controls now take the alpha component of foreground and background 
  colors into account.


git-svn-id: svn://localhost/gambas/trunk@6461 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-09-09 06:59:03 +00:00
Benoît Minisini
d67d170b61 [DEVELOPMENT ENVIRONMENT]
* BUG: Convert to uppercase or lowercase now works as expected in the code 
  editor.
* BUG: Fix the offline 'To Do' and 'Last Changes' page.

[INTERPRETER]
* NEW: Add GB_DECLARE_STATIC() macro to declare native classes, and use it 
  in many class declarations.

[GB.FORM]
* NEW: Add an history in the FileChooser and DirChooser controls.
* NEW: Add a 'link' stock icon.

[GB.GUI.BASE]
* BUG: IconView: Fix mouse handling during rubberband selection.
* NEW: IconView: Use a lighter selection colour.
* BUG: ScrollArea: Shadows are now correctly drawn whatever is done during 
  the Draw event it raises.


git-svn-id: svn://localhost/gambas/trunk@6458 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-09-07 21:21:14 +00:00
Benoît Minisini
9fdb68ffbe [INTERPRETER]
* BUG: Fix the 'Class' class declaration, so that is not virtual.


git-svn-id: svn://localhost/gambas/trunk@6455 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-09-06 16:53:40 +00:00
Benoît Minisini
765ed23eb6 [INTERPRETER]
* BUG: Take the "GB_VIRTUAL_CLASS()" declaration into account to decide if
  a native class is virtual or not. Don't just check the dot prefix in the 
  name.


git-svn-id: svn://localhost/gambas/trunk@6454 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-09-06 15:38:40 +00:00
Tobias Boege
309d854317 [GB.DATA]
* NEW: Tweak Graph interface (still not finished)
* NEW: Add a GraphMatrix class which represents a Graph in a (non-sparse)
  adjacency matrix (not working)



git-svn-id: svn://localhost/gambas/trunk@6451 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-09-05 19:12:06 +00:00
Benoît Minisini
24cc2648a9 [DEVELOPMENT ENVIRONMENT]
* BUG: Image editor: Fix magic wand tool. The result is not perfect, as the
  clipper library seems to not be able to simplify paths completely.
* NEW: Add a little "open in another window" transient button in all items
  of the project list.

[GB.CLIPPER]
* NEW: Upgrade to clipper 6.1.3a.


git-svn-id: svn://localhost/gambas/trunk@6448 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-09-04 15:55:50 +00:00
Benoît Minisini
7962dad8e5 [DEVELOPMENT ENVIRONMENT]
* NEW: Use the new WebSettings.Cache.Clear() method.
* BUG: Fix project lists layout when they are filtered.

[WIKI CGI SCRIPT]
* BUG: Workaround the thttpd cgi interface bug.

[INTERPRETER]
* NEW: A new API for browsing a directory recursively.
* NEW: Js$() is a new function that quotes javascript strings.

[GB.FORM]
* BUG: ColorChooser: Don't memorize custom colors spuriously.

[GB.GUI.BASE]
* BUG: GridView: Don't take hidden columns into account when layouting 
  expanded columns.


git-svn-id: svn://localhost/gambas/trunk@6447 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-09-03 14:33:18 +00:00
Nigel Gerrard
e0b9fc1eac [CONFIGURATION]
* BUG: Set Cygwin Shared Library Extension to dll

[GB.JIT]
* NEW: Add conditional defines for Cygwin to allow compile:
  Use finite in place of _finite, __isnand in place of __isnan
  and __isinfd in place of __isinf.

* NEW: Remove jit_gambas_pass_dummy.cpp as this is no longer
  required to compile with later versions of llvm. Also fixes
  issue with Cygwin compile.

[GB.NET]
* NEW: Redefine TIOCOUTQ for Cygwin

[GB.SDL.SOUND]
* NEW: -lSDL needed for Cygwin linker

[INTERPRETER]
* NEW: Redefine FIONREAD for Cygwin

* NEW: Cygwin needs <strings.h> to avoid compiler issues when
  redefining strcasecmp etc.
 
[DEVELOPMENT ENVIRONMENT]
* NEW: Make the environment Cygwin aware



git-svn-id: svn://localhost/gambas/trunk@6435 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-08-28 13:50:09 +00:00
Benoît Minisini
63cba1003e [DEVELOPMENT ENVIRONMENT]
* NEW: Use text shadow to draw project titles.

[GB.GUI.AREA]
* BUG: IconView: Clicking inside the selection now keeps it unchanged.
* BUG: Paint.DrawTextShadow() and Paint.DrawRichTextShadow() now work as 
  expected in all cases.

[GB.DRAW]
* BUG: Setting Paint.Background now resets Paint.Brush to NULL.


git-svn-id: svn://localhost/gambas/trunk@6432 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-08-28 00:16:06 +00:00
Benoît Minisini
07a4e58a86 [DEVELOPMENT ENVIRONMENT]
* NEW: Add 'gb.media.form' to the list of components.
* NEW: Support for the new GridView.Padding property.
* NEW: Change the way GridView and TableView are represented in the form 
  editor.

[GB.GUI.BASE]
* NEW: GridView.Padding is a new property that defines the default cell 
  padding. Its default value is 2 pixels.
* NEW: Paint.DrawTextShadow() is a new method that draws the shadow of a 
  text. Note that you must call Paint.DrawText() to draw the real text 
  below the shadow.
* NEW: Paint.DrawRichTextShadow() is a new method that draws the shadow of 
  a piece of rich text. Note that you must call Paint.DrawRichText() to 
  draw the real text below the shadow.

[GB.IMAGE]
* NEW: Allows a component that supports the Image class to have a 
  premultiplied default image format. Beware that some images methods do 
  not support premultiplied formats yet.
* NEW: Color.Transparent now is &HFF000000& and not &HFFFFFFFF anymore.

[GB.QT4]
* NEW: Use a premultiplied RGBA default format for images. 


git-svn-id: svn://localhost/gambas/trunk@6428 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-08-26 10:46:10 +00:00
Benoît Minisini
e5e9e513ed [DEVELOPMENT ENVIRONMENT]
* NEW: Support for classes defined twice in a component: once in the native 
  part, once in the gambas part.
* NEW: Use the new Paint.TrimText() method.

[INFORMER]
* NEW: Support for classes defined twice in a component: once in the native 
  part, once in the gambas part.

[GB.GUI.BASE]
* NEW: Paint.TrimText() is a new API that trim a text according to a 
  specified rectangle, adding an ellipsis character at the end if needed.

[GB.NET.SMTP]
* BUG: Fix a circular reference when using a normal SMTP TCP session.

[GB.QT4]
* OPT: A little optimization when drawing rich text.


git-svn-id: svn://localhost/gambas/trunk@6427 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-08-24 22:38:58 +00:00
Benoît Minisini
c3609f3de3 [INTERPRETER]
* BUG: Fix Swap$() function.


git-svn-id: svn://localhost/gambas/trunk@6426 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-08-23 15:10:11 +00:00
Benoît Minisini
705f96cdde [INTERPRETER]
* BUG: Disable profiling for forked tasks.


git-svn-id: svn://localhost/gambas/trunk@6421 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-08-22 19:31:51 +00:00
Benoît Minisini
c9d541a8db [INTERPRETER]
* BUG: The stream available length function now correctly returns zero when 
  it fails.


git-svn-id: svn://localhost/gambas/trunk@6413 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-08-02 21:37:49 +00:00
Benoît Minisini
22f53573c0 [INTERPRETER]
* BUG: A new Task now resets the state of its standard output stream to 
  avoid side effects from its parent.


git-svn-id: svn://localhost/gambas/trunk@6412 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-08-01 20:29:01 +00:00
Benoît Minisini
73b2d0dd75 [GB.FORM]
* BUG: FileChooser: Fix an infinite loop when trying to initialize the path 
  with an unknown file.

[GB.MEDIA.FORM]
* NEW: New component based on gb.media that includes a full media player 
  widget with controls.

[GB.NET.SMTP]
* NEW: SmtpClient is now a virtual control.


git-svn-id: svn://localhost/gambas/trunk@6408 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-08-01 01:37:56 +00:00
Tobias Boege
27007f708b [GB.DATA]
* NEW: Deque: Add a Copy() method to return a deep copy of a Deque. Stack
  and Queue "inherit" this method.



git-svn-id: svn://localhost/gambas/trunk@6407 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-07-29 11:26:46 +00:00
Benoît Minisini
6b89a4fb69 [CONFIGURATION]
* NEW: Add an gambas appdata file and install it in /usr/share/appdata.

[DEVELOPMENT ENVIRONMENT]
* BUG: ImageEditor: Fix a possible crash when pasting an image.
* BUG: Correctly detect if a project is handled by subversion or not.

[INTERPRETER]
* NEW: Replace the internal `class->state` variable by two boolean flags:
  `class->loaded` and `class->ready`.
* NEW: Overriding a class that is the parent of other classes is possible
  again. I don't remember what prevented that to work, so I want to see.

[GB.DEBUG]
* NEW: Propagate the changes in the interpreter class structure.

[GB.EVAL]
* NEW: Propagate the changes in the interpreter class structure.

[GB.GUI.AREA]
* BUG: GridView: Setting the background color correctly refreshes the 
  control.

[GB.JIT]
* NEW: Propagate the changes in the interpreter class structure.

[GB.NET.SMTP]
* NEW: Replace the old gb.net.smtp component written in C and Gambas by a
  new component with the same name entirely written in Gambas.
* BUG: Fix the authentication process.
* BUG: Fix how the result of the EHLO command is read.

[GB.QT4.EXT]
* NEW: LCDNumber control is now put in a "Deprecated" tab in the IDE 
  control toolbar.


git-svn-id: svn://localhost/gambas/trunk@6403 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-07-28 05:35:58 +00:00
Tobias Boege
60e7c3e7ba [GB.DATA]
* NEW: Heap is a new class that implements a Min- or MaxHeap, depending upon
  a mode parameter to its constructor. It supports some advanced ways to
  manipulate the contained data -- beyond the first entry.



git-svn-id: svn://localhost/gambas/trunk@6402 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-07-28 03:34:24 +00:00
Tobias Boege
d3ec79a214 [GB.INOTIFY]
* NEW: Add Pause() and Resume() methods to pause and resume a watch.
  IsPaused can be used to read/set/toggle the "paused" state.



git-svn-id: svn://localhost/gambas/trunk@6400 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-07-28 02:14:37 +00:00
Benoît Minisini
4963ce37d2 [INTERPRETER]
* BUG: When reading lines ending with a "Window" end-of-line sequence 
  (CR+LF), the LINE INPUT instruction could sometimes forget to remove the 
  first end-of-line character from the end of the line (CR).


git-svn-id: svn://localhost/gambas/trunk@6398 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-07-27 21:04:29 +00:00
Benoît Minisini
86c06592c3 [DEVELOPMENT ENVIRONMENT]
* BUG: Now the offline help on component symbols should be displayed 
  correctly in any case.
* NEW: Support for automatic session management.
* BUG: Some fixes in single file editing mode.

[INTERPRETER]
* NEW: Args.All is a new property that returns all the command-line 
  arguments as a string array. Not definitive: it may be removed in the
  future.

[GB.GTK]
* NEW: Application.Restart is a new property that allows to define the 
  application restart command for the session manager. Beware that it has
  no effect at the moment!

[GB.QT4]
* NEW: Support for automatic session management. Only gb.qt4 implements it
  at the moment.
* NEW: Application.Restart is a new property that allows to define the 
  application restart command for the session manager.



git-svn-id: svn://localhost/gambas/trunk@6392 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-07-20 14:41:54 +00:00
Benoît Minisini
8b61ab1e65 [INTERPRETER]
* BUG: Fix a crash when the first use of a class symbol recursively calls 
  the current function being executed.


git-svn-id: svn://localhost/gambas/trunk@6383 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-07-16 00:57:45 +00:00
Benoît Minisini
d20c313560 [DEVELOPMENT ENVIRONMENT]
* BUG: Fix a crash when opening the help browser after the F2 key has been 
  hit.

[INTERPRETER]
* BUG: Fix a crash when running the Application_Error global error handler.

[GB.FORM]
* NEW: DirBox is a new control that allows to choose a directory from a 
  ButtonBox.
* NEW: DirBox, FontBox and DateBox are now put in the "Chooser" tab of the
  IDE control toolbar.


git-svn-id: svn://localhost/gambas/trunk@6380 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-07-14 17:23:05 +00:00
Tobias Boege
46ebc2acb4 [GB.DATA]
* NEW: First attempt to define a Graph class interface



git-svn-id: svn://localhost/gambas/trunk@6372 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-07-12 00:20:35 +00:00
Benoît Minisini
91c4402592 [CONFIGURATION]
* NEW: Support of GNU/kFreeBSD systems.

[DEVELOPMENT ENVIRONMENT]
* BUG: Fix a typo in english tips.

[INFORMER]
* NEW: Support of kFreeBSD.

[GB.DB.POSTGRESL]
* NEW: Check more directories when searching for libraries, so that it 
  works on debian systems.

[GB.V4L]
* NEW: Support of kFreeBSD.


git-svn-id: svn://localhost/gambas/trunk@6356 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-06-30 22:22:11 +00:00
Benoît Minisini
dc5875f9d3 [DEVELOPMENT ENVIRONMENT]
* BUG: Fix a possible crash when highlighting source code positions in the 
  output window.
* BUG: Hitting ENTER key in the project tree filter now works correctly, 
  and open the first matching file if none is selected.

[GB.DESKTOP]
* BUG: Requires gb.desktop.x11 explicitely now.

[GB.GTK]
* BUG: System tray icons deletion is delayed now. It prevents spurious GTK+
  warnings that appear if you hide an icon during inside an event handler.

[GB.IMAGE]
* BUG: Rewrite the ImageStat class source code because the PHP licence is 
  not compatible with the GPL.

[GB.QT4]
* BUG: System tray icons deletion is delayed now, to avoid a crash if you
  hide an icon during inside an event handler.


git-svn-id: svn://localhost/gambas/trunk@6344 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-06-26 20:00:13 +00:00
Benoît Minisini
ca5b4d5c4b [INTERPRETER]
* NEW: Abs(True) now returns 1, and Abs(False) returns 0. It breaks the 
  rule of TypeOf(Abs(x)) = TypeOf(x), but it is more useful while being 
  backward compatible.


git-svn-id: svn://localhost/gambas/trunk@6332 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-06-21 10:27:08 +00:00
Benoît Minisini
bc3e2269d6 [DEVELOPMENT ENVIRONMENT]
* NEW: Opening a SQLite database file automatically creates a new 
  connection and open it in the database editor.
* NEW: Redesign the form menu editor.
* BUG: Fix copy & paste in the form menu editor.
* NEW: The IDE now can open a single extern file without any project. This 
  is done internally by creating a temporary fake project. The GUI tries to
  adapt to that new mode, but this is not yet perfect.

[INTERPRETER]
* NEW: Args.Max is a new property that returns Args.Count - 1.

[GB.QT4]
* NEW: When several menus have the same shortcut, one is triggered instead 
  of displaying a warning message and doing nothing.

[GB.QT.EXT]
* NEW: Editor: CTRL+X now cut the current line if nothing is selected. If
  you stay on the same line, cutted lines accumulate.


git-svn-id: svn://localhost/gambas/trunk@6324 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-06-17 11:44:20 +00:00
Benoît Minisini
5155796342 [DEVELOPMENT ENVIRONMENT]
* BUG: Fix the custom browser support.
* NEW: Add Chromimum to the list of browsers.

[INTERPRETER]
* NEW: GB.GetProperty() and GB.SetProperty() API now return TRUE when they
  have raised an error. FALSE is everything was ok.

[GB.FORM.MDI]
* NEW: Redesign the shortcuts configuration dialog.
* NEW: Shortcuts now can be exported and imported.

[GB.GTK]
* BUG: DrawingArea: Clipping is correctly established now before raising
  the Draw event.
* BUG: Keyboard events have been fixed. Key array accessor and Key.Code now
  behave the same way as in gb.qt4.
* BUG: The Key.Meta property works correctly now.
* BUG: Now keyboard events seem to be sent twice by GDK. Found a workaround
  for that new weird behaviour.
* BUG: Automatic window minimum size now works correctly.
* BUG: Windows can take focus as in gb.qt4.

[GB.GUI.BASE]
* BUG: GridView: Do not use Draw.Clip to preserve the clipping of the Draw 
  event. Otherwise you get drawing artifacts with gb.gtk.
* BUG: GridView: Setting the column width to -1 is taken into account by 
  the layout routine.


git-svn-id: svn://localhost/gambas/trunk@6306 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-06-08 11:54:07 +00:00
Benoît Minisini
dc8b1aeaf3 [WIKI]
* NEW: Allows last changes to be displayed for everyone.
* NEW: Display last changes as a table with links.

[GB.FORM]
* BUG: Draw.Line() correctly takes into account the LineStyle property in
  all cases now.
* BUG: Fix the dash patterns used for implementing the Draw.LineStyle 
  property.


git-svn-id: svn://localhost/gambas/trunk@6296 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-05-31 19:47:06 +00:00
Benoît Minisini
403376eedd [INTERPRETER]
* BUG: Fix a string leak in program exit routine.
* BUG: The Param class now can be used while debugging.


git-svn-id: svn://localhost/gambas/trunk@6295 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-05-30 18:39:40 +00:00
Benoît Minisini
fba9826d6e [INTERPRETER]
* NEW: Raising an error during the program exiting is possible now.
* NEW: Raise an error if an _exit method loads a new class. This is now 
  forbidden!

[GB.SETTINGS]
* OPT: Settings.Clear() does not mark the settings file to be saved if
  there is nothing to clear.


git-svn-id: svn://localhost/gambas/trunk@6293 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-05-30 01:25:46 +00:00
Benoît Minisini
50870e93cb [DEVELOPMENT ENVIRONMENT]
* BUG: Making executable works again.

[INTERPRETER]
* BUG: Don't use vfork() if a process has a custom environment, use a 
  terminal or is run through a shell.

[GB.FORM]
* BUG: ValueBox.ReadOnly works as expected now.



git-svn-id: svn://localhost/gambas/trunk@6292 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-05-29 16:01:16 +00:00
Benoît Minisini
89364d93e6 [DEVELOPMENT ENVIRONMENT]
* BUG: Correctly load information files on component classes overriden by a 
  project class.

[INTERPRETER]
* BUG: Use vfork() only if a new process does not use a virtual terminal,
  does not run in a shell, or use a specific environment.


git-svn-id: svn://localhost/gambas/trunk@6291 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-05-27 10:32:24 +00:00
Benoît Minisini
bdbf3ac7d5 [INTERPRETER]
* OPT: Define the TZ environment variable at startup if it not defined to
  prevent the glibc to stat the '/etc/localtime' file again and again.
* OPT: Cache the last value of System.TimeZone during at most 10 minutes.

[GB.FORM]
* OPT: Implement a directory cache to minimize the number of calls to the
  Stat() function.

[GB.SETTINGS]
* BUG: Do not mark the settings file as modified if the stored value is not
  really changed.


git-svn-id: svn://localhost/gambas/trunk@6290 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-05-26 23:03:06 +00:00
Benoît Minisini
5983261636 [INTERPRETER]
* BUG: Forgot to add two source files.


git-svn-id: svn://localhost/gambas/trunk@6287 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-05-23 12:41:15 +00:00
Benoît Minisini
7abbd5e799 [DEVELOPMENT ENVIRONMENT]
* BUG: Don't check conflict on project configuration file if that files 
  does not exist.

[INTERPRETER]
* OPT: Move the string splitting routine in its own file and optimize it.

[INFORMER]
* BUG: Remove unneeded parenthesis on a test.

[GB.CLIPPER]
* BUG: Remove an unused variable.

[GB.DESKTOP]
* BUG: Fix error message in DesktopMime.

[GB.FORM]
* BUG: MaskBox: Raise the Change event after moving the cursor, so that it 
  behaves exactly like a TextBox.

[GB.FORM.MDI]
* NEW: Workspace: Count the number of detached windows so that the "detach 
  current tab" menu entry is disabled when needed.

[GB.GTK]
* BUG: Window.Utility should work even if the window is mapped now.

[GB.GTK3]
* BUG: Window.Utility should work even if the window is mapped now.

[GB.NET.PO3]
* NEW: Add a void constructor to the Pop3Client class for the 
  documentation.


git-svn-id: svn://localhost/gambas/trunk@6285 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-05-23 11:52:04 +00:00
Benoît Minisini
1526d60303 [INTERPRETER]
* NEW: Rand() is a new function that returns an integer random number.
  Rand(X) returns a integer random number between 0 and X included.
  Rand(X,Y) returns a integer random number between X and Y included.
* BUG: System.TimeZone now returns the accurate value, i.e. the number of 
  seconds that must be *added* to go to UTC.


git-svn-id: svn://localhost/gambas/trunk@6282 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-05-21 08:35:34 +00:00
Benoît Minisini
224bb2aed0 [INTERPRETER]
* BUG: Add a small reserved area in the stack for the Eval() function, so 
  that the debugger can return the contents of a variable after a stack 
  overflow without raising a new stack overflow error and then crashing.


git-svn-id: svn://localhost/gambas/trunk@6276 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-05-18 21:39:52 +00:00
Benoît Minisini
123baa9b6f [GB.DEBUG]
* BUG: Fix a possible crash if the debugged process is stopped during the 
  Debug Read event.


git-svn-id: svn://localhost/gambas/trunk@6275 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-05-18 21:24:27 +00:00
Benoît Minisini
337e7c9329 [COMPILER]
* OPT: Write in the bytecode file if a function uses the IsMissing() native 
  routine.

[INTERPRETER]
* OPT: Don't use a stack slot for missing arguments if the IsMissing() 
  function is not used.


git-svn-id: svn://localhost/gambas/trunk@6274 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-05-18 13:18:32 +00:00
Benoît Minisini
16bdab0b55 [INTERPRETER]
* NEW: System.TimeZone now takes the daylight saving time into account.


git-svn-id: svn://localhost/gambas/trunk@6273 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-05-18 12:31:50 +00:00
Benoît Minisini
29d87c9bc2 [INTERPRETER]
* BUG: Use a control variable to store the missing optional argument map,
  so that the JIT compiler is not trapped.


git-svn-id: svn://localhost/gambas/trunk@6264 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-05-14 15:11:07 +00:00
Benoît Minisini
4c739969ef [COMPILER]
* NEW: IsMissing() is a new function that returns if an optional argument 
  is missing. It always returns FALSE on a non-optional argument.

[INTERPRETER]
* NEW: Support for IsMissing().


git-svn-id: svn://localhost/gambas/trunk@6258 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-05-08 15:10:21 +00:00