Merge pull request #344 from RobinD42/master-cherrypick-wxPy

Docs and other updates for wxPython
This commit is contained in:
Robin Dunn
2017-01-23 20:05:45 -08:00
committed by GitHub
35 changed files with 1459 additions and 52 deletions

View File

@@ -106,7 +106,7 @@ public:
virtual wxWindow* GetContentWindow() const wxOVERRIDE; virtual wxWindow* GetContentWindow() const wxOVERRIDE;
// Set and get the inner sizer // Set and get the inner sizer
void SetInnerSize(wxSizer* sizer) { m_innerSizer = sizer; } void SetInnerSizer(wxSizer* sizer) { m_innerSizer = sizer; }
wxSizer* GetInnerSizer() const { return m_innerSizer ; } wxSizer* GetInnerSizer() const { return m_innerSizer ; }
// Set and get the book style // Set and get the book style

View File

@@ -472,9 +472,17 @@ public:
long GetMask() const { return m_item.m_mask; } long GetMask() const { return m_item.m_mask; }
const wxListItem& GetItem() const { return m_item; } const wxListItem& GetItem() const { return m_item; }
void SetKeyCode(int code) { m_code = code; }
void SetIndex(long index) { m_itemIndex = index; }
void SetColumn(int col) { m_col = col; }
void SetPoint(const wxPoint& point) { m_pointDrag = point; }
void SetItem(const wxListItem& item) { m_item = item; }
// for wxEVT_LIST_CACHE_HINT only // for wxEVT_LIST_CACHE_HINT only
long GetCacheFrom() const { return m_oldItemIndex; } long GetCacheFrom() const { return m_oldItemIndex; }
long GetCacheTo() const { return m_itemIndex; } long GetCacheTo() const { return m_itemIndex; }
void SetCacheFrom(long cacheFrom) { m_oldItemIndex = cacheFrom; }
void SetCacheTo(long cacheTo) { m_itemIndex = cacheTo; }
// was label editing canceled? (for wxEVT_LIST_END_LABEL_EDIT only) // was label editing canceled? (for wxEVT_LIST_END_LABEL_EDIT only)
bool IsEditCancelled() const { return m_editCancelled; } bool IsEditCancelled() const { return m_editCancelled; }

View File

@@ -677,6 +677,7 @@ public:
private: private:
wxVector<wxPGChoiceEntry> m_items; wxVector<wxPGChoiceEntry> m_items;
protected:
virtual ~wxPGChoicesData(); virtual ~wxPGChoicesData();
}; };

View File

@@ -179,10 +179,13 @@ typedef void (wxEvtHandler::*wxRibbonGalleryEventFunction)(wxRibbonGalleryEvent&
// wxpython/swig event work // wxpython/swig event work
%constant wxEventType wxEVT_RIBBONGALLERY_HOVER_CHANGED; %constant wxEventType wxEVT_RIBBONGALLERY_HOVER_CHANGED;
%constant wxEventType wxEVT_RIBBONGALLERY_SELECTED; %constant wxEventType wxEVT_RIBBONGALLERY_SELECTED;
%constant wxEventType wxEVT_RIBBONGALLERY_CLICKED;
%pythoncode { %pythoncode {
EVT_RIBBONGALLERY_HOVER_CHANGED = wx.PyEventBinder( wxEVT_RIBBONGALLERY_HOVER_CHANGED, 1 ) EVT_RIBBONGALLERY_HOVER_CHANGED = wx.PyEventBinder( wxEVT_RIBBONGALLERY_HOVER_CHANGED, 1 )
EVT_RIBBONGALLERY_SELECTED = wx.PyEventBinder( wxEVT_RIBBONGALLERY_SELECTED, 1 ) EVT_RIBBONGALLERY_SELECTED = wx.PyEventBinder( wxEVT_RIBBONGALLERY_SELECTED, 1 )
EVT_RIBBONGALLERY_CLICKED = wx.PyEventBinder( wxEVT_RIBBONGALLERY_CLICKED, 1 )
} }
#endif // SWIG #endif // SWIG

View File

@@ -161,6 +161,16 @@ public:
*/ */
void SetDocWriters(const wxArrayString& docwriters); void SetDocWriters(const wxArrayString& docwriters);
/**
Returns @true if an icon has been set for the about dialog.
*/
bool HasIcon() const;
/**
Returns the icon set by SetIcon().
*/
wxIcon GetIcon() const;
/** /**
Set the icon to be shown in the dialog. By default the icon of the main frame Set the icon to be shown in the dialog. By default the icon of the main frame
will be shown if the native about dialog supports custom icons. If it doesn't will be shown if the native about dialog supports custom icons. If it doesn't
@@ -170,6 +180,18 @@ public:
*/ */
void SetIcon(const wxIcon& icon); void SetIcon(const wxIcon& icon);
/**
Returns @true if the licence string has been set.
*/
bool HasLicence() const;
/**
Returns the licence string.
@see SetLicence()
*/
const wxString& GetLicence() const;
/** /**
Set the long, multiline string containing the text of the program licence. Set the long, multiline string containing the text of the program licence.
@@ -213,6 +235,35 @@ public:
*/ */
void SetVersion(const wxString& version, const wxString& longVersion = wxString()); void SetVersion(const wxString& version, const wxString& longVersion = wxString());
/**
Return the short version string.
@see SetVersion()
*/
const wxString& GetVersion() const;
/**
Return the long version string if set.
@see SetVersion()
*/
const wxString& GetLongVersion() const;
/**
Returns @true if the website info has been set.
*/
bool HasWebSite() const;
/**
Returns the website URL set for the dialog.
*/
const wxString& GetWebSiteURL() const;
/**
Returns the description of the website URL set for the dialog.
*/
const wxString& GetWebSiteDescription() const;
/** /**
Set the web site for the program and its description (which defaults to @a url Set the web site for the program and its description (which defaults to @a url
itself if empty). itself if empty).
@@ -223,6 +274,49 @@ public:
*/ */
void SetWebSite(const wxString& url, void SetWebSite(const wxString& url,
const wxString& desc = wxEmptyString); const wxString& desc = wxEmptyString);
/**
Returns @true if developers have been set in the dialog info.
*/
bool HasDevelopers() const;
/**
Returns an array of the developer strings set in the dialog info.
*/
const wxArrayString& GetDevelopers() const;
/**
Returns @true if writers have been set in the dialog info.
*/
bool HasDocWriters() const;
/**
Returns an array of the writer strings set in the dialog info.
*/
const wxArrayString& GetDocWriters() const;
/**
Returns @true if artists have been set in the dialog info.
*/
bool HasArtists() const;
/**
Returns an array of the artist strings set in the dialog info.
*/
const wxArrayString& GetArtists() const;
/**
Returns @true if translators have been set in the dialog info.
*/
bool HasTranslators() const;
/**
Returns an array of the translator strings set in the dialog info.
*/
const wxArrayString& GetTranslators() const;
}; };

View File

@@ -409,7 +409,7 @@ protected:
wxArtID unique identifier of the bitmap. wxArtID unique identifier of the bitmap.
@param client @param client
wxArtClient identifier of the client (i.e. who is asking for the bitmap). wxArtClient identifier of the client (i.e. who is asking for the bitmap).
This only servers as a hint. This only serves as a hint.
@param size @param size
Preferred size of the bitmap. The function may return a bitmap of different Preferred size of the bitmap. The function may return a bitmap of different
dimensions, it will be automatically rescaled to meet client's request. dimensions, it will be automatically rescaled to meet client's request.

View File

