]> git.saurik.com Git - wxWidgets.git/blobdiff - user/wxLayout/wxllist.h
Added wxFrame::OnCreateStatusBar and ToolBar
[wxWidgets.git] / user / wxLayout / wxllist.h
index fc5f5a619cf33d81e9e6e35841ab07abfc570127..8959a80e104cb8f459473d1267e249e07ca8f48c 100644 (file)
 
 #include   "kbList.h"
 
-#include   <wx/wx.h>
+#include   "wx/wx.h"
 
 // skip the following defines if embedded in M application
-#ifndef   MCONFIG_H
-// for testing only:
+#ifdef   M_BASEDIR
+#   ifdef   DEBUG
+//#      define   WXLAYOUT_DEBUG
+#   endif
+#else
+    // for testing only:
 #   define WXLAYOUT_DEBUG
-//#   define USE_STD_STRING
+    // The wxLayout classes can be compiled with std::string instead of wxString
+    //#   define USE_STD_STRING
 #endif
 
 #ifdef USE_STD_STRING
@@ -42,8 +47,9 @@ typedef long CoordType;
 class wxLayoutList;
 class wxLayoutObjectBase;
 
-/// Define a list type of wxLayoutObjectBase pointers.
-KBLIST_DEFINE(wxLayoutObjectList, wxLayoutObjectBase);
+class wxDC;
+class wxColour;
+class wxFont;
 
 /** The base class defining the interface to each object which can be
     part of the layout. Each object needs to draw itself and calculate 
@@ -60,8 +66,8 @@ public:
        @param baseLine the baseline for alignment, from top of box
        @draw if set to false, do not draw but just calculate sizes
    */
-   virtual void Draw( wxDC &WXUNUSED(dc), wxPoint WXUNUSED(position), 
-                     CoordType WXUNUSED(baseLine), bool draw = true) {};
+   virtual void Draw(wxDC &dc, wxPoint position, CoordType baseLine,
+                     bool draw = true) {};
 
    /** Calculates and returns the size of the object. May need to be
        called twice to work.
@@ -70,9 +76,8 @@ public:
        baseline)
        @return the size of the object's box in pixels
    */
-   virtual wxPoint GetSize( CoordType *WXUNUSED(baseLine) ) const 
-     { return wxPoint(0,0); };
-     
+   virtual wxPoint GetSize(CoordType *baseLine) const { return
+                                                           wxPoint(0,0); };
    /// returns the number of cursor positions occupied by this object
    virtual CoordType CountPositions(void) const { return 1; }
 
@@ -95,6 +100,10 @@ private:
    void * m_UserData;
 };
 
+/// Define a list type of wxLayoutObjectBase pointers.
+KBLIST_DEFINE(wxLayoutObjectList, wxLayoutObjectBase);
+
+
 /// object for text block
 class wxLayoutObjectText : public wxLayoutObjectBase
 {
@@ -134,8 +143,9 @@ public:
                      bool draw = true);
    virtual wxPoint GetSize(CoordType *baseLine) const;
    wxLayoutObjectIcon(wxIcon *icon);
+
 private:
-   wxIcon * m_Icon;
+   wxIcon *m_Icon;
 };
 
 /// for export to html:
@@ -236,10 +246,13 @@ public:
    /**@name Functionality for editing */
    //@{
    /// set list editable or read only
-   void SetEditable(bool editable = true) { m_Editable = true; }
+   void SetEditable(bool editable = true) { m_Editable = editable; }
+   /// return true if list is editable
+   bool IsEditable(void) const { return m_Editable; }
    /// move cursor
    void MoveCursor(int dx = 0, int dy = 0);
    void SetCursor(wxPoint const &p) { m_CursorPosition = p; }
+   wxPoint GetCursor(void) const { return m_CursorPosition; }
    /// delete one or more cursor positions
    void Delete(CoordType count = 1);
    void Insert(String const &text);
@@ -250,7 +263,10 @@ public:
    /// return a pointer to the default settings:
    wxLayoutObjectCmd const *GetDefaults(void) const { return m_DefaultSetting ; }
 
-   //@}
+   wxLayoutObjectList::iterator FindCurrentObject(CoordType *offset = NULL);
+   // get the length of the line with the object pointed to by i
+   CoordType GetLineLength(wxLayoutObjectList::iterator i);
+//@}
 protected:
    /// font parameters:
    int m_FontFamily, m_FontStyle, m_FontWeight;
@@ -284,10 +300,7 @@ protected:
    bool      m_Editable;
    /// find the object to the cursor position and returns the offset
    /// in there
-   wxLayoutObjectList::iterator FindObjectCursor(wxPoint const &cpos, CoordType *offset = NULL);
-   wxLayoutObjectList::iterator FindCurrentObject(CoordType *offset = NULL);
-   // get the length of the line with the object pointed to by i
-   CoordType GetLineLength(wxLayoutObjectList::iterator i);
+   wxLayoutObjectList::iterator FindObjectCursor(wxPoint *cpos, CoordType *offset = NULL);
    
 };