Commit graph

724 commits

Author SHA1 Message Date
Benoît Minisini
6902dc7dae [INTERPRETER]
* BUG: Using Enum.Index outside of an enumeration now raises an error 
  instead of crashing.


git-svn-id: svn://localhost/gambas/trunk@5270 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-11-01 13:19:11 +00:00
Benoît Minisini
588e0f3942 [DEVELOPMENT ENVIRONMENT]
* BUG: Fix scrolling of code editor procedure list.
* BUG: Automatic local variable declaration now works correctly when a 
  method named "Get" is called inside the analyzed expression.

[COMPILER]
* NEW: "[]" now is compiled to return a array with no elements.

[INTERPRETER]
* BUG: Array with no elements can be casted to any other array datatype.

[GB.GUI.BASE]
* BUG: Fix visibility of expanded TreeView items.

[GB.QT4.EXT]
* NEW: When the Editor loses the focus, it does not scroll to the cursor 
  position automatically anymore.


git-svn-id: svn://localhost/gambas/trunk@5266 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-10-30 23:44:24 +00:00
Benoît Minisini
8edf201b34 [INTERPRETER]
* BUG: Fix profiling of WAIT instruction.


git-svn-id: svn://localhost/gambas/trunk@5260 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-10-29 00:46:53 +00:00
Benoît Minisini
0de1545f21 [DEVELOPMENT ENVIRONMENT]
* BUG: Fix option dialog layout.

[GB.FORM]
* NEW: New FontChooser control design.

[GB.GTK]
* BUG: Fix gb.gtk compilation.
* NEW: Add Window.Indent arrangement property.

[GB.GUI.BASE]
* BUG: Setting the text of the ColumnView columns now works correctly.
* NEW: The ListBox Gambas implementation is finished, but has not replaced
  the old one yet.

[GB.QT4]
* NEW: Add Window.Indent arrangement property.


git-svn-id: svn://localhost/gambas/trunk@5256 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-10-28 00:28:26 +00:00
Benoît Minisini
8539a2a02d [DEVELOPMENT ENVIRONMENT]
* NEW: A new option that defines the default application font.
* NEW: The font options have been redesigned.
* BUG: Various fixes implied by the new TreeView control implementation.

[WIKI CGI SCRIPT]
* NEW: Page whose title begins with "~" are class page synonymous.

[INTERPRETER]
* BUG: Calling the _unknown method on an anonymous object reference won't
  crash anymore.
* NEW: Class.Exist() is a new method that returns if a class has a specific
  symbol.

[GB.GTK]
* NEW: The Container Find() method has been renamed as FindChild(). The 
  _unknown method has been implemented to handle backward compatibility.
* BUG: Fix string to Font conversion for fonts whose name starts with 
  "nan" or other special numeric strings.

[GB.GUI.BASE]
* BUG: ScrollView.EnsureVisible() and GridView.EnsureVisible() methods when 
  there is a frame.
* NEW: MyListBox is the initial implementation of a ListBox control 
  entirely written in Gambas.
* BUG: Renaming a TreeView item now correctly selects it before.

[GB.OPENGL]
* BUG: Fix an error message in deprecated constants handler routine.

[GB.QT4]
* NEW: The Container Find() method has been renamed as FindChild(). The 
  _unknown method has been implemented to handle backward compatibility.


git-svn-id: svn://localhost/gambas/trunk@5254 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-10-27 18:59:14 +00:00
Benoît Minisini
d800d7e136 [INTERPRETER]
* BUG: Fix the order of component exported classes loading after the 
  project has been loaded.
* BUG: Fix GB.CanRaise() API.

[GB.DB.FORM]
* NEW: DataView.Sorted is a new property that tells if the data can be 
  sorted by clicking on the column headers.
* NEW: DataView columns now show sort indicators, and data can be sorted in
  descending order.
* NEW: DataSource.Ascending is a new property that defines the order of the
  sort defined by the DataSource.Sort property.

