]> git.saurik.com Git - wxWidgets.git/blobdiff - interface/wx/window.h
added wxHeaderCtrl::OnColumnCountChanging()
[wxWidgets.git] / interface / wx / window.h
index 518dcb614d2081d61d9447b9341002581f246cd1..4b7f8a7c0a001a5b9ef98a5daab78a3df4b4eb93 100644 (file)
@@ -207,8 +207,9 @@ enum wxUpdateUI
            Under Windows, puts a query button on the caption. When pressed,
            Windows will go into a context-sensitive help mode and wxWidgets
            will send a wxEVT_HELP event if the user clicked on an application window.
-           This style cannot be used together with wxMAXIMIZE_BOX or wxMINIMIZE_BOX, so
-           these two styles are automatically turned of if this one is used.
+           This style cannot be used (because of the underlying native behaviour)
+           together with @c wxMAXIMIZE_BOX or @c wxMINIMIZE_BOX, so these two styles
+           are automatically turned off if this one is used.
     @style{wxWS_EX_PROCESS_IDLE}
            This window should always process idle events, even if the mode set
            by wxIdleEvent::SetMode is wxIDLE_PROCESS_SPECIFIED.
@@ -319,7 +320,7 @@ public:
 
         @remarks This function is currently only implemented under Mac/Carbon.
     */
-    virtual void AlwaysShowScrollbars(bool = true, bool = true);
+    virtual void AlwaysShowScrollbars(bool hflag = true, bool vflag = true);
 
     /**
         Sets the cached best size value.
@@ -600,7 +601,11 @@ public:
             If @true, the window is eligible for drop file events.
             If @false, the window will not accept drop file events.
 
-        @remarks Windows only.
+        @remarks Windows only until version 2.8.9, available on all platforms
+                 since 2.8.10. Cannot be used together with SetDropTarget() on
+                 non-Windows platforms.
+
+        @see SetDropTarget()
     */
     virtual void DragAcceptFiles(bool accept);
 
@@ -745,12 +750,6 @@ public:
     */
     wxAccessible* GetAccessible();
 
-    /**
-        @deprecated
-        This method is deprecated, use GetEffectiveMinSize() instead.
-    */
-    wxSize GetAdjustedBestSize() const;
-
     /**
         Returns the background colour of the window.
 
@@ -839,16 +838,12 @@ public:
     //@{
     /**
         Returns the size of the window 'client area' in pixels.
+
         The client area is the area which may be drawn on by the programmer,
         excluding title bar, border, scrollbars, etc.
         Note that if this window is a top-level one and it is currently minimized, the
         return size is empty (both width and height are 0).
 
-        @param width
-            Receives the client width in pixels.
-        @param height
-            Receives the client height in pixels.
-
         @see GetSize(), GetVirtualSize()
     */
     void GetClientSize(int* width, int* height) const;
@@ -969,7 +964,7 @@ public:
         @param origin
             Help event origin, see also wxHelpEvent::GetOrigin.
     */
