WOL
Home Download Documentação A Fazer... Links Pascal Começar

TWOLGraphic - WOLGUI

Classe de objetos que implementam o básico necessário para manipular streams gráficos. Por si só não é funcional. Serve como classe originária de outras que darão funcionalidade. É uma abstração da classe funcional. Arquivo fonte: WOLGUI03.PP.

Propriedades do TWOLGraphic

Propriedade Descrição
Empty Propriedade que informa se o gráfico está vazio ou não.
Width: Propriedade que informa o valor da largura do gráfico.
Height Propriedade que informa o valor da altura do gráfico.
Transparent Propriedade que informa/modifica a transparência do gráfico.
TranspColor Propriedade que indica a cor de transparência do gráfico.
FileName Propriedade que indica o nome do arquivo que contém o objeto gráfico.

Métodos e Eventos Públicos

procedure Draw(DC:TWOLCanvas; X, Y:TWOLInteger); virtual;
Método usado para desenhar o gráfico no canvas indicado pelo parâmetro DC na posição da coordenada.
procedure StretchDraw(DC:TWOLCanvas; Dest:TWOLRect); virtual;
Método usado para desenhar o gráfico no canvas DC espichando-o no retângulo indicado.
procedure Assign(Value:TWOLGraphic); virtual;
Método usado para copiar os valores de um gráfico para outro.
procedure Clear; virtual;
Método usado para limpar os valores do gráfico
procedure FreeResources; dynamic;
Método usado para liberar os recursos usados pelo gráfico.
procedure LoadFromFile(const aFilename:string); virtual;
Método usado para carregar um gráfico de um arquivo indicado.
procedure SaveToFile(const aFilename:string); virtual;
Método usado salvar o gráfico em um arquivo especificado.
procedure LoadFromStream(Stream:TStream); virtual; abstract;
Método usado para carregar o gráfico de um stream.
procedure SaveToStream(Stream:TStream); virtual; abstract;
Método usado para salvar o gráfico em um stream.
OnChanging:TNotifyEvent
Evento disparado quando o gráfico está sendo modificado.
OnChanged:TNotifyEvent
Evento disparado quando o gráfico foi modificado.

TWOLCanvas - WOLGUI

Descendente de TWOLRoot. É uma classe de objetos que representa uma superfície onde se pode desenhar, alterando-se as propriedades das linhas, do preenchimento e dos tipos de letras a serem aplicados a essa superfície. No MS-Windows, essa superfície é o dispositivo de contexto (DC = Device Context) e no GTK/GDK é contexto gráfico (GC = Graphic Context). Todo objeto visual disponibiliza um canvas que pode ser alterado em diversas propriedades. Assim como as impressoras, cujo canvas representa o papel a ser usado. Arquivo fonte: WOLGUI03.PP.

Propriedades do TWOLCanvas

Propriedade Descrição
IsHandleZero Propriedade que informa se o handle do canvas tem valor zero ou não.
Font Propriedade que carrega em si um objeto com os atributos da fonte usada no canvas. É do tipo TWOLFont.
Pen Propriedade que carrega em si um objeto com os atributos da pen usada no canvas. É do tipo TWOLPen
Brush Propriedade que carrega em si um objeto com os atributos do brush usada no canvas. É do tipo TWOLBrush .
Handle Propriedade que indica o valor do handle do canvas. É do tipo TWOLHDC.
PenPos Propriedade que indica a posição da caneta (pen) depois de uma operação gráfica. É do tipo TWOLPoint.
ParentHandle Propriedade que indica o handle do objeto de janela proprietário do canvas. É do tipo TWOLHandle.
ClipRect Propriedade que retorna o retângulo de desenho efetivo do canvas. É do tipo TWOLRect.
IsLocked Propriedade que informa se o canvas está travado ou não.
Pixel[x,y:Integer]: Propriedade que informa/modifica a cor do pixel indicado pela coordenada. É do tipo TWOLColor.
Params Propriedade que carrega os valores do canvas passados para GUI em uso. Só deve ser usado internamente. É do tipo TWOLCanvasParam.
ImageHandle Propriedade que indica o handle de uma imagem conseguida através do método _DrawImage ou de _StretchDrawImage. Esse handle pertence à GUI em uso para indicar uma imagem na memória. Esse valor também pode ser modificado para indicar um handle de uma imagem conseguida através de outros meios mas que seja reconhecido pela GUI em uso.

