Added wxSTOCK_FOR_BUTTON flag for wxGetStockLabel().
This allows to retrieve labels appropriate for the buttons and not menu items which currently means without trailing ellipsis. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61526 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
parent
34a9a0244b
commit
e94ee7915b
@ -33,7 +33,11 @@ enum wxStockLabelQueryFlag
|
||||
wxSTOCK_NOFLAGS = 0,
|
||||
|
||||
wxSTOCK_WITH_MNEMONIC = 1,
|
||||
wxSTOCK_WITH_ACCELERATOR = 2
|
||||
wxSTOCK_WITH_ACCELERATOR = 2,
|
||||
|
||||
// return label for button, not menu item: notice that this always included
|
||||
// wxSTOCK_WITH_MNEMONIC as buttons should use mnemonics
|
||||
wxSTOCK_FOR_BUTTON = 5
|
||||
};
|
||||
|
||||
// Returns label that should be used for given stock UI element (e.g. "&OK"
|
||||
|
@ -34,7 +34,19 @@ enum wxStockLabelQueryFlag
|
||||
E.g. "Print...\tCtrl-P". This can be combined with
|
||||
wxSTOCK_WITH_MNEMONIC to get "&Print...\tCtrl-P".
|
||||
*/
|
||||
wxSTOCK_WITH_ACCELERATOR = 2
|
||||
wxSTOCK_WITH_ACCELERATOR = 2,
|
||||
|
||||
/**
|
||||
Return the label appropriate for a button and not a menu item.
|
||||
|
||||
Currently the main difference is that the trailing ellipsis used in
|
||||
some stock labels is never included in the returned label. Also, the
|
||||
mnemonics is included if this flag is used. So the returned value for
|
||||
wxID_PRINT when this flag is used is "&Print".
|
||||
|
||||
This flag can't be combined with wxSTOCK_WITH_ACCELERATOR.
|
||||
*/
|
||||
wxSTOCK_FOR_BUTTON = 5
|
||||
};
|
||||
|
||||
/** @addtogroup group_funcmacro_misc */
|
||||
|
@ -205,6 +205,18 @@ wxString wxGetStockLabel(wxWindowID id, long flags)
|
||||
|
||||
#undef STOCKITEM
|
||||
|
||||
// we assume that buttons use the same labels as menu items but unlike them
|
||||
// they should never use ellipsis
|
||||
if ( flags & wxSTOCK_FOR_BUTTON )
|
||||
{
|
||||
wxString baseLabel;
|
||||
if ( stockLabel.EndsWith("...", &baseLabel) )
|
||||
stockLabel = baseLabel;
|
||||
|
||||
wxASSERT_MSG( !(flags & wxSTOCK_WITH_ACCELERATOR),
|
||||
"button labels never use accelerators" );
|
||||
}
|
||||
|
||||
if ( !(flags & wxSTOCK_WITH_MNEMONIC) )
|
||||
{
|
||||
stockLabel = wxStripMenuCodes(stockLabel);
|
||||
|
Loading…
Reference in New Issue
Block a user