@@ -148,6 +148,10 @@ enum wxAuiToolBarToolTextOrientation
class wxAuiToolBarEvent : public wxNotifyEvent class wxAuiToolBarEvent : public wxNotifyEvent
{ {
public: public:
wxAuiToolBarEvent(wxEventType commandType = wxEVT_NULL,
int winId = 0);
wxAuiToolBarEvent(const wxAuiToolBarEvent& c);
/** /**
Returns whether the drop down menu has been clicked. Returns whether the drop down menu has been clicked.
*/ */
@@ -167,8 +171,20 @@ public:
Returns the wxAuiToolBarItem identifier. Returns the wxAuiToolBarItem identifier.
*/ */
int GetToolId() const; int GetToolId() const;
void SetDropDownClicked(bool c);
void SetClickPoint(const wxPoint& p);
void SetItemRect(const wxRect& r);
void SetToolId(int toolId);
}; };
wxEventType wxEVT_AUITOOLBAR_TOOL_DROPDOWN;
wxEventType wxEVT_AUITOOLBAR_OVERFLOW_CLICK;
wxEventType wxEVT_AUITOOLBAR_RIGHT_CLICK;
wxEventType wxEVT_AUITOOLBAR_MIDDLE_CLICK;
wxEventType wxEVT_AUITOOLBAR_BEGIN_DRAG;
/** /**
@class wxAuiToolBarItem @class wxAuiToolBarItem

View File

@@ -5,6 +5,32 @@
// Licence: wxWindows licence // Licence: wxWindows licence
///////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////
enum wxAuiNotebookOption
{
wxAUI_NB_TOP = 1 << 0,
wxAUI_NB_LEFT = 1 << 1, // not implemented yet
wxAUI_NB_RIGHT = 1 << 2, // not implemented yet
wxAUI_NB_BOTTOM = 1 << 3,
wxAUI_NB_TAB_SPLIT = 1 << 4,
wxAUI_NB_TAB_MOVE = 1 << 5,
wxAUI_NB_TAB_EXTERNAL_MOVE = 1 << 6,
wxAUI_NB_TAB_FIXED_WIDTH = 1 << 7,
wxAUI_NB_SCROLL_BUTTONS = 1 << 8,
wxAUI_NB_WINDOWLIST_BUTTON = 1 << 9,
wxAUI_NB_CLOSE_BUTTON = 1 << 10,
wxAUI_NB_CLOSE_ON_ACTIVE_TAB = 1 << 11,
wxAUI_NB_CLOSE_ON_ALL_TABS = 1 << 12,
wxAUI_NB_MIDDLE_CLICK_CLOSE = 1 << 13,
wxAUI_NB_DEFAULT_STYLE = wxAUI_NB_TOP |
wxAUI_NB_TAB_SPLIT |
wxAUI_NB_TAB_MOVE |
wxAUI_NB_SCROLL_BUTTONS |
wxAUI_NB_CLOSE_ON_ACTIVE_TAB |
wxAUI_NB_MIDDLE_CLICK_CLOSE
};
/** /**
@class wxAuiNotebook @class wxAuiNotebook
@@ -20,9 +46,9 @@
splitter configurations, and toggle through different themes to customize splitter configurations, and toggle through different themes to customize
the control's look and feel. the control's look and feel.
The appearance of this class is configurable and can be changed by calling The default theme that is used is wxAuiDefaultTabArt, which provides a modern,
wxAuiNotebook::SetArtProvider(). By default, native art provider is used if glossy look and feel.
available (currently only in wxGTK and wxMSW) and wxAuiGenericTabArt otherwise. The theme can be changed by calling wxAuiNotebook::SetArtProvider.
@beginStyleTable @beginStyleTable
@style{wxAUI_NB_DEFAULT_STYLE} @style{wxAUI_NB_DEFAULT_STYLE}
@@ -270,7 +296,7 @@ public:
@since 2.9.3 @since 2.9.3
*/ */
virtual bool InsertPage(size_t index, wxWindow *page, const wxString &text, virtual bool InsertPage(size_t index, wxWindow *page, const wxString &text,
bool select=false, int imageId=NO_IMAGE); bool select, int imageId);
/** /**
Removes a page, without deleting the window pointer. Removes a page, without deleting the window pointer.
@@ -373,8 +399,35 @@ public:
and returns @true if a selection was made. and returns @true if a selection was made.
*/ */
bool ShowWindowMenu(); bool ShowWindowMenu();
/**
Returns the image index for the given page.
*/
virtual int GetPageImage(size_t nPage) const;
}; };
/**
@class wxAuiNotebookPage
A simple class which holds information about the notebook's pages and their state.
@library{wxaui}
@category{aui}
*/
class wxAuiNotebookPage
{
public:
wxWindow* window; // page's associated window
wxString caption; // caption displayed on the tab
wxString tooltip; // tooltip displayed when hovering over tab title
wxBitmap bitmap; // tab's bitmap
wxRect rect; // tab's hit rectangle
bool active; // true if the page is currently active
};
/** /**
@class wxAuiTabContainerButton @class wxAuiTabContainerButton

View File

@@ -281,3 +281,102 @@ public:
virtual void SetMetric(int id, int new_val) = 0; virtual void SetMetric(int id, int new_val) = 0;
}; };
/**
@class wxAuiDefaultDockArt
This is the default art provider for @ref wxAuiManager. Dock art
can be customized by creating a class derived from this one,
or replacing this class entirely.
*/
class wxAuiDefaultDockArt : public wxAuiDockArt
{
public:
wxAuiDefaultDockArt();
int GetMetric(int metricId);
void SetMetric(int metricId, int newVal);
wxColour GetColour(int id);
void SetColour(int id, const wxColour& colour);
void SetFont(int id, const wxFont& font);
wxFont GetFont(int id);
void DrawSash(wxDC& dc,
wxWindow *window,
int orientation,
const wxRect& rect);
void DrawBackground(wxDC& dc,
wxWindow *window,
int orientation,
const wxRect& rect);
void DrawCaption(wxDC& dc,
wxWindow *window,
const wxString& text,
const wxRect& rect,
wxAuiPaneInfo& pane);
void DrawGripper(wxDC& dc,
wxWindow *window,
const wxRect& rect,
wxAuiPaneInfo& pane);
void DrawBorder(wxDC& dc,
wxWindow *window,
const wxRect& rect,
wxAuiPaneInfo& pane);
void DrawPaneButton(wxDC& dc,
wxWindow *window,
int button,
int buttonState,
const wxRect& rect,
wxAuiPaneInfo& pane);
void DrawIcon(wxDC& dc,
const wxRect& rect,
wxAuiPaneInfo& pane);
protected:
void DrawCaptionBackground(wxDC& dc, const wxRect& rect, bool active);
void InitBitmaps();
protected:
wxPen m_borderPen;
wxBrush m_sashBrush;
wxBrush m_backgroundBrush;
wxBrush m_gripperBrush;
wxFont m_captionFont;
wxBitmap m_inactiveCloseBitmap;
wxBitmap m_inactivePinBitmap;
wxBitmap m_inactiveMaximizeBitmap;
wxBitmap m_inactiveRestoreBitmap;
wxBitmap m_activeCloseBitmap;
wxBitmap m_activePinBitmap;
wxBitmap m_activeMaximizeBitmap;
wxBitmap m_activeRestoreBitmap;
wxPen m_gripperPen1;
wxPen m_gripperPen2;
wxPen m_gripperPen3;
wxColour m_baseColour;
wxColour m_activeCaptionColour;
wxColour m_activeCaptionGradientColour;
wxColour m_activeCaptionTextColour;
wxColour m_inactiveCaptionColour;
wxColour m_inactiveCaptionGradientColour;
wxColour m_inactiveCaptionTextColour;
int m_borderSize;
int m_captionSize;
int m_sashSize;
int m_buttonSize;
int m_gripperSize;
int m_gradientType;
};

View File

@@ -917,6 +917,63 @@ public:
Makes a copy of the wxAuiPaneInfo object. Makes a copy of the wxAuiPaneInfo object.
*/ */
wxAuiPaneInfo& operator=(const wxAuiPaneInfo& c); wxAuiPaneInfo& operator=(const wxAuiPaneInfo& c);
/// name of the pane
wxString name;
/// caption displayed on the window
wxString caption;
/// icon of the pane, may be invalid
wxBitmap icon;
/// window that is in this pane
wxWindow* window;
/// floating frame window that holds the pane
wxFrame* frame;
/// a combination of wxPaneState values
unsigned int state;
/// dock direction (top, bottom, left, right, center)
int dock_direction;
/// layer number (0 = innermost layer)
int dock_layer;
/// row number on the docking bar (0 = first row)
int dock_row;
/// position inside the row (0 = first position)
int dock_pos;
/// size that the layout engine will prefer
wxSize best_size;
/// minimum size the pane window can tolerate
wxSize min_size;
/// maximum size the pane window can tolerate
wxSize max_size;
/// position while floating
wxPoint floating_pos;
/// size while floating
wxSize floating_size;
/// proportion while docked
int dock_proportion;
/// buttons on the pane
wxAuiPaneButtonArray buttons;
/// current rectangle (populated by wxAUI)
wxRect rect;
bool IsValid() const;
}; };
@@ -1023,3 +1080,74 @@ public:
void Veto(bool veto = true); void Veto(bool veto = true);
}; };
wxEventType wxEVT_AUI_PANE_BUTTON;
wxEventType wxEVT_AUI_PANE_CLOSE;
wxEventType wxEVT_AUI_PANE_MAXIMIZE;
wxEventType wxEVT_AUI_PANE_RESTORE;
wxEventType wxEVT_AUI_PANE_ACTIVATED;
wxEventType wxEVT_AUI_RENDER;
wxEventType wxEVT_AUI_FIND_MANAGER;
class wxAuiDockInfo
{
public:
wxAuiDockInfo();
wxAuiDockInfo(const wxAuiDockInfo& c);
wxAuiDockInfo& operator=(const wxAuiDockInfo& c);
bool IsOk() const;
bool IsHorizontal() const;
bool IsVertical() const;
wxAuiPaneInfoPtrArray panes; // array of panes
wxRect rect; // current rectangle
int dock_direction; // dock direction (top, bottom, left, right, center)
int dock_layer; // layer number (0 = innermost layer)
int dock_row; // row number on the docking bar (0 = first row)
int size; // size of the dock
int min_size; // minimum size of a dock (0 if there is no min)
bool resizable; // flag indicating whether the dock is resizable
bool toolbar; // flag indicating dock contains only toolbars
bool fixed; // flag indicating that the dock operates on
// absolute coordinates as opposed to proportional
bool reserved1;
};
class wxAuiDockUIPart
{
public:
enum
{
typeCaption,
typeGripper,
typeDock,
typeDockSizer,
typePane,
typePaneSizer,
typeBackground,
typePaneBorder,
typePaneButton
};
int type; // ui part type (see enum above)
int orientation; // orientation (either wxHORIZONTAL or wxVERTICAL)
wxAuiDockInfo* dock; // which dock the item is associated with
wxAuiPaneInfo* pane; // which pane the item is associated with
wxAuiPaneButton* button; // which pane button the item is associated with
wxSizer* cont_sizer; // the part's containing sizer
wxSizerItem* sizer_item; // the sizer item of the part
wxRect rect; // client coord rectangle of the part itself
};
class wxAuiPaneButton
{
public:
int button_id; // id of the button (e.g. buttonClose)
};

