Commit graph

1146 commits

Author SHA1 Message Date
Benoît Minisini
588cc035be [GB.DB]
* BUG: Fix a possible memory corruption in blob management.


git-svn-id: svn://localhost/gambas/trunk@5739 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-07-19 18:12:19 +00:00
Benoît Minisini
9332afbbea [DEVELOPMENT ENVIRONMENT]
* NEW: Add a file properties view in the CSV import dialog.

[INFORMER]
* BUG: Write boolean constants in information files as "T" and "", not 
  "True" and "False". It breaks things.

[GB.FORM]
* NEW: The file properties dialog has an automatic preview tab for image 
  files.

[GB.DB.FORM]
* NEW: The DataView control can edit blob fields now.


git-svn-id: svn://localhost/gambas/trunk@5736 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-07-19 11:02:32 +00:00
Benoît Minisini
2a7ae292b5 [GB.DB]
* BUG: Using a database URL in the Connection constructor works now.


git-svn-id: svn://localhost/gambas/trunk@5735 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-07-19 10:58:46 +00:00
Tobias Boege
4bc9b23c61 [GB.DATA]
* OPT: Shrink internal data structures and adjust algorithms likely
  improving performance (noticably for the 'random' case of my stress test -
  the 'best' case is almost on a par with Variant[] now).
* BUG: Fix difficult-to-spot List.Take() bugs due to difficulties with the
  former internal data structures. The class now survives all my test cases
  (without misbehaviour under valgrind).
* BUG: List.Take() never raises "Out of bounds" anymore if the list is empty
  because that's an inappropriate error for a *circular* list. It raises an
  error if an attempt is made to Take() an invalid Current which includes
  the case that the List is empty.



git-svn-id: svn://localhost/gambas/trunk@5731 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-07-13 08:53:49 +00:00
Benoît Minisini
0139ee4b99 [INTERPRETER]
* NEW: MATCH is a new operator that automatically load the gb.pcre 
  component to implement PCRE pattern matching. The syntax is the same as
  the LIKE operator.

[COMPILER]
* NEW: Add a new MATCH operator.

[GB.FORM]
* BUG: The directory contents size task does not abort anymore when 
  accessing an unreadable files or directory. It now ignore them.
* NEW: When errors are raised while browsing the contents of a directory,
  the file properties dialog display them is a new tab.

[GB.PCRE]
* NEW: Create an API interface for allowing other components to use PCRE
  regular expressions.


git-svn-id: svn://localhost/gambas/trunk@5730 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-07-12 23:57:53 +00:00
Benoît Minisini
29ab774c1c [DEVELOPMENT ENVIRONMENT]
* BUG: Fix the frame position when dragging a control from the toolbar on 
  a container.
* NEW: The project file properties dialog is now based on the new 
  FileProperties control.

[INTERPRETER]
* NEW: GB.OnErrorBegin() and GB.OnErrorEnd() are two new APIs that allow to
  register cleanup routines that are called when an error is raised between
  the GB.OnErrorBegin() call and the GB.OnErrorEnd() call.

[INFORMER]
* BUG: The value of  Float constants is now correctly dumped in *.info 
  files.

[GB.COMPLEX]
* NEW: Implement the same Complex.ToString() method as in gb.gsl.

[GB.DESKTOP]
* NEW: Desktop.DataDir is a new property that returns the directory where 
  the application must store its user-specific data.
* NEW: Desktop.ConfigDir is a new property that returns the directory where 
  the application must store its user-specific configuration.
* NEW: Desktop.CacheDir is a new property that returns the directory where 
  the application must store its user-specific cached data.
* NEW: Desktop.RuntimeDir is a new property that returns the directory 
  where the application must store its temporary runtime files.
* BUG: Fix a possible crash when searching a mimetype from the file 
  extension.

[GB.FORM]
* NEW: FileProperties is a new control that displays the properties of a 
  specific file or directory. It automatically computes the size of 
  directory contents through a background task.
* BUG: Setting the TabPanel.Border property now correctly refreshes its 
  layout.