[GB.FORM]
* NEW: Remove all controls that were moved to gb.gui.base.
* NEW: FileView file size units are translatable now.

[GB.GTK]
* NEW: Remove TreeView, ListView and ColumnView.
* NEW: Control.Tracking takes the proxy into account.
* NEW: Remove the Gambas part.

[GB.GUI.BASE]
* NEW: gb.gui.base is a new hidden component that is automatically loaded 
  by gb.qt4 and gb.gtk. It implements the following controls and classes 
  entirely in Gambas: TreeView, ListView, ColumnView, IconView, Action,
  ScrollArea. These classes were located in gb.form and in the Gambas part
  of GUI components before.

[GB.QT4]
* NEW: Remove TreeView, ListView and ColumnView.
* NEW: Control.Tracking takes the proxy into account.
* NEW: Remove the Gambas part.

[GB.WEB]
* NEW: Request.Query and Request.Path can be modified now.
* BUG: Overriding a CGI variable with Null works now.


git-svn-id: svn://localhost/gambas/trunk@5251 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-10-27 00:28:55 +00:00
Benoît Minisini
c5debe2304 [INTERPRETER]
* BUG: The event handler check routine should not crash anymore.


git-svn-id: svn://localhost/gambas/trunk@5249 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-10-22 16:22:15 +00:00
Benoît Minisini
fb33a73b86 [INTERPRETER]
* NEW: Accept event handlers with a variable number of arguments.
* BUG: Remove a debugging message.

[GB.IMAGE.EFFECT]
* BUG: Image.Histogram() now correctly handle ABGR images.
* BUG: Remove a debugging message.


git-svn-id: svn://localhost/gambas/trunk@5248 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-10-22 14:09:05 +00:00
Benoît Minisini
53c284099b [DEVELOPMENT ENVIRONMENT]
* BUG: The name of GridView controls is now always visible in the form
  editor.

[INTERPRETER]
* NEW: Support for new QUIT syntax.
* NEW: Do not display overriding prefix in class names.

[COMPILER]
* NEW: QUIT now can takes an optional argument which is the program return 
  value.

[GB.ARGS]
* BUG: The "--version" option is not "----version" anymore
* NEW: If an error occurs, returns 1 as exit value and not 0.

[GB.FORM]
* BUG: GridView is correctly updated now when the Border property is set.


git-svn-id: svn://localhost/gambas/trunk@5246 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-10-19 21:00:35 +00:00
Benoît Minisini
72ee74e8d4 [DEVELOPMENT ENVIRONMENT]
* NEW: Draw the projet property dialog library list with a GridView.

[INTERPRETER]
* BUG: Fix class overriding routine.

[GB.ARGS]
* NEW: 'gb.args' is a new component that analyzes the command-line options,
  and automatically handles the "--help" option.

[GB.HTTPD]
* BUG: Hide the component.


git-svn-id: svn://localhost/gambas/trunk@5241 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-10-15 10:06:37 +00:00
Benoît Minisini
17a0748815 [CONFIGURATION]
* NEW: Each component installation now generates all information files
  systematically, to fix possible dependencies between components written
  in Gambas.

[DEVELOPMENT ENVIRONMENT]
* NEW: Running a project using the 'gb.web' component now automatically
  starts the embedded HTTP server.

[INTERPRETER]
* NEW: Class overriding is retrospective now.
* NEw: System._Breakpoint() is a new hidden method that raises a 
  breakpoint. Very useful for debugging.

[GB.GTK]
* BUG: The Action.Register() method must not crash when called during class 
  clean-up.

[GB.HTTPD]
* NEW: Define a custom exported HTTP server name.

[GB.JIT]
* BEW: Support for new class overriding (the CLASS structure has lost one 
  field).

[GB.QT4]
* BUG: The Action.Register() method must not crash when called during class 
  clean-up.


