Class TFormExplorer (unit main)

Inherits from

TForm

Constructors



Functions

procedure AnimatedPreviewPaint(Sender: TObject);

Async paint of GIF-file

procedure DrawGridPaletteMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);

Show info about palette color under cursor

procedure FileCloseClick(Sender: TObject);

Trick to kill thread owned by OpenPictureDialog

procedure FileExitClick(Sender: TObject);


procedure FileOpenClick(Sender: TObject);

Hide preview panel

procedure FormCreate(Sender: TObject);

***FIXME*** GIF Block properties needs to be resourced

procedure FormDestroy(Sender: TObject);

Open file specified on command line if any

procedure FormResize(Sender: TObject);

Realign controls on form resize

procedure ImagePreviewMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);

Show info about pixel color under cursor

procedure MenuAbout1Click(Sender: TObject);

Display About box

procedure MenuAnimationClick(Sender: TObject);

Repaint when any paint options change

procedure MenuFileBackgroundClick(Sender: TObject);

Trick to kill thread owned by OpenPictureDialog.

procedure MenuFileOpenPreviewClick(Sender: TObject);


procedure MenuViewPreviewClick(Sender: TObject);

Update properties

procedure MenuViewPropertiesClick(Sender: TObject);


procedure MenuViewWarningsClick(Sender: TObject);

Update properties

procedure NotebookPreviewPageChanged(Sender: TObject);

Preview notebook is changing page

procedure OnAnimate(Sender: TObject);

Update status bar (on animate

procedure OnProgress(Sender: TObject; Stage: TProgressStage; PercentDone: Byte; RedrawNow: Boolean; const R: TRect; const Msg: string);

Update progress bar (on load and render

procedure PaintBoxBackgroundPaint(Sender: TObject);

Paint background tiles

procedure PaintBoxPreviewPaint(Sender: TObject);

Display bounding rects of a single frame

procedure TreeViewGIFChange(Sender: TObject; Node: TTreeNode);

Synchronize property panel with selected node in treeview

procedure TreeViewGIFChanging(Sender: TObject; Node: TTreeNode; var AllowChange: Boolean);

Called when the user selects a new node in the tree

procedure DoCloseFile;

Load explorer tree

procedure DoOpenFile(Name: string);

Public declarations

The GIF painter/animation preview is used by: * TGIFImage NotebookPreview is used by: * TGIFImage * TGIFSubImage * TGIFColorMap * TGIFCommentExtension * TGIFUnknownAppExtension PanelPaletteInfo is used by: * TGIFSubImage * TGIFColorMap The statusbar panel #1 is used by: * TGIFImage


procedure DrawGridPaletteDrawCell(Sender: TObject; Col, Row: Integer; Rect: TRect; State: TGridDrawState);

Draw the palette grid

function GetElements(Node: TTreeNode): TVisibleElements;

Find the visual elements used by a given TGIFImage class

procedure OnWarning(Sender: TObject; Severity: TGIFSeverity; Message: string);

GIF Warning event handler Called when the GIF component encounters a non-fatal error

procedure ParseExtension(RootNode: TTreeNode; Image: TGIFSubImage; Index: integer);

Add extension to treeview

procedure ParseFile(Filename: string);

Add GIF-image to tree view

procedure ParseImage(RootNode: TTreeNode; Index: integer);

Add sub-image to treeview

procedure UpdateOptions;

Update paint to reflect change in options

Properties

Events

Variables

DrawGridPalette : TDrawGrid;


Exit1 : TMenuItem;


ImageBackground : TImage;


ImageListNodes : TImageList;


ImagePreview : TImage;


ImagePreviewAnimate : TImage;


Label1 : TLabel;


Label2 : TLabel;


Label3 : TLabel;


Label4 : TLabel;


Label5 : TLabel;


LabelPaletteBlue : TLabel;


LabelPaletteGreen : TLabel;


LabelPaletteHex : TLabel;


LabelPaletteIndex : TLabel;


LabelPaletteRed : TLabel;


ListViewInfo : TListView;


MainMenu1 : TMainMenu;


MemoPreview : TMemo;


MenuAbout1 : TMenuItem;


MenuAnimation : TMenuItem;


MenuAnimationAnimate : TMenuItem;


MenuAnimationAutoDither : TMenuItem;


MenuAnimationBackground : TMenuItem;


MenuAnimationBuffered : TMenuItem;


MenuAnimationDither : TMenuItem;


MenuAnimationLoop : TMenuItem;


MenuAnimationStretch : TMenuItem;


MenuAnimationThreaded : TMenuItem;


MenuAnimationTransparent : TMenuItem;


MenuFile : TMenuItem;


MenuFileBackground : TMenuItem;


MenuFileClose : TMenuItem;


MenuFileOpen : TMenuItem;


MenuFileOpenPreview : TMenuItem;


MenuView : TMenuItem;


MenuViewPreview : TMenuItem;


MenuViewProperties : TMenuItem;


MenuViewWarnings : TMenuItem;


N1 : TMenuItem;


N2 : TMenuItem;


N3 : TMenuItem;


N4 : TMenuItem;


NotebookPreview : TNotebook;


PaintBoxBackground : TPaintBox;


PaintBoxPreview : TPaintBox;


PanelInfo : TPanel;


PanelPaletteInfo : TPanel;


PanelTree : TPanel;


ProgressBar : TProgressBar;


ScrollBoxPreview : TScrollBox;


ScrollBoxPreviewAnimate : TScrollBox;


Splitter1 : TSplitter;


SplitterPreview : TSplitter;


StatusBar : TStatusBar;


TreeViewGIF : TTreeView;


Filename : string;


GIF : TGIFImage;

Private declarations


Constructors


Functions


procedure AnimatedPreviewPaint(Sender: TObject);

Async paint of GIF-file


procedure DrawGridPaletteMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);

Show info about palette color under cursor


procedure FileCloseClick(Sender: TObject);

Trick to kill thread owned by OpenPictureDialog


procedure FileExitClick(Sender: TObject);


procedure FileOpenClick(Sender: TObject);

Hide preview panel


procedure FormCreate(Sender: TObject);

***FIXME*** GIF Block properties needs to be resourced


procedure FormDestroy(Sender: TObject);

Open file specified on command line if any


procedure FormResize(Sender: TObject);

Realign controls on form resize


procedure ImagePreviewMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);

