]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/stubs/window.h
Fixes for WXWIN_COMPATIBILITY, and BC++ fix for event.cpp
[wxWidgets.git] / include / wx / stubs / window.h
index 541dd58040c98bb197ae52f0a8913c45adbfab59..b34c6be6196674961f49a4a985ec0a8bf8b3a2eb 100644 (file)
@@ -26,6 +26,7 @@
 #include "wx/string.h"
 #include "wx/list.h"
 #include "wx/region.h"
 #include "wx/string.h"
 #include "wx/list.h"
 #include "wx/region.h"
+#include "wx/accel.h"
 
 #define wxKEY_SHIFT     1
 #define wxKEY_CTRL      2
 
 #define wxKEY_SHIFT     1
 #define wxKEY_CTRL      2
@@ -52,7 +53,7 @@ class WXDLLEXPORT wxCursor;
 class WXDLLEXPORT wxColourMap;
 class WXDLLEXPORT wxFont;
 class WXDLLEXPORT wxMenu;
 class WXDLLEXPORT wxColourMap;
 class WXDLLEXPORT wxFont;
 class WXDLLEXPORT wxMenu;
-class WXDLLEXPORT wxRectangle;
+class WXDLLEXPORT wxRect;
 class WXDLLEXPORT wxBitmap;
 class WXDLLEXPORT wxSizer;
 class WXDLLEXPORT wxList;
 class WXDLLEXPORT wxBitmap;
 class WXDLLEXPORT wxSizer;
 class WXDLLEXPORT wxList;
@@ -66,11 +67,11 @@ class WXDLLEXPORT wxIcon;
 class WXDLLEXPORT wxDC;
 class WXDLLEXPORT wxValidator;
 
 class WXDLLEXPORT wxDC;
 class WXDLLEXPORT wxValidator;
 
-#if USE_DRAG_AND_DROP
+#if wxUSE_DRAG_AND_DROP
 class WXDLLEXPORT wxDropTarget;
 #endif
 
 class WXDLLEXPORT wxDropTarget;
 #endif
 
-#if USE_WX_RESOURCES
+#if wxUSE_WX_RESOURCES
 class WXDLLEXPORT wxResourceTable;
 class WXDLLEXPORT wxItemResource;
 #endif
 class WXDLLEXPORT wxResourceTable;
 class WXDLLEXPORT wxItemResource;
 #endif
@@ -192,7 +193,7 @@ public:
   // Enable or disable the window
   virtual void Enable(bool enable);
 
   // Enable or disable the window
   virtual void Enable(bool enable);
 
-#if USE_DRAG_AND_DROP
+#if wxUSE_DRAG_AND_DROP
   // Associate a drop target with this window (if the window already had a drop
   // target, it's deleted!) and return the current drop target (may be NULL).
   void          SetDropTarget(wxDropTarget *pDropTarget);
   // Associate a drop target with this window (if the window already had a drop
   // target, it's deleted!) and return the current drop target (may be NULL).
   void          SetDropTarget(wxDropTarget *pDropTarget);
@@ -227,7 +228,7 @@ public:
   virtual bool PopupMenu(wxMenu *menu, int x, int y);
 
   // Send the window a refresh event
   virtual bool PopupMenu(wxMenu *menu, int x, int y);
 
   // Send the window a refresh event