git-svn-id: svn://localhost/gambas/trunk@5240 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-10-14 22:42:53 +00:00
Benoît Minisini
fedc591dfc [INTERPRETER]
* BUG: Implicit array conversion now correctly preserves dimensions.


git-svn-id: svn://localhost/gambas/trunk@5237 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-10-14 10:52:02 +00:00
Benoît Minisini
a68336da9b [CONFIGURATION]
* NEW: Switch to 3.3.90 version.

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

[INTERPRETER]
* NEW: New API for getting information about a file.

[GB.DESKTOP]
* NEW: _Desktop.Time is a new property that returns the last X11 timestamp.
* NEW: _Desktop.ActivateWindow() is a new method that will be removed in a 
  next commit.
* NEW: DesktopWindow.Activate() is a new method to activate a window.

[GB.GTK]
* NEW: New GB_INFO constant to return the last X11 timestamp to other 
  components.

[GB.HTTPD]
* NEW: Reindent source files.

[GB.QT4]
* NEW: New GB_INFO constant to return the last X11 timestamp to other 
  components.

[GB.QT4.WEBKIT]
* BUG: Fix WebHitTest.Editable property declaration.


git-svn-id: svn://localhost/gambas/trunk@5221 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-10-02 08:01:25 +00:00
Benoît Minisini
41b6a93cef [EXAMPLES]
* BUG: Fix Embedded window layout.

[INTERPRETER]
* NEW: The '-H' option now runs the interpreted program as a CGI script
  through an embedded HTTP server.

[GB.HTTPD]
* NEW: New hidden component that embeds an HTTP server that runs the 
  project as a CGI script. It is activated by a new interpreter option.
  Warning! This is highly experimental. The HTTP server is based on the
  thttpd source code.

[GB.WEB]
* BUG: As the _init static class is always executed at startup for exported
  classes, delay the intialization of Session class the first time one of 
  its properties is used.
* BUG: If the SCRIPT_NAME CGI variable equals nothing or "/", set it to 
  "/." so that it can be concatenated to any path and still gives a valid
  url.
* BUG: Support for explicit URL ports.
* NEW: Application.Port is a new property that returns the port used by the 
  HTTP request.


git-svn-id: svn://localhost/gambas/trunk@5209 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-09-27 20:52:08 +00:00
Benoît Minisini
2dcaa54c91 [INTERPRETER]
* BUG: The debugger won't crash anymore when trying to continue after an 
  error has been raised inside a component.


git-svn-id: svn://localhost/gambas/trunk@5183 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-09-21 11:09:07 +00:00
Benoît Minisini
54150a91e0 [DEVELOPMENT ENVIRONMENT]
* NEW: Some little redesign of the welcome dialog.
* NEW: Remove the "Alternate" theme color.

[COMPILER]
* NEW: New WebPage syntaxes: <<Include>>, <</Include>>, <%/%>, <<--->>.

[GB.EVAL]
* NEW: Highlight.Alternate has been deprecated.

[GB.EVAL.HIGHLIGHT]
* NEW: Support for the new WebPage syntaxes.

[GB.QT4.EXT]
* NEW: Editor: The alternate background is automatically computed.
* NEW: Editor: Brace highlighting now works on alternate background.
* NEW: Highlight.Alternate has been deprecated.


git-svn-id: svn://localhost/gambas/trunk@5177 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-09-20 02:29:37 +00:00
Benoît Minisini
0f985417cf [DEVELOPMENT ENVIRONMENT]
* NEW: Use Terminus as default fixed font if it is installed on the system.
* BUG: Don't load a component description if that component has the same 
  name as the current project. This is a temporary incorrect fix!

[INTERPRETER]
* BUG: Fix Classes enumeration.

[GB.DESKTOP]
* BUG: Fix X11 client message sending routine on 64 bits OS.
* BUG: Fix all DesktopWindow properties that read or change the state of 
  the window.

[GB.GTK]
* NEW: Fonts.Exist() is a new method that returns if a specific font family 
  exists.