* NEW: The stock icon map now can declare specific icons for specific 
  widget themes.

[GB.FORM.STOCK]
* NEW: Fix the 'tools' icon for elementary icon theme.

[GB.GSL]
* BUG: Fix the Vector.ToString() declaration.

[GB.QT4.EXT]
* NEW: The Editor.LineOffset property has been renamed as 
  Editor.LineNumberOffset.


git-svn-id: svn://localhost/gambas/trunk@5725 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-07-10 22:17:27 +00:00
Benoît Minisini
18c9b762fc [INTERPRETER]
* BUG: A stream redirected through the 'Begin' method checks that stream is
  ready for writing only when the 'Send' method is called. Between the 
  'Begin' and 'Send' calls, the PRINT and WRITE instructions will always
  succeed.


git-svn-id: svn://localhost/gambas/trunk@5723 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-07-06 19:00:41 +00:00
Benoît Minisini
74fb91552e [EXAMPLES]
* NEW: MediaPlayer: Display the name of the device, not just its system 
  path.

[INTERPRETER]
* BUG: In File.Load(), workaround virtual files (like those located in 
  '/sys') whose official size is not their real size.


git-svn-id: svn://localhost/gambas/trunk@5712 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-06-29 16:11:32 +00:00
Benoît Minisini
2973820c70 [INTERPRETER]
* BUG: Don't crash when calling a dynamic _call special method in a static 
  context. Raise an error instead.


git-svn-id: svn://localhost/gambas/trunk@5707 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-06-19 02:48:34 +00:00
Benoît Minisini
57a77280a1 [COMPILER]
* BUG: Generate correct information files for components having string 
  constants with newline inside.


git-svn-id: svn://localhost/gambas/trunk@5706 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-06-19 02:01:08 +00:00
Benoît Minisini
70eca15fb4 [INTERPRETER]
* BUG: Do not search for Application_Error if the project startup class 
  has not be loaded yet.

[GB.GUI.BASE]
* NEW: Typing keys inside an IconView should not crash anymore.


git-svn-id: svn://localhost/gambas/trunk@5697 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-06-09 21:30:43 +00:00
Benoît Minisini
45c481c1b4 [EXAMPLES]
* NEW: The Fractal example now uses eight background tasks to draw the 
  fractal.

[GB.IMAGE]
* NEW: Image.Pixels is a new property that allows to return the image 
  pixels as an integer array, and to set the image pixels from an integer
  array.


git-svn-id: svn://localhost/gambas/trunk@5687 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-05-30 21:16:09 +00:00
Benoît Minisini
21f0837572 [INTERPRETER]
* BUG: Correctly handle functions with a variable number of arguments when
  an array conversion occurs during argument parsing.
* BUG: The debugger now correctly displays and modifies arguments of 
  functions having a variable number of arguments.

[GB.DEBUG]
* BUG: The debugger now correctly displays and modifies arguments of 
  functions having a variable number of arguments.


git-svn-id: svn://localhost/gambas/trunk@5686 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-05-30 01:10:59 +00:00
Benoît Minisini
0812020209 [CONFIGURATION]
* NEW: Update VERSION file.

[DEVELOPMENT ENVIRONMENT]
* BUG: If the desktop password wallet is not available, do not crash 
  anymore, but display an error message instead.

[INTERPRETER]
* BUG: Some fixes in Application_Error method management.

[GB.EVAL.HIGHLIGHT]
* BUG: Some fixes in HTML highlighting.

[GB.QT.4.EXT]
* NEW: Editor: jumping to the next procedure from the current one now goes 
  to the end of the file.


git-svn-id: svn://localhost/gambas/trunk@5684 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-05-28 20:48:43 +00:00
Benoît Minisini
08a1345950 [INTERPRETER]
* BUG: Prevent Application_Error from being called recursively.


git-svn-id: svn://localhost/gambas/trunk@5681 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-05-26 11:18:55 +00:00
Tobias Boege
8fbbf67c59 [CONFIGURATION]
* BUG: Revert rev#5679 as it was unneeded.