Métodos e Eventos Públicos

constructor Create; override;
Método usado para criar o objeto.
destructor Destroy; override;
Método usado para destruir o objeto.
procedure SetOwnerKind(theKind:TWOLByte);
Método usado para indicar o tipo de dono do canvas.
procedure FreeHandle;
Método usado para liberar os handles envolvidos no canvas. Não somente o próprio, mas os de font, brush e pen.
procedure GetDC;
Método usado para conseguir, junto à GUI em uso, o handle do canvas. Esse manipulador é retornado de acordo com o tipo de canvas indicado com o método SetDeviceType.
procedure FreeDC;
Método usado para liberar o handle do canvas conseguido com o método GetDC.
procedure BeginPaint;
Método usado para conseguir um handle do canvas e iniciar um processo de pintura imediatamente.
procedure EraseBkGnd;
Método usado para pintar o fundo do canvas com o valor de cor contido na propriedade brush.
procedure CtrlColor;
Método usado para pintar controles do tipo estáticos. Deve ser usado internamente.
function TextExtent(const Text: string): TWOLSize;
Método usado para recuperar a altura e a largura do texto passado como argumento se ele for desenhado no canvas usando a fonte corrente.
function TextWidth(const Text: string): TWOLInteger;
Método usado para recuperar a largura do texto passado como argumento usando a fonte corrente.
function TextHeight(const Text: string): TWOLInteger;
Método usado para recuperar a altura do texto passado como argumento usando a fonte corrente.
procedure FillRect(Rect : TWOLRect);
Método usado para desenhar um retângulo preenchido, com a cor do brush e com contorno na cor de pen, indicado em Rect.
procedure DrawFocusRect(Rect: TWOLRect);
Método usado para desenhar um retângulo de foco indicado pelo parâmetro.
procedure Line(x1, y1, x2, y2:TWOLInteger);
Método usado para desenhar uma linha entre os dois pontos indicados usando a cor de pen.
procedure Rectangle(X1, Y1, X2, Y2: TWOLInteger);
Método usado para desenhar um retângulo usando os atributos de pen.
procedure Ellipse(X1, Y1, X2, Y2: TWOLInteger);
Método usado para desenhar uma elipse usando os atributos de pen.
procedure TextRect(Rect:TWOLRect; X, Y:TWOLInteger; const Text:string);
Método usado para desenhar um texto dentro de um retângulo, na posição indicada (relativa ao retângulo) usando os atributos de pen e font.
procedure TextOut(X, Y:TWOLInteger; const Text:string);
Método usado para desenhar um texto na posição indicada usando os atributos de font.
procedure Arc(X1, Y1, X2, Y2, X3, Y3, X4, Y4:TWOLInteger);
Método usado para desenhar um arco tendo como limites o retângulo indicado por (x1, y1, x2, y2). Os pontos (x3, y3) e (x4, y4) indicam os pontos inicial e final do arco considerando os limites do retângulo.
procedure Draw(X, Y: TWOLInteger; Graphic: TWOLGraphic);
Método usado para desenhar um gráfico (imagem) na posição especificada. O ponto inicial da imagem (0, 0) é colocado nessa coordenada.
procedure StretchDraw(const Rect: TWOLRect; Graphic: TWOLGraphic);
Método usado para espichar uma imagem dentro de um retângulo especificado (não importa a dimensão da figura). Somente MS-Windows.
procedure Chord(X1, Y1, X2, Y2, X3, Y3, X4, Y4:TWOLInteger);
Método usado para desenhar uma corda secante tendo como limites o retângulo indicado por (x1, y1, x2, y2) e como pontos inicial e final (x3, y3) e (x4, x4).
procedure FloodFill(X, Y:TWOLInteger; Color: TWOLColor; FillStyle: TWOLFillStyle);
Método usado para preencher um desenho vazado com uma cor e um estilo de preenchimento. Para que um desenho seja preenchido, é necessário que o ponto indicado esteja dentro da área do desenho. Somente MS-Windows.
procedure FrameRect(const Rect: TWOLRect);
Método usado para desenhar um bordo ao redor de um retângulo usando os atributos do brush corrente.
procedure Pie(X1, Y1, X2, Y2, X3, Y3, X4, Y4: TWOLLongint);
Método usado para desenhar uma torta (em geral uma fatia) limitada pelo retângulo (x1, y1, x2, y2), tendo como pontos inicial (x3, y3) e final (x4, y4), e usando os atributos da pen corrente para desenhar o contorno e do brush corrente para preenchimento.
procedure Polygon(const Points: array of TWOLPoint);
Método usado para desenhar um polígono cujos pontos estão contidos no parâmetro.
procedure Polyline(const Points: array of TWOLPoint);
Método usado para desenhar vários segmentos de linhas com pontos indicados no parâmetro que deve ter pelo menos dois pontos.
procedure Refresh;
Método usado para atualizar o canvas com os valores correntes da fonte, do brush e da pen.
procedure RoundRect(X1, Y1, X2, Y2:TWOLInteger);
Método usado para desenhar um retângulo com cantos arredondados usando os atributos de pen e brush. Somente MS-Windows.
procedure CopyRect(const Dest, Source:TWOLRect; Canvas:TWOLCanvas; CopyMode:TWOLCopyMode);
Método usado para copiar uma área do canvas para outro canvas ou para o próprio canvas.
procedure Lock;
Método usado para travar o canvas, impedindo que seja desenhado por outros interventores até que seja chamado unlock.
procedure Unlock;
Método usado para destravar o canvas de forma que outros métodos interventores possam desenhar no canvas.
procedure Assign(Value:TWOLRoot); override;
Método usado para copiar os valores de um canvas para outro, exceto o dono e o handle.
procedure _DrawImage(rect:TWOLRect; CopyMode:TWOLCopyMode; Data:Pointer);
Método que desenha uma imagem no contexto gráfico corrente associado ao canvas uma imagem baseada no ponteiro data passado como parâmetro. Essa imagem será copiada para a memória da GUI em uso, devendo ser liberada depois da pintura com FreeImage.
procedure _StretchDrawImage(rSrc, rDst:TWOLRect; CopyMode:TWOLCopyMode; Data:Pointer);
Método semelhante ao anterior, mas com a propriedade de espichar a figura pela área do canvas.
procedure FreeImage(ImgHandle:TWOLHandle);
Libera uma imagem com handle conseguido através de _DrawImage ou _StretchDrawImage. O handle de uma imagem assim conseguida é recuperado através da propriedade ImageHandle.
procedure SetDeviceType(Value:Byte);
Método usado para modificar o tipo de dispositivo que será usado pelo canvas. Esse valor não pode ser modificado depois que o canvas pegar um manipulador (handle) junto à GUI.
procedure Update;
Método usado para recarregar (e renovar se necessário) os handles dos objetos gráficos (font, pen, brush) e atualizar a área de desenho.
procedure SetForce(Value:Boolean);
Método de uso interno. Necessário para força certas operações do canvas.
OnChanging:TWOLEvent
Evento disparado quando o canvas está para sofrer uma alteração.
OnChanged:TWOLEvent
Evento disparado quando o canvas terminou de sofrer uma alteração.
OnNeedParent:TWOLNeedParent
Evento disparado quando o canvas necessita do handle do objeto pai.

