| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180 | 
							- ///////////////////////////////////////////////////////////////////////////////
 
- // Name:        ribbon/control.h
 
- // Purpose:     interface of wxRibbonControl
 
- // Author:      Peter Cawley
 
- // Licence:     wxWindows licence
 
- ///////////////////////////////////////////////////////////////////////////////
 
- /**
 
-     @class wxRibbonControl
 
-     wxRibbonControl serves as a base class for all controls which share the
 
-     ribbon characteristics of having a ribbon art provider, and (optionally)
 
-     non-continuous resizing. Despite what the name may imply, it is not the
 
-     top-level control for creating a ribbon interface - that is wxRibbonBar.
 
-     Ribbon controls often have a region which is "transparent", and shows the
 
-     contents of the ribbon page or panel behind it. If implementing a new
 
-     ribbon control, then it may be useful to realise that this effect is done
 
-     by the art provider when painting the background of the control, and hence
 
-     in the paint handler for the new control, you should call a draw background
 
-     method on the art provider (wxRibbonArtProvider::DrawButtonBarBackground()
 
-     and wxRibbonArtProvider::DrawToolBarBackground() typically just redraw what
 
-     is behind the rectangle being painted) if you want transparent regions.
 
-     @library{wxribbon}
 
-     @category{ribbon}
 
- */
 
- class wxRibbonControl : public wxControl
 
- {
 
- public:
 
-     /**
 
-         Constructor.
 
-     */
 
-     wxRibbonControl();
 
-     /**
 
-         Constructor.
 
-         If @a parent is a wxRibbonControl with a non-NULL art provider, then
 
-         the art provider of new control is set to that of @a parent.
 
-     */
 
-     wxRibbonControl(wxWindow *parent, wxWindowID id,
 
-                     const wxPoint& pos = wxDefaultPosition,
 
-                     const wxSize& size = wxDefaultSize, long style = 0,
 
-                     const wxValidator& validator = wxDefaultValidator,
 
-                     const wxString& name = wxControlNameStr);
 
-     /**
 
-         Set the art provider to be used. In many cases, setting the art provider
 
-         will also set the art provider on all child windows which extend
 
-         wxRibbonControl.
 
-         In most cases, controls will not take ownership of the given pointer,
 
-         with the notable exception being wxRibbonBar::SetArtProvider().
 
-     */
 
-     virtual void SetArtProvider(wxRibbonArtProvider* art);
 
-     /**
 
-         Get the art provider to be used. Note that until an art provider has
 
-         been set in some way, this function may return NULL.
 
-     */
 
-     wxRibbonArtProvider* GetArtProvider() const;
 
-     /**
 
-         @return @true if this window can take any size (greater than its minimum
 
-         size), @false if it can only take certain sizes.
 
-         @see GetNextSmallerSize()
 
-         @see GetNextLargerSize()
 
-     */
 
-     virtual bool IsSizingContinuous() const;
 
-     /**
 
-         If sizing is not continuous, then return a suitable size for the control
 
-         which is smaller than the current size.
 
-         @param direction
 
-             The direction(s) in which the size should reduce.
 
-         @return
 
-             The current size if there is no smaller size, otherwise a suitable
 
-             size which is smaller in the given direction(s), and the same as the
 
-             current size in the other direction (if any).
 
-         @see IsSizingContinuous()
 
-     */
 
-     wxSize GetNextSmallerSize(wxOrientation direction) const;
 
-     /**
 
-         If sizing is not continuous, then return a suitable size for the control
 
-         which is smaller than the given size.
 
-         @param direction
 
-             The direction(s) in which the size should reduce.
 
-         @param relative_to
 
-             The size for which a smaller size should be found.
 
-         @return
 
-             @a relative_to if there is no smaller size, otherwise a suitable
 
-             size which is smaller in the given direction(s), and the same as
 
-             @a relative_to in the other direction (if any).
 
-         @see IsSizingContinuous()
 
-         @see DoGetNextSmallerSize()
 
-     */
 
-     wxSize GetNextSmallerSize(wxOrientation direction, wxSize relative_to) const;
 
-     /**
 
-         If sizing is not continuous, then return a suitable size for the control
 
-         which is larger than the current size.
 
-         @param direction
 
-             The direction(s) in which the size should increase.
 
-         @return
 
-             The current size if there is no larger size, otherwise a suitable
 
-             size which is larger in the given direction(s), and the same as the
 
-             current size in the other direction (if any).
 
-         @see IsSizingContinuous()
 
-     */
 
-     wxSize GetNextLargerSize(wxOrientation direction) const;
 
-     /**
 
-         If sizing is not continuous, then return a suitable size for the control
 
-         which is larger than the given size.
 
-         @param direction
 
-             The direction(s) in which the size should increase.
 
-         @param relative_to
 
-             The size for which a larger size should be found.
 
-         @return
 
-             @a relative_to if there is no larger size, otherwise a suitable
 
-             size which is larger in the given direction(s), and the same as
 
-             @a relative_to in the other direction (if any).
 
-         @see IsSizingContinuous()
 
-         @see DoGetNextLargerSize()
 
-     */
 
-     wxSize GetNextLargerSize(wxOrientation direction, wxSize relative_to) const;
 
-     /**
 
-         Perform initial size and layout calculations after children have been
 
-         added, and/or realize children.
 
-     */
 
-     virtual bool Realize();
 
-     /**
 
-         Alias for Realize().
 
-     */
 
-     bool Realise();
 
-     /**
 
-         Get the first ancestor which is a wxRibbonBar (or derived) or NULL
 
-         if not having such parent.
 
-         @since 2.9.4
 
-      */
 
-     virtual wxRibbonBar* GetAncestorRibbonBar()const;
 
-     /**
 
-         Finds the best width and height given the parent's width and height.
 
-         Used to implement the wxRIBBON_PANEL_FLEXIBLE panel style.
 
-     */
 
-     virtual wxSize GetBestSizeForParentSize(const wxSize& parentSize) const;
 
- protected:
 
-     /**
 
-         Implementation of GetNextSmallerSize().
 
-         Controls which have non-continuous sizing must override this virtual
 
-         function rather than GetNextSmallerSize().
 
-     */
 
-     virtual wxSize DoGetNextSmallerSize(wxOrientation direction,
 
-                                         wxSize relative_to) const;
 
-     /**
 
-         Implementation of GetNextLargerSize().
 
-         Controls which have non-continuous sizing must override this virtual
 
-         function rather than GetNextLargerSize().
 
-     */
 
-     virtual wxSize DoGetNextLargerSize(wxOrientation direction,
 
-                                        wxSize relative_to) const;
 
- };
 
 
  |