140
interface/wx/aui/tabmdi.h Normal file
View File

@@ -0,0 +1,140 @@
///////////////////////////////////////////////////////////////////////////////
// Name: wx/aui/tabmdi.h
// Purpose: Documentation of wxAui MDI classes.
// Created: 2016-10-27
// Copyright: (c) 2016 wxWidgets development team
// Licence: wxWindows licence
///////////////////////////////////////////////////////////////////////////////
class wxAuiMDIParentFrame : public wxFrame
{
public:
wxAuiMDIParentFrame();
wxAuiMDIParentFrame(wxWindow *parent,
wxWindowID winid,
const wxString& title,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
long style = wxDEFAULT_FRAME_STYLE | wxVSCROLL | wxHSCROLL,
const wxString& name = wxFrameNameStr);
~wxAuiMDIParentFrame();
bool Create(wxWindow *parent,
wxWindowID winid,
const wxString& title,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
long style = wxDEFAULT_FRAME_STYLE | wxVSCROLL | wxHSCROLL,
const wxString& name = wxFrameNameStr );
void SetArtProvider(wxAuiTabArt* provider);
wxAuiTabArt* GetArtProvider();
wxAuiNotebook* GetNotebook() const;
wxMenu* GetWindowMenu() const;
void SetWindowMenu(wxMenu* pMenu);
virtual void SetMenuBar(wxMenuBar *pMenuBar);
void SetChildMenuBar(wxAuiMDIChildFrame *pChild);
wxAuiMDIChildFrame *GetActiveChild() const;
void SetActiveChild(wxAuiMDIChildFrame* pChildFrame);
wxAuiMDIClientWindow *GetClientWindow() const;
virtual wxAuiMDIClientWindow *OnCreateClient();
virtual void Cascade();
virtual void Tile(wxOrientation orient = wxHORIZONTAL);
virtual void ArrangeIcons();
virtual void ActivateNext();
virtual void ActivatePrevious();
};
class wxAuiMDIChildFrame : public wxPanel
{
public:
wxAuiMDIChildFrame();
wxAuiMDIChildFrame(wxAuiMDIParentFrame *parent,
wxWindowID winid,
const wxString& title,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
long style = wxDEFAULT_FRAME_STYLE,
const wxString& name = wxFrameNameStr);
virtual ~wxAuiMDIChildFrame();
bool Create(wxAuiMDIParentFrame *parent,
wxWindowID winid,
const wxString& title,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
long style = wxDEFAULT_FRAME_STYLE,
const wxString& name = wxFrameNameStr);
virtual void SetMenuBar(wxMenuBar *menuBar);
virtual wxMenuBar *GetMenuBar() const;
virtual void SetTitle(const wxString& title);
virtual wxString GetTitle() const;
virtual void SetIcons(const wxIconBundle& icons);
virtual const wxIconBundle& GetIcons() const;
virtual void SetIcon(const wxIcon& icon);
virtual const wxIcon& GetIcon() const;
virtual void Activate();
virtual bool Destroy();
virtual bool Show(bool show = true);
// no status bars
virtual wxStatusBar* CreateStatusBar(int number = 1,
long style = 1,
wxWindowID winid = 1,
const wxString& name = wxEmptyString);
virtual wxStatusBar *GetStatusBar() const;
virtual void SetStatusText( const wxString &text, int number=0 );
virtual void SetStatusWidths( int n, const int widths_field[] );
// no toolbar bars
virtual wxToolBar* CreateToolBar(long style,
wxWindowID winid,
const wxString& name);
virtual wxToolBar *GetToolBar() const;
// no maximize etc
virtual void Maximize(bool maximize = true);
virtual void Restore();
virtual void Iconize(bool iconize = true);
virtual bool IsMaximized() const;
virtual bool IsIconized() const;
virtual bool ShowFullScreen(bool show, long style);
virtual bool IsFullScreen() const;
virtual bool IsTopLevel() const;
void SetMDIParentFrame(wxAuiMDIParentFrame* parent);
wxAuiMDIParentFrame* GetMDIParentFrame() const;
};
class wxAuiMDIClientWindow : public wxAuiNotebook
{
public:
wxAuiMDIClientWindow();
wxAuiMDIClientWindow(wxAuiMDIParentFrame *parent, long style = 0);
virtual bool CreateClient(wxAuiMDIParentFrame *parent,
long style = wxVSCROLL | wxHSCROLL);
virtual int SetSelection(size_t page);
virtual wxAuiMDIChildFrame* GetActiveChild();
virtual void SetActiveChild(wxAuiMDIChildFrame* pChildFrame);
};

View File

@@ -470,7 +470,7 @@ public:
@since 2.9.5 @since 2.9.5
*/ */
wxFont(const wxFontInfo& font); wxFont(const wxFontInfo& fontInfo);
/** /**
Creates a font object with the specified attributes and size in points. Creates a font object with the specified attributes and size in points.

View File

@@ -90,6 +90,9 @@ public:
*/ */
static void AddFile(const wxString& filename, wxImage& image, wxBitmapType type); static void AddFile(const wxString& filename, wxImage& image, wxBitmapType type);
static void AddFile(const wxString& filename, const wxBitmap& bitmap, wxBitmapType type); static void AddFile(const wxString& filename, const wxBitmap& bitmap, wxBitmapType type);
static void AddFile(const wxString& filename, const wxString& textdata);
static void AddFile(const wxString& filename, const void *binarydata, size_t size);
//@} //@}
//@{ //@{

View File

@@ -801,7 +801,10 @@ public:
Row, Row,
/// Return the attribute set for this cells column. /// Return the attribute set for this cells column.
Col Col,
Default,
Merged
}; };
/** /**
@@ -978,6 +981,22 @@ public:
*/ */
void SetTextColour(const wxColour& colText); void SetTextColour(const wxColour& colText);
void MergeWith(wxGridCellAttr *mergefrom);
void SetSize(int num_rows, int num_cols);
void SetOverflow(bool allow = true);
void SetKind(wxAttrKind kind);
bool HasReadWriteMode() const;
bool HasOverflowMode() const;
bool HasSize() const;
void GetSize(int *num_rows, int *num_cols) const;
bool GetOverflow() const;
wxAttrKind GetKind();
protected: protected:
/** /**

View File

@@ -435,6 +435,13 @@ public:
Sets the cell's position within parent container. Sets the cell's position within parent container.
*/ */
virtual void SetPos(int x, int y); virtual void SetPos(int x, int y);
/**
Converts the cell into text representation. If sel != NULL then
only part of the cell inside the selection is converted.
*/
virtual wxString ConvertToText(wxHtmlSelection* sel) const;
}; };

View File

@@ -221,6 +221,11 @@ public:
*/ */
wxString GetOpenedPageTitle() const; wxString GetOpenedPageTitle() const;
/**
Returns a pointer to the current parser.
*/
wxHtmlWinParser *GetParser() const;
/** /**
Returns the related frame. Returns the related frame.
*/ */

View File

@@ -1505,6 +1505,44 @@ public:
admittedly rare case when the user wants to rename it to an empty string). admittedly rare case when the user wants to rename it to an empty string).
*/ */
bool IsEditCancelled() const; bool IsEditCancelled() const;
/**
@see GetKeyCode()
*/
void SetKeyCode(int code);
/**
@see GetIndex()
*/
void SetIndex(long index);
/**
@see GetColumn()
*/
void SetColumn(int col);
/**
@see GetPoint()
*/
void SetPoint(const wxPoint& point);
/**
@see GetItem()
*/
void SetItem(const wxListItem& item);
/**
@see GetCacheFrom()
*/
void SetCacheFrom(long cacheFrom);
/**
@see GetCacheTo()
*/
void SetCacheTo(long cacheTo);
}; };

View File

