Susanna Huhtanen
ihmis.suski@gmail.com 2012
A beginner's guide to writing GNOME applications in JavaScript, including code samples and practice exercises.

# 0. Titoriais e exemplos para principiantes

      JavaScript is one of the most popular programming languages on the web. It's not just for the web, though. If you have even a basic understanding of JavaScript, you can write full-fledged applications for GNOME. GNOME Documents is written in JavaScript, and so is GNOME Shell, the most basic part of GNOME.
      GNOME Shell is what you see when you click on "Activities" in the top-left corner of your screen. It also controls the clock and the rest of the top panel. Besides showing how you to write GNOME applications, these tutorials will also show you how to use JavaScript to write GNOME Shell extensions, which give it new features or change the way it does things.

# Comezar

These tutorials are designed for people who already know how to write in JavaScript, and who have GNOME installed on their computers already, but who are new to developing GNOME applications. If you don't already know JavaScript, or if you need help getting GNOME set up, take a look at these resources first:

Eloquent JavaScript is a free, Creative Commons-licensed book, which explains the basics of JavaScript programming. Since you won't be writing JavaScript for the web, you only need to read up to chapter 10 or so.

Download GNOME as part of a distribution, like Fedora, openSUSE, or Ubuntu. Each distribution has its own instructions for how to get GNOME.

Set up gedit for writing applications. GNOME's text editor, gedit, is sometimes just called "text editor."

# Titoriais

# Exemplos de código

These samples show how to use widgets in your GNOME applications. Each one demonstrates a complete application which showcases the featured widget. At the end of each sample, you will find links to more detailed reference material.

Para executar os exemplos de código

Copy and paste the code into filename.js

Escriba no terminal, escriba:

    gjs nomeficheiro.js

## Xanelas

## Widgets de visualización

## Botóns e casillas

## Entrada de datos numérica e de texto

## Editor de texto multiliña

## Widgets de menú, caixa combinada e barra de ferramentas

## Widget TreeView

## Selectores

### Selectores de ficheiros

### Selectores de tipos de letra

### Selectores de color

## Contedores da distribución

## Adornos

## Desprazamento

## Varios

# Exercicios