Gambas 3

Software Screenshot:
Gambas 3
Software Details:
Version: 3.10.0 updated
Upload Date: 22 Jun 18
Developer: Gambas Team
Distribution Type: Freeware
Downloads: 84

Rating: nan/5 (Total Votes: 0)

Gambas 3 is the next generation Gambas development environment based on a BASIC interpreter with object extensions, such as Visual Basic. It is, before all, an open source BASIC language with object extensions. The program includes native functions that allow developers to manage strings, arithmetic, time, input-outputs and files.

It is a completely free and complex program that comprises of several programs, including a compiler, an archiver, an interpreter, a development environment, a scripter, numerous extension components and a feature rich graphical user interface.

Quickly design Graphical User Interfaces for your projects

With Gambas, you can quickly design a GUI (Graphical User Interface), pilot KDE applications with DCOP, access PostgreSQL and MySQL databases, translate your program into many languages, as well as to build network applications.

Key features include full process control, native support for UTF-8 strings, support for multiple languages, complete error management, pseudo-terminal management, support for event loops with timers, support for watching input-output file descriptors, and the ability to call external functions in libraries that are shared across the system.

Being a true object-oriented language, Gambas comes with classes and objects, private and public symbols, single inheritance, destructors and constructors, enumerators, polymorphism, methods, array accessors, properties, sortable objects, events and constants. It is also possible to access the MySQL, SQLite, PostgreSQL and ODBC databases.

Under the hood and supported operating systems

The C, C++ and BASIC programming languages have been used to write Gambas’ code. It has been designed from the ground up to work on all GNU/Linux distributions, as well as on the FreeBSD operating system.

It is available for download as a universal sources archive (tarball), which includes the application’s source code. Linux users can also install it from the main software repositories of their GNU/Linux distributions. Both 32-bit and 64-bit instruction set architectures are supported at this time.

What is new in this release:

  • The support of web forms in the IDE has been enhanced.
  • The library packaging has been fixed.
  • CStr and CDate are now mutually coherent, by internally converting to UTC dates only. Beware, this bug fix is not backward-compatible!
  • The interpreter now uses a monotonic clock if possible.
  • The new instruction MOVE ... DOWNTO ... renames a file, erasing the destination atomically.
  • The MediaPlayer control can chain media files now.
  • The FtpClient now supports the ftps protocol.
  • gb.term is a new component to manage terminals, with an API very close to the one provided by the operating system.
  • gb.web.feed is a new component to manage RSS feeds.
  • Ton of fixes in the gb.web.form component.

What is new in version :

  • DEVELOPMENT ENVIRONMENT:
  • NEW: Improve Cygwin System Information awareness.
  • BUG: Control properties containing a database table name can be modified again.
  • GB.DATA:
  • BUG: Don't use forward typedefs as some compilers don't seem to understand them.
  • BUG: Silence false positive compiler warnings.
  • GB.DB.MYSQL:
  • BUG: Try to reconnect to a lost database server when listing existing databases and the fields of a table.
  • GB.FORM:
  • NEW: The SliderBox is now in the same change group as Slider.
  • GB.GTK:
  • BUG: Fix an uninitialized variable.
  • BUG: Fix warning with Slider or SpinBox when setting a minimum value equal to the maximum value, or the contrary.
  • GB.GTK3:
  • BUG: Fix an uninitialized variable.
  • BUG: Fix warning with Slider or SpinBox when setting a minimum value equal to the maximum value, or the contrary.
  • BUG: Paint.Reset() now works as expected on non-cached DrawingArea.
  • GB.GUI.AREA:
  • BUG: TreeView renaming works now if the renamed item is not visible.
  • GB.MEDIA.FORM:
  • BUG: MediaView: The Control property has been renamed as ShowControl.
  • GB.QT4:
  • BUG: The Menu.Checked property now returns the correct value for non-radio menu items.
  • BUG: TextBox: Workaround a Qt4 weird behaviour that sometimes lose the selection. Same workaround for editable ComboBox.
  • BUG: Fix a compilation warning.

