* NEW: When opening an existing file descriptor, check that it is opened
with a compatible mode. Otherwise raise an "Access forbidden" error.
git-svn-id: svn://localhost/gambas/trunk@4133 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Split System and Application class implementation in tow different
source files.
* NEW: A trick to watch existing file descriptors: opening ".XX" in direct
mode, where "XX" is the file descritor value.
git-svn-id: svn://localhost/gambas/trunk@4132 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* OPT: Optimize some string functions by not using arguments passed by
reference.
* OPT: Integrate the "=" operator function into the main execution loop to
save one function call.
* OPT: Optimize string comparison functions on x86 and x64_64 architectures
by comparing eight bytes in one shot.
git-svn-id: svn://localhost/gambas/trunk@4104 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Write and Read instructions now deal with NULL values without crashing.
git-svn-id: svn://localhost/gambas/trunk@3946 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: New web site design.
[WIKI CGI SCRIPT]
* NEW: New web site design.
[INTERPRETER]
* BUG: Remove some unused code.
* NEW: Stream got three new methods: Begin, Send & Drop. All WRITE
instructions between a Begin and Send will be merged in one bunch of data
that will be sent when Stream.End() is called. Stream.Drop() is there to
cancel that process.
* BUG: Correctly handle EINTR when writing to the SIGCHLD pipe.
git-svn-id: svn://localhost/gambas/trunk@3730 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: An option to disable the automatic control structure completion.
* OPT: Use the new Stream.ReadLine() method to speed up the CSV file
import routine.
[INTERPRETER]
* NEW: ReadLine() is a new method of the Stream class, that read a text
line like LINE INPUT, but with an optional escape character.
[GB.FORM]
* BUG: The default event of an IconPanel is Click.
git-svn-id: svn://localhost/gambas/trunk@3577 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: The control rename algorithm should work better now.
[EXAMPLES]
* BUG: Fix ServerSocket and ClientSocket examples.
[INTERPRETER]
* BUG: WRITE and READ with a specified length of zero now does nothing.
[GB.NET]
* BUG: Closing a socket created by a ServerSocket does not crash anymore.
[GB.QT4]
* BUG: When a combo-box becomes read-only, the first item is automatically
selected if there was no current item.
* BUG: Window with no border can have focus now.
git-svn-id: svn://localhost/gambas/trunk@3404 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: WRITE writes structures in one shot, by using an internal buffer.
This is useful for UDP socket, when the message size is the size of the
data sent in one shot.
git-svn-id: svn://localhost/gambas/trunk@3323 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: The argument of Byte@(), Short@()... functions now can be a string.
Then the address of the string in memory is used.
* BUG: Structures allocated with the NEW operator are correctly freed now.
* NEW: READ and WRITE now can deal with structures and embedded arrays.
* NEW: Dir?() synonymous has been removed.
git-svn-id: svn://localhost/gambas/trunk@3322 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Correctly handle all compiler error messages.
[INTERPRETER]
* NEW: Full management of the Single datatype.
* BUG: VarPtr() now works on Single local variables.
* BUG: Remove useless Tag property. It is defined in the Stream class now.
* BUG: Correctly free the Tag property in the Stream class.
[GB.GTK]
* BUG: Rich-text string management has been fixed. The ampersand character,
the "&", ">" and "<" entites are correctly interpreted now.
[GB.NET.CURL]
* BUG: Remove useless Tag property. It is defined in the Stream class now.
[EXAMPLES]
* NEW: The WebBrowser example has a download manager now.
git-svn-id: svn://localhost/gambas/trunk@3296 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Interpreter API for enumerating collections is now reentrant.
[GB.DBUS]
* NEW: Use the new collection enumerator function.
git-svn-id: svn://localhost/gambas/trunk@3255 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Found a workaround for the AX_CFLAGS_GCC_OPTION macro bug in
autoconf 2.67.
[DEVELOPMENT ENVIRONMENT]
* BUG: Do not try to display wiki help for symbols located in libraries.
* NEW: A new project tree filter that shows files that must be added to the
version control system.
[WIKI CGI SCRIPT]
* BUG: Use the correct language code for czech language.
* BUG: Be more clever with formatting characters having a space before or
after them.
[INTERPRETER]
* NEW: Serialization now detects circular references and raises an error.
git-svn-id: svn://localhost/gambas/trunk@3253 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix a possible when opening the procedure list.
[INTERPRETER]
* NEW: The READ instruction can read arrays and collections with
'AS Object' as well as 'AS Variant'.
[GB.QT4]
* BUG: Minimizing modal windows does not crash anymore.
git-svn-id: svn://localhost/gambas/trunk@3246 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: No error messages should be displayed anymore when refreshing the
search list.
[WIKI CGI SCRIPT]
* BUG: Fix formatting characters handling.
[INTERPRETER]
* NEW: WRITE and READ instructions can handle collections and arrays. Call
that "serialization".
[GB.WEB]
* OPT: Replace session serialization code by the new powers of READ and
WRITE instructions.
git-svn-id: svn://localhost/gambas/trunk@3244 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: System.FirstDayOfWeek is a new property that allows to define the
first day of the week if the default is not accurate. The default value
is gb.Sunday for english countries and gb.Monday otherwise.
* NEW: The Week() function now use the default first day of the week.
[GB.FORM]
* NEW: DateChooser now takes System.FirstDayOfWeek into account.
git-svn-id: svn://localhost/gambas/trunk@3151 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: READ and WRITE now correctly handle Pointer datatype.
* BUG: Classes inheriting an array class now work correctly.
[GB.FORM]
* NEW: FileChooser and DirChooser have a new ShowButton property that shows
OK and Cancel buttons inside the control. Clicking on the Cancel button
raises a new Cancel event.
* NEW: Bookmark management has been redesigned in file controls.
* NEW: MenuButton got an AutoResize property.
[GB.FORM.DIALOG]
* NEW: File dialogs now remember their geometry.
[GB.GTK]
* BUG: Fix duplicate Click event in CheckBox control.
* BUG: Correctly handle tristate Checkbox controls.
git-svn-id: svn://localhost/gambas/trunk@3076 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* OPT: Some optimizations again in memory allocator, object releasing
routine, arithmetic operators, class variable reader, line-by-line stream
reader, class symbol sort routine.
* BUG: Using constant strings inside variant, like database drivers, works
correctly again and does not crash the interpreter anymore.
git-svn-id: svn://localhost/gambas/trunk@2996 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Breakpoints are correctly reset when opening a new project.
[INTERPRETER]
* BUG: The GB.NewString(), GB.NewZeroString() and GB.TempString() API
signature has changed. All components have been updated accordingly.
* OPT: Many optimizations to speed up the interpreter.
[GB.EVAL]
* NEW: During syntax highlighting, the first character of class names is
automatically converted to uppercase.
git-svn-id: svn://localhost/gambas/trunk@2992 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Search string is correctly highlighted in all cases now.
[WEB SITE MAKER]
* NEW: German translation made by Stefan Lang.
[COMPILER]
* NEW: The 'New' keyword is now mandatory when declaring array variables
with dimensions. The IDE and component source code were modified
according to that change.
[GB.QT4.EXT]
* BUG: Search strings are correctly highlighted in editors with no syntax
highlighting.
git-svn-id: svn://localhost/gambas/trunk@2944 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Change the semantic of Eof(). Now, if the stream is in blocking
mode, then Eof() will wait for the data before testing if something can
be read on the stream.
* BUG: Correctly initialize the stream flag that tells that data is always
available.
[COMPILER]
* BUG: Correctly raise an error when the INPUT or OUTPUT keywords are used
with the PIPE instruction.
[GB.FORM]
* NEW: ColorChoose.ShowColorMap is a new property that allows to hide or
show the colormap.
[GB.QT4]
* BUG: Correctly disable Qt automatic completion in the ComboBox control.
git-svn-id: svn://localhost/gambas/trunk@2940 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Standard streams are correctly initialized now. Consequently, Input
and Line Input on them work correctly again.
git-svn-id: svn://localhost/gambas/trunk@2869 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: The GB.Stream.Read API reads up to a defined number of bytes when
its length argument is negative (like the READ instruction).
* NEW: Reading a stream up to a defined number of bytes blocks for the
first byte to read.
[GB.NET.SMTP]
* BUG: The SmtpClient now works when it is piped with a stream coming from
the openssl command, either with TLS or SSL.
* BUG: All SMTP commands are sent in lower case, because uppercase can
confuse openssl.
git-svn-id: svn://localhost/gambas/trunk@2864 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: New APIs to get a Gambas stream from a stream object
(GB.Stream.Get), to read data from a stream (GB.Stream.Read) and to write
date to a stream (GB.Steam.Write).
[GB.NET.SMTP]
* BUG: The _Socket property has been replaced by the _Stream property, that
takes a Gambas stream.
* BUG: Correctly release the user and password strings when the SmtpClient
is freed.
git-svn-id: svn://localhost/gambas/trunk@2863 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix an uninitalized flag in the stream internal structure.
* BUG: Remove a forgotten debugging breakpoint.
git-svn-id: svn://localhost/gambas/trunk@2845 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Draw ReportImage controls.
* NEW: Handle new property kinds: ReportCoord, Image.
[INTERPRETER]
* BUG: Fix some misuse of signed char.
[GB.REPORT]
* BUG: Fix declarations of properties.
* NEW: Use the new ReportCoord property kind.
* NEW: Some little changes in the ReportBorder class.
git-svn-id: svn://localhost/gambas/trunk@2755 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* OPT: The blocking state of streams is cached now, so that the fcntl()
system call is less used.
[GB.FORM]
* BUG: Stock icons work correctly again.
[GB.QT4]
* NEW: When drawing on a DrawingArea, Draw and Paint dimension properties
always return the size of the DrawingArea, even if it is cached.
* BUG: DrawingArea contents is not assume to be static anymore. Resizing
them always send a full repaint event.
git-svn-id: svn://localhost/gambas/trunk@2724 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Architecture detection.
* NEW: Updated libtool macros.
[DEVELOPMENT ENVIRONMENT]
* NEW: Highlight the current procedure in the editor procedure popup.
[INTERPRETER]
* BUG: Alignment fixes for the ARM architecture.
[GB.DRAW]
* NEW: Start implementing the new Paint interface.
[GB.GTK]
* BUG: GridView.Clear is now correctly implemented.
git-svn-id: svn://localhost/gambas/trunk@2505 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: The IDE now uses the WebKit component to display an online help
directly into the automatic completion popup. The online help management
is quick and dirty at the moment.
* NEW: The option dialog is being redesigned. Not finished yet...
* NEW: Some cosmetic changes in the user control that displays the
information about a project. Not perfect yet.
[WIKI CGI SCRIPT]
* NEW: The wiki now sends the "Last-Modified", "Expires" and
"Cache-Control: max-age" headers with the HTML pages.
* NEW: Adding "?help" to an URL returns the page for the IDE online help.
[INTERPRETER]
* BUG: Try to stop breaking strict aliasing rules. This way the interpreter
should behave better on ARM architecture.
* BUG: Remove a possible crash when calling a constructor.
[GB.DRAW]
* NEW: The deprecated properties Draw.ForeColor and Draw.BackColor have
been removed.
[GB.NET]
* BUG: Do not watch the SerialPort file descriptor for reading if there is
no Read event handler.
[GB.QT4.WEBKIT]
* NEW: WebSettings.Cache.Path is a new property to define the directory
used for storing the disk cache contents. If this property is not
defined, no cache will be used.
* NEW: WebView.Cached is a new property to tell if the web browser will use
the disk cache. The WebSettings.Cache.Path *must* be defined before
setting that property.
* NEW: WebView.HTML is not read-only anymore.
git-svn-id: svn://localhost/gambas/trunk@2460 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: VarPtr() now works on a string variable. It returns the address of
the string.
* NEW: TypeOf("") now returns gb.String. "" is equal to NULL yet, but now its
string datatype is kept.
* NEW: Memory is new instruction like Open that opens a memory stream from
a Pointer.
* NEW: A Pointer can not be used as a stream directly. You must use the new
Memory instruction for that.
* NEW: The [...] array constructor now checks the datatype of all its
argument to decide the type of the new array.
* BUG: The ["key":value] collection constructor now does not leak memory
anymore if it fails.
* NEW: A new error, "void key", whose code is 64.
* NEW: TypeOf(Null) now returns gb.Null and not gb.Object anymore.
* BUG: IIf() now returns a Variant only if needed. It uses the same
algorithm as the array constructor.
[COMPILER]
* NEW: Memory is new instruction like Open that opens a memory stream from
a Pointer. The syntax is: hStream = Memory pPonter For Read | Write.
* NEW: Support for form controls being individually public.
* BUG: VarPtr() is compiled correctly again.
git-svn-id: svn://localhost/gambas/trunk@2339 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Do not use "boolean" anymore. Use "bool" instead.
[COMPILER]
* NEW: Do not use "boolean" anymore. Use "bool" instead.
git-svn-id: svn://localhost/gambas/trunk@2091 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix a backtrace memory leak in error management.
* BUG: Fix a memory leak in process streams.
[GB.FORM]
* BUG: Some bug fixes in DatePicker. It does not work correctly with
gb.gtk yet!
[GB.GTK]
* BUG: Fix the container arrangement and the ClientX / ClientY properties.
* BUG: A form is not its own event observer if one was specified at
instanciation time.
[GB.QT]
* OPT: The container arrangement is now triggered the same way as in
gb.gtk. No Qt event filter is used anymore.
[GB.QT4]
* OPT: The container arrangement optimization from gb.qt has been partially
applied to gb.qt4.
git-svn-id: svn://localhost/gambas/trunk@1858 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Actions lists are now written directly in *.form files. The
compiler will copy them into *.action files in the '.action' project
directory.
[WIKI CGI SCRIPT]
* NEW: The "?view" argument in URLs is now kept through links.
[INTERPRETER]
* BUG: Paths beginning with "../" now work correctly with executables.
* BUG: Fix a crash when using Dir() on relative paths.
[COMPILER]
* NEW: Now the compiler automatically generates *.action files from the
*.form file contents.
[GB.FORM.MDI]
* BUG: Support for the new action file format in the action configuration
dialog.
* BUG: Bad shortcuts are correctly handle in the action configuration
dialog now.
git-svn-id: svn://localhost/gambas/trunk@1782 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Start assigning actions to everything.
* NEW: Action shortcuts can be configured.
* NEW: Project actions are automatically saved in the .action directory.
* BUG: Signature of native arrays is correct now.
[INTERPRETER]
* BUG: GB_LoadFile() does not leak file descriptors anymore.
* NEW: Relative paths starting with "../" allows to open files located in
the main archive from a component.
[ARCHIVER]
* NEW: Store the ".action" directory in the archive.
[GB.DB]
* BUG: Correctly check that table name are not void in Create(), Find(),
Edit() and Delete() methods.
[GB.FORM]
* NEW: A new stock icon named "shortcut". Mmm... Should be named
"keyboard".
[GB.FORM.MDI]
* NEW: Support for automatic configuration of action shortcuts.
* NEW: Action.Configure() is a new method that opens a dialog for
configuring shortcuts. Shortcut configuration is stored in the
application setting files, under the '[gb.form.mdi/Shortcuts]' slot.
[GB.QT]
* NEW: Action[].Shortcut is a new property for setting or getting the
shortcut of an action.
* BUG: Correctly opens startup forms again.
git-svn-id: svn://localhost/gambas/trunk@1758 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix the configuration of gb.image.info.
[INTERPRETER]
* NEW: The GB.LoadFile() and GB.ReleaseFile() API have changed. Now they
always use memory mapping instead of loading the file in memory.
[GB.IMAGE.INFO]
* BUG: Now ImageStat() works with the "~" shortcut in path names.
git-svn-id: svn://localhost/gambas/trunk@1748 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Correctly handle interrupted system calls in streams defined
outside of the interpreter.
[GB.QT.EXT]
* BUG: Handle cursor moves correctly when procedures are folded.
git-svn-id: svn://localhost/gambas/trunk@1711 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: A internal stream flag to know if data is immediately available.
File and memory streams have this flag set. Streams defined in component
do not have this flag set by default.
git-svn-id: svn://localhost/gambas/trunk@1708 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix an uninitialized flag in streams.
* BUG: Stack overflow raised when entering a function should not mix up
the interpreter anymore.
[GB.QTE]
* BUG: Fix compilation.
git-svn-id: svn://localhost/gambas/trunk@1664 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: The LINE INPUT and INPUT algorithm now deal intelligently with
blocking streams.
[GB.NET]
* BUG: Fix stream implementation of SerialPort and Socket.
* NEW: Socket can be set blocking.
git-svn-id: svn://localhost/gambas/trunk@1659 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: The EXEC and SHELL syntax has changed.
[INTERPRETER]
* NEW: Stream.Blocking is new property to set if reading from the stream
is blocking or not.
* NEW: EXEC or SHELL used without the AS keyword creates a blocking
process stream.
[COMPILER]
* NEW: EXEC or SHELL can be used with AS and without FOR.
[GB.QT]
* NEW: Toolbox windows are automatically transient for the current active
window.
git-svn-id: svn://localhost/gambas/trunk@1657 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Inserting a file in the project as symbolic link now tries to
create relative symbolic links.
* BUG: Fix an error when clicking on a broken link when inserting a new
file in the project.
[INTERPRETER]
* BUG: LINE INPUT does not prevent a following READ instruction from
reading all the bytes it wants anymore.
git-svn-id: svn://localhost/gambas/trunk@1647 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Do not use <pre> markups, they cannot break lines.
[DEVELOPMENT ENVIRONMENT]
* NEW: Replace anonymous object arrays by template arrays.
* NEW: A button that clears the shortcut in the menu editor.
* NEW: When evaluating expression in the console, a semi-colon at the end
of the expression prevents the end newline to be printed, like in the
PRINT instruction.
* NEW: CTRL+G in the console makes it flash.
* OPT: Remove the CCoolTabs class, that was not used anymore.
* NEW: The main selected control is unselectable in the form editor now.
* NEW: Selected controls can be resized by pressing CTRL and an arrow key.
* NEW: Some form editor shortcuts have been changed to not conflict with
the previous feature.
* BUG: Fix the horizontal position of the automatic completion.
* BUG: Look in project classes before component classes in automatic
completion.
[INTERPRETER]
* BUG: Fix the memory allocation debug routines.
* BUG: When instanciating a template array class, search for element class
symbol locally first.
* BUG: Template arrays now correctly release their elements.
* NEW: Update copyright year in gb_common.h header file.
[COMPILER]
* BUG: Manage .list and .info files incrementally, so that they are up to
date even when the project is not fully compiled.
* BUG: Float and Single constants are correctly written in the .info file.
[GB.QT.EXT]
* BUG: Fix some painting artifacts in Editor.
* BUG: In Editor, Undo and Redo now should always work correctly when a
line is rewritten.
* NEW: In Editor, when a line is rewritten, the Change event is always
emitted.
* NEW: The Editor is cleared now when it prints a CTRL+L character.
* NEW: The Editor flashes now when it prints a CTRL+G character.
git-svn-id: svn://localhost/gambas/trunk@1576 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Support for template array classes in automatic completion.
[INTERPRETER]
* BUG: LIE INPUT and INPUT work correctly on tty streams.
[GB.DB]
* NEW: Add an API that allows a driver function to get the current
database when it does not get it from its arguments.
[GB.DB.POSTGRESQL]
* BUG: Fix blob support for some encodings, and when PostgreSQL version is
greater or equal than 8.2.
[GB.DB.SQLITE3]
* BUG: Field values are not truncated anymore.
[GB.FORM]
* NEW: MessageLabel is a new control made by David Villalobos Cambronero.
It is a TextLabel that changes its background color for indicating a
warning, an error, and so on.
[GB.FORM.MDI]
* NEW: Workspace.ButtonPosition is a new property that allows to put the
tab close button on the left or on the right.
[GB.GTK]
* BUG: Speeds up the combo-box control as much as I can. Slowness seems to
be a GTK+ feature. :-/
[GB.QT]
* BUG: Fix crash when setting a shortcut on a top-level menu.
git-svn-id: svn://localhost/gambas/trunk@1548 867c0c6c-44f3-4631-809d-bfa615b0a4ec