00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 #ifndef ROOT_TGTextEditDialogs
00013 #define ROOT_TGTextEditDialogs
00014 
00015 
00016 
00017 
00018 
00019 
00020 
00021 
00022 
00023 
00024 
00025 
00026 
00027 #ifndef ROOT_TGFrame
00028 #include "TGFrame.h"
00029 #endif
00030 
00031 
00032 class TGSearchType {
00033 public:
00034    Bool_t  fDirection;
00035    Bool_t  fCaseSensitive;
00036    char   *fBuffer;
00037    Bool_t  fClose;
00038    TGSearchType() { fDirection = kTRUE; fCaseSensitive = kFALSE; fBuffer = 0; fClose = kTRUE; }
00039    ~TGSearchType() { if (fBuffer) delete [] fBuffer;}
00040 };
00041 
00042 class TGButton;
00043 class TGRadioButton;
00044 class TGCheckButton;
00045 class TGTextEntry;
00046 class TGTextBuffer;
00047 class TGLabel;
00048 class TGIcon;
00049 class TGComboBox;
00050 
00051 class TGSearchDialog : public TGTransientFrame {
00052 
00053 protected:
00054    TGCompositeFrame   *fF1, *fF2, *fF3, *fF4;  
00055    TGLayoutHints      *fL1, *fL2, *fL3, *fL4;  
00056    TGLayoutHints      *fL5, *fL6, *fL21, *fL9; 
00057    TGLayoutHints      *fL10;                   
00058    TGButton           *fSearchButton;          
00059    TGButton           *fCancelButton;          
00060    TGRadioButton      *fDirectionRadio[2];     
00061    TGCheckButton      *fCaseCheck;             
00062    TGGroupFrame       *fG2;                    
00063    TGTextEntry        *fSearch;                
00064    TGTextBuffer       *fBSearch;               
00065    TGLabel            *fLSearch;               
00066    TGSearchType       *fType;                  
00067    Int_t              *fRetCode;               
00068    TGComboBox         *fCombo;                 
00069 
00070    static TGSearchDialog *fgSearchDialog;      
00071 
00072 public:
00073    TGSearchDialog(const TGWindow *p = 0, const TGWindow *main = 0, UInt_t w = 1, UInt_t h = 1,
00074                   TGSearchType *sstruct = 0, Int_t *ret_code = 0,
00075                   UInt_t options = kVerticalFrame);
00076    virtual ~TGSearchDialog();
00077 
00078    virtual void   CloseWindow();
00079    virtual Bool_t ProcessMessage(Long_t msg, Long_t parm1, Long_t parm2);
00080    virtual void   SetClose(Bool_t on) { fType->fClose = on; }
00081    virtual Bool_t IsClose() const {  return fType->fClose; }
00082    virtual void   TextEntered(const char *text); 
00083    virtual TGSearchType *GetType() const { return fType; }
00084 
00085    static TGSearchDialog *&SearchDialog();
00086 
00087    ClassDef(TGSearchDialog,0)  
00088 };
00089 
00090 
00091 class TGPrintDialog : public TGTransientFrame {
00092 
00093 protected:
00094    char             **fPrinter;                    
00095    char             **fPrintCommand;               
00096    TGCompositeFrame  *fF1, *fF2, *fF3, *fF4, *fF5; 
00097    TGLayoutHints     *fL1, *fL2, *fL3, *fL5, *fL6; 
00098    TGLayoutHints     *fL7, *fL21;                  
00099    TGIcon            *fPrinterIcon;                
00100    TGButton          *fPrintButton;                
00101    TGButton          *fCancelButton;               
00102    TGTextEntry       *fPrinterEntry;               
00103    TGTextEntry       *fPrintCommandEntry;          
00104    TGTextBuffer      *fBPrinter, *fBPrintCommand;  
00105    TGLabel           *fLPrinter, *fLPrintCommand;  
00106    Int_t             *fRetCode;                    
00107 
00108 public:
00109    TGPrintDialog(const TGWindow *p = 0, const TGWindow *main = 0, UInt_t w = 1, UInt_t h = 1,
00110                  char **printerName = 0, char **printProg = 0, Int_t *ret_code = 0,
00111                  UInt_t options = kVerticalFrame);
00112    virtual ~TGPrintDialog();
00113 
00114    virtual void   CloseWindow();
00115    virtual Bool_t ProcessMessage(Long_t msg, Long_t parm1, Long_t parm2);
00116 
00117    ClassDef(TGPrintDialog,0)  
00118 };
00119 
00120 
00121 class TGGotoDialog : public TGTransientFrame {
00122 
00123 protected:
00124    TGCompositeFrame *fF1, *fF2;                
00125    TGButton         *fGotoButton;              
00126    TGButton         *fCancelButton;            
00127    TGLayoutHints    *fL1, *fL5, *fL6, *fL21;   
00128    TGTextEntry      *fGoTo;                    
00129    TGTextBuffer     *fBGoTo;                   
00130    TGLabel          *fLGoTo;                   
00131    Long_t           *fRetCode;                 
00132 
00133 public:
00134    TGGotoDialog(const TGWindow *p = 0, const TGWindow *main = 0, UInt_t w = 1, UInt_t h = 1,
00135                 Long_t *ret_code = 0, UInt_t options = kVerticalFrame);
00136    virtual ~TGGotoDialog();
00137 
00138    virtual void   CloseWindow();
00139    virtual Bool_t ProcessMessage(Long_t msg, Long_t parm1, Long_t parm2);
00140 
00141    ClassDef(TGGotoDialog,0)  
00142 };
00143 
00144 #endif