What is new in version 3.8.3:

  • DEVELOPMENT ENVIRONMENT:
  • NEW: Improve Cygwin System Information awareness.
  • BUG: Control properties containing a database table name can be modified again.
  • GB.DATA:
  • BUG: Don't use forward typedefs as some compilers don't seem to understand them.
  • BUG: Silence false positive compiler warnings.
  • GB.DB.MYSQL:
  • BUG: Try to reconnect to a lost database server when listing existing databases and the fields of a table.
  • GB.FORM:
  • NEW: The SliderBox is now in the same change group as Slider.
  • GB.GTK:
  • BUG: Fix an uninitialized variable.
  • BUG: Fix warning with Slider or SpinBox when setting a minimum value equal to the maximum value, or the contrary.
  • GB.GTK3:
  • BUG: Fix an uninitialized variable.
  • BUG: Fix warning with Slider or SpinBox when setting a minimum value equal to the maximum value, or the contrary.
  • BUG: Paint.Reset() now works as expected on non-cached DrawingArea.
  • GB.GUI.AREA:
  • BUG: TreeView renaming works now if the renamed item is not visible.
  • GB.MEDIA.FORM:
  • BUG: MediaView: The Control property has been renamed as ShowControl.
  • GB.QT4:
  • BUG: The Menu.Checked property now returns the correct value for non-radio menu items.
  • BUG: TextBox: Workaround a Qt4 weird behaviour that sometimes lose the selection. Same workaround for editable ComboBox.
  • BUG: Fix a compilation warning.

What is new in version 3.8.1:

  • DEVELOPMENT ENVIRONMENT:
  • NEW: Improve Cygwin System Information awareness.
  • BUG: Control properties containing a database table name can be modified again.
  • GB.DATA:
  • BUG: Don't use forward typedefs as some compilers don't seem to understand them.
  • BUG: Silence false positive compiler warnings.
  • GB.DB.MYSQL:
  • BUG: Try to reconnect to a lost database server when listing existing databases and the fields of a table.
  • GB.FORM:
  • NEW: The SliderBox is now in the same change group as Slider.
  • GB.GTK:
  • BUG: Fix an uninitialized variable.
  • BUG: Fix warning with Slider or SpinBox when setting a minimum value equal to the maximum value, or the contrary.
  • GB.GTK3:
  • BUG: Fix an uninitialized variable.
  • BUG: Fix warning with Slider or SpinBox when setting a minimum value equal to the maximum value, or the contrary.
  • BUG: Paint.Reset() now works as expected on non-cached DrawingArea.
  • GB.GUI.AREA:
  • BUG: TreeView renaming works now if the renamed item is not visible.
  • GB.MEDIA.FORM:
  • BUG: MediaView: The Control property has been renamed as ShowControl.
  • GB.QT4:
  • BUG: The Menu.Checked property now returns the correct value for non-radio menu items.
  • BUG: TextBox: Workaround a Qt4 weird behaviour that sometimes lose the selection. Same workaround for editable ComboBox.
  • BUG: Fix a compilation warning.

What is new in version 3.7.1:

  • DEVELOPMENT ENVIRONMENT:
  • NEW: Improve Cygwin System Information awareness.
  • BUG: Control properties containing a database table name can be modified again.
  • GB.DATA:
  • BUG: Don't use forward typedefs as some compilers don't seem to understand them.
  • BUG: Silence false positive compiler warnings.
  • GB.DB.MYSQL:
  • BUG: Try to reconnect to a lost database server when listing existing databases and the fields of a table.
  • GB.FORM:
  • NEW: The SliderBox is now in the same change group as Slider.
  • GB.GTK:
  • BUG: Fix an uninitialized variable.
  • BUG: Fix warning with Slider or SpinBox when setting a minimum value equal to the maximum value, or the contrary.
  • GB.GTK3:
  • BUG: Fix an uninitialized variable.
  • BUG: Fix warning with Slider or SpinBox when setting a minimum value equal to the maximum value, or the contrary.
  • BUG: Paint.Reset() now works as expected on non-cached DrawingArea.
  • GB.GUI.AREA:
  • BUG: TreeView renaming works now if the renamed item is not visible.
  • GB.MEDIA.FORM:
  • BUG: MediaView: The Control property has been renamed as ShowControl.
  • GB.QT4:
  • BUG: The Menu.Checked property now returns the correct value for non-radio menu items.
  • BUG: TextBox: Workaround a Qt4 weird behaviour that sometimes lose the selection. Same workaround for editable ComboBox.
  • BUG: Fix a compilation warning.

