Kaydet (Commit) 08159967 authored tarafından Andre Fischer's avatar Andre Fischer

122387: Use the right tool box for font color in text sidebar.

üst 6cac4f8a
......@@ -133,6 +133,7 @@ public:
Application GetApplication_DI (void) const;
const ::rtl::OUString& GetContextName (void) const;
Context GetContext (void) const;
bool operator == (const EnumContext aOther);
bool operator != (const EnumContext aOther);
......
......@@ -142,6 +142,14 @@ const ::rtl::OUString& EnumContext::GetContextName (void) const
EnumContext::Context EnumContext::GetContext (void) const
{
return meContext;
}
bool EnumContext::operator== (const EnumContext aOther)
{
return meApplication==aOther.meApplication
......
......@@ -161,9 +161,12 @@ TextPropertyPanel::TextPropertyPanel (
mpToolBoxFontColorBackground(ControlFactory::CreateToolBoxBackground(this)),
mpToolBoxFontColor(ControlFactory::CreateToolBox(
mpToolBoxFontColorBackground.get(),
rContext.GetApplication_DI() == sfx2::sidebar::EnumContext::Application_WriterVariants
? SVX_RES(TB_FONTCOLOR_SW)
: SVX_RES(TB_FONTCOLOR),
SVX_RES(TB_FONTCOLOR),
rxFrame)),
mpToolBoxFontColorBackgroundSW(ControlFactory::CreateToolBoxBackground(this)),
mpToolBoxFontColorSW(ControlFactory::CreateToolBox(
mpToolBoxFontColorBackgroundSW.get(),
SVX_RES(TB_FONTCOLOR_SW),
rxFrame)),
mpToolBoxHighlightBackground(ControlFactory::CreateToolBoxBackground(this)),
mpToolBoxHighlight(ControlFactory::CreateToolBox(
......@@ -199,6 +202,8 @@ TextPropertyPanel::TextPropertyPanel (
Initialize();
FreeResource();
UpdateFontColorToolbox(rContext);
}
......@@ -213,6 +218,7 @@ TextPropertyPanel::~TextPropertyPanel (void)
mpToolBoxIncDec.reset();
mpToolBoxFont.reset();
mpToolBoxFontColor.reset();
mpToolBoxFontColorSW.reset();
mpToolBoxScript.reset();
mpToolBoxScriptSw.reset();
mpToolBoxSpacing.reset();
......@@ -222,6 +228,7 @@ TextPropertyPanel::~TextPropertyPanel (void)
mpToolBoxIncDecBackground.reset();
mpToolBoxFontBackground.reset();
mpToolBoxFontColorBackground.reset();
mpToolBoxFontColorBackgroundSW.reset();
mpToolBoxScriptBackground.reset();
mpToolBoxScriptSwBackground.reset();
mpToolBoxSpacingBackground.reset();
......@@ -297,6 +304,30 @@ void TextPropertyPanel::HandleContextChange (
default:
break;
}
UpdateFontColorToolbox(aContext);
}
void TextPropertyPanel::UpdateFontColorToolbox (
const ::sfx2::sidebar::EnumContext aContext)
{
bool bIsWriterFontColor (false);
if (maContext.GetApplication_DI() == sfx2::sidebar::EnumContext::Application_WriterVariants)
if (maContext.GetContext() != sfx2::sidebar::EnumContext::Context_DrawText)
bIsWriterFontColor = true;
if (bIsWriterFontColor)
{
mpToolBoxFontColor->Hide();
mpToolBoxFontColorSW->Show();
}
else
{
mpToolBoxFontColor->Show();
mpToolBoxFontColorSW->Hide();
}
}
......
......@@ -101,6 +101,8 @@ private:
::boost::scoped_ptr<ToolBox> mpToolBoxSpacing;
::boost::scoped_ptr<Window> mpToolBoxFontColorBackground;
::boost::scoped_ptr<ToolBox> mpToolBoxFontColor;
::boost::scoped_ptr<Window> mpToolBoxFontColorBackgroundSW;
::boost::scoped_ptr<ToolBox> mpToolBoxFontColorSW;
::boost::scoped_ptr<Window> mpToolBoxHighlightBackground;
::boost::scoped_ptr<ToolBox> mpToolBoxHighlight;
::boost::scoped_ptr<ToolboxButtonColorUpdater> mpFontColorUpdater;
......@@ -177,6 +179,13 @@ private:
DECL_LINK(ToolBoxScriptSelectHdl, ToolBox *);
void UpdateItem (const sal_uInt16 nSlotId);
/** Depending on the given context make one of the toolboxes
mpToolBoxFontColor and mpToolBoxFontColorSW visible. Both
occupy the same space.
*/
void UpdateFontColorToolbox (
const ::sfx2::sidebar::EnumContext aContext);
};
} } // end of namespace ::svx::sidebar
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment