]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/msw/window.h
Added missing | symbol
[wxWidgets.git] / include / wx / msw / window.h
index 27d739947d7e660d6150b6812e06ee3e14f8e761..212504c34fca9cd997335c14d409e1d8faf6e2fd 100644 (file)
@@ -6,7 +6,7 @@
 // Created:     01/02/97
 // RCS-ID:      $Id$
 // Copyright:   (c) Julian Smart and Markus Holzem
 // Created:     01/02/97
 // RCS-ID:      $Id$
 // Copyright:   (c) Julian Smart and Markus Holzem
-// Licence:    wxWindows licence
+// Licence:           wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifndef _WX_WINDOW_H_
 /////////////////////////////////////////////////////////////////////////////
 
 #ifndef _WX_WINDOW_H_
@@ -27,6 +27,7 @@
 #include "wx/list.h"
 #include "wx/region.h"
 #include "wx/msw/accel.h"
 #include "wx/list.h"
 #include "wx/region.h"
 #include "wx/msw/accel.h"
+#include "wx/intl.h"
 
 #define wxKEY_SHIFT     1
 #define wxKEY_CTRL      2
 
 #define wxKEY_SHIFT     1
 #define wxKEY_CTRL      2
@@ -66,6 +67,7 @@ class WXDLLEXPORT wxPen;
 class WXDLLEXPORT wxIcon;
 class WXDLLEXPORT wxDC;
 class WXDLLEXPORT wxValidator;
 class WXDLLEXPORT wxIcon;
 class WXDLLEXPORT wxDC;
 class WXDLLEXPORT wxValidator;
+class WXDLLEXPORT wxToolTip;
 
 #if wxUSE_DRAG_AND_DROP
 class WXDLLEXPORT wxDropTarget;
 
 #if wxUSE_DRAG_AND_DROP
 class WXDLLEXPORT wxDropTarget;
@@ -103,7 +105,7 @@ public:
     wxStringClientData( wxString &data ) { m_data = data; }
     void SetData( wxString &data ) { m_data = data; }
     wxString GetData() const { return m_data; }
     wxStringClientData( wxString &data ) { m_data = data; }
     void SetData( wxString &data ) { m_data = data; }
     wxString GetData() const { return m_data; }
-    
+
 private:
     wxString  m_data;
 };
 private:
     wxString  m_data;
 };
@@ -261,6 +263,17 @@ public:
   wxDropTarget *GetDropTarget() const { return m_pDropTarget; }
 #endif
 
   wxDropTarget *GetDropTarget() const { return m_pDropTarget; }
 #endif
 
+#if wxUSE_TOOLTIPS
+  // tooltips
+    // create a tooltip with this text
+  void SetToolTip(const wxString &tip);
+    // pointer may be NULL to remove the tooltip
+  void SetToolTip(wxToolTip *tooltip);
+    // get the current tooltip (may return NULL if none)
+  wxToolTip* GetToolTip() const { return m_tooltip; }
+
+#endif // wxUSE_TOOLTIPS
+
   // Accept files for dragging
   virtual void DragAcceptFiles(bool accept);
 
   // Accept files for dragging
   virtual void DragAcceptFiles(bool accept);
 
@@ -371,7 +384,7 @@ public:
   // be searched)
   void PushEventHandler(wxEvtHandler *handler) ;
   wxEvtHandler *PopEventHandler(bool deleteHandler = FALSE) ;
   // be searched)
   void PushEventHandler(wxEvtHandler *handler) ;
   wxEvtHandler *PopEventHandler(bool deleteHandler = FALSE) ;
-  
+
   // Close the window by calling OnClose, posting a deletion
   virtual bool Close(bool force = FALSE);
 
   // Close the window by calling OnClose, posting a deletion
   virtual bool Close(bool force = FALSE);
 
@@ -453,10 +466,10 @@ public:
   void UpdateWindowUI();
 
   void OnEraseBackground(wxEraseEvent& event);
   void UpdateWindowUI();
 
   void OnEraseBackground(wxEraseEvent& event);
-  void OnChar(wxKeyEvent& event);
   void OnKeyDown(wxKeyEvent& event);
   void OnKeyUp(wxKeyEvent& event);
   void OnPaint(wxPaintEvent& event);
   void OnKeyDown(wxKeyEvent& event);
   void OnKeyUp(wxKeyEvent& event);
   void OnPaint(wxPaintEvent& event);
+  void OnChar(wxKeyEvent& event);
   void OnIdle(wxIdleEvent& event);
 
   // Does this window want to accept keyboard focus?
   void OnIdle(wxIdleEvent& event);
 
   // Does this window want to accept keyboard focus?
@@ -466,7 +479,7 @@ public:
 public:
   ////////////////////////////////////////////////////////////////////////
   //// IMPLEMENTATION
 public:
   ////////////////////////////////////////////////////////////////////////
   //// IMPLEMENTATION
-  
+
   // For implementation purposes - sometimes decorations make the client area
   // smaller
   virtual wxPoint GetClientAreaOrigin() const;
   // For implementation purposes - sometimes decorations make the client area
   // smaller
   virtual wxPoint GetClientAreaOrigin() const;