What is new in version 3.6.2:

  • DEVELOPMENT ENVIRONMENT:
  • NEW: Improve Cygwin System Information awareness.
  • BUG: Control properties containing a database table name can be modified again.
  • GB.DATA:
  • BUG: Don't use forward typedefs as some compilers don't seem to understand them.
  • BUG: Silence false positive compiler warnings.
  • GB.DB.MYSQL:
  • BUG: Try to reconnect to a lost database server when listing existing databases and the fields of a table.
  • GB.FORM:
  • NEW: The SliderBox is now in the same change group as Slider.
  • GB.GTK:
  • BUG: Fix an uninitialized variable.
  • BUG: Fix warning with Slider or SpinBox when setting a minimum value equal to the maximum value, or the contrary.
  • GB.GTK3:
  • BUG: Fix an uninitialized variable.
  • BUG: Fix warning with Slider or SpinBox when setting a minimum value equal to the maximum value, or the contrary.
  • BUG: Paint.Reset() now works as expected on non-cached DrawingArea.
  • GB.GUI.AREA:
  • BUG: TreeView renaming works now if the renamed item is not visible.
  • GB.MEDIA.FORM:
  • BUG: MediaView: The Control property has been renamed as ShowControl.
  • GB.QT4:
  • BUG: The Menu.Checked property now returns the correct value for non-radio menu items.
  • BUG: TextBox: Workaround a Qt4 weird behaviour that sometimes lose the selection. Same workaround for editable ComboBox.
  • BUG: Fix a compilation warning.

