| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299 | 
							- ///////////////////////////////////////////////////////////////////////////////
 
- // Name:        ribbon/gallery.h
 
- // Purpose:     interface of wxRibbonGallery
 
- // Author:      Peter Cawley
 
- // Licence:     wxWindows licence
 
- ///////////////////////////////////////////////////////////////////////////////
 
- enum wxRibbonGalleryButtonState
 
- {
 
-     wxRIBBON_GALLERY_BUTTON_NORMAL,
 
-     wxRIBBON_GALLERY_BUTTON_HOVERED,
 
-     wxRIBBON_GALLERY_BUTTON_ACTIVE,
 
-     wxRIBBON_GALLERY_BUTTON_DISABLED,
 
- };
 
- /**
 
-     @class wxRibbonGallery
 
-     A ribbon gallery is like a wxListBox, but for bitmaps rather than strings.
 
-     It displays a collection of bitmaps arranged in a grid and allows the user
 
-     to choose one. As there are typically more bitmaps in a gallery than can
 
-     be displayed in the space used for a ribbon, a gallery always has scroll
 
-     buttons to allow the user to navigate through the entire gallery. It also
 
-     has an "extension" button, the behaviour of which is outside the scope of
 
-     the gallery control itself, though it typically displays some kind of
 
-     dialog related to the gallery.
 
-     @beginEventEmissionTable{wxRibbonGalleryEvent}
 
-     @event{EVT_RIBBONGALLERY_SELECTED(id, func)}
 
-         Triggered when the user selects an item from the gallery. Note that the
 
-         ID is that of the gallery, not of the item.
 
-     @event{EVT_RIBBONGALLERY_CLICKED(id, func)}
 
-         Similar to EVT_RIBBONGALLERY_SELECTED but triggered every time a
 
-         gallery item is clicked, even if it is already selected. Note that the
 
-         ID of the event is that of the gallery, not of the item, just as above.
 
-         This event is available since wxWidgets 2.9.2.
 
-     @event{EVT_RIBBONGALLERY_HOVER_CHANGED(id, func)}
 
-         Triggered when the item being hovered over by the user changes. The
 
-         item in the event will be the new item being hovered, or NULL if there
 
-         is no longer an item being hovered. Note that the ID is that of the
 
-         gallery, not of the item.
 
-     @endEventTable
 
-     @beginEventEmissionTable{wxCommandEvent}
 
-     @event{EVT_BUTTON(id, func)}
 
-         Triggered when the "extension" button of the gallery is pressed.
 
-     @endEventTable
 
-     @library{wxribbon}
 
-     @category{ribbon}
 
- */
 
- class wxRibbonGallery : public wxRibbonControl
 
