Slang++.
Mais...
Componentes | |
class | Posicao |
Representa a posição de uma célula do ecrã. Mais... | |
class | Dimensao |
Representa uma dimensão em células do ecrã. Mais... | |
class | Caixa |
Representa caixas no ecrã. Mais... | |
class | Ecra |
Representa o ecrã. Mais... | |
class | ObjectoCor |
Esta classe é usada para indicar a cor das células do ecrã (as células têm uma cor de texto e outra de fundo). Mais... | |
class | Troco |
Esta classe serve para representar um troço de ecrã. Mais... | |
struct | ManipuladorDaLargura |
Não usar directamente. Mais... | |
struct | ManipuladorDeDesenhoDeSegmento |
Não usar directamente. Mais... | |
class | ApendiceComCor |
Define ferramentas relacionadas com cores para os menus que as possuirem. Mais... | |
class | Menu |
Classe abstracta que representa a interface básica de todos os menus. Mais... | |
class | MenuComCor |
Classe abstracta que define a interface básica de todos os menus com cores. Mais... | |
class | MenuSimples |
Representa menus simples, que consistem numa sequência de itens. Mais... | |
class | MenuDeCores |
Representa menus de selecção das cores básicas usáveis no ecrã. Mais... | |
class | MenuDeSimOuNao |
Representa menus com apenas duas opções: sim e não. Mais... | |
class | Aviso |
Representa caixas de aviso, que apenas mostram uma mensagem e das quais se sai pressionando 'enter'. Mais... | |
class | CaixaDeTexto |
Representa caixas de texto, que quando executadas permitem ao utilizador introduzir uma cadeia de caracteres. Mais... | |
class | Tecla |
Representa teclas premidas. Mais... | |
class | Teclado |
Representa o teclado. Mais... | |
Operadores associados ao tipo enumerado Cor | |
std::ostream & | operator<< (std::ostream &saida, Cor const cor) |
Insere uma cor num canal. | |
std::istream & | operator>> (std::istream &entrada, Cor &cor) |
Extrai uma cor de um canal. | |
int const | numero_de_cores |
Constante que guarda o número total de cores. | |
Manipuladores do ecrã | |
Posicao const | cursor (int const linha, int const coluna) |
Manipulador usado para colocar o cursor numa dada posição. | |
Posicao const & | cursor (Posicao const &posicao) |
Manipulador usado para colocar o cursor numa dada posição. | |
Caixa const | caixa (int const linha, int const coluna, int const numero_de_linhas, int const numero_de_colunas) |
Manipulador usado para desenhar uma caixa com caracteres especiais numa dada posição e com uma dada dimensão. | |
Caixa const | caixa (Posicao const &origem=Posicao(), Dimensao const &dimensao=Dimensao()) |
Manipulador usado para desenhar uma caixa com caracteres especiais numa dada posição e com uma dada dimensão. | |
void | fundo (Ecra &ecra) |
Manipulador usado para indicar que as próximas escritas devem ser realizadas usando a cor do fundo do ecrã. | |
void | parado (Ecra &ecra) |
Manipulador usado para manter o cursor na posição corrente durante a próxima operação de inserção no ecrã. | |
void | sobeCursor (Ecra &ecra) |
Manipulador usado para subir o cursor no ecrã. | |
void | baixaCursor (Ecra &ecra) |
Manipulador usado para baixar o cursor no ecrã. | |
void | recuaCursor (Ecra &ecra) |
Manipulador usado para recuar o cursor no ecrã. | |
void | avancaCursor (Ecra &ecra) |
Manipulador usado para avançar o cursor no ecrã. | |
ManipuladorDaLargura | largura (int const largura) |
Manipulador usado para indicar o número de células do ecrã a ocupar na próxima operação de inserção no ecrã. | |
ManipuladorDeDesenhoDeSegmento | segmento_horizontal (int const largura) |
Manipulador usado para desenhar um segmento de recta horizontal. | |
ManipuladorDeDesenhoDeSegmento | segmento_vertical (int const altura) |
Manipulador usado para desenhar um segmento de recta vertical. | |
void | refresca (Ecra &ecra) |
Manipulador usado para refrescar o ecrã. | |
void | refresca_tudo (Ecra &ecra) |
Manipulador usado para fazer o refrescamento total do ecrã. | |
void | apaga (Ecra &ecra) |
Manipulador usado para apagar o ecrã (ou seja, para o pintar com a cor do fundo). | |
void | apaga_fim_da_linha (Ecra &ecra) |
Manipulador usado para apagar até ao fim da linha do cursor (ou seja, para o pintar com a cor do fundo). | |
void | apaga_fim_do_ecra (Ecra &ecra) |
Manipulador usado para apagar desde a posição do cursor até ao fim do ecrã (ou seja, para o pintar com a cor do fundo). | |
void | campainha (Ecra &ecra) |
Manipulador usado para fazer soar a campainha. | |
Constantes associadas à classe Caixa | |
Caixa const | caixa_vazia |
Constante representando uma caixa vazia, i.e., com dimensão nula. | |
Caixa const | caixa_universal |
Constante representando a caixa universal (enche todo o espaço). | |
Enumerações | |
enum | Cor { preto, primeira_cor = preto, cinza, vermelho, vermelho_brilhante, verde, verde_brilhante, castanho, amarelo, azul, azul_brilhante, magenta, magenta_brilhante, ciano, ciano_brilhante, cinzento_claro, branco, ultima_cor = branco } |
Representa as possíveis cores do texto e do fundo de cada célula do ecrã. Mais... | |
enum | Simbolo { diamante = '`', tijolo, ht, ff, cr, lf, grau, mais_menos, nl, vt, canto_inferior_direito, canto_superior_direito, canto_superior_esquerdo, canto_inferior_esquerdo, cruzamento, traco_topo, traco_superior, traco_horizontal, traco_inferior, traco_base, encontro_direita, encontro_esquerda, encontro_cima, encontro_baixo, traco_vertical, menor_ou_igual, maior_ou_igual, pi, diferente } |
Representa caracteres especiais úteis para desenhar no ecrã caixas e outros símbolos pouco usuais. Mais... | |
enum | Justificacao { ao_centro, a_esquerda, a_direita } |
Representa os vários tipos de justificação possíveis ao escrever texto no ecrã. Mais... | |
Funções | |
Ecra & | operator<< (Ecra &ecra, ManipuladorDaLargura const &manipulador) |
Não documentada. | |
Ecra & | operator<< (Ecra &ecra, ManipuladorDeDesenhoDeSegmento const &manipulador) |
Não documentada. | |
Variáveis | |
Ecra | ecra |
Uma variável global representando o ecrã. | |
std::string const | nomes_das_cores [numero_de_cores] |
Constante global com os nomes das cores. | |
Teclado | teclado |
Representa o teclado. |
Slang++.
Em particular envolve os módulos ecras, teclados e menus. A biblioteca Slang++
permite a utilização de algumas ferramentas que actuam sobre o teclado e o ecrã e a criação de menus simples em modo texto. A biblioteca consiste de um pacote Slang (representado pelo espaço nominativo Slang) dividido em quatro módulos fisicos: teclado, ecra, menu e util. Cada módulo físico possui o correspondente ficheiro de interface (Slang++/teclado.H, Slang++/ecra.H, Slang++/menu.H e Slang++/util.H).
Estão definidas nesta biblioteca as variáveis globais teclado (do tipo Slang::Teclado) e ecra (do tipo Slang::Ecra), não sendo por isso necessário criar quaisquer variáveis destes tipos.
Para construir um programa (neste caso teste_slang.C) que utilize estas biblioteca deve dar um comando com o seguinte aspecto:
c++ opções_de_compilação -o teste_slang teste_slang.C -lSlang++ -lUtilitarios -lslang
As opções -lSlang++
e -lslang
destinam-se a fundir o ficheiro objecto de teste_slang
com as bibliotecas Slang++
e S-Lang, na qual Slang++
se baseia. A opção -lUtilitarios
destina-se a fundir o ficheiro objecto com a biblioteca Utilitarios,
da qual a biblioteca Slang++
depende.
Os ficheiros fonte devem incluir o ficheiro de interface Slang++/slang.H, que por sua vez inclui os ficheiros de interface dos quatro módulos, ou incluir apenas o ficheiro de interface do módulo pretendido.
Sempre que se pretender executar algum programa que use a biblioteca Slang++,
deve-se usar uma consola xterm
(outras consolas podem gerar alguns problemas). Para lançar uma consola xterm
deve-se dar o comando:
xterm&
numa consola normal (Konsole).
Pode-se também fazer <alt-F2> e escrever xterm
na caixa de diálogo que surge no ecrã.
|
Não documentada.
Definido na linha 1089 do ficheiro ecra_impl.H. Referências ecra, Slang::ManipuladorDaLargura::largura e Slang::Ecra::mudaLarguraDaProximaOperacaoDeEscritaPara(). |
|
Não documentada.
Definido na linha 1108 do ficheiro ecra_impl.H. Referências Slang::Ecra::desenhaSegmentoHorizontalCom(), Slang::Ecra::desenhaSegmentoVerticalCom(), Slang::ManipuladorDeDesenhoDeSegmento::dimensao, Slang::ManipuladorDeDesenhoDeSegmento::e_horizontal e ecra. |