home *** CD-ROM | disk | FTP | other *** search
/ Dream 52 / Amiga_Dream_52.iso / Linux / Divers / lyx-0.13.2.tar.gz / lyx-0.13.2.tar / lyx-0.13.2 / src / lyxfr0.h < prev    next >
C/C++ Source or Header  |  1998-04-23  |  2KB  |  84 lines

  1. // -*- C++ -*-
  2. #ifndef _LYXFR0_H
  3. #define _LYXFR0_H
  4.  
  5. #ifdef __GNUG__
  6. #pragma interface
  7. #endif
  8.  
  9. #include FORMS_H_LOCATION
  10.  
  11.  
  12. /**
  13.   LyXFindReplace0
  14.  
  15.   This is a virtual base class. It does not handle text specific
  16.   items. It only manages the Find & Replace form and the variables.
  17.   
  18. To be added:
  19.  
  20. - Replace All lightbutton (checkbox)
  21.  
  22. - Confirm replace lightbutton (checkbox)
  23.  
  24. - A history list for search and replace strings.
  25. These 2 stringlists should match, so that you can replay previous replaces.
  26. If you select another search string, then the first choice should be the 
  27. replace string you have typed before.
  28.  
  29. - regex searches
  30.  
  31. */
  32. class LyXFindReplace0 {
  33. public:
  34.     ///
  35.     LyXFindReplace0();
  36.     ///
  37.     virtual ~LyXFindReplace0() {};    
  38.     
  39.     /// Initialize internal variables and dialog
  40.     virtual void StartSearch();
  41.  
  42.     // Callbacks from form
  43.     ///
  44.     virtual void SearchCancelCB();
  45.     ///
  46.     virtual void SearchCB(bool fForward) = 0;
  47.     ///
  48.     virtual void SearchReplaceCB() = 0;
  49. protected:
  50.     ///
  51.     bool        fCaseSensitive;
  52.     /// Match complete word only.
  53.     bool        fMatchWord;
  54.     /// replace buttons enabled?
  55.     bool        fReplaceEnabled;
  56.     /// search string
  57.     LString        lsSearch;
  58.  
  59.     ///
  60.     void SetReplaceEnabled(bool fEnabled);
  61.     ///
  62.     bool ReplaceEnabled() { return fReplaceEnabled; }
  63.  
  64.     /// Initialize search variables from Find & Replace form
  65.     virtual void ReInitFromForm();
  66.  
  67.     // Return values
  68.     ///
  69.     bool CaseSensitive() { return fCaseSensitive; }
  70.     ///
  71.     bool MatchWord() { return fMatchWord; }
  72.     ///
  73.     LString const SearchString() { return lsSearch; }
  74.     ///
  75.     void SetSearchString(LString const &ls);
  76.     ///
  77.     LString const ReplaceString();
  78.  
  79.     ///
  80.     bool ValidSearchData() { return !lsSearch.empty(); }         
  81. };
  82.  
  83. #endif
  84.