GTK+

GTK+ é a principal biblioteca utilizada para a construção de interfaces de usuário no GNOME. Ela fornece todos os controles de interface de usuário, ou widgets, usadas em uma aplicação gráfica comum. Ela é moderna e as APIs orientadas a objetos permitem a construção de interfaces de usuário atraentes e sofisticadas sem ter que lidar com detalhes de baixo nível de desenho e interação de dispositivos.

Além dos widgets básicos como botões, caixas de seleção e entradas de texto, o GTK+ também oferece potentes APIs com MVC (controlador de modelo de visualização) para visualizações em árvore, campos de texto com múltiplas linhas e ações de menu e barra de tarefas.

Os widgets no GTK+ são colocados nas janelas usando um modelo de empacotamento de caixas. Os programadores apenas especificam como empacotar os widgets juntos em caixas de container, ao invés de posicioná-las diretamente com coordenadas absolutas. O GTK+ certifica-se de que as janelas estão do tamanho certo para ajustar seus conteúdos e isto automaticamente manipula redimensionamento de janelas.

Pelo fato do GTK+ oferecer uma API flexível, o desenvolvimento de widgets adicionais para usar em aplicativos GTK+ é moleza. Existe uma série de bibliotecas de terceiros que oferecem widgets adicionais e muitos desenvolvedores têm criado widgets customizados com propósitos especiais para seus aplicativos.

GTK+ manipula os detalhes problemáticos (difíceis) das interfaces e interação de usuários e fornece uma API potente ainda que simples, que lhe permite focar nos detalhes do seu aplicativo. Os aplicativos desenvolvidos com o GTK+ seguirão automaticamente o tema do usuário e configurações de fonte, irão interagir convenientemente com tecnologias de acessibilidade e irão se comportar como os usuários esperam.