Class TDIBDemoForm (unit DIBdemo)

Inherits from

TForm

Mine

Constructors



Functions

procedure ClearBtnClick(Sender: TObject);

rough delay because my Pentium pro is very fast and timers are too slow

procedure ColoursBtnClick(Sender: TObject);

Dibsurface.

procedure cycleClick(Sender: TObject);

rough delay because my Pentium pro is very fast and timers are too slow

procedure dpbPaint(Sender: TObject);


procedure FormCreate(Sender: TObject);


procedure FormDestroy(Sender: TObject);

Only available in 256 colors

procedure LinesBtnClick(Sender: TObject);

Dibsurface.

procedure PaletteBtnClick(Sender: TObject);

************************************************************}

procedure PolygonBtnClick(Sender: TObject);

use anticlockwise coordinates

procedure RadioGroup1Click(Sender: TObject);


procedure SinusoidBtnClick(Sender: TObject);

if syscols.

procedure Timer1Timer(Sender: TObject);


procedure clear_surface;


function GetPalette : HPalette;

// didn't realize Delphi provided this for me ! - tut tut

procedure IdleAction(Sender: TObject; var Done: Boolean);


Properties

Events

Variables

Button1 : TButton;


Button2 : TButton;


Button3 : TButton;


ClearBtn : TButton;


ColoursBtn : TButton;


cycle : TCheckBox;


dpb : TDIBPaintBox;


GroupBox1 : TGroupBox;


Label3 : TLabel;


Label4 : TLabel;


PaletteBtn : TButton;


Panel1 : TPanel;


RadioGroup1 : TRadioGroup;


speedbar : TScrollBar;


SpinEdit1 : TSpinEdit;


syscols : TCheckBox;


Timer1 : TTimer;


App_Palette : TPalette;

Public declarations

Original_pal : hPalette;

DIBsurface : TDIBSurface;

win_size : TPoint;



Constructors


Functions


procedure ClearBtnClick(Sender: TObject);

rough delay because my Pentium pro is very fast and timers are too slow


procedure ColoursBtnClick(Sender: TObject);

Dibsurface.SurfaceToScreen(canvas.handle);


procedure cycleClick(Sender: TObject);

rough delay because my Pentium pro is very fast and timers are too slow


procedure dpbPaint(Sender: TObject);


procedure FormCreate(Sender: TObject);


procedure FormDestroy(Sender: TObject);

Only available in 256 colors


procedure LinesBtnClick(Sender: TObject);

Dibsurface.SurfaceToScreen(canvas.handle);


procedure PaletteBtnClick(Sender: TObject);

************************************************************}


procedure PolygonBtnClick(Sender: TObject);

use anticlockwise coordinates


procedure RadioGroup1Click(Sender: TObject);


procedure SinusoidBtnClick(Sender: TObject);

if syscols.checked then for lp1:=0 to (dpb.Dibsurface.Height)-1 do dpb.Dibsurface.DrawHorizontalLine(0,(dpb.Dibsurface.Width),lp1,lp1) else for lp1:=0 to dpb.Dibsurface.Height-1 do dpb.Dibsurface.DrawHorizontalLine(0,(dpb.Dibsurface.Width),lp1,(lp1 mod (dpb.Dibsurface.Palette.nColors))+10); //Dibsurface.SurfaceToScreen(canvas.handle);


procedure Timer1Timer(Sender: TObject);


procedure clear_surface;


function GetPalette : HPalette;

// didn't realize Delphi provided this for me ! - tut tut


procedure IdleAction(Sender: TObject; var Done: Boolean);


Properties


Events


Variables


Button1 : TButton;


Button2 : TButton;


Button3 : TButton;


ClearBtn : TButton;


ColoursBtn : TButton;


cycle : TCheckBox;


dpb : TDIBPaintBox;


GroupBox1 : TGroupBox;


Label3 : TLabel;


Label4 : TLabel;


PaletteBtn : TButton;


Panel1 : TPanel;


RadioGroup1 : TRadioGroup;


speedbar : TScrollBar;


SpinEdit1 : TSpinEdit;


syscols : TCheckBox;


Timer1 : TTimer;


App_Palette : TPalette;

Public declarations


Original_pal : hPalette;

DIBsurface : TDIBSurface;


win_size : TPoint;