home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / sibylft1.zip / DOC.DAT / DOC / SPCC / DIALOGS.PAS < prev    next >
Pascal/Delphi Source File  |  1997-04-07  |  14KB  |  401 lines

  1.  
  2. {╔══════════════════════════════════════════════════════════════════════════╗
  3.  ║                                                                          ║
  4.  ║     Sibyl Portable Component Classes                                     ║
  5.  ║                                                                          ║
  6.  ║     Copyright (c) 1995,97 SpeedSoft Germany,   All rights reserved.      ║
  7.  ║                                                                          ║
  8.  ╚══════════════════════════════════════════════════════════════════════════╝}
  9.  
  10. UNIT Dialogs;
  11.  
  12.  
  13. INTERFACE
  14.  
  15. {$r Buttons}
  16.  
  17. {$i StdBmpId.Inc}
  18.  
  19. {$IFDEF OS2}
  20. USES BseDos,BseErr,PmWin,PmStdDlg;
  21. {$ENDIF}
  22. {$IFDEF Win95}
  23. USES WinDef,WinBase,WinUser,CommDlg;
  24. {$ENDIF}
  25.  
  26. USES Dos,SysUtils,Classes,Graphics,Forms,Buttons,StdCtrls,ExtCtrls,FileCtrl;
  27.  
  28.  
  29. TYPE
  30.     TDialog=CLASS(TForm)
  31.       PROTECTED
  32.          PROCEDURE SetupComponent;OVERRIDE;
  33.          PROPERTY MinTrackWidth;
  34.          PROPERTY MinTrackHeight;
  35.          PROPERTY MaxTrackWidth;
  36.          PROPERTY MaxTrackHeight;
  37.          PROPERTY Menu;
  38.          PROPERTY FormStyle;
  39.          PROPERTY OnMDIActivate;
  40.          PROPERTY OnMDIDeactivate;
  41.          PROPERTY OnMenuInit;
  42.          PROPERTY OnMenuEnd;
  43.          PROPERTY OnMenuItemFocus;
  44.       PUBLIC
  45.          FUNCTION Execute:BOOLEAN;VIRTUAL;
  46.          PROPERTY Align;
  47.          PROPERTY Color;
  48.          PROPERTY BorderIcons;
  49.          PROPERTY BorderStyle;
  50.          PROPERTY Bottom;
  51.          PROPERTY ClientHeight;
  52.          PROPERTY ClientWidth;
  53.          PROPERTY PenColor;
  54.          PROPERTY Cursor;
  55.          PROPERTY Enabled;
  56.          PROPERTY Font;
  57.          PROPERTY Height;
  58.          PROPERTY Hint;
  59.          PROPERTY Icon;
  60.          PROPERTY Left;
  61.          PROPERTY Right;
  62.          PROPERTY ScrollBars;
  63.          PROPERTY ShowHint;
  64.          PROPERTY Top;
  65.          PROPERTY Visible;
  66.          PROPERTY Width;
  67.          PROPERTY WindowState;
  68.          PROPERTY XAlign;
  69.          PROPERTY XStretch;
  70.          PROPERTY YAlign;
  71.          PROPERTY YStretch;
  72.  
  73.          PROPERTY OnActivate;
  74.          PROPERTY OnClose;
  75.          PROPERTY OnCloseQuery;
  76.          PROPERTY OnCommand;
  77.          PROPERTY OnCreate;
  78.          PROPERTY OnDeactivate;
  79.          PROPERTY OnDestroy;
  80.          PROPERTY OnDismissDlg;
  81.          PROPERTY OnDragDrop;
  82.          PROPERTY OnDragOver;
  83.          PROPERTY OnEndDrag;
  84.          PROPERTY OnFontChange;
  85.          PROPERTY OnHide;
  86.          PROPERTY OnKeyPress;
  87.          PROPERTY OnMaximize;
  88.          PROPERTY OnMinimize;
  89.          PROPERTY OnMouseClick;
  90.          PROPERTY OnMouseDblClick;
  91.          PROPERTY OnMouseDown;
  92.          PROPERTY OnMouseMove;
  93.          PROPERTY OnMouseUp;
  94.          PROPERTY OnMove;
  95.          PROPERTY OnPaint;
  96.          PROPERTY OnResize;
  97.          PROPERTY OnRestore;
  98.          PROPERTY OnScan;
  99.          PROPERTY OnSetupShow;
  100.          PROPERTY OnShow;
  101.          PROPERTY OnTranslateShortCut;
  102.     END;
  103.  
  104.  
  105.     TSystemOpenDialog=CLASS(TComponent)
  106.       PRIVATE
  107.          FOkName:STRING;
  108.          FTitle:STRING;
  109.          FFileName:STRING;
  110.          FDefaultExt:STRING;
  111.       PROTECTED
  112.          PROCEDURE SetupComponent;OVERRIDE;
  113.       PUBLIC
  114.          FUNCTION Execute:BOOLEAN;
  115.          PROPERTY FileName:STRING read FFileName;
  116.       PUBLISHED
  117.          PROPERTY OkName:STRING read FOkName write FOkName;
  118.          PROPERTY Title:STRING read FTitle write FTitle;
  119.          PROPERTY DefaultExt:STRING read FDefaultExt write FDefaultExt;
  120.     END;
  121.  
  122.  
  123.     TSystemSaveDialog=CLASS(TComponent)
  124.       PRIVATE
  125.          FOkName:STRING;
  126.          FTitle:STRING;
  127.          FFileName:STRING;
  128.          FDefaultExt:STRING;
  129.       PROTECTED
  130.          PROCEDURE SetupComponent;OVERRIDE;
  131.       PUBLIC
  132.          FUNCTION Execute:BOOLEAN;
  133.          PROPERTY FileName:STRING read FFileName;
  134.       PUBLISHED
  135.          PROPERTY OkName:STRING read FOkName write FOkName;
  136.          PROPERTY Title:STRING read FTitle write FTitle;
  137.          PROPERTY DefaultExt:STRING read FDefaultExt write FDefaultExt;
  138.     END;
  139.  
  140.  
  141.     TOpenDialog=CLASS(TDialog)
  142.       PRIVATE
  143.          FCurDir:STRING;
  144.          FTitle:STRING;
  145.          FFileName:STRING;
  146.          FFilter:STRING;
  147.          FFilterIndex:LONGINT;
  148.          FDefaultExt:STRING;
  149.          FOkName:STRING;
  150.          FFileNameEdit:TEdit;
  151.          FFilterCombo:TFilterComboBox;
  152.          FDriveCombo:TDriveComboBox;
  153.          FFileList:TFileListBox;
  154.          FDirectoryList:TDirectoryListBox;
  155.          FCurrentNamePanel:TPanel;
  156.          FOkButton:TBitBtn;
  157.          FCancelButton:TBitBtn;
  158.          FHelpButton:TBitBtn;
  159.          PROCEDURE SetFileName(Value:STRING);
  160.          FUNCTION GetFileName:STRING;
  161.          PROCEDURE SetCurDir(Value:STRING);
  162.          PROCEDURE FileChange(Sender:TObject);
  163.          PROCEDURE FileSelect(Sender:TObject;Index:LONGINT);
  164.          PROCEDURE EvKillFocus(Sender:TObject);
  165.          PROCEDURE CMTextChanged(VAR Msg:TMessage);message CM_TEXTCHANGED;
  166.       PROTECTED
  167.          PROCEDURE SetupComponent;OVERRIDE;
  168.          PROCEDURE SetupShow;OVERRIDE;
  169.       PUBLIC
  170.          PROCEDURE DismissDlg(result:TCommand);OVERRIDE;
  171.          PROCEDURE AddFilter(Name,Mask:STRING);
  172.          PROPERTY Caption;
  173.       PUBLISHED
  174.          PROPERTY DefaultExt:STRING read FDefaultExt write FDefaultExt;
  175.          PROPERTY FileName:STRING read FFileName write FFileName;
  176.          PROPERTY Filter:STRING read FFilter write FFilter;
  177.          PROPERTY FilterIndex:LONGINT read FFilterIndex write FFilterIndex;
  178.          PROPERTY OkName:STRING read FOkName write FOkName;
  179.          PROPERTY Title:STRING read FTitle write FTitle;
  180.     END;
  181.  
  182.  
  183.     TSaveDialog=CLASS(TOpenDialog)
  184.       PRIVATE
  185.          FCreateButton:TSpeedButton;
  186.          PROCEDURE EvCreateDir(Sender:TObject);
  187.       PROTECTED
  188.          PROCEDURE SetupComponent;OVERRIDE;
  189.     END;
  190.  
  191.  
  192.     TCreateDirDialog=CLASS(TDialog)
  193.       PRIVATE
  194.          FOkName:STRING;
  195.          FDirectory:STRING;
  196.          FChangeDir:BOOLEAN;
  197.          FDirEdit:TEdit;
  198.          FChangeCheck:TCheckBox;
  199.          FOkButton:TBitBtn;
  200.          FCancelButton:TBitBtn;
  201.          FHelpButton:TBitBtn;
  202.       PROTECTED
  203.          PROCEDURE SetupComponent;OVERRIDE;
  204.          PROCEDURE SetupShow;OVERRIDE;
  205.       PUBLIC
  206.          PROCEDURE DismissDlg(Result:TCommand);OVERRIDE;
  207.       PUBLISHED
  208.          PROPERTY ChangeDir:BOOLEAN read FChangeDir write FChangeDir;
  209.          PROPERTY Directory:STRING read FDirectory write FDirectory;
  210.          PROPERTY OkName:STRING read FOkName write FOkName;
  211.     END;
  212.  
  213.  
  214.     TChangeDirDialog=CLASS(TDialog)
  215.       PRIVATE
  216.          FOkName:STRING;
  217.          FDirectory:STRING;
  218.          FFileNameEdit:TEdit;
  219.          FDriveCombo:TDriveComboBox;
  220.          FDirectoryList:TDirectoryListBox;
  221.          FOkButton:TBitBtn;
  222.          FCancelButton:TBitBtn;
  223.          FCreateButton:TBitBtn;
  224.          FHelpButton:TBitBtn;
  225.          PROCEDURE DirectoryChange(Sender:TObject);
  226.          PROCEDURE EvCreateDir(Sender:TObject);
  227.       PROTECTED
  228.          PROCEDURE SetupComponent;OVERRIDE;
  229.          PROCEDURE SetupShow;OVERRIDE;
  230.       PUBLIC
  231.          FUNCTION Execute:BOOLEAN;OVERRIDE;
  232.       PUBLISHED
  233.          PROPERTY Directory:STRING read FDirectory write FDirectory;
  234.          PROPERTY OkName:STRING read FOkName write FOkName;
  235.     END;
  236.  
  237.  
  238.     {$M+}
  239.     TFindDirection = (fdForward,fdBackward);
  240.     TFindOrigin    = (foEntireScope,foCursor);
  241.     TFindScope     = (fsGlobal,fsSelection);
  242.     TFindOptions   = SET OF (foCaseSensitive,foWordsOnly);
  243.     {$M-}
  244.  
  245.     TFindDialog=CLASS(TDialog)
  246.       PRIVATE
  247.          Lab_Find:TLabel;
  248.          CoB_Find:TComboBox;
  249.          Grp_Options:TGroupBox;
  250.          ChB_CaseSense:TCheckBox;
  251.          ChB_WordsOnly:TCheckBox;
  252.          Grp_Scope:TGroupBox;
  253.          RaB_Global:TRadioButton;
  254.          RaB_Selection:TRadioButton;
  255.          Grp_Origin:TGroupBox;
  256.          RaB_EntireScope:TRadioButton;
  257.          RaB_Cursor:TRadioButton;
  258.          Grp_Direction:TGroupBox;
  259.          RaB_Forward:TRadioButton;
  260.          RaB_Backward:TRadioButton;
  261.          BiB_Find:TBitBtn;
  262.          BiB_Cancel:TBitBtn;
  263.          BiB_Help:TBitBtn;
  264.          FFindTextExt:STRING;
  265.          FUNCTION GetFindOptions:TFindOptions;
  266.          PROCEDURE SetFindOptions(Value:TFindOptions);
  267.          FUNCTION GetFindOrigin:TFindOrigin;
  268.          PROCEDURE SetFindOrigin(Value:TFindOrigin);
  269.          FUNCTION GetFindScope:TFindScope;
  270.          PROCEDURE SetFindScope(Value:TFindScope);
  271.          FUNCTION GetFindDirection:TFindDirection;
  272.          PROCEDURE SetFindDirection(Value:TFindDirection);
  273.          FUNCTION GetFindText:STRING;
  274.          PROCEDURE SetFindText(CONST Value:STRING);
  275.          PROCEDURE SetFindTextExtend(CONST Value:STRING);
  276.          PROCEDURE SetFindHistory(CONST Strings:TStringList);
  277.       PROTECTED
  278.          PROCEDURE SetupComponent;OVERRIDE;
  279.          PROCEDURE SetupShow;OVERRIDE;
  280.       PUBLIC
  281.          PROPERTY FindHistory:TStringList write SetFindHistory;
  282.       PUBLISHED
  283.          PROPERTY Options:TFindOptions read GetFindOptions write SetFindOptions;
  284.          PROPERTY Origin:TFindOrigin read GetFindOrigin write SetFindOrigin;
  285.          PROPERTY Scope:TFindScope read GetFindScope write SetFindScope;
  286.          PROPERTY Direction:TFindDirection read GetFindDirection write SetFindDirection;
  287.          PROPERTY FindText:STRING read GetFindText write SetFindText;
  288.          PROPERTY FindTextExtend:STRING read FFindTextExt write SetFindTextExtend;
  289.     END;
  290.  
  291.  
  292.     TReplaceDialog=CLASS(TFindDialog)
  293.       PRIVATE
  294.          CoB_Replace:TComboBox;
  295.          ChB_Confirm:TCheckBox;
  296.          FUNCTION GetConfirm:BOOLEAN;
  297.          PROCEDURE SetConfirm(Value:BOOLEAN);
  298.          FUNCTION GetReplaceText:STRING;
  299.          PROCEDURE SetReplaceText(CONST Value:STRING);
  300.          PROCEDURE SetReplaceHistory(CONST Strings:TStringList);
  301.       PROTECTED
  302.          PROCEDURE SetupComponent;OVERRIDE;
  303.       PUBLIC
  304.          PROPERTY ReplaceHistory:TStringList write SetReplaceHistory;
  305.       PUBLISHED
  306.          PROPERTY Confirm:BOOLEAN read GetConfirm write SetConfirm;
  307.          PROPERTY ReplaceText:STRING read GetReplaceText write SetReplaceText;
  308.     END;
  309.  
  310.  
  311.     TColorDialog=CLASS(TDialog)
  312.       PRIVATE
  313.          FSelColor:TColor;
  314.          FRedScroll,FGreenScroll,FBlueScroll:TScrollBar;
  315.          FColorArea:TPanel;
  316.          FOkBtn:TBitBtn;
  317.          FDefaultCombo:TComboBox;
  318.          PROCEDURE SetSelColor(Value:TColor);
  319.          PROCEDURE EvSelectComboItem(Sender:TObject;Index:LONGINT);
  320.       PROTECTED
  321.          PROCEDURE SetupComponent;OVERRIDE;
  322.          PROCEDURE SetupShow;OVERRIDE;
  323.          PROCEDURE Scroll(ScrollBar:TScrollBar;ScrollCode:TScrollCode;VAR ScrollPos:LONGINT);OVERRIDE;
  324.          PROCEDURE UpdateColorArea;
  325.       PUBLIC
  326.          PROPERTY RGBColor:TColor read FSelColor write SetSelColor;
  327.     END;
  328.  
  329.  
  330.     TFontDialog=CLASS(TDialog)
  331.       PRIVATE
  332.          FNameCombo:TComboBox;
  333.          FSizeCombo:TComboBox;
  334.          FExampleText:TButton;
  335.          FItalicCheck:TCheckBox;
  336.          FBoldCheck:TCheckBox;
  337.          FOutlineCheck:TCheckBox;
  338.          FUnderscoreCheck:TCheckBox;
  339.          FStrikeOutCheck:TCheckBox;
  340.          FOkBtn:TBitBtn;
  341.          FUNCTION GetFontName:STRING;
  342.          PROCEDURE SetFontName(Value:STRING);
  343.          FUNCTION GetFaceName:STRING;
  344.          PROCEDURE SetFaceName(Value:STRING);
  345.          FUNCTION GetPointSize:LONGINT;
  346.          PROCEDURE SetPointSize(Value:LONGINT);
  347.          PROCEDURE SetTheFont;
  348.          PROCEDURE InsertSizes(VAR TheFont:TFont);
  349.          PROCEDURE EvComboSelect(Sender:TObject;Index:LONGINT);
  350.          PROCEDURE EvComboSizeSelect(Sender:TObject;Index:LONGINT);
  351.          FUNCTION GetEditFont:TFont;
  352.          PROCEDURE SetEditFont(NewFont:TFont);
  353.          FUNCTION GetAttributes:TFontAttributes;
  354.          PROCEDURE SetAttributes(NewValue:TFontAttributes);
  355.          PROCEDURE StyleChanged(Sender:TObject);
  356.       PROTECTED
  357.          PROCEDURE SetupComponent;OVERRIDE;
  358.          PROCEDURE SetupShow;OVERRIDE;
  359.       PUBLIC
  360.          PROPERTY FaceName:STRING read GetFaceName write SetFaceName;
  361.          PROPERTY PointSize:LONGINT read GetPointSize write SetPointSize;
  362.       PUBLISHED
  363.          PROPERTY FontName:STRING read GetFontName write SetFontName;
  364.          PROPERTY EditFont:TFont read GetEditFont write SetEditFont;
  365.          PROPERTY Attributes:TFontAttributes read GetAttributes write SetAttributes;
  366.     END;
  367.  
  368.  
  369.     TMessageBox=CLASS(TDialog)
  370.       PRIVATE
  371.          FMsg:STRING;
  372.          FHelpCtx:THelpContext;
  373.          FButtons:TMsgDlgButtons;
  374.          FType:TMsgDlgType;
  375.       PROTECTED
  376.          PROCEDURE SetupShow;OVERRIDE;
  377.          PROCEDURE SetupComponent;OVERRIDE;
  378.       PUBLISHED
  379.          PROPERTY Message:STRING read FMsg write FMsg;
  380.          PROPERTY Buttons:TMsgDlgButtons read FButtons write FButtons;
  381.          PROPERTY DlgType:TMsgDlgType read FType write FType;
  382.          PROPERTY HelpCtx:THelpContext read FHelpCtx write FHelpCtx;
  383.      END;
  384.  
  385.  
  386. FUNCTION MessageBox(CONST Msg:STRING;Typ:TMsgDlgType;Buttons:TMsgDlgButtons):TMsgDlgReturn;
  387. FUNCTION ErrorBox(CONST Msg:STRING):TMsgDlgReturn;
  388.  
  389. FUNCTION CreateMessageDialog(CONST Msg:STRING;DlgType:TMsgDlgType;DlgButtons:TMsgDlgButtons):TForm;
  390. FUNCTION MessageDlg(CONST Msg:STRING;DlgType:TMsgDlgType;DlgButtons:TMsgDlgButtons;HelpCtx:THelpContext):TMsgDlgReturn;
  391. FUNCTION MessageDlgPos(CONST Msg:STRING;DlgType: TMsgDlgType;DlgButtons:TMsgDlgButtons;HelpCtx:THelpContext;
  392.                        X,Y:LONGINT):TMsgDlgReturn;
  393. PROCEDURE ShowMessage(CONST Msg:STRING);
  394. PROCEDURE ShowMessagePos(CONST Msg:STRING;X,Y:LONGINT);
  395. FUNCTION InputBox(CONST ACaption,APrompt,ADefault:STRING):STRING;
  396. FUNCTION InputQuery(CONST ACaption,APrompt:STRING;VAR Value:STRING):BOOLEAN;
  397.  
  398.  
  399. IMPLEMENTATION
  400.  
  401.