TWOLResourceManager - WOLGUI

Classe de objetos que gerenciam recursos do sistema, colocando-os em cache, buscando e liberando memória. Seu uso é interno às classes de objetos que se utilizam de recursos próprios da GUI em uso. Os objetos dessa se comportam como caches de recursos alocados junto ao sistema. Arquivo fonte: WOLGUI02.PP.

Propriedades da TWOLResourceManager

Propriedade Descrição
Count Propriedade que retorna a quantidade de recursos alocados do sistema pelo objeto.

Métodos e Eventos Públicos

constructor Create(resType:TWOLResourceType);
Método usado para criar um objeto gerenciador de recursos dessa classe. O parâmetro indica se o recursos a ser gerenciado é do tipo fonte, brush ou pen.
destructor Destroy; override;
Método usado para destruir o objeto e liberar memória. A memória gasta com recursos somente será liberada a pedido do objeto que faz uso desse ou se houver destruição desse e ainda haja recursos na memória.
function Add(Hash:TWOLCardinal; Handle:TWOLHandle):Boolean;
Método usado para adicionar um recurso do sistema à pilha de recursos do objeto juntamente com um identificador único chamado hash.
function Delete(Hash:TWOLCardinal):Boolean;
Método usado para apagar um recurso do sistema de forma que esse recurso seja único e identificado por hash.
function GetHandle(Hash:TWOLCardinal):TWOLHandle;
Método usado para recuperar o handle de um recurso da pilha de recursos, sendo o recurso identificado por hash.
function GetDefault:TWOLHandle;
Método usado para recuperar o manipulador do recurso padrão para determinada classe de recursos.

