Make wxToolBar styles consistent and add wxTB_DEFAULT_STYLE.
Don't include wxBORDER_NONE in neither wxToolBar ctor and Create() nor wxFrame::CreateToolBar() flags parameter, override GetDefaultBorder() in wxToolBar itself instead to use the border style appropriate for the current platform by default. This has the same effect -- the default border style is used unless another one is explicitly specified -- but is more clear and consistent. Also add wxTB_DEFAULT_STYLE for consistency with the other classes. Closes #15037. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73757 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
parent
00a399c062
commit
f75b1bd31c
@ -73,6 +73,9 @@ public:
|
||||
// --------------------------
|
||||
|
||||
protected:
|
||||
// choose the default border for this window
|
||||
virtual wxBorder GetDefaultBorder() const { return wxBORDER_DEFAULT; }
|
||||
|
||||
virtual wxSize DoGetBestSize() const;
|
||||
virtual GdkWindow *GTKGetWindow(wxArrayGdkWindows& windows) const;
|
||||
|
||||
|
@ -68,6 +68,9 @@ protected:
|
||||
// common part of all ctors
|
||||
void Init();
|
||||
|
||||
// choose the default border for this window
|
||||
virtual wxBorder GetDefaultBorder() const { return wxBORDER_DEFAULT; }
|
||||
|
||||
// set the GTK toolbar style and orientation
|
||||
void GtkSetStyle();
|
||||
|
||||
|
@ -22,7 +22,7 @@ public:
|
||||
wxWindowID id,
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize,
|
||||
long style = wxNO_BORDER | wxTB_HORIZONTAL,
|
||||
long style = wxTB_HORIZONTAL,
|
||||
const wxString& name = wxToolBarNameStr)
|
||||
{
|
||||
Init();
|
||||
@ -34,7 +34,7 @@ public:
|
||||
wxWindowID id,
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize,
|
||||
long style = wxNO_BORDER | wxTB_HORIZONTAL,
|
||||
long style = wxTB_HORIZONTAL,
|
||||
const wxString& name = wxToolBarNameStr);
|
||||
|
||||
virtual ~wxToolBar();
|
||||
|
@ -27,7 +27,7 @@ public:
|
||||
wxWindowID id,
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize,
|
||||
long style = wxNO_BORDER | wxTB_HORIZONTAL,
|
||||
long style = wxTB_HORIZONTAL,
|
||||
const wxString& name = wxToolBarNameStr)
|
||||
{
|
||||
Init();
|
||||
@ -39,7 +39,7 @@ public:
|
||||
wxWindowID id,
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize,
|
||||
long style = wxNO_BORDER | wxTB_HORIZONTAL,
|
||||
long style = wxTB_HORIZONTAL,
|
||||
const wxString& name = wxToolBarNameStr);
|
||||
|
||||
virtual ~wxToolBar();
|
||||
|
@ -29,7 +29,7 @@ public:
|
||||
wxWindowID id,
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize,
|
||||
long style = wxNO_BORDER | wxTB_HORIZONTAL,
|
||||
long style = wxTB_HORIZONTAL,
|
||||
const wxString& name = wxToolBarNameStr)
|
||||
{
|
||||
Create(parent, id, pos, size, style, name);
|
||||
@ -39,7 +39,7 @@ public:
|
||||
wxWindowID id,
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize,
|
||||
long style = wxNO_BORDER | wxTB_HORIZONTAL,
|
||||
long style = wxTB_HORIZONTAL,
|
||||
const wxString& name = wxToolBarNameStr);
|
||||
|
||||
// override/implement base class virtuals
|
||||
@ -88,7 +88,7 @@ public:
|
||||
wxWindowID id,
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize,
|
||||
long style = wxNO_BORDER | wxTB_HORIZONTAL,
|
||||
long style = wxTB_HORIZONTAL,
|
||||
const wxString& name = wxToolBarNameStr,
|
||||
wxMenuBar* menuBar = NULL)
|
||||
{
|
||||
@ -101,7 +101,7 @@ public:
|
||||
wxWindowID id,
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize,
|
||||
long style = wxNO_BORDER | wxTB_HORIZONTAL,
|
||||
long style = wxTB_HORIZONTAL,
|
||||
const wxString& name = wxToolBarNameStr,
|
||||
wxMenuBar* menuBar = NULL);
|
||||
|
||||
|
@ -35,7 +35,7 @@ public:
|
||||
,wxWindowID vId
|
||||
,const wxPoint& rPos = wxDefaultPosition
|
||||
,const wxSize& rSize = wxDefaultSize
|
||||
,long lStyle = wxNO_BORDER | wxTB_HORIZONTAL
|
||||
,long lStyle = wxTB_HORIZONTAL
|
||||
,const wxString& rName = wxToolBarNameStr
|
||||
) : m_vToolTimer(this, ID_TOOLTIMER)
|
||||
, m_vToolExpTimer(this, ID_TOOLEXPTIMER)
|
||||
@ -55,7 +55,7 @@ public:
|
||||
,wxWindowID vId
|
||||
,const wxPoint& rPos = wxDefaultPosition
|
||||
,const wxSize& rSize = wxDefaultSize
|
||||
,long lStyle = wxNO_BORDER | wxTB_HORIZONTAL
|
||||
,long lStyle = wxTB_HORIZONTAL
|
||||
,const wxString& rName = wxToolBarNameStr
|
||||
);
|
||||
|
||||
|
@ -29,7 +29,7 @@ class WXDLLIMPEXP_CORE wxToolBar: public wxToolBarBase
|
||||
|
||||
inline wxToolBar(wxWindow *parent, wxWindowID id,
|
||||
const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize,
|
||||
long style = wxNO_BORDER|wxTB_HORIZONTAL,
|
||||
long style = wxTB_HORIZONTAL,
|
||||
const wxString& name = wxToolBarNameStr)
|
||||
{
|
||||
Init();
|
||||
@ -38,7 +38,7 @@ class WXDLLIMPEXP_CORE wxToolBar: public wxToolBarBase
|
||||
virtual ~wxToolBar();
|
||||
|
||||
bool Create(wxWindow *parent, wxWindowID id, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize,
|
||||
long style = wxNO_BORDER|wxTB_HORIZONTAL,
|
||||
long style = wxTB_HORIZONTAL,
|
||||
const wxString& name = wxToolBarNameStr);
|
||||
|
||||
virtual void SetWindowStyleFlag(long style);
|
||||
|
@ -609,6 +609,9 @@ public:
|
||||
#endif
|
||||
|
||||
protected:
|
||||
// choose the default border for this window
|
||||
virtual wxBorder GetDefaultBorder() const { return wxBORDER_NONE; }
|
||||
|
||||
// to implement in derived classes
|
||||
// -------------------------------
|
||||
|
||||
|
@ -60,7 +60,9 @@ enum
|
||||
wxTB_BOTTOM = 0x2000,
|
||||
|
||||
// lay out toolbar at the right edge of the window
|
||||
wxTB_RIGHT = 0x4000
|
||||
wxTB_RIGHT = 0x4000,
|
||||
|
||||
wxTB_DEFAULT_STYLE = wxTB_HORIZONTAL | wxTB_FLAT
|
||||
};
|
||||
|
||||
#if wxUSE_TOOLBAR
|
||||
|
@ -274,7 +274,7 @@ public:
|
||||
|
||||
@see CreateStatusBar(), OnCreateToolBar(), SetToolBar(), GetToolBar()
|
||||
*/
|
||||
virtual wxToolBar* CreateToolBar(long style = wxBORDER_NONE | wxTB_HORIZONTAL,
|
||||
virtual wxToolBar* CreateToolBar(long style = wxTB_DEFAULT_STYLE,
|
||||
wxWindowID id = wxID_ANY,
|
||||
const wxString& name = wxToolBarNameStr);
|
||||
|
||||
|
@ -18,12 +18,12 @@ enum wxToolBarToolStyle
|
||||
enum
|
||||
{
|
||||
/** lay out the toolbar horizontally */
|
||||
wxTB_HORIZONTAL,
|
||||
wxTB_TOP,
|
||||
wxTB_HORIZONTAL = wxHORIZONTAL,
|
||||
wxTB_TOP = wxTB_HORIZONTAL,
|
||||
|
||||
/** lay out the toolbar vertically */
|
||||
wxTB_VERTICAL,
|
||||
wxTB_LEFT,
|
||||
wxTB_VERTICAL = wxVERTICAL,
|
||||
wxTB_LEFT = wxTB_VERTICAL,
|
||||
|
||||
/** show 3D buttons (wxToolBarSimple only) */
|
||||
wxTB_3DBUTTONS,
|
||||
@ -48,7 +48,7 @@ enum
|
||||
|
||||
/** show the text and the icons alongside, not vertically stacked (Win32/GTK) */
|
||||
wxTB_HORZ_LAYOUT,
|
||||
wxTB_HORZ_TEXT,
|
||||
wxTB_HORZ_TEXT = wxTB_HORZ_LAYOUT | wxTB_TEXT,
|
||||
|
||||
/** don't show the toolbar short help tooltips */
|
||||
wxTB_NO_TOOLTIPS,
|
||||
@ -57,7 +57,10 @@ enum
|
||||
wxTB_BOTTOM,
|
||||
|
||||
/** lay out toolbar at the right edge of the window */
|
||||
wxTB_RIGHT
|
||||
wxTB_RIGHT,
|
||||
|
||||
/** flags that are closest to the native look*/
|
||||
wxTB_DEFAULT_STYLE = wxTB_HORIZONTAL | wxTB_FLAT
|
||||
};
|
||||
|
||||
|
||||
@ -216,6 +219,9 @@ public:
|
||||
Align the toolbar at the bottom of parent window.
|
||||
@style{wxTB_RIGHT}
|
||||
Align the toolbar at the right side of parent window.
|
||||
@style{wxTB_DEFAULT_STYLE}
|
||||
Combination of @c wxTB_HORIZONTAL and @c wxTB_FLAT. This style is new
|
||||
since wxWidgets 2.9.5.
|
||||
@endStyleTable
|
||||
|
||||
See also @ref overview_windowstyles. Note that the wxMSW native toolbar
|
||||
|
@ -562,7 +562,7 @@ wxToolBar* wxFrameBase::CreateToolBar(long style,
|
||||
// a) this allows us to have different defaults for different
|
||||
// platforms (even if we don't have them right now)
|
||||
// b) we don't need to include wx/toolbar.h in the header then
|
||||
style = wxBORDER_NONE | wxTB_HORIZONTAL | wxTB_FLAT;
|
||||
style = wxTB_DEFAULT_STYLE;
|
||||
}
|
||||
|
||||
SetToolBar(OnCreateToolBar(style, id, name));
|
||||
|
Loading…
Reference in New Issue
Block a user