summaryrefslogtreecommitdiff
path: root/examples/gui/splashscreen/frm_splashscreen.pas
diff options
context:
space:
mode:
Diffstat (limited to 'examples/gui/splashscreen/frm_splashscreen.pas')
-rw-r--r--examples/gui/splashscreen/frm_splashscreen.pas111
1 files changed, 111 insertions, 0 deletions
diff --git a/examples/gui/splashscreen/frm_splashscreen.pas b/examples/gui/splashscreen/frm_splashscreen.pas
new file mode 100644
index 00000000..14030f2d
--- /dev/null
+++ b/examples/gui/splashscreen/frm_splashscreen.pas
@@ -0,0 +1,111 @@
+unit frm_splashscreen;
+
+{$mode objfpc}{$H+}
+
+interface
+
+uses
+ SysUtils, Classes, gfxbase, fpgfx, gui_edit,
+ gfx_widget, gui_form, gui_label, gui_button,
+ gui_listbox, gui_memo, gui_combobox, gui_grid,
+ gui_dialogs, gui_checkbox, gui_tree, gui_trackbar,
+ gui_progressbar, gui_radiobutton, gui_tab, gui_menu,
+ gui_bevel, gui_popupcalendar, gui_gauge;
+
+type
+
+ TSplashForm = class(TfpgForm)
+ procedure SplashFormShow(Sender: TObject);
+ procedure TimerFired(Sender: TObject);
+ private
+ tmr: TfpgTimer;
+ protected
+ procedure HandleLMouseUp(x, y: integer; shiftstate: TShiftState); override;
+ public
+ {@VFD_HEAD_BEGIN: SplashForm}
+ pnlName1: TfpgBevel;
+ lblName2: TfpgLabel;
+ lblName1: TfpgLabel;
+ {@VFD_HEAD_END: SplashForm}
+ constructor Create(AOwner: TComponent); override;
+ procedure AfterCreate; override;
+ end;
+
+{@VFD_NEWFORM_DECL}
+
+var
+ frmSplash: TSplashForm;
+
+implementation
+
+{@VFD_NEWFORM_IMPL}
+
+procedure TSplashForm.SplashFormShow(Sender: TObject);
+begin
+ tmr.Enabled := True;
+end;
+
+procedure TSplashForm.TimerFired(Sender: TObject);
+begin
+ tmr.Enabled := False;
+ tmr.Free;
+// writeln('Timer fired');
+ Hide;
+end;
+
+procedure TSplashForm.HandleLMouseUp(x, y: integer; shiftstate: TShiftState);
+begin
+ inherited HandleLMouseUp(x, y, shiftstate);
+ TimerFired(nil);
+end;
+
+constructor TSplashForm.Create(AOwner: TComponent);
+begin
+ inherited Create(AOwner);
+ WindowType := wtPopup;
+
+ tmr := TfpgTimer.Create(3000);
+ tmr.OnTimer := @TimerFired;
+
+ OnShow := @SplashFormShow;
+end;
+
+procedure TSplashForm.AfterCreate;
+begin
+ {@VFD_BODY_BEGIN: SplashForm}
+ Name := 'SplashForm';
+ SetPosition(298, 261, 300, 64);
+ WindowTitle := 'SplashForm';
+ WindowPosition := wpScreenCenter;
+ Sizeable := False;
+
+ pnlName1 := TfpgBevel.Create(self);
+ with pnlName1 do
+ begin
+ Name := 'pnlName1';
+ SetPosition(0, 0, 300, 64);
+ end;
+
+ lblName2 := TfpgLabel.Create(pnlName1);
+ with lblName2 do
+ begin
+ Name := 'lblName2';
+ SetPosition(24, 8, 272, 31);
+ Text := 'Splash screen goes here!';
+ FontDesc := 'Arial-18';
+ end;
+
+ lblName1 := TfpgLabel.Create(pnlName1);
+ with lblName1 do
+ begin
+ Name := 'lblName1';
+ SetPosition(52, 42, 188, 15);
+ Text := 'Click me to make me disappear.';
+ FontDesc := '#Label1';
+ end;
+
+ {@VFD_BODY_END: SplashForm}
+end;
+
+
+end.