@@ -372,13 +372,13 @@ public:
/** /**
Same as Load(const wxURI& uri). Kept for wxPython compatibility. Same as Load(const wxURI& uri). Kept for wxPython compatibility.
*/ */
bool LoadURI(const wxString& fileName); bool LoadURI(const wxString& uri);
/** /**
Same as Load(const wxURI& uri, const wxURI& proxy). Same as Load(const wxURI& uri, const wxURI& proxy).
Kept for wxPython compatibility. Kept for wxPython compatibility.
*/ */
bool LoadURIWithProxy(const wxString& fileName, const wxString& proxy); bool LoadURIWithProxy(const wxString& uri, const wxString& proxy);
/** /**
Pauses playback of the movie. Pauses playback of the movie.

View File

@@ -107,6 +107,11 @@ enum wxPropertySheetDialogFlags
class wxPropertySheetDialog : public wxDialog class wxPropertySheetDialog : public wxDialog
{ {
public: public:
/**
Default constructor. Call Create if using this form of constructor.
*/
wxPropertySheetDialog();
/** /**
Constructor. Constructor.
*/ */
@@ -159,6 +164,11 @@ public:
*/ */
wxSizer* GetInnerSizer() const; wxSizer* GetInnerSizer() const;
/**
Set the inner sizer that contains the book control and button sizer.
*/
void SetInnerSizer(wxSizer* sizer);
/** /**
Returns the sheet style. Returns the sheet style.
@@ -186,5 +196,31 @@ public:
It is a bit list of the ::wxPropertySheetDialogFlags values. It is a bit list of the ::wxPropertySheetDialogFlags values.
*/ */
void SetSheetStyle(long style); void SetSheetStyle(long style);
/**
Set the border around the whole dialog
*/
void SetSheetOuterBorder(int border);
/**
Returns the border around the whole dialog
*/
int GetSheetOuterBorder() const;
/**
Set the border around the book control only.
*/
void SetSheetInnerBorder(int border);
/**
Returns the border around the book control only.
*/
int GetSheetInnerBorder() const;
virtual wxWindow* GetContentWindow() const;
}; };

View File

@@ -5,6 +5,26 @@
// Licence: wxWindows licence // Licence: wxWindows licence
///////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////
/**
@class wxPGWindowList
Contains a list of editor windows returned by CreateControls.
*/
class wxPGWindowList
{
public:
wxPGWindowList();
void SetSecondary( wxWindow* secondary );
wxWindow* m_primary;
wxWindow* m_secondary;
wxPGWindowList( wxWindow* a );
wxPGWindowList( wxWindow* a, wxWindow* b );
};
/** /**
@class wxPGEditor @class wxPGEditor
@@ -18,7 +38,7 @@
calling wxPropertyGrid::RegisterAdditionalEditors() prior use. calling wxPropertyGrid::RegisterAdditionalEditors() prior use.
- Pointer to built-in editor is available as wxPGEditor_EditorName - Pointer to built-in editor is available as wxPGEditor_EditorName
(eg. wxPGEditor_TextCtrl). (e.g. wxPGEditor_TextCtrl).
- Before you start using new editor you just created, you need to register - Before you start using new editor you just created, you need to register
it using static function it using static function
@@ -93,7 +113,7 @@ public:
@remarks wxPropertyGrid will automatically unfocus the editor when @remarks wxPropertyGrid will automatically unfocus the editor when
@c wxEVT_TEXT_ENTER is received and when it results in @c wxEVT_TEXT_ENTER is received and when it results in
property value being modified. This happens regardless of property value being modified. This happens regardless of
editor type (ie. behaviour is same for any wxTextCtrl and editor type (i.e. behaviour is same for any wxTextCtrl and
wxComboBox based editor). wxComboBox based editor).
*/ */
virtual bool OnEvent( wxPropertyGrid* propgrid, wxPGProperty* property, virtual bool OnEvent( wxPropertyGrid* propgrid, wxPGProperty* property,
@@ -109,7 +129,7 @@ public:
/** Sets value in control to unspecified. */ /** Sets value in control to unspecified. */
virtual void SetValueToUnspecified( wxPGProperty* property, virtual void SetValueToUnspecified( wxPGProperty* property,
wxWindow* ctrl ) const = 0; wxWindow* ctrl ) const;
/** /**
Called by property grid to set new appearance for the control. Called by property grid to set new appearance for the control.
@@ -166,6 +186,228 @@ public:
Default implementation returns @false. Default implementation returns @false.
*/ */
virtual bool CanContainCustomImage() const; virtual bool CanContainCustomImage() const;
//
// This member is public so scripting language bindings
// wrapper code can access it freely.
void* m_clientData;
};
class wxPGTextCtrlEditor : public wxPGEditor
{
public:
wxPGTextCtrlEditor();
virtual ~wxPGTextCtrlEditor();
virtual wxPGWindowList CreateControls(wxPropertyGrid* propgrid,
wxPGProperty* property,
const wxPoint& pos,
const wxSize& size) const;
virtual void UpdateControl( wxPGProperty* property,
wxWindow* ctrl ) const;
virtual bool OnEvent( wxPropertyGrid* propgrid,
wxPGProperty* property,
wxWindow* primaryCtrl,
wxEvent& event ) const;
virtual bool GetValueFromControl( wxVariant& variant,
wxPGProperty* property,
wxWindow* ctrl ) const;
virtual wxString GetName() const;
virtual void SetControlStringValue( wxPGProperty* property,
wxWindow* ctrl,
const wxString& txt ) const;
virtual void OnFocus( wxPGProperty* property, wxWindow* wnd ) const;
static bool OnTextCtrlEvent( wxPropertyGrid* propgrid,
wxPGProperty* property,
wxWindow* ctrl,
wxEvent& event );
static bool GetTextCtrlValueFromControl( wxVariant& variant,
wxPGProperty* property,
wxWindow* ctrl );
};
class wxPGChoiceEditor : public wxPGEditor
{
public:
wxPGChoiceEditor()
virtual ~wxPGChoiceEditor();
virtual wxPGWindowList CreateControls(wxPropertyGrid* propgrid,
wxPGProperty* property,
const wxPoint& pos,
const wxSize& size) const;
virtual void UpdateControl( wxPGProperty* property,
wxWindow* ctrl ) const;
virtual bool OnEvent( wxPropertyGrid* propgrid,
wxPGProperty* property,
wxWindow* primaryCtrl,
wxEvent& event ) const;
virtual bool GetValueFromControl( wxVariant& variant,
wxPGProperty* property,
wxWindow* ctrl ) const;
virtual void SetValueToUnspecified( wxPGProperty* property,
wxWindow* ctrl ) const;
virtual wxString GetName() const;
virtual void SetControlIntValue( wxPGProperty* property,
wxWindow* ctrl,
int value ) const;
virtual void SetControlStringValue( wxPGProperty* property,
wxWindow* ctrl,
const wxString& txt ) const;
virtual int InsertItem( wxWindow* ctrl,
const wxString& label,
int index ) const;
virtual void DeleteItem( wxWindow* ctrl, int index ) const;
virtual bool CanContainCustomImage() const;
wxWindow* CreateControlsBase( wxPropertyGrid* propgrid,
wxPGProperty* property,
const wxPoint& pos,
const wxSize& sz,
long extraStyle ) const;
};
class wxPGComboBoxEditor : public wxPGChoiceEditor
{
public:
wxPGComboBoxEditor();
virtual ~wxPGComboBoxEditor();
virtual wxPGWindowList CreateControls(wxPropertyGrid* propgrid,
wxPGProperty* property,
const wxPoint& pos,
const wxSize& size) const;
virtual wxString GetName() const;
virtual void UpdateControl( wxPGProperty* property, wxWindow* ctrl ) const;
virtual bool OnEvent( wxPropertyGrid* propgrid, wxPGProperty* property,
wxWindow* ctrl, wxEvent& event ) const;
virtual bool GetValueFromControl( wxVariant& variant,
wxPGProperty* property,
wxWindow* ctrl ) const;
virtual void OnFocus( wxPGProperty* property, wxWindow* wnd ) const;
};
class wxPGChoiceAndButtonEditor : public wxPGChoiceEditor
{
public:
wxPGChoiceAndButtonEditor();
virtual ~wxPGChoiceAndButtonEditor();
virtual wxString GetName() const;
virtual wxPGWindowList CreateControls(wxPropertyGrid* propgrid,
wxPGProperty* property,
const wxPoint& pos,
const wxSize& size) const;
};
class wxPGTextCtrlAndButtonEditor : public wxPGTextCtrlEditor
{
public:
wxPGTextCtrlAndButtonEditor();
virtual ~wxPGTextCtrlAndButtonEditor();
virtual wxString GetName() const;
virtual wxPGWindowList CreateControls(wxPropertyGrid* propgrid,
wxPGProperty* property,
const wxPoint& pos,
const wxSize& size) const;
};
class wxPGCheckBoxEditor : public wxPGEditor
{
public:
wxPGCheckBoxEditor();
virtual ~wxPGCheckBoxEditor();
virtual wxString GetName() const;
virtual wxPGWindowList CreateControls(wxPropertyGrid* propgrid,
wxPGProperty* property,
const wxPoint& pos,
const wxSize& size) const;
virtual void UpdateControl( wxPGProperty* property,
wxWindow* ctrl ) const;
virtual bool OnEvent( wxPropertyGrid* propgrid,
wxPGProperty* property,
wxWindow* primaryCtrl,
wxEvent& event ) const;
virtual bool GetValueFromControl( wxVariant& variant,
wxPGProperty* property,
wxWindow* ctrl ) const;
virtual void SetValueToUnspecified( wxPGProperty* property,
wxWindow* ctrl ) const;
virtual void DrawValue( wxDC& dc,
const wxRect& rect,
wxPGProperty* property,
const wxString& text ) const;
virtual void SetControlIntValue( wxPGProperty* property,
wxWindow* ctrl,
int value ) const;
};
/**
@class wxPGEditorDialogAdapter
Derive a class from this to adapt an existing editor dialog or function to
be used when editor button of a property is pushed.
You only need to derive class and implement DoShowDialog() to create and
show the dialog, and finally submit the value returned by the dialog
via SetValue().
@library{wxpropgrid}
@category{propgrid}
*/
class wxPGEditorDialogAdapter : public wxObject
{
public:
wxPGEditorDialogAdapter();
virtual ~wxPGEditorDialogAdapter();
bool ShowDialog( wxPropertyGrid* propGrid, wxPGProperty* property );
virtual bool DoShowDialog( wxPropertyGrid* propGrid,
wxPGProperty* property ) = 0;
void SetValue( wxVariant value );
/**
This method is typically only used if deriving class from existing
adapter with value conversion purposes.
*/
wxVariant& GetValue() { return m_value; }
//
// This member is public so scripting language bindings
// wrapper code can access it freely.
void* m_clientData;
}; };