@@ -613,9 +626,10 @@ public:
   virtual void MSWOnMouseEnter(int x, int y, WXUINT flags);
   virtual void MSWOnMouseLeave(int x, int y, WXUINT flags);
 
   virtual void MSWOnMouseEnter(int x, int y, WXUINT flags);
   virtual void MSWOnMouseLeave(int x, int y, WXUINT flags);
 
-  virtual void MSWOnChar(WXWORD wParam, WXLPARAM lParam, bool isASCII = FALSE);
-  virtual void MSWOnKeyDown(WXWORD wParam, WXLPARAM lParam, bool isASCII = FALSE);
-  virtual void MSWOnKeyUp(WXWORD wParam, WXLPARAM lParam, bool isASCII = FALSE);
+  // These return TRUE if an event handler was found, FALSE otherwise (not processed)
+  virtual bool MSWOnChar(WXWORD wParam, WXLPARAM lParam, bool isASCII = FALSE);
+  virtual bool MSWOnKeyDown(WXWORD wParam, WXLPARAM lParam, bool isASCII = FALSE);
+  virtual bool MSWOnKeyUp(WXWORD wParam, WXLPARAM lParam, bool isASCII = FALSE);
 
   virtual bool MSWOnActivate(int flag, bool minimized, WXHWND activate);
   virtual long MSWOnMDIActivate(long flag, WXHWND activate, WXHWND deactivate);
 
   virtual bool MSWOnActivate(int flag, bool minimized, WXHWND activate);
   virtual long MSWOnMDIActivate(long flag, WXHWND activate, WXHWND deactivate);
@@ -641,13 +655,13 @@ public:
 
   // Detach "Window" menu from menu bar so it doesn't get deleted
   void MSWDetachWindowMenu();
 
   // Detach "Window" menu from menu bar so it doesn't get deleted
   void MSWDetachWindowMenu();
-  
+
   inline WXFARPROC MSWGetOldWndProc() const;
   inline void MSWSetOldWndProc(WXFARPROC proc);
 
   // Define for each class of dialog and control
   virtual WXHBRUSH OnCtlColor(WXHDC pDC, WXHWND pWnd, WXUINT nCtlColor,
   inline WXFARPROC MSWGetOldWndProc() const;
   inline void MSWSetOldWndProc(WXFARPROC proc);
 
   // Define for each class of dialog and control
   virtual WXHBRUSH OnCtlColor(WXHDC pDC, WXHWND pWnd, WXUINT nCtlColor,
-                       WXUINT message, WXWPARAM wParam, WXLPARAM lParam);
+                        WXUINT message, WXWPARAM wParam, WXLPARAM lParam);
 
   inline void SetShowing(bool show);
   inline bool IsUserEnabled() const;
 
   inline void SetShowing(bool show);
   inline bool IsUserEnabled() const;
@@ -669,8 +683,8 @@ public:
 protected:
   wxAcceleratorTable    m_acceleratorTable;
   int                   m_windowId;
 protected:
   wxAcceleratorTable    m_acceleratorTable;
   int                   m_windowId;
-  long                  m_windowStyle;                         // Store the window's style
-  wxEvtHandler *        m_windowEventHandler;  // Usually is 'this'
+  long                  m_windowStyle;                         // Store the window's style
+  wxEvtHandler *        m_windowEventHandler;         // Usually is 'this'
   wxLayoutConstraints * m_constraints;           // Constraints for this window
   wxList *              m_constraintsInvolvedIn; // List of constraints we're involved in
   wxSizer *             m_windowSizer;                       // Window's top-level sizer (if any)
   wxLayoutConstraints * m_constraints;           // Constraints for this window
   wxList *              m_constraintsInvolvedIn; // List of constraints we're involved in
   wxSizer *             m_windowSizer;                       // Window's top-level sizer (if any)
@@ -682,7 +696,7 @@ protected:
   WXFARPROC             m_oldWndProc;
   bool                  m_useCtl3D;             // Using CTL3D for this control
 
   WXFARPROC             m_oldWndProc;
   bool                  m_useCtl3D;             // Using CTL3D for this control
 
-  bool                  m_inOnSize;                    // Protection against OnSize reentry
+  bool                  m_inOnSize;                         // Protection against OnSize reentry
 #ifndef _WX_WIN32__
   // Pointer to global memory, for EDIT controls that need
   // special treatment to reduce USER area consumption.
 #ifndef _WX_WIN32__
   // Pointer to global memory, for EDIT controls that need
   // special treatment to reduce USER area consumption.
@@ -730,7 +744,7 @@ protected:
 #endif  //USE_DRAG_AND_DROP
 
 public:
 #endif  //USE_DRAG_AND_DROP
 
 public:
-  WXHWND                m_hWnd;                        // MS Windows window handle
+  WXHWND                m_hWnd;                         // MS Windows window handle
   WXUINT                m_lastMsg;
   WXWPARAM              m_lastWParam;
   WXLPARAM              m_lastLParam;
   WXUINT                m_lastMsg;
   WXWPARAM              m_lastWParam;
   WXLPARAM              m_lastLParam;
@@ -754,6 +768,11 @@ private:
     // common part of all ctors
     void Init();
 
     // common part of all ctors
     void Init();
 
+    // the associated tooltip (may be NULL if none)
+#if wxUSE_TOOLTIPS
+    wxToolTip *m_tooltip;
+#endif // tooltips
+
     DECLARE_EVENT_TABLE()
 };
 
     DECLARE_EVENT_TABLE()
 };