FLTK (pronounced "fulltick") is a cross-platform C++ GUI toolkit for UNIX®/Linux® (X11), Microsoft® Windows®, and MacOS® X. FLTK provides modern GUI functionality without the bloat and supports 3D graphics via OpenGL® and its built-in GLUT emulation. FLTK is designed to be small and modular enough to be statically linked, but works fine as a shared library. FLTK also includes an excellent UI builder called FLUID that can be used to create applications in minutes. FLTK is provided under the terms of the GNU Library Public License, Version 2 with exceptions that allow for static linking. More informations in http://www.fltk.org.
FLTK Summer Course - Part V - Fifth Impact - Exercises
1. Introdução ao Fast Light Toolkit – FLTK – Ciência da Computação – Universidade Federal de Alagoas – Curso de Verão
1 de 10
LISTA DE EXERCÍCIOS DE FIXAÇÃO :
Formulário de Login;
Front-end para o comando “tar” [ + gzip ou bzip2];
Relógio do Sistema;
Plotador de Equações do 2º Grau;
Charts e Cores [Revisitado];
Assistente de Participação nos Lucros [Acessórios];
Simulador de Lançamento Vertical para Cima;
Dicionário; Jogo de Tabuleiro; Jogo 21;
Jogo da Memória;
Mini-Agenda FltBook & SQLite [DESAFIO];
Autor : Michel A. dos Santos
Graduando do curso de Ciência da Computação/UFAL
Introdução ao Fast Light Toolkit - FLTK
5º IMPACTO
2. Introdução ao Fast Light Toolkit – FLTK – Ciência da Computação – Universidade Federal de Alagoas – Curso de Verão
2 de 10
Implemente uma classe para
Formulários de Login. O número de
caracteres aceitos nas caixas
“Usuário” e “Senha” deve ser 15,
porém essa propriedade deve ser
modificável no momento da
construção da mesma. O limite de
tentativas sem sucesso deve ser
3, porém essa deve ser outra
propriedade flexível. Emita
mensagens de aviso com caixas de
diálogo [message, aalert, etc.]
Formulário de Login :
3. Introdução ao Fast Light Toolkit – FLTK – Ciência da Computação – Universidade Federal de Alagoas – Curso de Verão
3 de 10
Front-end para o comando “tar” :
Implemente uma classe derivada de Fl_Window que sirva como front-end para
o comando tar e que verifique se os comandos bzip2 ou gzip também
estejam instalados. O software não precisa necessariamente ser uma cópia
fiel da ilustração acima porém deve ser funcional o suficiente.
4. Introdução ao Fast Light Toolkit – FLTK – Ciência da Computação – Universidade Federal de Alagoas – Curso de Verão
4 de 10
Relógio do Sistema :
Implemente um front-end
para o relógio do sistema
com opção de modificação
do horário local. Siga os
requisitos visuais da
primeira aba da figura
ilustrativa da esquerda.
Use o widget Fl_Clock.
5. Introdução ao Fast Light Toolkit – FLTK – Ciência da Computação – Universidade Federal de Alagoas – Curso de Verão
5 de 10
A entrada deve ser
numérica do tipo real
[ponto flutuante];
• A figura mostrada ao
lado que representa uma
parábola deve ser
substituída por um mini-
plotador construído
manualmente ou um
adaptado a partir da
classe Fl_Chart. Use o
Chart do tipo linha ou
FL_LINE_CHART.
Nota :
Esse exercício possui em anexo uma classe para
análise de equações do segundo grau.
Plotador de Equações do 2º Grau :
6. Introdução ao Fast Light Toolkit – FLTK – Ciência da Computação – Universidade Federal de Alagoas – Curso de Verão
6 de 10
Charts e Cores [Revisitado] :
Modifique o exemplo “Exemplo de
Chart” dado em aula e acrescente a
possibilidade de mudança de cores do
itens [A], [B] e [C]. A mudança
deverá ser feita através de um objeto
fl_color_chooser. A última cor
utilizada deve ser persistida em
disco.
7. Introdução ao Fast Light Toolkit – FLTK – Ciência da Computação – Universidade Federal de Alagoas – Curso de Verão
7 de 10
Assistente de Participação nos Lucros [Acessórios] :
Implemente os formulários de Login,
Sobre e Help da aplicação APL.pro.
Não se esqueça de fazer com que o
formulário Sobre se torne modal, ou
seja, com utilização restrita.
8. Introdução ao Fast Light Toolkit – FLTK – Ciência da Computação – Universidade Federal de Alagoas – Curso de Verão
8 de 10
Diversos :
Implemente um simulador de lançamento vertical para cima utilizando as primitivas de
desenho do fltk ou OpenGL. Devem ser fornecidas : a altura inicial de lançamento, a
aceleração da gravidade e a velocidade inicial. Devem ser calculadas e exibidas : a
altura máxima atingida, o tempo até o ponto de lançamento e o tempo total que o movimento
consumiu.
Implemente um dicionário Inglês-Português / Português-Inglês. Com possibilidade de
mudanças nas especificações dos verbetes. Armazene as informações em um banco de dados ou
em um arquivo texto indexado.
Implemente um jogo de tabuleiro com 60 casas e dado virtual com limite de 4 participantes
por jogo. O tema, os bônus, as armadilhas ficam por conta de sua criatividade. As jogadas
do dado virtual devem ser geradas a partir de uma classe de números “aleatórios”.
Implemente o jogo 21 para duas pessoas. O jogo consiste em tirar cartas do baralho até
que a soma dos números das cartas retiradas por um participante alcance 21 pontos. O
coringa assume sempre a quantia necessária até a soma final. As cartas retiradas do
baralho não podem mais retornar [ou seja, devem ser memorizadas].
9. Introdução ao Fast Light Toolkit – FLTK – Ciência da Computação – Universidade Federal de Alagoas – Curso de Verão
9 de 10
Utilize os requisitos visuais
mínimos pedidos : uso de botões
redondos, menus, sub-menus e
itens de menu do tipo normal e
do tipo radiobutton;
A seqüência deve ser aleatória
e o nível de dificuldade deve
aumentar a cada rodada de três
partidas; Insira um item de
menu para mudança de cor dos
botões [preferências do usuário]
Jogo da Memória :
10. Introdução ao Fast Light Toolkit – FLTK – Ciência da Computação – Universidade Federal de Alagoas – Curso de Verão
10 de 10
Mini-Agenda FltBook & SQLite :
Cumpra com os requisitos
visuais mínimos
Os registros devem ser
armazenados todos em um único
arquivo;
É obrigatório o uso do banco de
dados SQLite;