git-svn-id: svn://localhost/gambas/trunk@5680 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-05-26 10:20:25 +00:00
Tobias Boege
0bb521e279 [CONFIGURATION]
* BUG: Make {gba,gbc,gbi,gbx}.c depend on trunk_version.h so that they are
  rebuilt when it changes in order to always show the correct version.



git-svn-id: svn://localhost/gambas/trunk@5679 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-05-26 09:14:51 +00:00
Benoît Minisini
daaf410362 [DEVELOPMENT ENVIRONMENT]
* NEW: If the IDE throws an uncatched error, try to save all modified files
  before aborting.

[INTERPRETER]
* NEW: If a static public method named Application_Error() is defined in 
  the startup class, then this method will be called when an unhandled 
  error is thrown, just before the program is aborted.


git-svn-id: svn://localhost/gambas/trunk@5678 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-05-25 14:00:40 +00:00
Benoît Minisini
47d9021e13 [CONFIGURATION]
* BUG: Forgot to make the 'trunk_version.h' rule phony.


git-svn-id: svn://localhost/gambas/trunk@5677 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-05-25 13:30:06 +00:00
Benoît Minisini
26a85ce106 [CONFIGURATION]
* NEW: The trunk version is now generated at compilation time through 
  custom rules and a generated include in the Makefile.am file.

[EXAMPLES]
* NEW: Use the new HttpClient Progress event and its properties in the 
  HttpGet networking example.


git-svn-id: svn://localhost/gambas/trunk@5676 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-05-25 13:23:39 +00:00
Benoît Minisini
1da147d6e5 [CONFIGURATION]
* NEW: The trunk version is now put in the 'config.h' file of the /main 
  source directory. No compilation flag is used anymore.
* NEW: All Gambad executables return the trunk revision number when they 
  are called with the '-V' option.

[GB.WEB]
* BUG: The Request.Fields property now can be read without reading the 
  value of a request field first.


git-svn-id: svn://localhost/gambas/trunk@5674 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-05-22 23:03:48 +00:00
Tobias Boege
947c357489 [CONFIGURATION]
* BUG: Execute the svn command for TRUNK_VERSION within the C locale to
  avoid surprises when grepping the output.



git-svn-id: svn://localhost/gambas/trunk@5673 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-05-22 17:33:17 +00:00
Tobias Boege
2217b3d6f0 [CONFIGURATION]
* BUG: Define the TRUNK_VERSION macro in gbx's Makefile.am which is less
  error-prone and other parts of the build process won't use it anyway.
  automake thinks that the $(shell ...) call shall a variable and warns but
  that can safely be ignored I think.



git-svn-id: svn://localhost/gambas/trunk@5672 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-05-22 14:29:01 +00:00
Tobias Boege
f347f30791 [GB.DATA]
* NEW: Fix memory leaks from Circular cleanup.



git-svn-id: svn://localhost/gambas/trunk@5670 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-05-21 13:09:29 +00:00
Tobias Boege
2bf1efd58b [CONFIGURATION]
* NEW: The TRUNK_VERSION macro is now defined to the overall SVN repository
  revision if Gambas is compiled from inside a repository. The value is
  detected by the Makefiles and passed as a command line definition to gcc.

[INTERPRETER]
* NEW: --version also prints the SVN revision number when gbx3 was compiled
  from a SVN repository.



git-svn-id: svn://localhost/gambas/trunk@5662 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-05-19 14:02:29 +00:00
Benoît Minisini
e877847c2e [GB.DRAW]
* NEW: Remove geometry classes source files.


git-svn-id: svn://localhost/gambas/trunk@5642 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-05-04 17:24:21 +00:00
Benoît Minisini
3721bbd95c [GB.DRAW]
* NEW: Remove geometry classes and put them in the gb.geom component.

[GB.GEOM]
* NEW: New hidden component that implements all geometry classes: Point,
  PointF, Rect and RectF.