TWOLResourceRoot - WOLGUI

Classe de objetos que gerenciam recursos do sistema fazendo uso, não herdando, do TWOLResourceManager. As classes de objetos que se utilizam diretamente de recursos do sistema devem derivar dessa classe. Essa classe gerencia um único recurso por vez. Arquivo fonte: WOLGUI02.PP.

Propriedades da TWOLResourceRoot

Propriedade Descrição
Handle Propriedade que retorna o manipulador do recurso do sistema que está sendo usado correntemente. É do tipo TWOLHandle.
Changed Propriedade que indica que ocorreu uma mudança, por mais sutil que seja, nas características do recurso que está sendo usado. Nesse caso, para refletir a mudança, deve-se abandonar o manipulador corrente e pegar um novo junto à GUI em uso.
ParentHandle Propriedade que indica a janela ou objeto de janela ao qual pertence o recurso do sistema que o objeto está manipulando. É do tipo TWOLHandle.
OwnerKind Propriedade que indica o tipo de dono, ou objeto que faz uso, do recurso do sistema. É do tipo Byte.
HashNumber Propriedade que carrega o número hash, um identificador único para cada recurso do sistema.
Manager Propriedade que aponta para um objeto do tipo TWOLResourceManager com o qual essa classe interage para gerir os recursos do sistema.

Métodos e Eventos Públicos

constructor Create(resType:TWOLResourceType);
Método usado para criar um objeto dessa classe de forma que ele vá gerenciar recursos do sistema do tipo indicado em resType.
destructor Destroy; override;
Método usado para destruir o objeto liberando memória e o recurso gerenciado correntemente pelo mesmo.
procedure Select(dcHandle:TWOLHandle);
Método usado para aplicar o recurso corrente ao contexto gráfico indicado por dcHandle. Esse contexto pode ser qualquer canvas reconhecido pela GUI em uso.
procedure Delete;
Método usado para apagar o recurso que está sendo usado correntemente, liberando o recurso.
procedure Assign(Source:TWOLResourceRoot); virtual
Método usado para fazer uma cópia de um recurso para outro, inclusive do Handle (manipulador) quando possível.
function isHandleZero:Boolean;
Método usado para verificar se o manipulador de recurso é nulo.
procedure FreeHandle;
Método usado para liberar todos os handles envolvidos no objeto e ressincronizar seus valores com o dispositivo de contexto..
procedure Apply(dcHandle:TWOLHandle);
Método usado para aplicar o recurso corrente a um dispositivo de contexto (ou contexto gráfico) indicado em dcHandle.
function isEqual(AnotherRes:TWOLResourceRoot):Boolean;
Método usado para comparar dois objetos de recursos e verificar se os valores dos recursos são iguais.
procedure Lock;
Método usado para indicar que é necessário que a operação seja feita em cima de um só recurso. As outras operações, mesmo dentro do mesmo objeto, serão bloquadas até que se destrave o objeto.
procedure UnLock;
Método usado para destravar o objeto que foi travado com Lock.
procedure Restore;
Método usado para restaurar o recurso liberado anteriormente. Não está sendo usado.
OnChange:TWOLEvent
Evento disparado quando há uma mudança, por mais sutil que seja, no recurso correntemente gerido.
OnChanging:TWOLEvent
Evento disparado quando o recurso do objeto está sendo modificado.
OnNeedParent:TWOLNeedParent
Evento disparado quando há necessidade de se saber quem é o dono do recurso e não se tem seu handle.

