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.
Abordagens 4 (Problematização) e 5 (Síntese pessoal) do texto de Severino (20...
FLTK Summer Course - Part II - Second 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 :
Classificador de Triângulos;
Agenda telefônica;
Processamento de Notas Escolares;
Quadrado Mágico;
Relatório de viagens;
Jogo da Forca;
Palavra Embaralhada;
FltBingo;
Organização das partições em disco;
Implementação de uma Calculadora - FltKalc - [Exercício Desafio].
Autor : Michel A. dos Santos
Graduando do curso de Ciência da Computação/UFAL
Introdução ao Fast Light Toolkit - FLTK
2º 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
Classificador de Triângulos :
A entrada deve ser numérica do
tipo real [ponto flutuante];
O arquivo com as medidas deve
ter a extensão .tri [cada medida
do triângulo deve ficar em uma
linha do arquivo];
Se as medidas não formarem um
triângulo os 3 painéis de
classificação devem ser
desabilitados e uma mensagem
avisando sobre o fato deve ser
emitida;
Nota : Implemente uma classe triângulo para facilitar o processamento dos
dados e diminuir o acoplamento entre a camada de negócios e a camada de
visão.
3. Introdução ao Fast Light Toolkit – FLTK – Ciência da Computação – Universidade Federal de Alagoas – Curso de Verão
3 de 10
Agenda Telefônica :
Utilize os requisitos visuais
mínimos pedidos : uso de
menus, sub-menus e itens de
menu do tipo normal e do tipo
checkbutton; O conteúdo deve
ser persistido em disco [utilize o
arquivo MyDatabase.dat].
4. Introdução ao Fast Light Toolkit – FLTK – Ciência da Computação – Universidade Federal de Alagoas – Curso de Verão
4 de 10
Processamento de Notas Escolares :
Nota : A lista ao lado é um exemplo de
arquivo que deva ser carregado. Um arquivo
similar foi anexado ao exercício. A
separação dos dados é feita por tabulação.
Se média >= 07.00 então o aluno estará aprovado e a caixa de saída
emitira a mensagem “APROVADO” com fonte verde; caso a média seja
< 07.00 a mesma caixa emitirá a mensagem “REPROVADO” em
vermelho.
5. Introdução ao Fast Light Toolkit – FLTK – Ciência da Computação – Universidade Federal de Alagoas – Curso de Verão
5 de 10
Quadrado Mágico :
Utilize os requisitos visuais
mínimos pedidos : uso de
menus, sub-menus e itens de
menu do tipo normal e do tipo
radiobutton;
Os números em vermelho
devem ser os números sorteados
pelo computador para exibição,
os números em verde são os
fornecidos pelo usuário;
Nota : Um quadrado mágico é aquele dividido
em linhas e colunas, com um número em cada
posição e no qual a soma das linhas, colunas
e diagonais é a mesma.
6. Introdução ao Fast Light Toolkit – FLTK – Ciência da Computação – Universidade Federal de Alagoas – Curso de Verão
6 de 10
Relatório de Viagens :
Analise o relatório
ao lado e construa um
mini-sistema para
acompanhamento de
despesas de viagem;
As informações
entre [] são dados
informados pelo
usuário ou dados
calculados pelo
programa;
Nota : Para esse exercício será necessária a implementação de uma classe
Data e de uma função utilitária que receba objetos dessa classe e
consiga calcular a diferença entre seus valores retornando tal diferença
em dias. Cuidado com valores como “Cidades Visitadas”, pois valores como
estes são atômicos e não resultado da entrada manual do usuário em uma
simples caixa de texto. As despesas deverão, além de tudo, ser
apresentadas em um Fl_Chart do tipo FL_PIE_CHART.
7. Introdução ao Fast Light Toolkit – FLTK – Ciência da Computação – Universidade Federal de Alagoas – Curso de Verão
7 de 10
Jogo da Forca :
Implementar um programa que jogue o jogo da forca. Na tela deverá ser mostrado o
alfabeto, destacando as letras já tentadas. Um banco de palavras pode ser implementado
em vetor ou em arquivos, permitindo ao programa sortear uma palavra. Extensões:
armazenar histórico do jogador: nome, jogadas ganhas e perdidas, etc.
Palavra Embaralhada :
Implementar um programa que, a partir de um banco de palavras, seleciona aleatoriamente
uma palavra, embaralha as letras e dá um tempo para o usuário adivinhar a palavra.
FltBingo :
Elabore um programa que faça sorteios de bingo. O programa deverá oferecer opções de
iniciar um sorteio, sortear um número e apresentar os números sorteados até um
determinado momento. Note que o programa não poderá repetir um número já sorteado.
Organização das partições em disco :
Elabore um programa que leia o arquivo /etc/fstab e apresenta uma tela
com a estrutura de particionamento do disco. Utilize uma cor para cada
partição. O uso de componentes do tipo valuators ou barras de progresso
é permitido.
8. Introdução ao Fast Light Toolkit – FLTK – Ciência da Computação – Universidade Federal de Alagoas – Curso de Verão
8 de 10
Fltk Calc [Exercício Desafio]:
Utilize os requisitos
visuais mínimos
pedidos : uso de
menus, sub-menus,
itens de menu do tipo
normal e radio button e
painéis. Os “números”
e “funções” devem ver
botões normais e a
barra de status um
simples Fl_Group.
Nota :
Antes de tudo, implemente um analisador léxico para as operações que
serão realizadas, com isso será mais fácil lidar com a pilha de execução.
9. Introdução ao Fast Light Toolkit – FLTK – Ciência da Computação – Universidade Federal de Alagoas – Curso de Verão
9 de 10
A pilha de execução deve ser salva ou carregada a partir de um
arquivo texto [ascii] que possua a extensão .stk [de stack], para tal
é necessária a utilização dos “diálogos” [abertura/salvamento];
“Agrupamento em dígitos” -> Agrupamento de 3 em 3 dígitos
através de vírgulas[apenas para efeito de visualização];
10. Introdução ao Fast Light Toolkit – FLTK – Ciência da Computação – Universidade Federal de Alagoas – Curso de Verão
10 de 10
A opção de
menu “Sobre”
pode ser
implementada
tanto usando
uma caixa de
diálogo comum
do tipo
fl_message,
como uma
outra janela em
formato modal;
Coloque um
ícone na janela
no lugar do
ícone padrão.