What is new in version 3.5.2:

  • DEVELOPMENT ENVIRONMENT:
  • BUG: Report editor: Now the report borders are shown correctly in the editor.
  • BUG: The property help WebView now uses the same default font size (80%) than the help window.
  • BUG: Fix HTML compression so that everything is not put on the same line.
  • BUG: Subversion: Support for Subversion >= 1.8.
  • BUG: Subversion: Automatically remove the ".lang/.pot" file from version control, as it is a generated file, and as its conflicts cannot be resolved.
  • BUG: Subversion: Fix the Subversion conflict management.
  • BUG: Subversion: Raise the svn commands timeout to 30 seconds: some commits can take a long time.
  • BUG: File property dialog: The 'Revert' button is correctly hidden now.
  • BUG: Menu editor: The last menu can be move up now.
  • BUG: Menu editor: Fix the highlight of the current menu.
  • BUG: Menu editor: Fix the menu search box.
  • BUG: Project tree: The popup menu should be accurate with extern files now.
  • BUG: Project tree: Fix popup menu when clicking on the "Data" project tree folder.
  • BUG: Form editor: Correctly hide and show toolbar entries according to the current state (debugging, read-only...).
  • BUG: Form editor: Formatting toolbar buttons act on the entire form if nothing is selected now.
  • BUG: Don't set the focus to the console if it is hidden.
  • BUG: Packager: Fix *.deb package description.
  • BUG: Image editor: Don't left the editor in an inconsistent state after a paste has been done.
  • INTERPRETER:
  • BUG: String.InStr() does not crash anymore if the string pattern is void. It returns 0 instead (like InStr).
  • BUG: Don't crash if an unknown option is passed with the '-g' option.
  • BUG: Fix the LIKE operator whth "{...}" patterns.
  • BUG: Fix a crash when using CStr() on an object having a conversion function.
  • BUG: Be virtual even the first time when calling the [] operator.
  • COMPILER:
  • BUG: Fix compilation of NOT LIKE, NOT BEGINS and NOT ENDS operators when they are not alone in an expression.
  • GB.DB:
  • BUG: Don't crash anymore when releasing database objects.
  • BUG: The automatic Blob to String conversion does not lead to a crash anymore.
  • GB.DB.FORM:
  • BUG: DataCheckBox correctly defines its internal TriState property depending on whether its database field is mandatory or not.
  • BUG: Editable DataBrowser and DataView do not create a spurious extra line anymore.
  • GB.DB.SQLITE3:
  • BUG: Fix specific implementation of sqlite3_exec. Prevent some crashes and make database creation work again (among other things).
  • BUG: Correctly handle requests returning only one table name inside field names.
  • GB.DRAW:
  • BUG: Correctly initialize the Paint class when calling Paint.Begin() on an already opened drawing device.
  • GB.FORM:
  • BUG: FileProperties: Do not crash anymore if the directory size calculation task returns rubbish.
  • BUG: FileProperties: The icon of the FileProperties control now correctly adapts its size.
  • BUG: FileChooser: The Paths property now returns the selected path in single mode and not a void array anymore.
  • GB.FORM.DIALOG:
  • BUG: Dialog.Open() in multiple mode works now. [GB.FORM.MDI]
  • BUG: Raise an error if the Toolbar.Configure() method is called whereas the toolbar Key property is not defined.
  • BUG: Toolbar configuration dialog: the toolbar elements with a short text are correctly displayed now.
  • GB.GSL:
  • BUG: Polynomial: Create a new void polymonial does not lead to a crash anymore.
  • GB.GTK:
  • BUG: The RTL layout is correctly initialized at startup.
  • BUG: Embedder.Embed() does not take two arguments.
  • BUG: Imbrication of popup menu click events works correctly now and does not crash anymore.
  • BUG: The Window.Picture property now should work correctly.
  • BUG: Correctly update background and foreground of multi-container controls.
  • BUG: Font.Grade maximum value is now +24, as expected by the font selector.
  • BUG: Fix memory leak when loading images without alpha channel.
  • BUG: GlArea control now can take the focus.
  • GB.GUI.BASE:
  • BUG: Clicking on GridView/ColumnView headers now should work correctly again.
  • GB.NET.POP3:
  • BUG: Error messages must not be translatable.
  • GB.OPENGL:
  • BUG: GL.GetString() now raises an error if the glGetString() function fails.
  • GB.OPENGL.SGE:
  • BUG: Don't crash if a model has only one frame.
  • GB.PCRE:
  • BUG: RegExp.Replace(): Explicitly use 0 if optional arguments are missing
  • BUG: Don't call GB.ReturnNewString() if a match returns a null string.
  • BUG: Use GB.ReturnVoidString() instead of GB.ReturnNull().
  • GB.QT4:
  • BUG: Imbrication of popup menu click events works correctly now and does not crash anymore.
  • BUG: Correctly update background and foreground of multi-container controls.
  • BUG: Font.Grade maximum value is now +24, as expected by the font selector.
  • BUG: Foreground and background colors now work as expected on ComboBox and SpinBox controls.
  • GB.SDL:
  • BUG: Restore fill pattern to solid after a Draw.Rect() or a Draw.Ellipse(), otherwise Draw.Image() draws nothing!
  • GB.XML:
  • BUG: XMLElement.AppendFromText() now behaves correctly if no extra arguments are given.
  • BUG: XMLElement.FromText() now correctly catches parsing exceptions.
  • BUG: The Boolean parameter 'Indent' of XMLDocument.ToString() is now correctly interpreted.
  • BUG: Serializing a comment that is a direct child of a document with indentation enabled does not crash anymore.
  • BUG: The Document.All property is now correctly declared as an XMLNode[]
  • GB.XML.HTML:
  • BUG: Serializing a comment that is a direct child of a document with indentation enabled does not crash anymore.
  • GB.XML.RPC:
  • BUG: miniServer would give an out-of-bound with multiple parallel requests.
  • BUG: miniServer could crash on an invalid request.
  • GB.WEB:
  • BUG: CGI.Error() now correctly sends an UTF-8 HTML page.