git-svn-id: svn://localhost/gambas/trunk@5641 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-05-04 17:23:17 +00:00
Benoît Minisini
9d6ba888b3 [GB.DESKTOP]
* BUG: Fix the dependencies of the component project.


git-svn-id: svn://localhost/gambas/trunk@5639 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-05-04 14:17:15 +00:00
Benoît Minisini
58e19c65a1 [COMPILER]
* BUG: Correctly handle public string constants larger than 255 characters.


git-svn-id: svn://localhost/gambas/trunk@5638 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-05-04 02:54:35 +00:00
Benoît Minisini
59756d47e5 [COMPILER]
* BUG: Now a FOR loop with no loop variable correctly raises a syntax 
  error.


git-svn-id: svn://localhost/gambas/trunk@5637 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-05-03 22:45:11 +00:00
Benoît Minisini
0a5be7890d [INTERPRETER]
* BUG: Don't wait for a stream to be ready for reading if the stream has no
  underlying file descriptor.


git-svn-id: svn://localhost/gambas/trunk@5633 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-05-01 13:02:38 +00:00
Benoît Minisini
a7855016ca [DEVELOPMENT ENVIRONMENT]
* NEW: "Compress all" and "Uncompress all" action on project sub-
  directories.
* BUG: Do not crash when checking for completion in text editor.

[INTERPRETER]
* BUG: Void string contants work correctly now.

[COMPILER]
* BUG: Functions now can have up to 65536 bytecode operations instead of
  32768.
* NEW: Support for the Parent property of WebPage.
* NEW: WebPage markups attributes can use the <%...%> syntax.

[GB.EVAL.HIGHLIGHT]
* NEW: HTML highlighting has be rewritten. <%...%> markups are taken into
  account inside <style> and <script> markups.

[GB.FORM]
* NEW: FileView and DirView now display hidden files lightly, and symbolic
  links in italic.
* NEW: File properties dialog in FileChooser and DirChooser.

[GB.FORM.STOCK]
* NEW: Default icons for some mime types.

[GB.GTK]
* BUG: Menu click event is now triggered the same way as in gb.qt4.
* BUG: Control.HasFocus() works correctly now.
* BUG: Modal windows cannot be shrinked less then their initial size 
  anymore.

[GB.GUI.BASE]
* NEW: IconView, TreeView, ListView and ColumnView items now have a 
  RichText property.

[GB.WEB]
* NEW: WebPage.Parent property returns the parent webpage that includes the
  current webpage with the <<...>> markup.



git-svn-id: svn://localhost/gambas/trunk@5623 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-04-29 21:27:11 +00:00
Benoît Minisini
8f054e7655 [DEVELOPMENT ENVIRONMENT]
* NEW: Allow a component to have a requirement on the XML implementation 
  feature (i.e. 'gb.xml' or 'gb.libxml').


git-svn-id: svn://localhost/gambas/trunk@5617 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-04-10 11:07:38 +00:00
Benoît Minisini
80e53c8dbd [INTERPRETER]
* BUG: Fix a memory leak when trying to run a non-existant program with 
  EXEC or SHELL.


git-svn-id: svn://localhost/gambas/trunk@5614 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-04-07 14:21:48 +00:00
Benoît Minisini
9cda9ad176 [ARCHIVER]
* BUG: The previous fix was incorrect. We can now really create an 
  executable when the project directory and the target directory are not on 
  the same device.


git-svn-id: svn://localhost/gambas/trunk@5604 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-03-31 06:24:30 +00:00
Benoît Minisini
9f1286f161 [ARCHIVER]
* BUG: Be able to create the executable file if /tmp and the target 
  directory are not on the same device.


git-svn-id: svn://localhost/gambas/trunk@5603 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-03-31 05:51:47 +00:00
Benoît Minisini
165be4a66a [INTERPRETER]
* NEW: Clean up object referencement macros.


