home *** CD-ROM | disk | FTP | other *** search
/ C Programming Starter Kit 2.0 / SamsPublishing-CProgrammingStarterKit-v2.0-Win31.iso / bc45 / owlinc.pak / LISTVIEW.H < prev    next >
C/C++ Source or Header  |  1997-07-23  |  2KB  |  77 lines

  1. //----------------------------------------------------------------------------
  2. // ObjectWindows
  3. // (C) Copyright 1993, 1994 by Borland International, All Rights Reserved
  4. //
  5. //   Defines class TListView
  6. //----------------------------------------------------------------------------
  7. #if !defined(OWL_LISTVIEW_H)
  8. #define OWL_LISTVIEW_H
  9.  
  10. #if !defined(OWL_DOCMANAG_H)
  11. # include <owl/docmanag.h>
  12. #endif
  13. #if !defined(OWL_LISTBOX_H)
  14. # include <owl/listbox.h>
  15. #endif
  16. #include <owl/listview.rh>
  17.  
  18. //
  19. //  class TListView
  20. //  ----- ---------
  21. //
  22. class _OWLCLASS TListView : public TListBox, public TView {
  23.   public:
  24.     TListView(TDocument& doc, TWindow* parent = 0);
  25.     static const char far* StaticName() {return "List View";}  // put in resource
  26.     int  DirtyFlag;
  27.  
  28.     //
  29.     // overridden virtuals from TView
  30.     //
  31.     const char far* GetViewName() {return StaticName();}
  32.     TWindow* GetWindow()  {return (TWindow*)this;}
  33.     bool     SetDocTitle(const char far* docname, int index)
  34.                           {return TListBox::SetDocTitle(docname, index); }
  35.  
  36.     //
  37.     // overridden virtuals from TListBox
  38.     //
  39.     int  AddString(const char far* str);
  40.  
  41.     //
  42.     // overridden virtuals from TWindow
  43.     //
  44.     bool CanClose()   {return TListBox::CanClose() && Doc->CanClose();}
  45.     bool Create();
  46.  
  47.   protected:
  48.     long Origin;
  49.     int  MaxWidth;    // maximum horizontal extent
  50.     void SetExtent(const char far* str);
  51.     bool LoadData(int top, int sel);
  52.     //
  53.     // message response functions
  54.     //
  55.     void CmEditUndo();
  56.     void CmEditCut();
  57.     void CmEditCopy();
  58.     void CmEditPaste();
  59.     void CmEditDelete();
  60.     void CmEditClear();
  61.     void CmEditAdd();
  62.     void CmEditItem();
  63.     uint EvGetDlgCode(MSG far*);
  64.     bool VnDocClosed(int omode);
  65.     bool VnCommit(bool force);
  66.     bool VnRevert(bool clear);
  67.     bool VnIsWindow(HWND hWnd) {return HWindow == hWnd;}
  68.     bool VnIsDirty() {return DirtyFlag != 0;}
  69.     void CmSelChange() {} // to prevent interpreting as unprocessed accelerator
  70.  
  71.   DECLARE_RESPONSE_TABLE(TListView);
  72.   DECLARE_STREAMABLE(_OWLCLASS, TListView,1);
  73. };
  74.  
  75. #endif  // OWL_LISTVIEW_H
  76.  
  77.