| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183 | 
							- /////////////////////////////////////////////////////////////////////////////
 
- // Name:        collpane.h
 
- // Purpose:     interface of wxCollapsiblePane
 
- // Author:      wxWidgets team
 
- // Licence:     wxWindows licence
 
- /////////////////////////////////////////////////////////////////////////////
 
- #define wxCP_DEFAULT_STYLE          (wxTAB_TRAVERSAL | wxNO_BORDER)
 
- #define wxCP_NO_TLW_RESIZE          (0x0002)
 
- /**
 
-     @class wxCollapsiblePaneEvent
 
-     This event class is used for the events generated by wxCollapsiblePane.
 
-     @beginEventTable{wxCollapsiblePaneEvent}
 
-     @event{EVT_COLLAPSIBLEPANE_CHANGED(id, func)}
 
-            The user expanded or collapsed the collapsible pane.
 
-     @endEventTable
 
-     @library{wxcore}
 
-     @category{events}
 
-     @see wxCollapsiblePane
 
- */
 
- class wxCollapsiblePaneEvent : public wxCommandEvent
 
- {
 
- public:
 
-     /**
 
-         The constructor is not normally used by the user code.
 
-     */
 
-     wxCollapsiblePaneEvent(wxObject* generator, int id, bool collapsed);
 
-     /**
 
-         Returns @true if the pane has been collapsed.
 
-     */
 
-     bool GetCollapsed() const;
 
-     /**
 
-         Sets this as a collapsed pane event (if @a collapsed is @true) or as an
 
-         expanded pane event (if @a collapsed is @false).
 
-     */
 
-     void SetCollapsed(bool collapsed);
 
- };
 
- wxEventType wxEVT_COLLAPSIBLEPANE_CHANGED;
 
- /**
 
-     @class wxCollapsiblePane
 
-     A collapsible pane is a container with an embedded button-like control
 
-     which can be used by the user to collapse or expand the pane's contents.
 
-     Once constructed you should use the GetPane() function to access the pane
 
-     and add your controls inside it (i.e. use the returned pointer from
 
-     GetPane() as parent for the controls which must go in the pane, @b not the
 
-     wxCollapsiblePane itself!).
 
-     Note that because of its nature of control which can dynamically (and
 
-     drastically) change its size at run-time under user-input, when putting
 
-     wxCollapsiblePane inside a wxSizer you should be careful to add it with a
 
-     proportion value of zero; this is because otherwise all other windows with
 
-     non-null proportion values will automatically resize each time the user
 
-     expands or collapse the pane window usually resulting in a weird,
 
-     flickering effect.
 
-     Usage sample:
 
-     @code
 
-     wxCollapsiblePane *collpane = new wxCollapsiblePane(this, wxID_ANY, "Details:");
 
-     // add the pane with a zero proportion value to the 'sz' sizer which contains it
 
-     sz->Add(collpane, 0, wxGROW|wxALL, 5);
 
-     // now add a test label in the collapsible pane using a sizer to layout it:
 
-     wxWindow *win = collpane->GetPane();
 
-     wxSizer *paneSz = new wxBoxSizer(wxVERTICAL);
 
-     paneSz->Add(new wxStaticText(win, wxID_ANY, "test!"), 1, wxGROW|wxALL, 2);
 
-     win->SetSizer(paneSz);
 
-     paneSz->SetSizeHints(win);
 
-     @endcode
 
-     It is only available if @c wxUSE_COLLPANE is set to 1 (the default).
 
-     @beginStyleTable
 
-     @style{wxCP_DEFAULT_STYLE}
 
-         The default style. It includes wxTAB_TRAVERSAL and wxBORDER_NONE.
 
-     @style{wxCP_NO_TLW_RESIZE}
 
-         By default wxCollapsiblePane resizes the top level window containing it
 
-         when its own size changes. This allows to easily implement dialogs
 
-         containing an optionally shown part, for example, and so is the default
 
-         behaviour but can be inconvenient in some specific cases -- use this
 
-         flag to disable this automatic parent resizing then.
 
-     @endStyleTable
 
-     @beginEventEmissionTable{wxCollapsiblePaneEvent,wxNavigationKeyEvent}
 
-     @event{EVT_COLLAPSIBLEPANE_CHANGED(id, func)}
 
-         The user expanded or collapsed the collapsible pane.
 
-     @event{EVT_NAVIGATION_KEY(func)}
 
-         Process a navigation key event.
 
-     @endEventTable
 
-     @library{wxcore}
 
-     @category{ctrl}
 
-     @appearance{collapsiblepane}
 
-     @see wxPanel, wxCollapsiblePaneEvent
 
- */
 
- class wxCollapsiblePane : public wxControl
 
- {
 
- public:
 
-     /**
 
-         Default constructor.
 
-     */
 
-     wxCollapsiblePane();
 
-     /**
 
-         Initializes the object and calls Create() with all the parameters.
 
-     */
 
-     wxCollapsiblePane(wxWindow* parent, wxWindowID id,
 
-                       const wxString& label,
 
-                       const wxPoint& pos = wxDefaultPosition,
 
-                       const wxSize& size = wxDefaultSize,
 
-                       long style = wxCP_DEFAULT_STYLE,
 
-                       const wxValidator& validator = wxDefaultValidator,
 
-                       const wxString& name = wxCollapsiblePaneNameStr);
 
-     /**
 
-         @param parent
 
-             Parent window, must not be non-@NULL.
 
-         @param id
 
-             The identifier for the control.
 
-         @param label
 
-             The initial label shown in the button which allows the user to
 
-             expand or collapse the pane window.
 
-         @param pos
 
-             Initial position.
 
-         @param size
 
-             Initial size.
 
-         @param style
 
-             The window style, see wxCP_* flags.
 
-         @param validator
 
-             Validator which can be used for additional date checks.
 
-         @param name
 
-             Control name.
 
-         @return @true if the control was successfully created or @false if
 
-                 creation failed.
 
-     */
 
-     bool Create(wxWindow* parent, wxWindowID id,
 
-                 const wxString& label,
 
-                 const wxPoint& pos = wxDefaultPosition,
 
-                 const wxSize& size = wxDefaultSize,
 
-                 long style = wxCP_DEFAULT_STYLE,
 
-                 const wxValidator& validator = wxDefaultValidator,
 
-                 const wxString& name = wxCollapsiblePaneNameStr);
 
-     /**
 
-         Collapses or expands the pane window.
 
-     */
 
-     virtual void Collapse(bool collapse = true);
 
-     /**
 
-         Same as calling Collapse(@false).
 
-     */
 
-     void Expand();
 
-     /**
 
-         Returns a pointer to the pane window. Add controls to the returned
 
-         wxWindow to make them collapsible.
 
-     */
 
-     virtual wxWindow* GetPane() const;
 
-     /**
 
-         Returns @true if the pane window is currently hidden.
 
-     */
 
-     virtual bool IsCollapsed() const;
 
-     /**
 
-         Returns @true if the pane window is currently shown.
 
-     */
 
-     bool IsExpanded() const;
 
- };
 
 
  |