Migrate from GitHub to SourceForge with this tool. Check out all of SourceForge's recent improvements.

garlic / Blog: Recent posts

Garlic - Garlic3

Garlic was set up to keep tools and code for Gambas2 projects.

Code for Gambas3 is kept in Garlic3.

New development is mainly done on the Gambas3/Garlic3 versions, e.g. DbInfoCode, now DbInfoCode3: https://sourceforge.net/projects/garlic3/files/Tools/DbInfoCode

Posted by cybrarian 2017-10-27


LabelPrint code to check out printing on labels in Gambas2.
Classes for label, labeljob, printpage, ...
Purpose: Printing to very common laserprinter on sheets (A4,..) with peel-off labels, ordered in rows/columns.
choose number of rows - columns (depending on label sheet)
test out the printing limits (left, top, right, bottom)
test out the margins - locations of the labels
test out label positioning, eventual whitespace between labels can be given
test print some lines of a label.
keep page and label margins etc in a settings file
Testing out settings for use in another program.
Use parts of the code, classes, etc.

Posted by wignoxqs 2017-03-21

ProbableCause 0.1.x to check your gambas2 code for unused vars

Beta! (now 0.1.5)

Gambas 3 has the nice feature to show you variables that are not used, so you can keep your code clean.

Gambas 2 doesn't have this feature, so "ProbableCause" does it for you:
1. Choose your project with File, Open
2. Push project button to get all the program code files (.module and .class)
3. Scan all files (or select one/some of the files) and press the button to start scanning

You get lists on your screen that get filled with the variables you used, sorted in public, private, and local variables.... read more

Posted by wignoxqs 2015-01-15

EmptyDBProject 0.0.5

  • Import DB settings now managed from settings Form

When Settings form is opened, connection to Import DB is tested

Posted by wignoxqs 2014-10-10

SimplePingScan 0.0.4

Everytime I use it, I need something else, so some adjustement:
Split the functions on the screen:
- ping a range (to see what addresses are free)
- ping a host (to check if ip address changes)

Posted by wignoxqs 2014-10-07

EmptyDBProject update

Added runcounter/closecounter
Added whatsnew.txt

Posted by wignoxqs 2014-04-18

Chess Clock "ChessTimer" added (in B)

Chess Clock with setting for time to play or time to think, display with two clocks, switches on with space, switch player with space or mouse click.
Indicates when player reached 90% of his time.
When time over in running clock, clock turns red and stops.
When clock stopped, shows min and max thinking time, plus average for every player.
Gambas Exercise on the use of a Timer.

Posted by cybrarian 2013-04-01

SimpleCounter added (in B)

Store the readings of all counters: gas, electricity, solar Photovoltaic installation, water and other meters. Compare with previous reading value and calculate the difference immediately. Make new meter with properties as name, description and an image. Choose the meter from a drop-down list with the names or from the picture in a picture-bar. Other applications can do calculations on the data that is stored in MySQL database. (show in dashboards, alarm or react on peak values etc)

Posted by wignoxqs 2013-03-25

RandomFrom added

Make an array with random sequence of given range of 1 to maxnumbers.

At start the maximum number must be given, e.g. 10.
The array is filled with random numbers out of 1-10, none comes double, and zero is avoided.

By sequentially reading all the numbers from the array, you get "random" order the numbers from the range 1-10

Posted by cybrarian 2013-01-06

DistributeSquares added

Number of graphic elements ("squares"), eg 10, have to be drawn on screen, so that the available space is filled as good as possible. So that 9 images fills the given surface nicely, but given 11 leaves one square unused.
Can be used for buttons, cardgames, POS, ...

DistributeSquares first guesses and draws on screen: images run somewhat from the screen. An alternative is a second calculation on the results of the first, to correct it slightly; clear and draw again (see buttons), and with recalculate2 the images are spread nicely over the available space.

Posted by cybrarian 2013-01-06 Labels: image resize fill expand

Filler added

Filler shows a Form FMain with Arrangement = Fill mode, containing:
HBox1 expand=TRUE in itself containing:
- VBox1 (VSplit1: Panel1, Listbox)
- Frame1: VBox2 (HBox2, HBox3), ListBox2

Posted by cybrarian 2012-12-02


This projects shows how to create an array of objects. The objects in this example are "Gambas" buttons.

The number of objects is not known in advance; the array is made at runtime;

  • The number of buttons made can be set.
  • The number of columns can be set
    The buttons are arranged in a Panel in the main window.

Test click on the button will show the button's id in the log-window underneath.

Have fun.... read more

Posted by cybrarian 2012-11-12 Labels: array object