What is new in version 3.5.1:

  • DEVELOPMENT ENVIRONMENT:
  • BUG: Fix project browser cursor management when the focus is on the filter field.
  • BUG: Fix form editor control highlighting when the hovered control is a ScrollView.
  • BUG: Packager now use the current Gambas major & minor version as minimum version for component dependencies.
  • BUG: Follow Ubuntu package naming convention.
  • BUG: Some fixes in GUI metapackage creation for Debian/Ubuntu.
  • BUG: Automatic completion of identifiers now correctly shows the known classes.
  • BUG: Correctly display optional values in signatures.
  • NEW: The system information dialog now displays the Gambas version.
  • NEW: The 'gb.desktop.gnome' component is now visible and explicitely checkable.
  • NEW: If a project uses gb.gui, then the packager will create two extra packages: one for Qt4 support, the other for GTK+ support.
  • NEW: Support for package version number.
  • NEW: Update Gambas font.
  • NEW: Display help for third-party components.
  • NEW: Add Afrikaans to the language list.
  • INTERPRETER:
  • BUG: Don't detach a process that returns an error otherwise the Kill event is lost.
  • BUG: Correctly check that there is a current enumeration if the Enum class methods and properties.
  • BUG: The : operator is now correctly overridden in classes inheriting an array class or Collection.
  • BUG: VarPtr() correctly works on method arguments.
  • BUG: Fix the CLOSE instruction when dealing with a string stream.
  • BUG: Prevent crashes at exit by releasing array classes first.
  • NEW: Support for the GB_PATH environment variable, that gives the Gambas interpreter path if set.
  • NEW: Enum.Stopped is a new property that returns if the current enumeration has been stopped.
  • NEW: OPEN STRING is a new instruction that allows to use a string as a stream. Writing to it appends the written data to the end of the string at the moment.
  • NEW: Closing a string stream returns the data written to the stream as a new string.
  • NEW: Make WRITE behave the same way as READ on a memory stream. I.e. it writes a null-terminated "C" string, as READ was reading a null-terminated "C" string.
  • COMPILER:
  • NEW: New OPEN STRING instruction.
  • NEW: OPEN MEMORY and OPEN PIPE are synonymous of the MEMORY and PIPE instructions alone.
  • GB.DESKTOP.GNOME:
  • NEW: Make this component visible to the IDE.
  • GB.EVAL:
  • NEW: Highlight the new OPEN STRING instruction correctly.
  • GB.FORM:
  • BUG: DirChooser.ShowPreview used FDirChooser.GetPreview which does not exist. The correct symbol is FDirChooser.GetShowPreview.
  • NEW: FileChooser now has support for uncompressing 'zip' files, provided that the 'zip' utility is installed on the system.
  • GB.GUI:
  • NEW: If one GUI component fails to load, try the other one.
  • NEW: Abort if no GUI component is found.
  • NEW: Define the GB_GUI environment variable with the GUI component actually loaded.
  • GB.GUI.OPENGL:
  • NEW: Always load the OpenGL support component associated with what lies in the GB_GUI environment variable.
  • GB.SDL:
  • NEW: Rename the default SDL font file as "_default.ttf" to prevent packaging conflicts.
  • NEW: Use the Gambas monospace font as SDL default font now.
  • GB.WEB:
  • BUG: JSON.Encode() correctly encodes ASCII control characters.
  • NEW: JSON.Decode() now takes an extra optional argument indicating that keys having a null value are taken into account inside objects.
  • NEW: JSONCollection is a new class that represents a JSON object whose some keys are associated with a 'null' value.

What is new in version 3.5.0:

  • The IDE has a new advanced image editor.
  • The IDE can debug web applications, thanks to the embedded HTTP server component gb.httpd.
  • ARM support has been fixed.
  • A new MATCH instruction that matches regular expressions by implicitly using the gb.pcre component.
  • Global error handler support.
  • gb.clipper is a new component based on the Clipper library.
  • gb.openssl is a new component to wrap cryptographic functions of libcrypto from the OpenSSL project.
  • gb.gmp is a new component based on the Gnu Multiple Precision Arithmetic Library that implements big integers and big rational numbers.
  • gb.openal is a new component based on the OpenAL 3D audio library.
  • gb.opengl.sge is new component that implements a simple OpenGL game engine based on the MD2 format.

What is new in version 3.0:

  • The special mathematical functions of glibc are correctly detected and used now.
  • Floating point numbers should be printed in a better way.
  • French, Czech and Catalan translations were updated.
  • And two security holes were closed:
  • String hashing algorithm has been randomized. See that document for the details.
  • In the IDE, you cannot get the project version by running a program (what a stupid idea!). Now you get it from a text file located in a parent directory of the project.