View File

@@ -36,8 +36,9 @@
@library{wxpropgrid} @library{wxpropgrid}
@category{propgrid} @category{propgrid}
*/ */
class WXDLLIMPEXP_PROPGRID wxPropertyGridPage : public wxEvtHandler, class wxPropertyGridPage : public wxEvtHandler,
public wxPropertyGridInterface public wxPropertyGridInterface,
public wxPropertyGridPageState
{ {
friend class wxPropertyGridManager; friend class wxPropertyGridManager;
@@ -171,6 +172,8 @@ public:
wxPG_TOOLBAR | wxPG_TOOLBAR |
// Include description box. // Include description box.
wxPG_DESCRIPTION | wxPG_DESCRIPTION |
// Include compactor.
wxPG_COMPACTOR |
// Plus defaults. // Plus defaults.
wxPGMAN_DEFAULT_STYLE wxPGMAN_DEFAULT_STYLE
); );
@@ -211,8 +214,16 @@ class wxPropertyGridManager : public wxPanel, public wxPropertyGridInterface
{ {
public: public:
/** /**
The default constructor. The styles to be used are styles valid for Two step constructor.
the wxWindow. Call Create when this constructor is called to build up the
wxPropertyGridManager.
*/
wxPropertyGridManager();
/**
The default constructor. The styles to be used are styles valid for
the wxWindow.
@see @link wndflags Additional Window Styles @endlink
*/ */
wxPropertyGridManager( wxWindow *parent, wxWindowID id = wxID_ANY, wxPropertyGridManager( wxWindow *parent, wxWindowID id = wxID_ANY,
const wxPoint& pos = wxDefaultPosition, const wxPoint& pos = wxDefaultPosition,
@@ -410,7 +421,7 @@ public:
bool IsAnyModified() const; bool IsAnyModified() const;
/** /**
Returns @true if updating is frozen (ie. Freeze() called but not yet Thaw() ). Returns @true if updating is frozen (i.e. Freeze() called but not yet Thaw() ).
*/ */
bool IsFrozen() const; bool IsFrozen() const;
@@ -487,7 +498,7 @@ public:
labels to be shown in full. labels to be shown in full.
@param subProps @param subProps
If @false, will still allow sub-properties (ie. properties which If @false, will still allow sub-properties (i.e. properties which
parent is not root or category) to be cropped. parent is not root or category) to be cropped.
@param allPages @param allPages
@@ -541,7 +552,7 @@ protected:
/** /**
Creates property grid for the manager. Reimplement in derived class to Creates property grid for the manager. Reimplement in derived class to
use subclassed wxPropertyGrid. However, if you do this then you use subclassed wxPropertyGrid. However, if you do this then you
must also use the two-step construction (ie. default constructor and must also use the two-step construction (i.e. default constructor and
Create() instead of constructor with arguments) when creating the Create() instead of constructor with arguments) when creating the
manager. manager.
*/ */

View File

@@ -146,6 +146,8 @@ struct wxPGPaintData
/** Specific to wxFileProperty and derivatives, long, default is 0. /** Specific to wxFileProperty and derivatives, long, default is 0.
Sets a specific wxFileDialog style for the file dialog, e.g. ::wxFD_SAVE. Sets a specific wxFileDialog style for the file dialog, e.g. ::wxFD_SAVE.
@since 2.9.4
*/ */
#define wxPG_FILE_DIALOG_STYLE wxS("DialogStyle") #define wxPG_FILE_DIALOG_STYLE wxS("DialogStyle")
@@ -337,12 +339,12 @@ wxPG_PROP_USES_COMMON_VALUE = 0x00020000,
*/ */
wxPG_PROP_AUTO_UNSPECIFIED = 0x00040000, wxPG_PROP_AUTO_UNSPECIFIED = 0x00040000,
/** Indicates the bit usable by derived properties. /** Indicates the bit useable by derived properties.
@hideinitializer @hideinitializer
*/ */
wxPG_PROP_CLASS_SPECIFIC_1 = 0x00080000, wxPG_PROP_CLASS_SPECIFIC_1 = 0x00080000,
/** Indicates the bit usable by derived properties. /** Indicates the bit useable by derived properties.
@hideinitializer @hideinitializer
*/ */
wxPG_PROP_CLASS_SPECIFIC_2 = 0x00100000, wxPG_PROP_CLASS_SPECIFIC_2 = 0x00100000,
@@ -447,6 +449,7 @@ wxPG_PROP_CLASS_SPECIFIC_3 = 0x00400000
Like wxStringProperty, but converts text to a signed long integer. Like wxStringProperty, but converts text to a signed long integer.
wxIntProperty seamlessly supports 64-bit integers (i.e. wxLongLong) on overlfow. wxIntProperty seamlessly supports 64-bit integers (i.e. wxLongLong) on overlfow.
To safely convert variant to integer, use code like this: To safely convert variant to integer, use code like this:
@code @code
wxLongLong ll; wxLongLong ll;
ll << property->GetValue(); ll << property->GetValue();
@@ -611,7 +614,7 @@ wxPG_PROP_CLASS_SPECIFIC_3 = 0x00400000
manually edit the flags as a text; a continuous sequence of spaces, commas manually edit the flags as a text; a continuous sequence of spaces, commas
and semicolons are considered as a flag id separator. and semicolons are considered as a flag id separator.
<b>Note:</b> When changing "choices" (ie. flag labels) of wxFlagsProperty, <b>Note:</b> When changing "choices" (i.e. flag labels) of wxFlagsProperty,
you will need to use wxPGProperty::SetChoices() - otherwise they will not you will need to use wxPGProperty::SetChoices() - otherwise they will not
get updated properly. get updated properly.
@@ -1250,6 +1253,15 @@ public:
*/ */
int AddChoice( const wxString& label, int value = wxPG_INVALID_VALUE ); int AddChoice( const wxString& label, int value = wxPG_INVALID_VALUE );
/**
Adds a private child property.
@deprecated Use AddPrivateChild() instead.
@see AddPrivateChild()
*/
void AddChild( wxPGProperty* prop );
/** /**
Adds a private child property. If you use this instead of Adds a private child property. If you use this instead of
wxPropertyGridInterface::Insert() or wxPropertyGridInterface::Insert() or
@@ -1379,7 +1391,7 @@ public:
*/ */
const wxPGEditor* GetColumnEditor( int column ) const; const wxPGEditor* GetColumnEditor( int column ) const;
/** Returns property's base name (ie. parent's name is not added /** Returns property's base name (i.e. parent's name is not added
in any case). in any case).
*/ */
const wxString& GetBaseName() const; const wxString& GetBaseName() const;
@@ -1559,6 +1571,14 @@ public:
*/ */
virtual wxString GetValueAsString( int argFlags = 0 ) const; virtual wxString GetValueAsString( int argFlags = 0 ) const;
/** Synonymous to GetValueAsString().
@deprecated Use GetValueAsString() instead.
@see GetValueAsString()
*/
wxString GetValueString( int argFlags = 0 ) const;
/** /**
Returns value type used by this property. Returns value type used by this property.
*/ */
@@ -1667,10 +1687,11 @@ public:
bool IsRoot() const; bool IsRoot() const;
/** /**
Returns true if this is a sub-property. Returns true if this is a sub-property.
*/ */
bool IsSubProperty() const; bool IsSubProperty() const;
/** /**
Returns @true if candidateParent is some parent of this property. Returns @true if candidateParent is some parent of this property.
Use, for example, to detect if item is inside collapsed section. Use, for example, to detect if item is inside collapsed section.
@@ -2368,6 +2389,55 @@ public:
// ----------------------------------------------------------------------- // -----------------------------------------------------------------------
/**
@class wxPGChoiceEntry
Data of a single wxPGChoices choice.
*/
class wxPGChoiceEntry : public wxPGCell
{
public:
wxPGChoiceEntry();
wxPGChoiceEntry(const wxPGChoiceEntry& other);
wxPGChoiceEntry( const wxString& label,
int value = wxPG_INVALID_VALUE );
virtual ~wxPGChoiceEntry();
void SetValue( int value );
int GetValue() const;
wxPGChoiceEntry& operator=( const wxPGChoiceEntry& other );
};
class wxPGChoicesData : public wxObjectRefData
{
public:
// Constructor sets m_refCount to 1.
wxPGChoicesData();
void CopyDataFrom( wxPGChoicesData* data );
wxPGChoiceEntry& Insert( int index, const wxPGChoiceEntry& item );
// Delete all entries
void Clear();
unsigned int GetCount() const;
const wxPGChoiceEntry& Item( unsigned int i ) const;
wxPGChoiceEntry& Item( unsigned int i );
protected:
virtual ~wxPGChoicesData();
};
#define wxPGChoicesEmptyData ((wxPGChoicesData*)NULL)
/** /**
@class wxPGChoices @class wxPGChoices

View File

@@ -331,7 +331,7 @@ wxPG_VFB_DEFAULT = wxPG_VFB_MARK_CELL |
#define wxPGVFBFlags unsigned char #define wxPGVFBFlags unsigned char
/** /**
wxPGValidationInfo @class wxPGValidationInfo
Used to convey validation information to and from functions that Used to convey validation information to and from functions that
actually perform validation. Mostly used in custom property classes. actually perform validation. Mostly used in custom property classes.
@@ -920,7 +920,7 @@ public:
bool IsEditorFocused() const; bool IsEditorFocused() const;
/** /**
Returns true if updating is frozen (ie. Freeze() called but not Returns true if updating is frozen (i.e. Freeze() called but not
yet Thaw() ). yet Thaw() ).
*/ */
bool IsFrozen() const; bool IsFrozen() const;

View File

@@ -142,7 +142,7 @@ public:
Refresh() when calling this function after control has been shown for Refresh() when calling this function after control has been shown for
the first time. the first time.
- This functions deselects selected property, if any. Validation - This functions deselects selected property, if any. Validation
failure option wxPG_VFB_STAY_IN_PROPERTY is not respected, ie. failure option wxPG_VFB_STAY_IN_PROPERTY is not respected, i.e.
selection is cleared even if editor had invalid value. selection is cleared even if editor had invalid value.
*/ */
wxPGProperty* Append( wxPGProperty* property ); wxPGProperty* Append( wxPGProperty* property );
@@ -171,7 +171,7 @@ public:
Deletes all properties. Deletes all properties.
@remarks This functions deselects selected property, if any. Validation @remarks This functions deselects selected property, if any. Validation
failure option wxPG_VFB_STAY_IN_PROPERTY is not respected, ie. failure option wxPG_VFB_STAY_IN_PROPERTY is not respected, i.e.
selection is cleared even if editor had invalid value. selection is cleared even if editor had invalid value.
*/ */
virtual void Clear() = 0; virtual void Clear() = 0;
@@ -206,7 +206,7 @@ public:
@return Returns @true if actually collapsed. @return Returns @true if actually collapsed.
@remarks This function may deselect selected property, if any. Validation @remarks This function may deselect selected property, if any. Validation
failure option wxPG_VFB_STAY_IN_PROPERTY is not respected, ie. failure option wxPG_VFB_STAY_IN_PROPERTY is not respected, i.e.
selection is cleared even if editor had invalid value. selection is cleared even if editor had invalid value.
*/ */
bool Collapse( wxPGPropArg id ); bool Collapse( wxPGPropArg id );
@@ -218,7 +218,7 @@ public:
Return @false if failed (may fail if editor value cannot be validated). Return @false if failed (may fail if editor value cannot be validated).
@remarks This functions clears selection. Validation failure option @remarks This functions clears selection. Validation failure option
wxPG_VFB_STAY_IN_PROPERTY is not respected, ie. selection wxPG_VFB_STAY_IN_PROPERTY is not respected, i.e. selection
is cleared even if editor had invalid value. is cleared even if editor had invalid value.
*/ */
bool CollapseAll(); bool CollapseAll();
@@ -244,7 +244,7 @@ public:
This functions deselects selected property, if any. This functions deselects selected property, if any.
Validation failure option wxPG_VFB_STAY_IN_PROPERTY is not Validation failure option wxPG_VFB_STAY_IN_PROPERTY is not
respected, ie. selection is cleared even if editor had respected, i.e. selection is cleared even if editor had
invalid value. invalid value.
*/ */
void DeleteProperty( wxPGPropArg id ); void DeleteProperty( wxPGPropArg id );
@@ -295,7 +295,7 @@ public:
@return Returns @true if actually expanded. @return Returns @true if actually expanded.
@remarks This function may deselect selected property, if any. Validation @remarks This function may deselect selected property, if any. Validation
failure option wxPG_VFB_STAY_IN_PROPERTY is not respected, ie. failure option wxPG_VFB_STAY_IN_PROPERTY is not respected, i.e.
selection is cleared even if editor had invalid value. selection is cleared even if editor had invalid value.
*/ */
bool Expand( wxPGPropArg id ); bool Expand( wxPGPropArg id );
@@ -304,7 +304,7 @@ public:
Expands all items that can be expanded. Expands all items that can be expanded.
@remarks This functions clears selection. Validation failure option @remarks This functions clears selection. Validation failure option
wxPG_VFB_STAY_IN_PROPERTY is not respected, ie. selection wxPG_VFB_STAY_IN_PROPERTY is not respected, i.e. selection
is cleared even if editor had invalid value. is cleared even if editor had invalid value.
*/ */
bool ExpandAll( bool expand = true ); bool ExpandAll( bool expand = true );
@@ -626,7 +626,7 @@ public:
especially true if current mode is non-categoric. especially true if current mode is non-categoric.
- This functions deselects selected property, if any. Validation - This functions deselects selected property, if any. Validation
failure option wxPG_VFB_STAY_IN_PROPERTY is not respected, ie. failure option wxPG_VFB_STAY_IN_PROPERTY is not respected, i.e.
selection is cleared even if editor had invalid value. selection is cleared even if editor had invalid value.
Example of use: Example of use:

View File

@@ -129,7 +129,7 @@ wxPG_ITERATOR_MASK_OP_PARENT = wxPG_ITERATOR_FLAGS_ALL,
/** /**
Combines all flags needed to iterate through visible properties Combines all flags needed to iterate through visible properties
(ie. hidden properties and children of collapsed parents are skipped). (i.e. hidden properties and children of collapsed parents are skipped).
@hideinitializer @hideinitializer
*/ */
wxPG_ITERATE_VISIBLE = wxPG_ITERATE_PROPERTIES | wxPG_ITERATE_VISIBLE = wxPG_ITERATE_PROPERTIES |

View File

@@ -278,7 +278,7 @@ public:
@see SetColourScheme() @see SetColourScheme()
*/ */
virtual void SetColour(int id, const wxColor& colour) = 0; virtual void SetColour(int id, const wxColour& colour) = 0;
/** /**
@see wxRibbonArtProvider::GetColour() @see wxRibbonArtProvider::GetColour()
@@ -586,7 +586,7 @@ public:
wxDC& dc, wxDC& dc,
wxWindow* wnd, wxWindow* wnd,
const wxRect& rect, const wxRect& rect,
wxRibbonButtonBarButtonKind kind, wxRibbonButtonKind kind,
long state, long state,
const wxString& label, const wxString& label,
const wxBitmap& bitmap_large, const wxBitmap& bitmap_large,
@@ -862,7 +862,7 @@ public:
/** /**
Calculate the client size of a wxRibbonGallery control for a given Calculate the client size of a wxRibbonGallery control for a given
size. This should act as the inverse to GetGallerySize(), and decrement size. This should act as the inverse to GetGallerySize(), and decrement
the given size by enough to fir the gallery border, buttons, and other the given size by enough to fit the gallery border, buttons, and other
chrome. chrome.
@param dc @param dc
@@ -950,7 +950,7 @@ public:
virtual bool GetButtonBarButtonSize( virtual bool GetButtonBarButtonSize(
wxDC& dc, wxDC& dc,
wxWindow* wnd, wxWindow* wnd,
wxRibbonButtonBarButtonKind kind, wxRibbonButtonKind kind,
wxRibbonButtonBarButtonState size, wxRibbonButtonBarButtonState size,
const wxString& label, const wxString& label,
wxSize bitmap_size_large, wxSize bitmap_size_large,
@@ -1028,3 +1028,344 @@ public:
*/ */
virtual wxRect GetRibbonHelpButtonArea(const wxRect& rect) = 0; virtual wxRect GetRibbonHelpButtonArea(const wxRect& rect) = 0;
}; };
class wxRibbonMSWArtProvider : public wxRibbonArtProvider
{
public:
wxRibbonMSWArtProvider(bool set_colour_scheme = true);
virtual ~wxRibbonMSWArtProvider();
wxRibbonArtProvider* Clone() const;
void SetFlags(long flags);
long GetFlags() const;
int GetMetric(int id) const;
void SetMetric(int id, int new_val);
void SetFont(int id, const wxFont& font);
wxFont GetFont(int id) const;
wxColour GetColour(int id) const;
void SetColour(int id, const wxColour& colour);
void GetColourScheme(wxColour* primary,
wxColour* secondary,
wxColour* tertiary) const;
void SetColourScheme(const wxColour& primary,
const wxColour& secondary,
const wxColour& tertiary);
int GetTabCtrlHeight(
wxDC& dc,
wxWindow* wnd,
const wxRibbonPageTabInfoArray& pages);
void DrawTabCtrlBackground(
wxDC& dc,
wxWindow* wnd,
const wxRect& rect);
void DrawTab(wxDC& dc,
wxWindow* wnd,
const wxRibbonPageTabInfo& tab);
void DrawTabSeparator(
wxDC& dc,
wxWindow* wnd,
const wxRect& rect,
double visibility);
void DrawPageBackground(
wxDC& dc,
wxWindow* wnd,
const wxRect& rect);
void DrawScrollButton(
wxDC& dc,
wxWindow* wnd,
const wxRect& rect,
long style);
void DrawPanelBackground(
wxDC& dc,
wxRibbonPanel* wnd,
const wxRect& rect);
void DrawGalleryBackground(
wxDC& dc,
wxRibbonGallery* wnd,
const wxRect& rect);
void DrawGalleryItemBackground(
wxDC& dc,
wxRibbonGallery* wnd,
const wxRect& rect,
wxRibbonGalleryItem* item);
void DrawMinimisedPanel(
wxDC& dc,
wxRibbonPanel* wnd,
const wxRect& rect,
wxBitmap& bitmap);
void DrawButtonBarBackground(
wxDC& dc,
wxWindow* wnd,
const wxRect& rect);
void DrawButtonBarButton(
wxDC& dc,
wxWindow* wnd,
const wxRect& rect,
wxRibbonButtonKind kind,
long state,
const wxString& label,
const wxBitmap& bitmap_large,
const wxBitmap& bitmap_small);
void DrawToolBarBackground(
wxDC& dc,
wxWindow* wnd,
const wxRect& rect);
void DrawToolGroupBackground(
wxDC& dc,
wxWindow* wnd,
const wxRect& rect);
void DrawTool(
wxDC& dc,
wxWindow* wnd,
const wxRect& rect,
const wxBitmap& bitmap,
wxRibbonButtonKind kind,
long state);
void DrawToggleButton(
wxDC& dc,
wxRibbonBar* wnd,
const wxRect& rect,
wxRibbonDisplayMode mode);
void DrawHelpButton(wxDC& dc,
wxRibbonBar* wnd,
const wxRect& rect);
void GetBarTabWidth(
wxDC& dc,
wxWindow* wnd,
const wxString& label,
const wxBitmap& bitmap,
int* ideal,
int* small_begin_need_separator,
int* small_must_have_separator,
int* minimum);
wxSize GetScrollButtonMinimumSize(
wxDC& dc,
wxWindow* wnd,
long style);
wxSize GetPanelSize(
wxDC& dc,
const wxRibbonPanel* wnd,
wxSize client_size,
wxPoint* client_offset);
wxSize GetPanelClientSize(
wxDC& dc,
const wxRibbonPanel* wnd,
wxSize size,
wxPoint* client_offset);
wxRect GetPanelExtButtonArea(
wxDC& dc,
const wxRibbonPanel* wnd,
wxRect rect);
wxSize GetGallerySize(
wxDC& dc,
const wxRibbonGallery* wnd,
wxSize client_size);
wxSize GetGalleryClientSize(
wxDC& dc,
const wxRibbonGallery* wnd,
wxSize size,
wxPoint* client_offset,
wxRect* scroll_up_button,
wxRect* scroll_down_button,
wxRect* extension_button);
wxRect GetPageBackgroundRedrawArea(
wxDC& dc,
const wxRibbonPage* wnd,
wxSize page_old_size,
wxSize page_new_size);
bool GetButtonBarButtonSize(
wxDC& dc,
wxWindow* wnd,
wxRibbonButtonKind kind,
wxRibbonButtonBarButtonState size,
const wxString& label,
wxSize bitmap_size_large,
wxSize bitmap_size_small,
wxSize* button_size,
wxRect* normal_region,
wxRect* dropdown_region);
wxSize GetMinimisedPanelMinimumSize(
wxDC& dc,
const wxRibbonPanel* wnd,
wxSize* desired_bitmap_size,
wxDirection* expanded_panel_direction);
wxSize GetToolSize(
wxDC& dc,
wxWindow* wnd,
wxSize bitmap_size,
wxRibbonButtonKind kind,
bool is_first,
bool is_last,
wxRect* dropdown_region);
wxRect GetBarToggleButtonArea(const wxRect& rect);
wxRect GetRibbonHelpButtonArea(const wxRect& rect);
};
class wxRibbonAUIArtProvider : public wxRibbonMSWArtProvider
{
public:
wxRibbonAUIArtProvider();
virtual ~wxRibbonAUIArtProvider();
wxRibbonArtProvider* Clone() const;
wxColour GetColour(int id) const;
void SetColour(int id, const wxColour& colour);
void SetColourScheme(const wxColour& primary,
const wxColour& secondary,
const wxColour& tertiary);
void SetFont(int id, const wxFont& font);
wxSize GetScrollButtonMinimumSize(
wxDC& dc,
wxWindow* wnd,
long style);
void DrawScrollButton(
wxDC& dc,
wxWindow* wnd,
const wxRect& rect,
long style);
wxSize GetPanelSize(
wxDC& dc,
const wxRibbonPanel* wnd,
wxSize client_size,
wxPoint* client_offset);
wxSize GetPanelClientSize(
wxDC& dc,
const wxRibbonPanel* wnd,
wxSize size,
wxPoint* client_offset);
wxRect GetPanelExtButtonArea(
wxDC& dc,
const wxRibbonPanel* wnd,
wxRect rect);
void DrawTabCtrlBackground(
wxDC& dc,
wxWindow* wnd,
const wxRect& rect);
int GetTabCtrlHeight(
wxDC& dc,
wxWindow* wnd,
const wxRibbonPageTabInfoArray& pages);
void GetBarTabWidth(
wxDC& dc,
wxWindow* wnd,
const wxString& label,
const wxBitmap& bitmap,
int* ideal,
int* small_begin_need_separator,
int* small_must_have_separator,
int* minimum);
void DrawTab(wxDC& dc,
wxWindow* wnd,
const wxRibbonPageTabInfo& tab);
void DrawTabSeparator(
wxDC& dc,
wxWindow* wnd,
const wxRect& rect,
double visibility);
void DrawPageBackground(
wxDC& dc,
wxWindow* wnd,
const wxRect& rect);
void DrawPanelBackground(
wxDC& dc,
wxRibbonPanel* wnd,
const wxRect& rect);
void DrawMinimisedPanel(
wxDC& dc,
wxRibbonPanel* wnd,
const wxRect& rect,
wxBitmap& bitmap);
void DrawGalleryBackground(
wxDC& dc,
wxRibbonGallery* wnd,
const wxRect& rect);
void DrawGalleryItemBackground(
wxDC& dc,
wxRibbonGallery* wnd,
const wxRect& rect,
wxRibbonGalleryItem* item);
void DrawButtonBarBackground(
wxDC& dc,
wxWindow* wnd,
const wxRect& rect);
void DrawButtonBarButton(
wxDC& dc,
wxWindow* wnd,
const wxRect& rect,
wxRibbonButtonKind kind,
long state,
const wxString& label,
const wxBitmap& bitmap_large,
const wxBitmap& bitmap_small);
void DrawToolBarBackground(
wxDC& dc,
wxWindow* wnd,
const wxRect& rect);
void DrawToolGroupBackground(
wxDC& dc,
wxWindow* wnd,
const wxRect& rect);
void DrawTool(
wxDC& dc,
wxWindow* wnd,
const wxRect& rect,
const wxBitmap& bitmap,
wxRibbonButtonKind kind,
long state);
};

View File

@@ -6,6 +6,22 @@
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
enum wxRibbonBarOption
{
wxRIBBON_BAR_SHOW_PAGE_LABELS,
wxRIBBON_BAR_SHOW_PAGE_ICONS,
wxRIBBON_BAR_FLOW_HORIZONTAL,
wxRIBBON_BAR_FLOW_VERTICAL,
wxRIBBON_BAR_SHOW_PANEL_EXT_BUTTONS,
wxRIBBON_BAR_SHOW_PANEL_MINIMISE_BUTTONS,
wxRIBBON_BAR_ALWAYS_SHOW_TABS,
wxRIBBON_BAR_SHOW_TOGGLE_BUTTON,
wxRIBBON_BAR_SHOW_HELP_BUTTON,
wxRIBBON_BAR_DEFAULT_STYLE,
wxRIBBON_BAR_FOLDBAR_STYLE
};
/** /**
The possible display modes of the panel area of a wxRibbonBar widget. The possible display modes of the panel area of a wxRibbonBar widget.
@@ -68,6 +84,35 @@ public:
void SetPage(wxRibbonPage* page); void SetPage(wxRibbonPage* page);
}; };
wxEventType wxEVT_RIBBONBAR_PAGE_CHANGED;
wxEventType wxEVT_RIBBONBAR_PAGE_CHANGING;
wxEventType wxEVT_RIBBONBAR_TAB_MIDDLE_DOWN;
wxEventType wxEVT_RIBBONBAR_TAB_MIDDLE_UP;
wxEventType wxEVT_RIBBONBAR_TAB_RIGHT_DOWN;
wxEventType wxEVT_RIBBONBAR_TAB_RIGHT_UP;
wxEventType wxEVT_RIBBONBAR_TAB_LEFT_DCLICK;
wxEventType wxEVT_RIBBONBAR_TOGGLED;
wxEventType wxEVT_RIBBONBAR_HELP_CLICK;
class wxRibbonPageTabInfo
{
public:
wxRect rect;
wxRibbonPage *page;
int ideal_width;
int small_begin_need_separator_width;
int small_must_have_separator_width;
int minimum_width;
bool active;
bool hovered;
bool highlight;
bool shown;
};
/** /**
@class wxRibbonBar @class wxRibbonBar

View File

@@ -69,7 +69,12 @@ enum wxRibbonButtonBarButtonState
Only applicable to dropdown and hybrid buttons. Only applicable to dropdown and hybrid buttons.
*/ */
wxRIBBON_BUTTONBAR_BUTTON_DROPDOWN_ACTIVE = 1 << 6, wxRIBBON_BUTTONBAR_BUTTON_DROPDOWN_ACTIVE = 1 << 6,
/**
A mask to extract active flags
*/
wxRIBBON_BUTTONBAR_BUTTON_ACTIVE_MASK = wxRIBBON_BUTTONBAR_BUTTON_NORMAL_ACTIVE | wxRIBBON_BUTTONBAR_BUTTON_DROPDOWN_ACTIVE,
/** /**
The button is disabled. Hover flags may still be set when a button The button is disabled. Hover flags may still be set when a button
is disabled, but should be ignored during drawing if the button is is disabled, but should be ignored during drawing if the button is
@@ -422,7 +427,7 @@ public:
@since 2.9.5 @since 2.9.5
*/ */
virtual int GetItemId(wxRibbonButtonBarButtonBase *) const; virtual int GetItemId(wxRibbonButtonBarButtonBase *item) const;
/** /**
Calculate button layouts and positions. Calculate button layouts and positions.
@@ -562,3 +567,7 @@ public:
*/ */
bool PopupMenu(wxMenu* menu); bool PopupMenu(wxMenu* menu);
}; };
wxEventType wxEVT_RIBBONBUTTONBAR_CLICKED;
wxEventType wxEVT_RIBBONBUTTONBAR_DROPDOWN_CLICKED;