TWOLFont - WOLGUI

Descendente de TWOLResourceRoot. Essa classe se dedica exclusivamente a carregar informações e gerir fontes da GUI em uso. Arquivo fonte: WOLGUI02.PP.

Propriedades da TWOLFont

Propriedade Descrição
Size Propriedade que indica o tamanho da fonte em uso pelo objeto.
Height Propriedade que indica a altura da fonte em uso pelo objeto.
Angle Propriedade que indica o ângulo de rotação da fonte em uso pelo objeto. É do tipo Longint.
CharSet Propriedade que indica o conjunto de caracteres que está sendo usado pela fonte em uso pelo objeto. É do tipo TWOLCharSet.s
Pitch Propriedade que indica o valor do pitch da fonte correntemente usada pelo objeto.
FontName Propriedade que carrega o nome da fonte.
Color Propriedade que indica a cor da fonte no objeto corrente.
PixelPerInch Propriedade que indica a quantidade de pixéis por pelgada da fonte que está sendo usada pelo objeto.
HowBold Propriedade que indica o quanto deve ser o negrito da fonter em uso.
Params Propriedade que carrega os parametros de uma fonte carregada correntemente. É do tipo TWOLFontParam.

Métodos e Eventos Públicos

constructor Create;
Método de criação do objeto.
destructor Destroy; override;
Método de destruição do objeto.
procedure Assign(Source:TWOLResourceRoot); override;
Método de cópia de valores de recursos de um objeto para outro.

TWOLBrush - WOLGUI

Descendente de TWOLResourceRoot. Essa classe se destina exclusivamente a gerir um recurso de pincel (BRUSH) do sistema por vez. Arquivo fonte: WOLGUI02.PP.

Propriedades do TWOLBrush

Propriedade Descrição
Style Propriedade que carrega o estilo do brush (pincel) usado para pintar o dispositivo de contexto associado ao recurso de sistema corrente. É do tipo TWOLBrushStyle.
Color Propriedade que indica a cor do Brush (pincel) corrente usado para pintar o dispositivo de contexto. É do tipo TWOLColor.
Hatch Propriedade que indica o handle de um bitmap que deve ser usado na pintura. É do tipo Longint.
Params Propriedade que carrega uma série de valores relativos ao recurso do sistema que está sendo usado. É do tipo TWOLBrushParam.

Métodos e Eventos Públicos

constructor Create;
Método usado para criar o objeto.
destructor Destroy; override;
Método usado para destruir o objeto, liberando o recurso, quando possível, e memória.
procedure Assign(Source:TWOLResourceRoot); override;
Método usado para copiar os valores do recurso de sistema usado de um objeto para outro.

TWOLPen - WOLGUI

Descendente de TWOLResourceRoot. Essa classe se destina exclusivamente a carregar um recurso de caneta do sistema (PEN) por vez. Arquivo fonte: WOLGUI02.PP.

Propriedades do TWOLPen

Propriedade Descrição
Style Propriedade que carrega informações sobre o estilo da pen (caneta) correntemente usada. É do tipo TWOLPenStyle.
Width Propriedade que informa a largura da pen (caneta) correntemente usada.
Color Propriedade que informa a cor da pen (caneta) correntemente usada. é do tipo TWOLColor.
Mode Propriedade que informa o modo como a pen será aplicada no dispositivo de contexto. é do tipo TWOLPenMode.
PenpPos Propriedade que informa a posição da pen (caneta) no dispositivo gráfico de contexto. É do tipo TWOLPoint.
Params Propriedade que carrega uma série de informações sobre a caneta do sistema que está sendo usada correntemente. É do tipo TWOLPenParam.

Métodos e Eventos Públicos

constructor Create;
Método usado para criar o objeto.
destructor Destroy; override;
Método usado para destruir o objeto.
procedure Assign(Source:TWOLResourceRoot); override;
Método usado para copiar valores de um objeto para outro.