-    virtual wxString GetHelpTextAtPoint(const wxPoint point,
+    virtual wxString GetHelpTextAtPoint(const wxPoint& point,
                                         wxHelpEvent::Origin origin) const;
 
     /**
@@ -1255,7 +1250,12 @@ public:
     /**
         This gets the virtual size of the window in pixels.
         By default it returns the client size of the window, but after a call to
-        SetVirtualSize() it will return that size.
+        SetVirtualSize() it will return the size set with that method.
+    */
+    wxSize GetVirtualSize() const;
+
+    /**
+        Like the other GetVirtualSize() overload but uses pointers instead.
 
         @param width
             Receives the window virtual width.
@@ -1263,7 +1263,6 @@ public:
             Receives the window virtual height.
     */
     void GetVirtualSize(int* width, int* height) const;
-    wxSize GetVirtualSize() const;
     //@}
 
     /**
@@ -1441,9 +1440,9 @@ public:
         only redrawing those areas, which have been exposed.
     */
     bool IsExposed(int x, int y) const;
-    const bool IsExposed(wxPoint amp;pt) const;
-    const bool IsExposed(int x, int y, int w, int h) const;
-    const bool IsExposed(wxRect amp;rect) const;
+    bool IsExposed(wxPoint& pt) const;
+    bool IsExposed(int x, int y, int w, int h) const;
+    bool IsExposed(wxRect& rect) const;
     //@}
 
     /**
@@ -1504,8 +1503,10 @@ public:
         Invokes the constraint-based layout algorithm or the sizer-based algorithm
         for this window.
 
-        See SetAutoLayout(): when auto layout is on, this function gets called automatically
-        when the window is resized.
+        This function does not get called automatically when the window is resized
+        because lots of windows deriving from wxWindow does not need this functionality.
+        If you want to have Layout() called automatically, you should derive
+        from wxPanel (see wxPanel::Layout).
 
         @see @ref overview_windowsizing
     */
@@ -1514,6 +1515,9 @@ public:
     /**
         Lowers the window to the bottom of the window hierarchy (Z-order).
 
+        @remarks
+        This function only works for wxTopLevelWindow-derived classes.
+
         @see Raise()
     */
     virtual void Lower();
@@ -1522,7 +1526,7 @@ public:
         Disables all other windows in the application so that
         the user can only interact with this window.
 
-        @param flag
+        @param modal
             If @true, this call disables all other windows in the application so that
             the user can only interact with this window. If @false, the effect is
             reversed.
@@ -1536,6 +1540,8 @@ public:
             Required x position.
         @param y
             Required y position.
+        @param flags
+            See SetSize() for more info about this parameter.
 
         @remarks Implementations of SetSize can also implicitly implement the
                  Move() function, which is defined in the base wxWindow class as the call:
@@ -1545,13 +1551,15 @@ public:
 
         @see SetSize()
     */
-    void Move(int x, int y, int flags = 0);
+    void Move(int x, int y, int flags = wxSIZE_USE_EXISTING);
 
     /**
         Moves the window to the given position.
 
         @param pt
             wxPoint object representing the position.
+        @param flags
+            See SetSize() for more info about this parameter.
 
         @remarks Implementations of SetSize() can also implicitly implement the
                  Move() function, which is defined in the base wxWindow class as the call:
@@ -1561,7 +1569,7 @@ public:
 
         @see SetSize()
     */
-    void Move(const wxPoint& pt, int flags = 0);
+    void Move(const wxPoint& pt, int flags = wxSIZE_USE_EXISTING);
 
     /**
         Moves this window in the tab navigation order after the specified @e win.
@@ -1684,14 +1692,10 @@ public:
         processed as usually. If the coordinates are not specified, current mouse
         cursor position is used.
 
-        @param menu
-            Menu to pop up.
-        @param pos
-            The position where the menu will appear.
-        @param x
-            Required x position for the menu to appear.
-        @param y
-            Required y position for the menu to appear.
+        @a menu is the menu to pop up.
+
+        The position where the menu will appear can be specified either as a
+        wxPoint @a pos or by two integers (@a x and @a y).
 
         @remarks Just before the menu is popped up, wxMenu::UpdateUI is called to
                  ensure that the menu items are in the correct state.
@@ -1747,7 +1751,9 @@ public:
 
     /**
         Raises the window to the top of the window hierarchy (Z-order).
-        In current version of wxWidgets this works both for managed and child windows.
+
+        @remarks
+        This function only works for wxTopLevelWindow-derived classes.
 
         @see Lower()
     */
@@ -1809,8 +1815,8 @@ public:
 
         @see UnregisterHotKey()
     */
-    bool RegisterHotKey(int hotkeyId, int modifiers,
-                        int virtualKeyCode);
+    virtual bool RegisterHotKey(int hotkeyId, int modifiers,
+                                int virtualKeyCode);
 
     /**
         Releases mouse input captured with CaptureMouse().
@@ -1859,7 +1865,6 @@ public:
     */
     virtual bool Reparent(wxWindow* newParent);
 
-    //@{
     /**
         Converts from screen to client window coordinates.
 
@@ -1867,12 +1872,16 @@ public:
             Stores the screen x coordinate and receives the client x coordinate.
         @param y
             Stores the screen x coordinate and receives the client x coordinate.
+    */
+    void ScreenToClient(int* x, int* y) const;
+
+    /**
+        Converts from screen to client window coordinates.
+
         @param pt
-            The screen position for the second form of the function.
+            The screen position.
     */
-    virtual void ScreenToClient(int* x, int* y) const;
-    virtual wxPoint ScreenToClient(const wxPoint& pt) const;
-    //@}
+    wxPoint ScreenToClient(const wxPoint& pt) const;
 
     /**
         Scrolls the window by the given number of lines down (if @a lines is
@@ -1921,7 +1930,7 @@ public:
                               const wxRect* rect = NULL);
 
     /**
-        This function sends a dummy @ref overview_wxsizeevent "size event" to
+        This function sends a dummy @ref wxSizeEvent "size event" to
         the window allowing it to re-layout its children positions.
 
         It is sometimes useful to call this function after adding or deleting a
@@ -1979,8 +1988,9 @@ public:
         updated when its size changes.
 
         @param autoLayout
-            Set this to @true if you wish the Layout function to be
-            called automatically when the window is resized.
+            Set this to @true if you wish the Layout() function to be
+            called automatically when the window is resized
+            (really happens only if you derive from wxPanel or wxTopLevelWindow).
 
         @see SetConstraints()
     */
@@ -2046,13 +2056,6 @@ public:
         than SetSize(), since the application need not worry about what dimensions
         the border or title bar have when trying to fit the window around panel
         items, for example.
-
-        @param width
-            The required client area width.
-        @param height
-            The required client area height.
-        @param size
-            The required client size.
     */
     virtual void SetClientSize(int width, int height);
     virtual void SetClientSize(const wxSize& size);
@@ -2445,6 +2448,17 @@ public:
     virtual void SetSize(int width, int height);
     //@}
 
+    /**
+        Use of this function for windows which are not toplevel windows
+        (such as wxDialog or wxFrame) is discouraged.
+        Please use SetMinSize() and SetMaxSize() instead.
+
+        @see wxTopLevelWindow::SetSizeHints
+    */
+    void SetSizeHints( const wxSize& minSize,
+                       const wxSize& maxSize=wxDefaultSize,
+                       const wxSize& incSize=wxDefaultSize);
+
     /**
         Sets the window to have the given layout sizer.
         The window will then own the object, and will take care of its deletion.
@@ -2666,7 +2680,7 @@ public:
 
         @see RegisterHotKey()
     */
-    bool UnregisterHotKey(int hotkeyId);
+    virtual bool UnregisterHotKey(int hotkeyId);
 
     /**
         Unreserve an ID or range of IDs that was reserved by NewControlId().