* BUG: Prevent a possible infinite recursion when detaching objects.
* BUG: Don't crash if a standard stream has been freed. Raise an error
instead.
git-svn-id: svn://localhost/gambas/trunk@7085 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Don't panic if a received signal cannot be written to the signal
pipe. Just print a warning.
git-svn-id: svn://localhost/gambas/trunk@7074 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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