View File

@@ -297,3 +297,9 @@ public:
*/ */
void SetGalleryItem(wxRibbonGalleryItem* item); void SetGalleryItem(wxRibbonGalleryItem* item);
}; };
wxEventType wxEVT_RIBBONGALLERY_HOVER_CHANGED;
wxEventType wxEVT_RIBBONGALLERY_SELECTED;
wxEventType wxEVT_RIBBONGALLERY_CLICKED;

View File

@@ -5,6 +5,18 @@
// Licence: wxWindows licence // Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
enum wxRibbonPanelOption
{
wxRIBBON_PANEL_NO_AUTO_MINIMISE,
wxRIBBON_PANEL_EXT_BUTTON,
wxRIBBON_PANEL_MINIMISE_BUTTON,
wxRIBBON_PANEL_STRETCH,
wxRIBBON_PANEL_FLEXIBLE,
wxRIBBON_PANEL_DEFAULT_STYLE
};
/** /**
@class wxRibbonPanelEvent @class wxRibbonPanelEvent
@@ -27,7 +39,7 @@ public:
*/ */
wxRibbonPanelEvent(wxEventType command_type = wxEVT_NULL, wxRibbonPanelEvent(wxEventType command_type = wxEVT_NULL,
int win_id = 0, int win_id = 0,
wxRibbonPanel* panel = NULL) wxRibbonPanel* panel = NULL);
/** /**
Returns the panel relating to this event. Returns the panel relating to this event.
@@ -40,6 +52,9 @@ public:
void SetPanel(wxRibbonPanel* page); void SetPanel(wxRibbonPanel* page);
}; };
wxEventType wxEVT_RIBBONPANEL_EXTBUTTON_ACTIVATED;
/** /**
@class wxRibbonPanel @class wxRibbonPanel

View File

@@ -5,6 +5,7 @@
// Licence: wxWindows licence // Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
/** /**
@class wxRibbonToolBar @class wxRibbonToolBar
@@ -143,7 +144,7 @@ public:
const wxBitmap& bitmap_disabled = wxNullBitmap, const wxBitmap& bitmap_disabled = wxNullBitmap,
const wxString& help_string = wxEmptyString, const wxString& help_string = wxEmptyString,
wxRibbonButtonKind kind = wxRIBBON_BUTTON_NORMAL, wxRibbonButtonKind kind = wxRIBBON_BUTTON_NORMAL,
wxObject* client_data = NULL); wxObject* clientData = NULL);
/** /**
Add a separator to the tool bar. Add a separator to the tool bar.
@@ -248,7 +249,7 @@ public:
const wxBitmap& bitmap_disabled = wxNullBitmap, const wxBitmap& bitmap_disabled = wxNullBitmap,
const wxString& help_string = wxEmptyString, const wxString& help_string = wxEmptyString,
wxRibbonButtonKind kind = wxRIBBON_BUTTON_NORMAL, wxRibbonButtonKind kind = wxRIBBON_BUTTON_NORMAL,
wxObject* client_data = NULL); wxObject* clientData = NULL);
/** /**
Insert a separator to the tool bar at the specified position. Insert a separator to the tool bar at the specified position.
@@ -492,3 +493,20 @@ public:
*/ */
virtual void ToggleTool(int tool_id, bool checked); virtual void ToggleTool(int tool_id, bool checked);
}; };
class wxRibbonToolBarEvent : public wxCommandEvent
{
public:
wxRibbonToolBarEvent(wxEventType command_type = wxEVT_NULL,
int win_id = 0,
wxRibbonToolBar* bar = NULL);
wxRibbonToolBar* GetBar();
void SetBar(wxRibbonToolBar* bar);
bool PopupMenu(wxMenu* menu);
};
wxEventType wxEVT_RIBBONTOOLBAR_CLICKED;
wxEventType wxEVT_RIBBONTOOLBAR_DROPDOWN_CLICKED;