git-svn-id: svn://localhost/gambas/trunk@5601 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-03-30 13:51:10 +00:00
Benoît Minisini
2231d3f2e6 [INTERPRETER]
* BUG: Correctly free things then something bad happens while starting a 
  child process.


git-svn-id: svn://localhost/gambas/trunk@5600 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-03-30 12:15:18 +00:00
Benoît Minisini
ca7856bf80 [INTERPRETER]
* NEW: Clean up allocation macros.

{GB.EVAL.HIGHLIGHT]
* NEW: Add 'transition' to the CSS keywords.


git-svn-id: svn://localhost/gambas/trunk@5599 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-03-29 23:33:01 +00:00
Benoît Minisini
31a185f7e0 [DEVELOPMENT ENVIRONMENT]
* NEW: Add translations for details of the E_CHILD error message.

[INTERPRETER]
* NEW: If the program name of EXEC is an absolute path, immediately raise 
  an error if it does not exist.


git-svn-id: svn://localhost/gambas/trunk@5597 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-03-28 21:33:19 +00:00
Benoît Minisini
71167549bf [INTERPRETER]
* NEW: Add debugging code for issue 415.


git-svn-id: svn://localhost/gambas/trunk@5586 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-03-23 18:25:12 +00:00
Benoît Minisini
43b8448af8 [INTERPRETER]
* BUG: Don't flush the process output at process end if the process stream 
  has already been closed.


git-svn-id: svn://localhost/gambas/trunk@5585 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-03-23 18:12:36 +00:00
Benoît Minisini
54f3e89585 [INTERPRETER]
* BUG: When the default date format associated with the current locale is 
  not a numeric one, use the american format. It was done for 'en_PH' 
  locale.


git-svn-id: svn://localhost/gambas/trunk@5583 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-03-18 22:24:18 +00:00
Benoît Minisini
45d8058159 [GB.GUI.BASE]
* NEW: Common renaming routine for TextView, ListView, ColumnView and 
  IconView.
* NEW: IconView.Renaming is a new property that returns if an item is being
  renamed.
* BUG: Renaming an IconView item now correctly works if the IconView is 
  sorted.
* NEW: FileChooser and DirChooser now can rename or delete files.

[GB.QT4]
* NEW: TextArea inner margin is now two pixels when there is a border, and
  zero pixels when there is no border.


git-svn-id: svn://localhost/gambas/trunk@5571 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-03-03 22:34:30 +00:00
Benoît Minisini
514b6a95a5 [INTERPRETER]
* NEW: Defining the PWD environment variable in a SHELL or EXEC instruction
  changes the working directory of the child process.


git-svn-id: svn://localhost/gambas/trunk@5569 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-03-02 22:42:05 +00:00
Benoît Minisini
33bf1fb500 [INTERPRETER]
* BUG: When the parent of an observer is detected invalid while raising an 
  event, detach the observer and not the observed object!


git-svn-id: svn://localhost/gambas/trunk@5567 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-03-02 02:11:17 +00:00
Benoît Minisini
1649f86d86 [GB.DRAW]
* BUG: Fix a stupid typo. Now PointF now works correctly!


git-svn-id: svn://localhost/gambas/trunk@5566 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-02-25 17:25:56 +00:00
Laurent Carlier
9797312c12 Fix typos
git-svn-id: svn://localhost/gambas/trunk@5557 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-02-21 15:53:06 +00:00
Laurent Carlier
eae892152f [CONFIGURATION]
* BUG: Uninstall should honor XDG_UTILS variable during 'make uninstall'.

This fix building in ArchLinux.



git-svn-id: svn://localhost/gambas/trunk@5556 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-02-21 15:37:19 +00:00
Benoît Minisini
f79bde1d6a [INTERPRETER]
* NEW: GB.Stream.Eof() is a new API that returns if there is something to 
  read on a stream, by taking the 'Line Input' internal buffer into 
  account.

[GB.NET.CURL]
* NEW: Now the Read event is raised again and again while there is 
  something to read.


git-svn-id: svn://localhost/gambas/trunk@5554 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2013-02-17 11:05:34 +00:00