[GB.QT4]
* NEW: Fonts.Exist() is a new method that returns if a specific font family 
  exists.


git-svn-id: svn://localhost/gambas/trunk@5171 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-09-17 11:13:32 +00:00
Benoît Minisini
b174b79ada [DEVELOPMENT ENVIRONMENT]
* NEW: Display a PDF icon for PDF files.

[GB.FORM]
* NEW: Add a PDF icon to the stock.

[GB.FORM.STOCK]
* NEW: Add a PDF icon.

[GB.GTK]
* BUG: Printer.From and Printer.To now always return zero if all pages must 
  be printed.

[GB.QT4]
* BUG: If not page has to be printed, then the Print() method correctly 
  returns the Printer object to an inactive state.


git-svn-id: svn://localhost/gambas/trunk@5170 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-09-16 14:54:10 +00:00
Benoît Minisini
7cba8c08e0 [INTERPRETER]
* OPT: Conversion between byte index and UTF-8 character index of the last 
  string has been optimized when that last string is big.

[GB.EVAL.HIGHLIGHT]
* OPT: Optimization of HTML syntax highlighting for big lines. That 
  optimization should be handled by the interpreter automatically.


git-svn-id: svn://localhost/gambas/trunk@5167 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-09-15 02:17:12 +00:00
Benoît Minisini
c7bdcd4947 [INTERPRETER]
* BUG: Fix error handler calls.


git-svn-id: svn://localhost/gambas/trunk@5145 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-09-09 17:24:54 +00:00
Benoît Minisini
3ba6513b6d [INTERPRETER]
* BUG: Fix the enumeration API. GB.ListEnum() has been replaced by 
  GB.BeginEnum() and GB.EndEnum(), that save the state of the internal
  current enumeration.

[GB.MIME]
* BUG: Raise an error when the MimeMessage constructor fails while parsing
  a message.

[GB.NET.POP3]
* BUG: _Pop3Client_Message must not inherit MimeMessage.
* NEW: _Pop3Client_Message has a new Message property that returns the 
  decoded MimeMessage.
* NEW: _Pop3Client_Message has a new Deleted property that returns if the
  message has been deleted.
* NEW: _Pop3Client_Message has a new Id property that returns the 
  message id, which is its index plus one.
* NEW: _Pop3Client_Message has a new Index property that returns the 
  message index, which is its id minus one.
* BUG: Hides protocol dependent routines.
* NEW: The error returned by the Pop3 client is directly used for the error 
  message.
* OPT: Remove duplicated code in TCPClient and SSLCLient. Centralize it in 
  the PopClient parent class.
* BUG: Fix the single line response reading of SSLClient.
* BUG: Fix the multiple line response reading of SSLClient and TCPClient.
* BUG: Do not display password on the standard error in debugging mode, but 
  eight "*" characters instead.
* NEW: Many methods do not return a boolean status, but raise an error 
  instead.
* BUG: Methods that return their result as a boolean status now return TRUE
  if they fail, not if they succeed (this is the Gambas convention).
* BUG: Fix the Pop3CLient.List() method.
* NEW: Rename the Pop3Client UniqueId() method as ListUniqueId().
* BUG: Fix the Pop3Client.ListUniqueId() method.


git-svn-id: svn://localhost/gambas/trunk@5134 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-09-06 16:20:54 +00:00
Benoît Minisini
1937a67353 [DEVELOPMENT ENVIRONMENT]
* NEW: Pressing SHIFT with the RETURN key prevents automatic variable 
  declaration.
* BUG: Automatic variable declaration takes TRY into account.
* BUG: Automatic variable declaration now understands more expressions.
* NEW: Add a filter to the example tab of the open project dialog.

[INTERPRETER]
* NEW: String.UCaseFirst() is a new method that capitalize the first letter
  of an UTF-8 string.

[COMPILER]
* NEW: If a function argument is enclosed with braces, then no warning is
  emitted if it overrides a global symbol.

