]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/html/htmlcell.h
added and documented wxApp::OnExceptionInMainLoop()
[wxWidgets.git] / include / wx / html / htmlcell.h
index 06a553cf2a2ff23838ff7f2cd4da04e0072fdc58..312b50634eaa3220af9f813f351f10f8d9ff7a83 100644 (file)
@@ -12,7 +12,7 @@
 #ifndef _WX_HTMLCELL_H_
 #define _WX_HTMLCELL_H_
 
-#if defined(__GNUG__) && !defined(__APPLE__)
+#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
 #pragma interface "htmlcell.h"
 #endif
 
@@ -172,6 +172,11 @@ public:
     int GetPosX() const {return m_PosX;}
     int GetPosY() const {return m_PosY;}
     int GetWidth() const {return m_Width;}
+    
+    // Returns the maximum possible length of the cell.
+    // Call Layout at least once before using GetMaxTotalWidth()
+    virtual int GetMaxTotalWidth() const { return m_Width; }
+
     int GetHeight() const {return m_Height;}
     int GetDescent() const {return m_Descent;}
 
@@ -312,6 +317,7 @@ protected:
     wxString m_id;
             // unique identifier of the cell, generated from "id" property of tags
 
+    DECLARE_ABSTRACT_CLASS(wxHtmlCell)
     DECLARE_NO_COPY_CLASS(wxHtmlCell)
 };
 
@@ -349,6 +355,7 @@ protected:
     wxString m_Word;
     bool     m_allowLinebreak;
 
+    DECLARE_ABSTRACT_CLASS(wxHtmlWordCell)
     DECLARE_NO_COPY_CLASS(wxHtmlWordCell)
 };
 
@@ -426,6 +433,10 @@ public:
     // below first/last terminal cell). For internal use only.
     void RemoveExtraSpacing(bool top, bool bottom);
 
+    // Returns the maximum possible length of the container.
+    // Call Layout at least once before using GetMaxTotalWidth()
+    virtual int GetMaxTotalWidth() const { return m_MaxTotalWidth; }
+
 protected:
     void UpdateRenderingStatePre(wxHtmlRenderingInfo& info,
                                  wxHtmlCell *cell) const;
@@ -455,7 +466,11 @@ protected:
     int m_LastLayout;
             // if != -1 then call to Layout may be no-op
             // if previous call to Layout has same argument
+    int m_MaxTotalWidth;
+            // Maximum possible length if ignoring line wrap
 
+    
+    DECLARE_ABSTRACT_CLASS(wxHtmlContainerCell)
     DECLARE_NO_COPY_CLASS(wxHtmlContainerCell)
 };
 
@@ -485,6 +500,7 @@ protected:
     wxColour m_Colour;
     unsigned m_Flags;
 
+    DECLARE_ABSTRACT_CLASS(wxHtmlColourCell)
     DECLARE_NO_COPY_CLASS(wxHtmlColourCell)
 };
 
@@ -508,6 +524,7 @@ public:
 protected:
     wxFont m_Font;
 
+    DECLARE_ABSTRACT_CLASS(wxHtmlFontCell)
     DECLARE_NO_COPY_CLASS(wxHtmlFontCell)
 };
 
@@ -543,6 +560,7 @@ protected:
     int m_WidthFloat;
             // width float is used in adjustWidth (it is in percents)
 
+    DECLARE_ABSTRACT_CLASS(wxHtmlWidgetCell)
     DECLARE_NO_COPY_CLASS(wxHtmlWidgetCell)
 };