Página principal   Módulos   Lista de namespaces   Hierarquia de classes   Lista de componentes   Lista de ficheiros   Membros do namespace   Componentes   Declarações   Paginas relacionadas  

Referencia ao namespace Slang

Este espaço nominativo envolve todas as ferramentas da biblioteca Slang++. Mais...


Componentes

struct  Slang::Ecra::Apaga
struct  Slang::Ecra::ApagaFimDaLinha
struct  Slang::Ecra::ApagaFimDoEcra
class  Slang::ApendiceComCor
 Define ferramentas relacionadas com cores para os menus que as possuirem. Mais...

class  Slang::Aviso
 Representa caixas de aviso, que apenas mostram uma mensagem e das quais se sai pressionando 'enter'. Mais...

class  Slang::Caixa
 Representar caixas no ecrã. Mais...

class  Slang::CaixaDeTexto
 Representa caixas de texto, que quando executadas permitem ao utilizador escrever uma cadeia de caracteres. Mais...

struct  Slang::Ecra::Campainha
class  Slang::Dimensao
 Representa uma dimensão no ecrã. Mais...

class  Slang::Ecra
 Esta classe é um solitão: a sua única instância representa o ecrã. Mais...

class  Slang::Erro
 Base de uma pequena hierarquia de classes representando excepções. Mais...

class  Slang::ErroAoCarregar
 Representa excepções de carregamento de objectos a partir de canais. Mais...

class  Slang::ErroAoGuardar
 Representa excepções ao guardar objectos usando canais. Mais...

struct  Slang::Ecra::Fundo
class  Slang::Ignora
 Representa manipuladores de entrada que ignoram caracteres. Mais...

struct  Slang::Ecra::Largura
struct  Slang::Ecra::Linha
class  Slang::Menu
 Define a interface básica de todos os menus. Mais...

class  Slang::MenuComCor
 Define a interface básica de todos os menus com cores. Mais...

class  Slang::MenuCor
 Representa menus de selecção das cores básicas usáveis no ecrã. Mais...

class  Slang::MenuSimNao
 Esta classe serve para representar menus com apenas duas opções: sim e não. Mais...

class  Slang::MenuSimples
 Representa menus simples, que consistem numa sequência de itens. Mais...

class  Slang::Ecra::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...

struct  Slang::Ecra::Parado
class  Slang::Posicao
 Representa a posição de uma célula do ecrã. Mais...

struct  Slang::Ecra::Refresca
struct  Slang::Ecra::RefrescaTudo
class  Slang::Tecla
 Representa teclas premidas. Mais...

class  Slang::Teclado
 Esta classe é um solitão: a sua única instância representa o teclado. Mais...

class  Slang::Ecra::Troco
 Esta classe serve para representar um troço de ecrã. Mais...


Operadores associados à classe Posicao

Posicao operator+ (Posicao a, Posicao const &b)
 Soma de duas posições (o segundo operando é interpretado como um vector). Mais...

Posicao operator- (Posicao a, Posicao const &b)
 Diferença de duas posições (o resultado pode ser interpretado como um vector). Mais...

Posicao operator+ (Posicao a, Dimensao const &b)
 Soma de uma posição com uma dimensão. Mais...

Posicao operator- (Posicao a, Dimensao const &b)
 Subtracção de uma dimensão a uma posição. Mais...

Posicao operator- (Posicao const &b)
 Simétrico de uma posição. Mais...

bool operator== (Posicao const &a, Posicao const &b)
 Comparação entre duas posições. Mais...


Operadores associados à classe Dimensao

Dimensao operator+ (Dimensao a, Dimensao const &b)
 Soma de duas dimensões. Mais...

Dimensao operator- (Dimensao a, Dimensao const &b)
 Subtracção de duas dimensões. Mais...

bool operator== (Dimensao const &a, Dimensao const &b)
 Comparação entre duas dimensões. Mais...


Operadores associados à classe Caixa

Caixa operator+ (Caixa a, Posicao const &c)
 Soma de caixa posição: devolve caixa deslocada. Mais...

Caixa operator+ (Posicao const &c, Caixa a)
 Soma de caixa com posição: devolve caixa deslocada. Mais...

Caixa operator+ (Caixa a, Caixa const &b)
 "Soma" de duas caixas: devolve caixa envolvente das duas caixas. Mais...

Caixa operator * (Caixa a, Caixa const &b)
 "Produto" de duas caixas: devolve intersecção das duas caixas. Mais...