- {
 
- public:
 
-     /**
 
-         Default constructor.
 
-         With this constructor, Create() should be called in order to create
 
-         the gallery.
 
-     */
 
-     wxRibbonGallery();
 
-     /**
 
-         Construct a ribbon gallery with the given parameters.
 
-         @param parent
 
-             Parent window for the gallery (typically a wxRibbonPanel).
 
-         @param id
 
-             An identifier for the gallery. @c wxID_ANY is taken to mean a default.
 
-         @param pos
 
-             Initial position of the gallery.
 
-         @param size
 
-             Initial size of the gallery.
 
-         @param style
 
-             Gallery style, currently unused.
 
-     */
 
-     wxRibbonGallery(wxWindow* parent,
 
-                   wxWindowID id = wxID_ANY,
 
-                   const wxPoint& pos = wxDefaultPosition,
 
-                   const wxSize& size = wxDefaultSize,
 
-                   long style = 0);
 
-     /**
 
-         Destructor.
 
-     */
 
-     virtual ~wxRibbonGallery();
 
-     /**
 
-         Create a gallery in two-step gallery construction.
 
-         Should only be called when the default constructor is used, and
 
-         arguments have the same meaning as in the full constructor.
 
-     */
 
-     bool Create(wxWindow* parent,
 
-                 wxWindowID id = wxID_ANY,
 
-                 const wxPoint& pos = wxDefaultPosition,
 
-                 const wxSize& size = wxDefaultSize,
 
-                 long style = 0);
 
-     /**
 
-         Remove all items from the gallery.
 
-     */
 
-     void Clear();
 
-     /**
 
-         Query if the gallery has no items in it.
 
-     */
 
-     bool IsEmpty() const;
 
-     /**
 
-         Get the number of items in the gallery.
 
-     */
 
-     unsigned int GetCount() const;
 
-     /**
 
-         Get an item by index.
 
-     */
 
-     wxRibbonGalleryItem* GetItem(unsigned int n);
 
-     /**
 
-         Add an item to the gallery (with no client data).
 
-         @param bitmap
 
-             The bitmap to display for the item. Note that all items must
 
-             have equally sized bitmaps.
 
-         @param id
 
-             ID number to associate with the item. Not currently used for
 
-             anything important.
 
-     */
 
-     wxRibbonGalleryItem* Append(const wxBitmap& bitmap, int id);
 
-     /**
 
-         Add an item to the gallery (with simple client data).
 
-         @param bitmap
 
-             The bitmap to display for the item. Note that all items must
 
-             have equally sized bitmaps.
 
-         @param id
 
-             ID number to associate with the item. Not currently used for
 
-             anything important.
 
-         @param clientData
 
-             An opaque pointer to associate with the item.
 
-     */
 
-     wxRibbonGalleryItem* Append(const wxBitmap& bitmap, int id, void* clientData);
 
-     /**
 
-         Add an item to the gallery (with complex client data)
 
-         @param bitmap
 
-             The bitmap to display for the item. Note that all items must
 
-             have equally sized bitmaps.
 
-         @param id
 
-             ID number to associate with the item. Not currently used for
 
-             anything important.
 
-         @param clientData
 
-             An object which contains data to associate with the item. The item
 
-             takes ownership of this pointer, and will delete it when the item
 
-             client data is changed to something else, or when the item is
 
-             destroyed.
 
-     */
 
-     wxRibbonGalleryItem* Append(const wxBitmap& bitmap, int id, wxClientData* clientData);
 
-     /**
 
-         Set the client object associated with a gallery item.
 
-     */
 
-     void SetItemClientObject(wxRibbonGalleryItem* item, wxClientData* data);
 
-     /**
 
-         Get the client object associated with a gallery item.
 
-     */
 
-     wxClientData* GetItemClientObject(const wxRibbonGalleryItem* item) const;
 
-     /**
 
-         Set the client data associated with a gallery item.
 
-     */
 
-     void SetItemClientData(wxRibbonGalleryItem* item, void* data);
 
-     /**
 
-         Get the client data associated with a gallery item.
 
-     */
 
-     void* GetItemClientData(const wxRibbonGalleryItem* item) const;
 
-     /**
 
-         Set the selection to the given item, or removes the selection if
 
-         @a item == NULL.
 
-         Note that this not cause any events to be emitted.
 
-     */
 
-     void SetSelection(wxRibbonGalleryItem* item);
 
-     /**
 
-         Get the currently selected item, or NULL if there is none.
 
-         The selected item is set by SetSelection(), or by the user clicking on
 
-         an item.
 
-     */
 
-     wxRibbonGalleryItem* GetSelection() const;
 
-     /**
 
-         Get the currently hovered item, or NULL if there is none.
 
-         The hovered item is the item underneath the mouse cursor.
 
-     */
 
-     wxRibbonGalleryItem* GetHoveredItem() const;
 
-     /**
 
-         Get the currently active item, or NULL if there is none.
 
-         The active item is the item being pressed by the user, and will thus
 
-         become the selected item if the user releases the mouse button.
 
-     */
 
-     wxRibbonGalleryItem* GetActiveItem() const;
 
-     /**
 
-         Get the state of the scroll up button.
 
-     */
 
-     wxRibbonGalleryButtonState GetUpButtonState() const;
 
-     /**
 
-         Get the state of the scroll down button.
 
-     */
 
-     wxRibbonGalleryButtonState GetDownButtonState() const;
 
-     /**
 
-         Get the state of the "extension" button.
 
-     */
 
-     wxRibbonGalleryButtonState GetExtensionButtonState() const;
 
-     /**
 
-         Query is the mouse is currently hovered over the gallery.
 
-         @return @true if the cursor is within the bounds of the gallery (not
 
-             just hovering over an item), @false otherwise.
 
-     */
 
-     bool IsHovered() const;
 
-     /**
 
-         Scroll the gallery contents by some amount.
 
-         @param lines
 
-           Positive values scroll toward the end of the gallery, while negative
 
-           values scroll toward the start.
 
-         @return @true if the gallery scrolled at least one pixel in the given
 
-             direction, @false if it did not scroll.
 
-     */
 
-     virtual bool ScrollLines(int lines);
 
-     
 
-     /**
 
-         Scroll the gallery contents by some fine-grained amount.
 
-         @param pixels
 
-           Positive values scroll toward the end of the gallery, while negative
 
-           values scroll toward the start.
 
-         @return @true if the gallery scrolled at least one pixel in the given
 
-             direction, @false if it did not scroll.
 
-     */
 
-     bool ScrollPixels(int pixels);
 
-     /**
 
-         Scroll the gallery to ensure that the given item is visible.
 
-     */
 
-     void EnsureVisible(const wxRibbonGalleryItem* item);
 
- };
 
- /**
 
-     @class wxRibbonGalleryEvent
 
-     @library{wxribbon}
 
-     @category{events,ribbon}
 
-     @see wxRibbonBar
 
- */
 
- class wxRibbonGalleryEvent : public wxCommandEvent
 
- {
 
- public:
 
-     /**
 
-         Constructor.
 
-     */
 
-     wxRibbonGalleryEvent(wxEventType command_type = wxEVT_NULL,
 
-                          int win_id = 0,
 
-                          wxRibbonGallery* gallery = NULL,
 
-                          wxRibbonGalleryItem* item = NULL);
 
-     /**
 
-         Returns the gallery which the event relates to.
 
-     */
 
-     wxRibbonGallery* GetGallery();
 
-     /**
 
-         Returns the gallery item which the event relates to, or NULL if it does
 
-         not relate to an item.
 
-     */
 
-     wxRibbonGalleryItem* GetGalleryItem();
 
-     /**
 
-         Sets the gallery relating to this event.
 
-     */
 
-     void SetGallery(wxRibbonGallery* gallery);
 
-     /**
 
-         Sets the gallery item relating to this event.
 
-     */
 
-     void SetGalleryItem(wxRibbonGalleryItem* item);
 
- };
 
 
  |