[GB.FORM]
* BUG: Transparent SidePanel controls do not eat one pixel of their 
  contents anymore.
* NEW: TabPanel draws its focus highlight differently.
* NEW: ScrollArea now draws a shadow only if the corresponding scrollbar is
  visible.


git-svn-id: svn://localhost/gambas/trunk@5128 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-09-05 18:36:59 +00:00
Benoît Minisini
dde26cb313 [DEVELOPMENT ENVIRONMENT]
* BUG: Moving, renaming or deleting a source file now should correctly
  refresh the search list, the breakpoint list and the task list.

[GB.FORM]
* NEW: ScrollArea draws a focus border when it has focus.

[GB.NET.POP3]
* NEW: Make Pop3Client a virtual control like SmtpClient.


git-svn-id: svn://localhost/gambas/trunk@5121 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-09-03 23:40:59 +00:00
Benoît Minisini
505cd02a5f [INTERPRETER]
* BUG: Disable the component specific event loop when starting a task. No
  way that any GUI works in a background task now, but I can't disable it
  automatically.


git-svn-id: svn://localhost/gambas/trunk@5107 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-08-31 19:56:41 +00:00
Benoît Minisini
1ab3b111c5 [INTERPRETER]
* BUG: Handle errors occuring while waiting for a process correctly now.
* NEW: Process.Wait() now can take an optional timeout argument, in 
  milliseconds.
* BUG: Handle errors occuring while waiting for a task correctly now.


git-svn-id: svn://localhost/gambas/trunk@5102 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-08-30 22:49:21 +00:00
Benoît Minisini
f3f10a4167 [DEVELOPMENT ENVIRONMENT]
* BUG: Notes (TODO:, FIXME:, NOTE:) can be used in comments beginning with
  two quotes.

[INTERPRETER]
* BUG: Fix possible recursion problems while freeing signal handlers.
* BUG: The output of a process is sometimes woke up ready to read whereas 
  there is nothing to read on it. Close the output immediately instead of 
  calling the callback again and again.
