1
0
mirror of https://bitbucket.org/Dennis07/lina-components.git synced 2024-11-24 08:02:12 +02:00
lina-components/Source/uBase.pas
Dennis07 39c0916f1c Version 1.0 DEV 1.0
Signed-off-by: Dennis07 <den.goehlert@t-online.de>
2014-08-31 19:12:32 +02:00

99 lines
3.0 KiB
ObjectPascal

unit uBase;
//////////////////////////////////////
/// Lina Base Unit ///
/// **************************** ///
/// (c) 2014 Dennis Göhlert a.o. ///
//////////////////////////////////////
{$IF CompilerVersion < 18.0}
{ Unter früheren Delphi-Versionen als 2007 gab es (offiziell) noch keine
Unterstützung für Windows-Vista-spezifische funktionen wie die TaskDialog-
Komponente oder einige Funktionen.
Damit dies nicht zu Problemen führt, geht der Compiler darauf mithilfe
dieser Direktive ein. }
{$DEFINE NO_VISTA}
{$ENDIF}
{$IF CompilerVersion < 20.0}
{ Unter früheren Delphi-Versionen als 2009 war die Nutzung generischer
Datentypen (Generics) nicht möglich. Da es ohne diese nahezu unmöglich
scheint, typisierte Objekte, wie zum Beispiel typisierte TObjectList's
zu deklarieren, fallen diese Deklarationen unter früheren Delphi-Versionen
weg. Dies kann eventuell zu kompatibilitätsproblemen zwischen
unterschiedlichen Nutzern dieser Komponenten führen, lässt sich aber nicht
vermeiden. }
{$DEFINE NO_GENERIC}
{$ENDIF}
interface
{ Dies ist die Basis-Unit für die Lina-Komponenten bzw. Methoden und Klassen }
uses
{ Standard-Units }
SysUtils, Dialogs;
type
TComponentAbout = class
private
{ Private-Deklarationen }
FComponent: ShortString;
FVersion: Single;
FAuthor: ShortString;
FCopyright: ShortString;
FHomepage: ShortString;
protected
{ Protected-Deklarationen }
published
property Component: ShortString read FComponent;
property Version: Single read FVersion;
property Copyright: ShortString read FCopyright;
property Author: ShortString read FAuthor;
property Homepage: ShortString read FHomepage;
public
{ Public-Deklarationen }
constructor Create(Comp: ShortString = ''; Ver: Single = 1.0;
Copy: ShortString = ''; Auth: ShortString = ''; Home: ShortString = '');
{ Über-Dialog }
procedure AboutDlg;
end;
const
ComponentsPage = 'Lina';
About_Title = 'About...';
implementation
constructor TComponentAbout.Create(Comp: ShortString = ''; Ver: Single = 1.0;
Copy: ShortString = ''; Auth: ShortString = ''; Home: ShortString = '');
begin
FComponent := Comp;
FVersion := Ver;
FCopyright := Copy;
FAuthor := Auth;
FHomepage := Homepage;
end;
procedure TComponentAbout.AboutDlg;
begin
{$IFDEF NO_VISTA}
{ MessageDlg, falls der Compiler KEINE Vista-Dialoge unterstützt }
MessageDlg(
{$ELSE}
{ TaskMessageDlg, falls der Compiler Vista-Dialoge unterstützt }
TaskMessageDlg(
{$ENDIF}
About_Title,
{ ---------------------------------- }
Component + ' v'
+ FloatToStr(Version) + #10#13
+ Copyright + ' ' + Author + #10#13
+ Homepage,
{ ---------------------------------- }
mtInformation,
{ ---------------------------------- }
[mbClose],0)
end;
end.