From 53ee60908a7b7dcd6d5e6bd4fa3cf606b60ea20c Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 6 May 2006 16:16:25 +0000 Subject: [PATCH] added wxTextAttr::Merge (modified patch 1482719) git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@39066 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- docs/changes.txt | 1 + docs/latex/wx/text.tex | 14 ++++++++++++++ include/wx/textctrl.h | 16 ++++++++++++++++ 3 files changed, 31 insertions(+) diff --git a/docs/changes.txt b/docs/changes.txt index 41e4a7668b..2fca925a3a 100644 --- a/docs/changes.txt +++ b/docs/changes.txt @@ -131,6 +131,7 @@ All (GUI): - Added an easier to use wxMenu::AppendSubMenu() - wxString <-> wxColour conversions in wxColour class (Francesco Montorsi). - Fixed bug with ignoring blank lines in multiline wxGrid cell labels +- Added wxTextAttr::Merge() (Marcin Simonides) wxMSW: diff --git a/docs/latex/wx/text.tex b/docs/latex/wx/text.tex index c95afcff68..e93b8103e3 100644 --- a/docs/latex/wx/text.tex +++ b/docs/latex/wx/text.tex @@ -197,6 +197,20 @@ Returns a bitlist indicating which attributes will be set. Returns {\tt true} if this style specifies any non-default attributes. +\membersection{wxTextAttr::Merge}\label{wxtextattrmerge} + +\func{void}{Merge}{\param{const wxTextAttr\&}{ overlay}} + +Copies all defined/valid properties from \arg{overlay} to current object. + +\func{static wxTextAttr}{Merge}{\param{const wxTextAttr\&}{ base}, \param{const wxTextAttr\&}{ overlay}} + +Creates a new {\tt wxTextAttr} which is a merge of \arg{base} and +\arg{overlay}. Properties defined in \arg{overlay} take precedence over those +in \arg{base}. Properties undefined/invalid in both are undefined in the +result. + + \membersection{wxTextAttr::SetAlignment}\label{wxtextattrsetalignment} \func{void}{SetAlignment}{\param{wxTextAttrAlignment}{ alignment}} diff --git a/include/wx/textctrl.h b/include/wx/textctrl.h index 03223d6957..5a0d79ce65 100644 --- a/include/wx/textctrl.h +++ b/include/wx/textctrl.h @@ -197,6 +197,22 @@ public: // operations void Init(); + // merges the attributes of the base and the overlay objects and returns + // the result; the parameter attributes take precedence + // + // WARNING: the order of arguments is the opposite of Combine() + static wxTextAttr Merge(const wxTextAttr& base, const wxTextAttr& overlay) + { + return Combine(overlay, base, NULL); + } + + // merges the attributes of this object and overlay + void Merge(const wxTextAttr& overlay) + { + *this = Merge(*this, overlay); + } + + // operators void operator= (const wxTextAttr& attr); -- 2.45.2