home *** CD-ROM | disk | FTP | other *** search
- UNIT DIALOGS;
-
- (*****************************************************************************
- Name: DIALOGS.PAS
- Version: 2.1
- Edit Datum: 1. April 1992
- Autor: Andreas Schumm
- Kurzbeschreibung: Dialogaufsatz für deLite
- *****************************************************************************)
-
- INTERFACE
-
- USES kernel, api;
-
-
- TYPE Slider = object(DlgItem)
- min, max,
- pos : integer;
- locked : integer;
- constructor Init(x1,y1,len, TheId, pmin, pmax: integer; dir: dirtype);
- procedure Draw; virtual;
- procedure HandleEvent(TheEvent: EventTyp); virtual;
- function GetPos: integer;
- procedure SetPos(thepos: integer);
- private
- sdir : DirType;
- end;
-
- PSlider = ^Slider;
-
- EditCharSet = (AllChars, IntChars, RealChars);
-
- EditField = object(DlgItem)
- thelen,
- maxlen : integer;
- curpos : integer;
- abspos : integer;
- cursor : boolean; { Zustand des Cursors }
- altered : boolean; { Veränderung }
- TheString : string;
- constructor Init(x,y,len, max, TheId: integer; deflt: string);
- procedure SetCharSet(CharSet: EditCharSet);
- procedure Draw; virtual;
- procedure HandleEvent(TheEvent: EventTyp); virtual;
- procedure ClearFocus; virtual;
- procedure SetString(TheStr: string);
- function GetString : string;
- function IsInteger : boolean;
- function GetValue : integer;
- procedure SetValue(v: integer);
- function IsReal : boolean;
- function GetReal : real;
- procedure SetReal(v: real);
- procedure SetDigits(n: integer);
- private
- TheSet : EditCharSet;
- Digits : integer;
- End;
-
- PEditField = ^EditField;
-
- PIconListItem = ^IconListItem;
-
- IconListItem = object
- next : PIconListItem;
- prev : PIconListItem;
- icon : Pointer;
- name : ListString;
- id,dx,dy : integer;
- color : byte;
- end;
-
- PSelectBox = ^SelectBox;
-
- SelectBox = object(DlgGroup)
- Itemwidth : Integer; { Breite des Feldes }
- constructor Init(x,y,wid,TheID: integer; GetFirst, GetNext: GetListProc);
- destructor Done; virtual;
- procedure Draw; virtual;
- procedure HandleEvent(TheEvent: EventTyp); virtual;
- procedure Update; { Liste neu einlesen }
- function GetSelected: ListString;
- procedure Select(TheString: ListString);
- private
- GetFirstProc : GetListProc;
- GetNextProc : GetListProc;
- TheList : PTextListItem;
- Current : PTextListItem;
- procedure ReadList; { Liste einlesen }
- procedure RemoveList; { Liste entfernen }
- end;
-
- GetIconProc = procedure(var Icon: Pointer; var dx,dy,id: integer; var color: byte;
- var name: ListString; var eol: boolean);
-
- IconSelectBox = object(DlgGroup)
- constructor Init(x,y,dx,dy,TheID: integer; GetFirst, GetNext: GetIconProc);
- destructor Done; virtual;
- procedure Draw; virtual;
- procedure HandleEvent(TheEvent: EventTyp); virtual;
- procedure Update; { Liste neu einlesen }
- function GetSelected: integer;
- function GetSelectedIcon: Pointer;
- function GetSelectedName: ListString;
- procedure Select(TheItem: integer);
- private
- ViewWidth : integer; { Breite in Pixeln }
- ViewHeight: integer; { Höhe in Pixeln }
- GetFirstProc : GetIconProc;
- GetNextProc : GetIconProc;
- TheList : PIconListItem;
- Current : PIconListItem;
- procedure ReadList; { Liste einlesen }
- procedure RemoveList; { Liste entfernen }
- end;
-
- PIconSelectBox = ^IconSelectBox;
-
- PRadioButton = ^RadioButton;
- PRadioButtons = ^RadioButtons;
- PUserRadio = ^UserRadioButton;
- PUserRadioButton = ^UserRadioButton;
- PUserRadios = ^UserRadioButtons;
- PUserRadioButtons = ^UserRadioButtons;
-
- RadioButton = object(DlgItem)
- TheLabel : LabelStr;
- MyGroup : PRadioButtons;
- constructor Init(x1,y1,TheID: Integer; TheText: LabelStr; nextB: PRadioButton);
- procedure Draw; virtual;
- procedure HandleEvent(TheEvent: EventTyp);virtual;
- End;
-
- UserRadioButton = object(RadioButton)
- IconPtr : Pointer;
- dxb,dyb : Integer;
- constructor Init(x1,y1, dx,dy,xb,yb,TheID: Integer; TheIcon: Pointer; nextB: PUserRadio);
- procedure Draw; virtual;
- End;
-
- RadioButtons = object(DlgGroup)
- Title : LabelStr;
- constructor Init(x1,y1,dx,dy,TheID: integer; TheText: LabelStr; nextB:PRadioButton);
- procedure Draw; virtual;
- procedure HandleEvent(TheEvent: EventTyp);virtual;
- function WhosChecked:integer;
- procedure CheckButton(TheID: integer);
- procedure HideItem; virtual;
- End;
-
- UserRadioButtons = object(RadioButtons)
- constructor Init(x1,y1,dx,dy, TheID: integer; nextB: PUserRadio);
- procedure Draw; virtual;
- procedure SetIcon(TheID: Integer; TheIcon: Pointer);
- procedure HideItem; virtual;
- End;
-
- TTYScreen = object(DlgGroup)
- constructor Init(x,y, lin, col, TheID: integer; flag: word);
- destructor Done; virtual;
- procedure Draw; virtual;
- procedure write(str: string);
- procedure writeln(str: string);
- procedure GotoXY(x,y: integer);
- private
- lines : integer;
- columns : integer;
- curx,cury : integer; { Cursorposition }
- flags : word;
- TheElevator : PVElevator;
- end;
-
- ComboBox = object(DlgGroup)
- constructor Init(x,y,len,height,TheId: integer; GetFirst, GetNext: GetListProc);
- procedure HandleEvent(TheEvent: EventTyp); virtual;
- procedure Update;
- function GetSelected: Liststring;
- procedure Select(TheString: ListString);
- destructor Done; virtual;
- private
- Selected : ListString;
- IsOpened : boolean; { Flag Combo offen }
- used : boolean; { Combo wurde benutzt }
- VMEMHdl : integer;
- Pa,Pe : DPoint; { Ausdehnung in Pixeln }
- NormPort : ViewPortType; { normaler Viewport }
- procedure CloseBox;
- end;
-
- PComboBox = ^ComboBox;
-
- PFileRequester = ^FileRequester;
-
- FileRequester = object(DlgGroup)
- lines : integer;
- TheFirstPath : String;
- constructor Init(x,y,lin, TheID: integer; ThePath: string; TheMask: string);
- destructor Done; virtual;
- procedure Draw; virtual;
- procedure HandleEvent(TheEvent: EventTyp); virtual;
- function GetSelected: string;
- function GetPath : string;
- end;
-
- SelectEditField = object(EditField) { spezielles Editierfeld }
- procedure Draw; virtual;
- end;
-
- PSelectEditField= ^SelectEditField;
-
-
- IMPLEMENTATION
-
- END.