Operadores associados ao tipo enumerado Cor

std::ostream& operator<< (std::ostream &saida, Cor cor)
 Operador de inserção de cores num canal. Mais...

std::istream& operator>> (std::istream &entrada, Cor &cor)
 Operador de extracção de cores de um canal. Mais...


Manipuladores do ecrã

Posicao cursor (int linha, int coluna)
 Manipulador usado para colocar o cursor numa dada posição. Mais...

Caixa caixa (int linha, int coluna, int linhas, int colunas)
 Manipulador usado para desenhar uma caixa com caracteres especiais numa dada posição. Mais...

Ecra::Linha const linha_horizontal (true)
 Manipulador usado para desenhar uma linha horizontal. Mais...

Ecra::Linha const linha_vertical (false)
 Manipulador usado para desenhar uma linha vertical. Mais...

Ecra::Fundo const fundo
 Manipulador usado para indicar que as próximas escritas devem ser realizadas usando a cor do fundo do ecrã. Mais...

Ecra::Parado const parado
 Manipulador usado para manter o cursor na posição corrente depois da próxima operação de escrita no ecrã. Mais...

Ecra::Largura const largura
 Manipulador usado para indicar o número de caracteres a escrever na próxima operação de escrita de tipos usuais (char, int, std::string). Mais...

Ecra::Refresca const refresca
 Manipulador usado para refrescar o ecrã. Mais...

Ecra::RefrescaTudo const refresca_tudo
 Manipulador usado para fazer o refrescamento total do ecrã. Mais...

Ecra::Apaga const apaga
 Manipulador usado para apagar o ecrã (ou seja, para o pintar com a cor do fundo). Mais...

Ecra::ApagaFimDaLinha const apaga_fim_da_linha
 Manipulador usado para apagar até ao fim da linha do cursor (ou seja, para o pintar com a cor do fundo). Mais...

Ecra::ApagaFimDoEcra const apaga_fim_do_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). Mais...

Ecra::Campainha const campainha
 Manipulador usado para fazer soar a campainha. Mais...


Constantes associadas à classe Caixa

Caixa const caixa_vazia
 Constante representando uma caixa vazia. Mais...

Caixa const caixa_universal
 Constante representando a caixa universal (enche todo o espaço). Mais...


Manipuladores extra para std::istream

Ignora const il
 Manipulador que ignora todos os caracteres até ao próximo fim-de-linha ('\n'). Mais...

Ignora const ill
 Manipulador que ignora todos os caracteres até ao próximo fim-de-linha ('\n') mas primeiro limpa possíveis condições de erro do canal. Mais...


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
}
 ecra.H Slang/ecra.H 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
}
 ecra.H Slang/ecra.H Representa os caracteres especiais úteis para desenhar caixas e outros símbolos especiais. Mais...

enum  Justificacao { ao_centro, a_esquerda, a_direita }
 ecra.H Slang/ecra.H Representa os vários tipos de justificação possíveis ao escrever texto no ecrã. Mais...


Funções

Caixa caixa (Posicao const &origem=Posicao(), Dimensao const &dimensao=Dimensao())
Posicao cursor (Posicao const &posicao)
std::istream& operator>> (std::istream &entrada, Ignora const &ignora)
 Operador de extracção para os manipuladores de ignorar caracteres. Mais...


Variáveis

int const numero_de_cores
 Constante que guarda o número total de cores. Mais...

Ecra ecra
 Uma variável global representando o ecrã. Mais...

string const nomes_das_cores [numero_de_cores]
 Constante global com os nomes das cores. Mais...

Teclado teclado
 Uma variável global representando o teclado. Mais...


Descrição detalhada

Este espaço nominativo envolve todas as ferramentas da biblioteca Slang++.

A biblioteca Slang++ permite a utilização de algumas funções 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 um com 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.

Nesta documentação omite-se o prefixo Slang:: sempre que conveniente para facilitar a leitura, embora em rigor este seja necessário.

Para construir um programa (neste caso teste_slang.C) que utilize estas biblioteca deve dar o seguinte comando:

c++ -Wall -ansi -pedantic -g -o teste_slang teste_slang.C -lSlang++ -lslang 

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 testar 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ã.