* BUG: Try to handle correctly errors raised during the Kill event of a
  background task. It does not work yet. :-(
* NEW: Task.Running is a new property that returns if a background task is
  running.

[GB.NET]
* NEW: Add Net.CannotAuthenticate error constant for gb.net.pop3.

[GB.NET.POP3]
* BUG: Big interface clean-up so that it matches other networking classes.
* NEW: Add a Pop3Client.Debug property. Not all "Debug" instructions have 
  been replaced yet.
* NEW: The default value of the Port property is zero now. It is 
  automatically converted to 110 or 995 according to the encryption method.
* NEW: Use the Net class for Pop3Client.Status instead of specific 
  constants.
* NEW: Rename the _PopMessage virtual class in _Pop3Client_Message to 
  follow the standard naming scheme that the wiki loves.


git-svn-id: svn://localhost/gambas/trunk@5101 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-08-30 22:13:25 +00:00
Benoît Minisini
c90ed8da3a [INTERPRETER]
* NEW: New API GB.CompVariant() that compares two Variant.


git-svn-id: svn://localhost/gambas/trunk@5099 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-08-29 21:02:09 +00:00
Benoît Minisini
1a031869d0 [INTERPRETER]
* NEW: Implement Variant comparison routine.
* NEW: Variant[] now has an Exist() and a Find() method.


git-svn-id: svn://localhost/gambas/trunk@5098 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-08-29 20:56:13 +00:00
Benoît Minisini
44b919bb85 [INTERPRETER]
* BUG: Fix a typo in '^' operator implementation that prevented its second
  argument to be a Variant.


git-svn-id: svn://localhost/gambas/trunk@5097 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-08-29 19:12:54 +00:00
Benoît Minisini
c2764bc3f8 [COMPILER]
* BUG: Fix compilation of WebPage having UTF-8 characters inside.

[INTERPRETER]
* BUG: A background task automatically closes the file descriptor of every 
  other tasks.
* BUG: A task cannot create sub-tasks.
* NEW: There is an hard limit of simultaneous 256 background tasks now. 
  That should prevent fork bombing.
* BUG: Process.Kill does not try to wait for the task completion, and 
  return immediately.
* BUG: Fix events flushing at task termination.

[GB.EVAL.HIGHLIGHT]
* BUG: Fix WebPage highlighting.

[GB.WEB]
* BUG: The session cookie is now only accessible to the current CGI script.
* NEW: Response.SendFile() can set the content-type according to the file
  extension, if no content-type has been specified.


git-svn-id: svn://localhost/gambas/trunk@5096 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-08-29 00:43:48 +00:00
Benoît Minisini
1741274a34 [INTERPRETER]
* NEW: Task.Value now raises an error if the background task has failed for
  any reason. Otherwise it normally returns the background task return 
  value.
* BUG: Background tasks do not interfere with the debugger anymore.

[GB.TASK]
* NEW: The component has been moved inside the interpreter.


git-svn-id: svn://localhost/gambas/trunk@5081 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-08-26 16:26:53 +00:00
Benoît Minisini
796f6b023d [INTERPRETER]
* NEW: GB.Serialize() is a new API that serializes a Gambas value to a 
  file.
* NEW: GB.UnSerialize() is a new API that serializes a Gambas value from
  a file.

[GB.FORM]
* BUG: Stock.Icons works correctly in all cases now.

[GB.TASK]
* NEW: Task is not a stream anymore.
* NEW: The Task Read event now takes an argument, which is the data printed
  on the task standard output. Normally, the data will come line by line.
* NEW: The Task Main method now can return any serializable value to its 
  parent.
* NEW: Task.Value is a new property that return the value returned by the
  background task once it has terminated.


git-svn-id: svn://localhost/gambas/trunk@5079 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-08-26 01:54:57 +00:00
Benoît Minisini
091b94b1ed [INTERPRETER]
* NEW: Allow components to access the interpreter API through a pointer and 
  not a full structure. It is a little bit slower (one more indirection),
  but it uses less memory: one pointer instead of about 180.

[GB.GTK]
* NEW: Use the indirect API access.

[GB.QT4]
* NEW: Use the indirect API access.

[GB.TASK]
* NEW: Use the indirect API access.
* NEW: Task now is now a stream that can read the standard output of the 
  background task.
* NEW: Task now raises the Read event when the background task has printed
  something on its standard output.
* NEW: Task now raises the Error event when the background task has printed
  something on its standard error output. The event handler receives the
  data in its first argument.

[GB.XML.RPC]
* BUG: Some english fixes in some error messages.


git-svn-id: svn://localhost/gambas/trunk@5077 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-08-25 15:13:39 +00:00
Benoît Minisini
b8f6e09b8b [INTERPRETER]
* NEW: Add support for double-linked lists in the interpreter API.
* NEW: GB.Wait() is a new API that waits for a specific number of 
  milliseconds, exactly like the WAIT instruction (i.e. the event loop is
  run).
* NEW: GB.HasForked() is a new API that warns the interpreter that fork()
  has been called (he has to do some stuff).
* NEW: Remove the GB_POST_FUNC datatype from the API.

[GB.DBUS]
* BUG: Fix some compilation warnings.

[GB.TASK]
* NEW: gb.task is a new component that allows to run background tasks by
  "simply" forking the interpreter. Communication between the task and the
  main process has not been implemented yet.


git-svn-id: svn://localhost/gambas/trunk@5076 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-08-24 22:29:53 +00:00
Benoît Minisini
659d187034 [INTERPRETER]
* BUG: Fix how the event raising routine handle exceptions.


git-svn-id: svn://localhost/gambas/trunk@5074 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-08-24 02:32:23 +00:00
Benoît Minisini
b6cc5cdbb3 [INTERPRETER]
* BUG: Fix Choose() when then the choice value is equal to the number of
  possible results plus one.


git-svn-id: svn://localhost/gambas/trunk@5068 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-08-22 09:25:35 +00:00
Benoît Minisini
9d1c8225dc [CONFIGURATION]
* NEW: Standardize the help text of all command-line tools.

[DEVELOPMENT ENVIRONMENT]
* BUG: Packager: library executables are installed with the '.gambas' 
  extension, but not the standard executables, where the extension is 
  removed.
* BUG: Packager: ArchLinux packager now compiles the project correctly.

[GB.FORM]
* NEW: Draw SidePanel little arrows differently.


git-svn-id: svn://localhost/gambas/trunk@5061 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-08-21 01:03:52 +00:00
Benoît Minisini
6950c873b4 [INTERPRETER]
* BUG: Fix the GB.ReturnConvVariant() API so that it does not free the 
  return value incorrectly.


git-svn-id: svn://localhost/gambas/trunk@5060 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-08-20 21:09:27 +00:00
Benoît Minisini
e678e914f3 [INTERPRETER]
* NEW: Object.CanRaise() is a new method that returns if a specific object 
  event has an event handler.

[GB.DB.FORM]
* NEW: DataView now raises a new Data event that allows to format the 
  contents of a cell just before it is displayed. The event receives three
  arguments: the row, the column, and the cell value directly from the
  underlying database.
* NEW: DataBrowser propagates the Data event of its inner DataView.

[GB.FORM]
* BUG: TableView: Apply a white background behind the currently edited 
  cell.
* BUG: ScrollArea: Draw the inner shadow correctly in all cases.

[GB.GTK]
* BUG: The Font object returned by Control.Font is now correctly updated 
  when the font of any of its parent changes.
* BUG: Ensure that when a mouse button is pressed, the same control 
  receives the mouse button release event.

[GB.QT4]
* BUG: The Font object returned by Control.Font is now correctly updated 
  when the font of any of its parent changes.


git-svn-id: svn://localhost/gambas/trunk@5059 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-08-20 18:05:25 +00:00
Benoît Minisini
52b3040e07 [DEVELOPMENT ENVIRONMENT]
* NEW: Try to avoir Application.Busy flickering in some dialogs.

[EXAMPLES]
* NEW: New Tablet event inspired by a project made by Ricardo Díaz Martín.

[GB.DRAW]
* NEW: Paint.DrawImage() takes a new optional argument that defines the 
  opacity of the drawing, between 0 and 1.

[GB.FORM]
* NEW: ScrollArea.Tablet is a new property that allows it to catch tablet 
  events.

[GB.GTK]
* BUG: Support for tablet events.
* BUG: Make mouse events in gb.gtk and gb.qt3 behave the same way.
* NEW: Mouse.State is a new property that return the state of all mouse 
  buttons as specified by the current mouse event.
* NEW: Mouse.Button now only returns the index of the button that triggered 
  the mouse event.
* BUG: Fix a typo in the name of the Pointer.YTilt property.
* BUG: DrawingArea.Tablet now works correctly when the DrawingArea is not
  cached.

[GB.QT4]
* BUG: Mouse events from tablet now get accurate button information.
* BUG: Make mouse events in gb.gtk and gb.qt3 behave the same way.
* NEW: Mouse.State is a new property that return the state of all mouse 
  buttons as specified by the current mouse event.
* NEW: Mouse.Button now only returns the index of the button that triggered 
  the mouse event.
* BUG: Fix a typo in the name of the Pointer.YTilt property.


git-svn-id: svn://localhost/gambas/trunk@5057 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-08-19 13:01:57 +00:00
Benoît Minisini
35368a3648 [DEVELOPMENT ENVIRONMENT]
* BUG: Fix profiling of Eval() calls.

[INTERPRETER]
* NEW: GB.ReturnBorrow() is a new API to temporarily borrow the return 
  value.
* NEW: GB.ReleaseBorrow() is a new API to release the return value borrowed
  by the previous function, without releasing it.

[GB.DEBUG]
* BUG: Fix profiling of Eval() calls.

[GB.V4L]
* BUG: Fix a compilation warning.


git-svn-id: svn://localhost/gambas/trunk@5053 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-08-18 13:06:58 +00:00
Benoît Minisini
edf8b8f34a [DEVELOPMENT ENVIRONMENT]
* BUG: Do not display a thumbnail for images too large or too high.
* NEW: Implement bookmarks for code editor only.
* NEW: Automatic local variable declaration is disabled by default.

[INTERPRETER]
* NEW: GB.Deprecated() is a new interpreter API that displays a warning
  message for deprecated functions at runtime. When the project is 
  debugged, an error is raised instead.

[GB.FORM]
* NEW: Deprecate Stock.List which has been replaced by Stock.Icons.

[GB.QT4]
* BUG: Fix the case of Action.Tooltip property name.

[GB.QT4.EXT]
* NEW: Editor: Support for bookmarks.
* OPT: Editor: Do not compute the character width table each time the font
  changes. Use a cache instead.
* NEW: Editor.BookmarkPicture is a new property for defining the picture 
  used for displaying bookmarks.
* NEW: Editor.FindNextBreakpoint() has been deprecated and replaced by the
  Editor.Breakpoints property, that returns an integer array of all lines
  having a breakpoint.
* NEW: Editor.Bookmars is a new property that returns an integer array of 
  all lines having a bookmark.
* NEW: Editor.CurrentLine is a new property for defining the current 
  executed line. It replaces Editor[].Current.
* NEW: Editor[].Bookmark is a new boolean property that defines if a 
  specific line has a bookmark.


git-svn-id: svn://localhost/gambas/trunk@5044 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-08-15 17:02:22 +00:00
Benoît Minisini
2b0c757410 [GB.COMPLEX]
* BUG: Correctly implement arithmetic operators.


git-svn-id: svn://localhost/gambas/trunk@5041 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-08-14 14:11:59 +00:00
Benoît Minisini
8dd0b1dd93 [INTERPRETER]
* BUG: The GB.GetFunction() API now correctly returns static functions.


git-svn-id: svn://localhost/gambas/trunk@5040 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-08-14 10:07:29 +00:00
Benoît Minisini
fc6c3a22bd [INTERPRETER]
* BUG: The Gosub stack pointer is now correctly reset when a error has been 
  intercepted by the Catch instruction.


git-svn-id: svn://localhost/gambas/trunk@5020 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-08-09 01:33:34 +00:00
Benoît Minisini
d1eef06cf8 [DEVELOPMENT ENVIRONMENT]
* NEW: Translate all parts of error messages.

[INTERPRETER]
* NEW: Add an explicit error message when trying to override a class that 
  has already been used as a parent for another class.


git-svn-id: svn://localhost/gambas/trunk@5017 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-08-07 20:21:02 +00:00
Benoît Minisini
b995e09e22 [INTERPRETER]
* BUG: Fix incorrect optimizations used by the _operator interface 
  management routines.


git-svn-id: svn://localhost/gambas/trunk@5015 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-08-06 22:41:05 +00:00
Benoît Minisini
cc0fd6cec6 [INTERPRETER]
* BUG: Comparison operators now correctly check for null objects when 
  comparing objects having the _operator interface.


git-svn-id: svn://localhost/gambas/trunk@5012 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-08-06 20:14:41 +00:00
Benoît Minisini
827a44ac8f [INTERPRETER]
* BUG: Use MAP_ANON instead of MAP_ANONYMOUS. No need to make the 
  distinction between Linux and *BSD anymore!


git-svn-id: svn://localhost/gambas/trunk@5000 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-30 18:48:19 +00:00
François Gallo
730bf253b7 [INTERPRETER]
* BUG: Fix compilation on Mac OS X 10.8



git-svn-id: svn://localhost/gambas/trunk@4999 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2012-07-30 17:54:28 +00:00