View File

@@ -99,10 +99,10 @@ public:
For example: For example:
@code @code
wxRichTextRange range; wxRichTextRange range;
if (m_richTextCtrl-HasSelection()) if (m_richTextCtrl->HasSelection())
range = m_richTextCtrl-GetSelectionRange(); range = m_richTextCtrl->GetSelectionRange();
else else
range = wxRichTextRange(0, m_richTextCtrl-GetLastPosition()+1); range = wxRichTextRange(0, m_richTextCtrl->GetLastPosition()+1);
int pages = wxRICHTEXT_FORMAT_FONT|wxRICHTEXT_FORMAT_INDENTS_SPACING| \ int pages = wxRICHTEXT_FORMAT_FONT|wxRICHTEXT_FORMAT_INDENTS_SPACING| \
wxRICHTEXT_FORMAT_TABS|wxRICHTEXT_FORMAT_BULLETS; wxRICHTEXT_FORMAT_TABS|wxRICHTEXT_FORMAT_BULLETS;

View File

@@ -265,7 +265,7 @@ enum wxSystemScreenType
@see wxFont, wxColour, wxSystemOptions @see wxFont, wxColour, wxSystemOptions
*/ */
class wxSystemSettings : public wxObject class wxSystemSettings
{ {
public: public:
/** /**

View File

@@ -50,8 +50,8 @@
@section wxsizer_flags wxSizer flags @section wxsizer_flags wxSizer flags
The "flag" argument accepted by wxSizeItem constructors and other The "flag" argument accepted by wxSizerItem constructors and other
functions, e.g. wxSizer::Add(), is OR-combination of the following flags. functions, e.g. wxSizer::Add(), is an OR-combination of the following flags.
Two main behaviours are defined using these flags. One is the border around Two main behaviours are defined using these flags. One is the border around
a window: the border parameter determines the border width whereas the a window: the border parameter determines the border width whereas the
flags given here determine which side(s) of the item that the border will flags given here determine which side(s) of the item that the border will

View File

@@ -89,7 +89,7 @@ bool wxPalette::Create(int n, const unsigned char *red, const unsigned char *gre
M_PALETTEDATA->m_palette[i].Set( red[i] , green[i] , blue[i] ) ; M_PALETTEDATA->m_palette[i].Set( red[i] , green[i] , blue[i] ) ;
} }
return false; return true;
} }
int wxPalette::GetPixel(unsigned char red, unsigned char green, unsigned char blue) const int wxPalette::GetPixel(unsigned char red, unsigned char green, unsigned char blue) const