-  virtual void Refresh(bool eraseBack = TRUE, const wxRectangle *rect = NULL);
+  virtual void Refresh(bool eraseBack = TRUE, const wxRect *rect = NULL);
 
   // New functions that will replace the above.
   virtual void SetScrollbar(int orient, int pos, int thumbVisible,
 
   // New functions that will replace the above.
   virtual void SetScrollbar(int orient, int pos, int thumbVisible,
@@ -238,7 +239,7 @@ public:
   virtual int GetScrollRange(int orient) const;
   virtual int GetScrollThumb(int orient) const;
 
   virtual int GetScrollRange(int orient) const;
   virtual int GetScrollThumb(int orient) const;
 
-  virtual void ScrollWindow(int dx, int dy, const wxRectangle *rect = NULL);
+  virtual void ScrollWindow(int dx, int dy, const wxRect *rect = NULL);
 
   // Caret manipulation
   virtual void CreateCaret(int w, int h);
 
   // Caret manipulation
   virtual void CreateCaret(int w, int h);
@@ -255,6 +256,9 @@ public:
   inline int GetId() const;
   inline void SetId(int id);
 
   inline int GetId() const;
   inline void SetId(int id);
 
+  virtual void SetAcceleratorTable(const wxAcceleratorTable& accel);
+  inline virtual wxAcceleratorTable& GetAcceleratorTable() const { return (wxAcceleratorTable&) m_acceleratorTable; }
+
   // Make the window modal (all other windows unresponsive)
   virtual void MakeModal(bool modal);
 
   // Make the window modal (all other windows unresponsive)
   virtual void MakeModal(bool modal);
 
@@ -279,6 +283,9 @@ public:
   inline void SetWindowStyleFlag(long flag);
   inline long GetWindowStyleFlag() const;
 
   inline void SetWindowStyleFlag(long flag);
   inline long GetWindowStyleFlag() const;
 
+  // Handle a control command
+  virtual void OnCommand(wxWindow& win, wxCommandEvent& event);
+
   // Set/get event handler
   inline void SetEventHandler(wxEvtHandler *handler);
   inline wxEvtHandler *GetEventHandler() const;
   // Set/get event handler
   inline void SetEventHandler(wxEvtHandler *handler);
   inline wxEvtHandler *GetEventHandler() const;
@@ -311,15 +318,6 @@ public:
   inline virtual void SetForegroundColour(const wxColour& col);
   inline virtual wxColour GetForegroundColour() const;
 
   inline virtual void SetForegroundColour(const wxColour& col);
   inline virtual wxColour GetForegroundColour() const;
 
-  // Set/get window default background colour (for children to inherit).
-  // NOTE: these may be removed in later revisions.
-  inline virtual void SetDefaultBackgroundColour(const wxColour& col);
-  inline virtual wxColour GetDefaultBackgroundColour(void) const;
-
-  // Set/get window default foreground colour (for children to inherit)
-  inline virtual void SetDefaultForegroundColour(const wxColour& col);
-  inline virtual wxColour GetDefaultForegroundColour(void) const;
-
   // Get the default button, if there is one
   inline virtual wxButton *GetDefaultItem() const;
   inline virtual void SetDefaultItem(wxButton *but);
   // Get the default button, if there is one
   inline virtual wxButton *GetDefaultItem() const;
   inline virtual void SetDefaultItem(wxButton *but);
@@ -329,17 +327,12 @@ public:
   virtual void OnDefaultAction(wxControl *initiatingItem);
 
   // Resource loading
   virtual void OnDefaultAction(wxControl *initiatingItem);
 
   // Resource loading
-#if USE_WX_RESOURCES
+#if wxUSE_WX_RESOURCES
   virtual bool LoadFromResource(wxWindow *parent, const wxString& resourceName, const wxResourceTable *table = NULL);
   virtual bool LoadFromResource(wxWindow *parent, const wxString& resourceName, const wxResourceTable *table = NULL);
-  virtual wxControl *CreateItem(const wxItemResource *childResource, const wxResourceTable *table = NULL);
+  virtual wxControl *CreateItem(const wxItemResource* childResource, const wxItemResource* parentResource,
+                                 const wxResourceTable *table = (const wxResourceTable *) NULL);
 #endif
 
 #endif
 
-  // Native resource loading
-  virtual bool LoadNativeDialog(wxWindow* parent, wxWindowID& id);
-  virtual bool LoadNativeDialog(wxWindow* parent, const wxString& name);
-  virtual wxWindow* GetWindowChild1(wxWindowID& id);
-  virtual wxWindow* GetWindowChild(wxWindowID& id);
-
   virtual void GetTextExtent(const wxString& string, int *x, int *y,
                              int *descent = NULL,
                              int *externalLeading = NULL,
   virtual void GetTextExtent(const wxString& string, int *x, int *y,
                              int *descent = NULL,
                              int *externalLeading = NULL,
@@ -376,6 +369,9 @@ public:
   // Does this window want to accept keyboard focus?
   virtual bool AcceptsFocus() const;
 
   // Does this window want to accept keyboard focus?
   virtual bool AcceptsFocus() const;
 
+  virtual void PrepareDC( wxDC &dc ) {};
+
+
 public:
   ////////////////////////////////////////////////////////////////////////
   //// IMPLEMENTATION
 public:
   ////////////////////////////////////////////////////////////////////////
   //// IMPLEMENTATION
@@ -432,6 +428,14 @@ public:
   virtual void GetClientSizeConstraint(int *w, int *h) const ;
   virtual void GetPositionConstraint(int *x, int *y) const ;
 
   virtual void GetClientSizeConstraint(int *w, int *h) const ;
   virtual void GetPositionConstraint(int *x, int *y) const ;
 
+  // Dialog units translations. Implemented in wincmn.cpp.
+  wxPoint ConvertPixelsToDialog(const wxPoint& pt) ;
+  wxPoint ConvertDialogToPixels(const wxPoint& pt) ;
+  inline wxSize ConvertPixelsToDialog(const wxSize& sz)
+  { wxPoint pt(ConvertPixelsToDialog(wxPoint(sz.x, sz.y))); return wxSize(pt.x, pt.y); }
+  inline wxSize ConvertDialogToPixels(const wxSize& sz)
+  { wxPoint pt(ConvertDialogToPixels(wxPoint(sz.x, sz.y))); return wxSize(pt.x, pt.y); }
+
   wxObject *GetChild(int number) const ;
 
   // Generates a new id for controls
   wxObject *GetChild(int number) const ;
 
   // Generates a new id for controls
@@ -478,10 +482,9 @@ protected:
 
   wxColour              m_backgroundColour ;
   wxColour              m_foregroundColour ;
 
   wxColour              m_backgroundColour ;
   wxColour              m_foregroundColour ;
-  wxColour              m_defaultBackgroundColour;
-  wxColour              m_defaultForegroundColour;
+  wxAcceleratorTable    m_acceleratorTable;
 
 
-#if USE_DRAG_AND_DROP
+#if wxUSE_DRAG_AND_DROP
   wxDropTarget         *m_pDropTarget;    // the current drop target or NULL
 #endif  //USE_DRAG_AND_DROP
 
   wxDropTarget         *m_pDropTarget;    // the current drop target or NULL
 #endif  //USE_DRAG_AND_DROP
 
@@ -501,7 +504,7 @@ inline int wxWindow::GetId() const { return m_windowId; }
 inline void wxWindow::SetId(int id) { m_windowId = id; }
 inline wxWindow *wxWindow::GetParent() const { return m_windowParent; }
 inline void wxWindow::SetParent(wxWindow *p) { m_windowParent = p; }
 inline void wxWindow::SetId(int id) { m_windowId = id; }
 inline wxWindow *wxWindow::GetParent() const { return m_windowParent; }
 inline void wxWindow::SetParent(wxWindow *p) { m_windowParent = p; }
-inline wxWindow *wxWindow::GetGrandParent() const { return (m_windowParent ? m_windowParent->m_windowParent : NULL); }
+inline wxWindow *wxWindow::GetGrandParent() const { return (m_windowParent ? m_windowParent->m_windowParent : (wxWindow*) NULL); }
 inline wxList *wxWindow::GetChildren() const { return m_children; }
 inline wxFont *wxWindow::GetFont() const { return (wxFont *) & m_windowFont; }
 inline wxString wxWindow::GetName() const { return m_windowName; }
 inline wxList *wxWindow::GetChildren() const { return m_children; }
 inline wxFont *wxWindow::GetFont() const { return (wxFont *) & m_windowFont; }
 inline wxString wxWindow::GetName() const { return m_windowName; }
@@ -517,10 +520,6 @@ inline void wxWindow::SetBackgroundColour(const wxColour& col) { m_backgroundCol
 inline wxColour wxWindow::GetBackgroundColour() const { return m_backgroundColour; };
 inline void wxWindow::SetForegroundColour(const wxColour& col) { m_foregroundColour = col; };
 inline wxColour wxWindow::GetForegroundColour() const { return m_foregroundColour; };
 inline wxColour wxWindow::GetBackgroundColour() const { return m_backgroundColour; };
 inline void wxWindow::SetForegroundColour(const wxColour& col) { m_foregroundColour = col; };
 inline wxColour wxWindow::GetForegroundColour() const { return m_foregroundColour; };
-inline void wxWindow::SetDefaultForegroundColour(const wxColour& col) { m_defaultForegroundColour = col; };
-inline wxColour wxWindow::GetDefaultForegroundColour(void) const { return m_defaultForegroundColour; };
-inline void wxWindow::SetDefaultBackgroundColour(const wxColour& col) { m_defaultBackgroundColour = col; };
-inline wxColour wxWindow::GetDefaultBackgroundColour(void) const { return m_defaultBackgroundColour; };
 
 inline wxButton *wxWindow::GetDefaultItem() const { return m_defaultItem; }
 inline void wxWindow::SetDefaultItem(wxButton *but) { m_defaultItem = but; }
 
 inline wxButton *wxWindow::GetDefaultItem() const { return m_defaultItem; }
 inline void wxWindow::SetDefaultItem(wxButton *but) { m_defaultItem = but; }