Caso se pretenda instalar esta biblioteca noutro computador deve-se fazer o seguinte:

  1. Importar os seguintes ficheiros: Para importar no netscape basta fazer 'shift-clique' no botão esquerdo do rato.
  2. Dar os seguintes comandos:
    su (inserir a senha [password] de administração da máquina) 
    rpm -Uhv slang*.rpm 
    tar -zxf Slang++-0.2.tar.gz 
    cd Slang++ 
    make 
    make install
    cd .. 
    exit
    
Autor(es):
Manuel Menezes de Sequeira
Versão:
0.2
Data:
2000


Documentação do tipo de enumeração

enum Slang::Cor
 

ecra.H Slang/ecra.H Representa as possíveis cores do texto e do fundo de cada célula do ecrã.

Note-se que nem todas as cores são válidas para o fundo em todos os terminais! Experimente para verificar quais é que funcionam bem... Ver na documentação abaixo os nomes das cores usados para inserção e extração de canais.

Valores da enumeração:
preto   Num canal: preto.
primeira_cor  
cinza   Num canal: cinza.
vermelho   Num canal: vermelho.
vermelho_brilhante   Num canal: vermelho-brilhante.
verde   Num canal: verde.
verde_brilhante   Num canal: verde-brilhante.
castanho   Num canal: castanho.
amarelo   Num canal: amarelo.
azul   Num canal: azul.
azul_brilhante   Num canal: azul-brilhante.
magenta   Num canal: magenta.
magenta_brilhante   Num canal: magenta-brilhante.
ciano   Num canal: ciano.
ciano_brilhante   Num canal: ciano-brilhante.
cinzento_claro   Num canal: cinzento-claro.
branco   Num canal: branco.
ultima_cor  

Definido na linha 361 do ficheiro ecra.H.

00361              {
00362         preto,                  
00363         primeira_cor = preto,        
00364         cinza,                  
00365         vermelho,               
00366         vermelho_brilhante,     
00367         verde,                  
00368         verde_brilhante,        
00369         castanho,               
00370         amarelo,                
00371         azul,                   
00372         azul_brilhante,         
00373         magenta,                
00374         magenta_brilhante,      
00375         ciano,                  
00376         ciano_brilhante,        
00377         cinzento_claro,         
00378         branco,                 
00379         ultima_cor = branco
00380     };

enum Slang::Justificacao
 

ecra.H Slang/ecra.H Representa os vários tipos de justificação possíveis ao escrever texto no ecrã.

Veja também:
largura
Valores da enumeração:
ao_centro   Manipulador usado para colocar justificação centrada.

Veja também:
largura
a_esquerda   Manipulador usado para colocar justificação à esquerda.

Veja também:
largura
a_direita   Manipulador usado para colocar justificação à direita.

Veja também:
largura

Definido na linha 425 do ficheiro ecra.H.

00425                       {
00429         ao_centro,
00433         a_esquerda,
00437         a_direita
00438     };

enum Slang::Simbolo
 

ecra.H Slang/ecra.H Representa os caracteres especiais úteis para desenhar caixas e outros símbolos especiais.

Valores da enumeração:
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  

Definido na linha 387 do ficheiro ecra.H.

00387                  {
00388         diamante = '`',
00389         tijolo,
00390         ht,
00391         ff,
00392         cr,
00393         lf,
00394         grau,
00395         mais_menos,
00396         nl,
00397         vt,
00398         canto_inferior_direito,
00399         canto_superior_direito,
00400         canto_superior_esquerdo,
00401         canto_inferior_esquerdo,
00402         cruzamento,
00403         traco_topo,
00404         traco_superior,
00405         traco_horizontal,
00406         traco_inferior,
00407         traco_base,
00408         encontro_direita,
00409         encontro_esquerda,
00410         encontro_cima,
00411         encontro_baixo,
00412         traco_vertical,
00413         menor_ou_igual,
00414         maior_ou_igual,
00415         pi,
00416         diferente
00417     };


Documentação da função

Slang::Caixa Slang::caixa ( Slang::Posicao const & origem = Posicao(),
Slang::Dimensao const & dimensao = Dimensao() ) [inline]
 

Definido na linha 624 do ficheiro ecra_impl.H.

00625                                                                 {
00626     return Caixa(origem, dimensao);
00627 }

Slang::Posicao Slang::cursor ( Slang::Posicao const & posicao ) [inline]
 

Definido na linha 616 do ficheiro ecra_impl.H.

00616                                                              {
00617     return posicao;
00618 }


Gerado em Mon May 14 17:22:14 2001 para Slang++ por doxygen1.2.6 escrito por Dimitri van Heesch, © 1997-2001