What is new in version 2.23.1:

  • [DEVELOPMENT ENVIRONMENT]:
  • NEW: Support for Lithuanian language.
  • NEW: Swedish translation updated.
  • [INTERPRETER]:
  • BUG: The GB.ToZeroString() API now correctly handles zero length strings.
  • [ARCHIVER]:
  • BUG: Ignore "core", "vgcore.*" and "callgrind.*" files when making an executable.
  • [GB.V4L]:
  • BUG: Make gb.v4l compile with recent kernels.

What is new in version 2.23.0:

  • A new Romanian translation was added and the Czech and Swedish translations were updated.
  • A memory leak that lead to a crash in enumeration management was fixed.
  • Many bugs in TextBox, TextArea, SpinBox, Menu, GridView, ListBox, and ComboBox controls in the GTK+ component were fixed.
  • The Control.MoveScaled method has been fixed.
  • Table existence is correctly checked in the ODBC component.
  • SQLite integer primary keys are better detected.

What is new in version 2.22.0:

  • Configuration:
  • BUG: Detect x86_64 architecture better.
  • BUG: Compile correctly on Ubuntu 10.10.
  • NEW: Add AC_PROG_LIBTOOL in root configure.ac file.
  • NEW: Check for missing mathematical function directly instead of relying on operating system detection.
  • NEW: Remove useless install-sh links.
  • Development Environment:
  • BUG: A "=" character was missing in the menu file generated by the Debian/Ubuntu packager.
  • NEW: Don't save the Url in the project file if it is equal to the default URL http://www.endoftheinternet.com
  • NEW: Greek translation updated by Demosthenes Koptsis.
  • Database Manager:
  • NEW: Greek translation updated by Demosthenes Koptsis.
  • Interpreter
  • BUG: Extern functions now can handle up to 16 pointer or string arguments.
  • BUG: Do not use stack contents as return value.
  • BUG: The return value of extern functions returning a 'char *' is now correctly converted to a constant String.
  • BUG: The == operator works correctly now.
  • BUG: Fix two incorrect optional function declarations.
  • Compiler:
  • BUG: Remove some useless tests.
  • Archiver:
  • BUG: Files having the ".gambas" extension are now excluded from executable archives. That prevents a possible endless growing generated file.
  • Development Enviroment:
  • NEW: Spanish translation updated.
  • GB.DB.POSTGRESQL:
  • BUG: Correctly ignore fields deleted with the "DROP COLUMN" command.
  • GB.FORM:
  • BUG: Make arrow keys navigation work better with read-only cells in TableView control.
  • NEW: DateChooser uses Sunday as first day of the week when the current language is 'C' or 'en_US'.
  • GB.GTK:
  • BUG: Fix duplicate Click event in CheckBox control.
  • BUG: Correctly handle tristate Checkbox controls.
  • BUG: Fix the behaviour of ComboBox when setting the List and the ReadOnly property, and the order used for saving ComboBox properties in the *.form file.
  • BUG: Popup menus now work correctly on tray icons in all cases.
  • BUG: Make TabStrip behave like in gb.qt when inserting a new tab.
  • BUG: TabStrip now uses its own window, so that it is not partially visible when covering other widgets.
  • BUG: ColumnView, TreeView and ListView are correctly refreshed when an item icon is changed.
  • BUG: Read-only ComboBox controls do not lost focus events anymore.
  • BUG: Correctly free menu tags.
  • BUG: Fix possible crashes in three utility routines.
  • BUG: Fix a crash in GridView.Rows[].Text property.
  • BUG: Fix a infinite recursion in drag and drop management when draging TextBox or TextArea contents inside the same application.
  • BUG: Reparenting a top-level window does not show hidden children controls anymore.
  • BUG: Rich-text string management has been fixed. The ampersand character, the "&", ">" and "

What is new in version 2.16.0:

  • This release compiles with libtool 2.x on recent Ubuntu versions.
  • Ctrl+PageUp and Ctrl+PageDown now switch between tabs in the IDE.
  • Shortcuts are correctly saved in all cases in the IDE menu editor.
  • The READ instruction has been fixed on 64-bit systems.
  • gb.pdf now compiles with recent Poppler versions.

Similar Software

Comments to Gambas 3

Comments not found
Add Comment
Turn on images!