Show info about pixel color under cursor


procedure MenuAbout1Click(Sender: TObject);

Display About box


procedure MenuAnimationClick(Sender: TObject);

Repaint when any paint options change


procedure MenuFileBackgroundClick(Sender: TObject);

Trick to kill thread owned by OpenPictureDialog... ...Not really nescessary since we delete the dialog a few lines down TDummyOpenPictureDialog(OpenPictureDialog).DoShowHide;


procedure MenuFileOpenPreviewClick(Sender: TObject);


procedure MenuViewPreviewClick(Sender: TObject);

Update properties


procedure MenuViewPropertiesClick(Sender: TObject);


procedure MenuViewWarningsClick(Sender: TObject);

Update properties


procedure NotebookPreviewPageChanged(Sender: TObject);

Preview notebook is changing page


procedure OnAnimate(Sender: TObject);

Update status bar (on animate


procedure OnProgress(Sender: TObject; Stage: TProgressStage; PercentDone: Byte; RedrawNow: Boolean; const R: TRect; const Msg: string);

Update progress bar (on load and render


procedure PaintBoxBackgroundPaint(Sender: TObject);

Paint background tiles


procedure PaintBoxPreviewPaint(Sender: TObject);

Display bounding rects of a single frame


procedure TreeViewGIFChange(Sender: TObject; Node: TTreeNode);

Synchronize property panel with selected node in treeview


procedure TreeViewGIFChanging(Sender: TObject; Node: TTreeNode; var AllowChange: Boolean);

Called when the user selects a new node in the tree


procedure DoCloseFile;

Load explorer tree


procedure DoOpenFile(Name: string);

Public declarations

The GIF painter/animation preview is used by: * TGIFImage NotebookPreview is used by: * TGIFImage * TGIFSubImage * TGIFColorMap * TGIFCommentExtension * TGIFUnknownAppExtension PanelPaletteInfo is used by: * TGIFSubImage * TGIFColorMap The statusbar panel #1 is used by: * TGIFImage


procedure DrawGridPaletteDrawCell(Sender: TObject; Col, Row: Integer; Rect: TRect; State: TGridDrawState);

Draw the palette grid


function GetElements(Node: TTreeNode): TVisibleElements;

Find the visual elements used by a given TGIFImage class


procedure OnWarning(Sender: TObject; Severity: TGIFSeverity; Message: string);

GIF Warning event handler Called when the GIF component encounters a non-fatal error


procedure ParseExtension(RootNode: TTreeNode; Image: TGIFSubImage; Index: integer);

Add extension to treeview


procedure ParseFile(Filename: string);

Add GIF-image to tree view


procedure ParseImage(RootNode: TTreeNode; Index: integer);

Add sub-image to treeview


procedure UpdateOptions;

Update paint to reflect change in options


Properties


Events


Variables


DrawGridPalette : TDrawGrid;


Exit1 : TMenuItem;


ImageBackground : TImage;


ImageListNodes : TImageList;


ImagePreview : TImage;


ImagePreviewAnimate : TImage;


Label1 : TLabel;


Label2 : TLabel;


Label3 : TLabel;


Label4 : TLabel;


Label5 : TLabel;


LabelPaletteBlue : TLabel;


LabelPaletteGreen : TLabel;


LabelPaletteHex : TLabel;


LabelPaletteIndex : TLabel;


LabelPaletteRed : TLabel;


ListViewInfo : TListView;


MainMenu1 : TMainMenu;


MemoPreview : TMemo;


MenuAbout1 : TMenuItem;


MenuAnimation : TMenuItem;


MenuAnimationAnimate : TMenuItem;


MenuAnimationAutoDither : TMenuItem;


MenuAnimationBackground : TMenuItem;


MenuAnimationBuffered : TMenuItem;


MenuAnimationDither : TMenuItem;


MenuAnimationLoop : TMenuItem;


MenuAnimationStretch : TMenuItem;


MenuAnimationThreaded : TMenuItem;


MenuAnimationTransparent : TMenuItem;


MenuFile : TMenuItem;


MenuFileBackground : TMenuItem;


MenuFileClose : TMenuItem;


MenuFileOpen : TMenuItem;


MenuFileOpenPreview : TMenuItem;


MenuView : TMenuItem;


MenuViewPreview : TMenuItem;


MenuViewProperties : TMenuItem;


MenuViewWarnings : TMenuItem;


N1 : TMenuItem;


N2 : TMenuItem;


N3 : TMenuItem;


N4 : TMenuItem;


NotebookPreview : TNotebook;


PaintBoxBackground : TPaintBox;


PaintBoxPreview : TPaintBox;


PanelInfo : TPanel;


PanelPaletteInfo : TPanel;


PanelTree : TPanel;


ProgressBar : TProgressBar;


ScrollBoxPreview : TScrollBox;


ScrollBoxPreviewAnimate : TScrollBox;


Splitter1 : TSplitter;


SplitterPreview : TSplitter;


StatusBar : TStatusBar;


TreeViewGIF : TTreeView;


Filename : string;


GIF : TGIFImage;

Private declarations