Gideros Studio IDE

This page contains changes which are not marked for translation.

Gideros Studio IDE is written in Qt, using Qt Creator IDE and SDK.

Gideros Studio IDE

Gideros Studio comes with an IDE, enabling faster development of applications. Gideros Studio helps you organize resources, prevent mistakes and provide shorter ways throughout development process. During the build, Gideros Studio translates your code from Lua to native code of the targeted platform.

When you start Gideros Studio, it opens in the welcome mode and shows the dashboard. Here you can do the following:

  • Create and open projects
  • Read Getting Started Guide
  • Read Reference Manual
  • Open all recent projects and sessions
  • Open tutorials and 30+ example projects

Menu Organisation

The menu organization is straightforward and easy to understand. Below, you can see each menu and what they do.

  1. File menu: Here you can open, save, close a project, or maintain your recent projects. This is also the place where you export your code to Eclipse or XCode.
  2. Edit menu: Provides a basic mechanism of editing actions, like undo, redo, cut, copy, paste, find and more.
  3. Compile menu: This menu is used to check the syntax of your code, by compiling the project and writing the possible errors to the output console.
  4. Player menu: Runs Gideros Player on the desktop, or starts the application on the player (which can be on the mobile device, or desktop). If you want to test your application, you need to install the player on the device, which is explained in the following chapters.
  5. Help: Includes a link to Developer Center and Reference Manual (API documentation).

Note that you can reach many menu items by using one of the Menu Shortcuts.

Project Panel

The project pane shows the project files, including all Lua files and assets like graphics and sound. All files added to the project can be seen here.


If you want to add a Lua file here, right click on the project name and click on "Add a new file". This will add a new Lua file to the project. If you have an existing file (e.g Lua, PNG, JPEG etc) then click "Add existing file" instead. These files won’t be copied to the project folder.

Output Panel

The output pane will give you valuable information when you run your project in a player. For one you will see which assets are transferred to the player. Also you will see error messages from Lua in the output panel.


Code Panel

The code pane is your playground where you create your magic. Means there you type in the Lua code that creates the application of your dreams. It supports syntax color highlighting which depends on the actual code. Comments in Lua are colored differently from string values or Lua keywords.


File Tabs

For every file you have currently opened in Gideros Studio, there will be a tab with its name above the code area.


To navigate between this files, just click on the name and the code area will change to this file. If you want to close the file, just click on the little X next to the name of the file.


If you have bookmarked a line or more in your code, the gutter on the left, which shows the line numbers by default, will show little triangles to indicate that a bookmark was set there.


To set, remove and navigate between the bookmarks, use the icons on the toolbar.



The code pane of Gideros Studio also supports you with an auto completion feature which you will love. Depending on what you type in, it will make suggestions on what could be inserted and you can chose from a list box a method/function that you would like to use. If you don’t want that, just press the escape key and the box will close automatically.

Running Your Application on Gideros Player

To get your first sample script running in the Gideros desktop player, you need to start it actually. The fastest way is to click on that little game controller icon in the toolbar. Gideros Studio will now start the GiderosPlayer application and shortly you should see the player on your desktop.


The player will start in the last chosen orientation, resolution and zoom factor. Please note that the Start and Stop icons become active when a linked player is running.


Output Panel (Advanced)

The output panel actually understands HTML text, so you can send commands to colour text, etc.
Here is an example to add a new type of 'print' command called 'debug' that outputs text in red:

function debug(t)
   print([[<font color="#f48">]]..string.gsub(t or "","[}{\">/<'&]", {["&"]="&amp;",["<"] ="&lt;",[">"] = "&gt;",['"'] = "&quot;",["'"] = "&#39;",["/"] = "&#47;"}).."</font>")
debug("This is a test")

Here is an example that outputs a table:

function printTable(t)
   local m="<table><tr><th>Key</th><th>Value</th></tr>"
   for key,value in pairs(t) do
      m=m.."<tr><td>"..(key or "").."</td><td>"..(value).."</td></tr>"