[Libreoffice-commits] core.git: Branch 'feature/sidebar' - include/sfx2 sfx2/source svx/source
Andre Fischer
af at apache.org
Fri May 10 13:01:13 PDT 2013
include/sfx2/sidebar/ControllerItem.hxx | 2
sfx2/source/sidebar/ControllerItem.cxx | 10 ++--
svx/source/sidebar/text/TextPropertyPanel.cxx | 63 ++++++++++++++++++--------
svx/source/sidebar/text/TextPropertyPanel.hxx | 1
svx/source/sidebar/text/TextPropertyPanel.src | 16 ++++++
5 files changed, 68 insertions(+), 24 deletions(-)
New commits:
commit 63bb2c7e910c59258074eb42b0c80f3fe93d8f8d
Author: Andre Fischer <af at apache.org>
Date: Fri May 10 08:51:15 2013 +0000
Related: #i122082# Disable controls of text property sidebar...
panel for disabled document parts
(cherry picked from commit ffcc8c326640dfbc6b765cd25875adf9e0ab66ad)
Conflicts:
sfx2/inc/sfx2/sidebar/ControllerItem.hxx
svx/source/sidebar/text/TextPropertyPanel.cxx
Change-Id: I9f38c71c6415f3d255b5607a67a110bca47358b0
Related: #i122082# Remove temporary change
(cherry picked from commit f213ea43fac43326a643f30ff13abd9d77f6aed7)
Change-Id: I157542fd5dbbda17b63900be9a41782ee581309c
diff --git a/include/sfx2/sidebar/ControllerItem.hxx b/include/sfx2/sidebar/ControllerItem.hxx
index 0797e41..f8cb1fe 100644
--- a/include/sfx2/sidebar/ControllerItem.hxx
+++ b/include/sfx2/sidebar/ControllerItem.hxx
@@ -88,7 +88,7 @@ public:
Changes of this state are notified via the
ItemUpdateReceiverInterface::NotifyContextChang() method.
*/
- bool IsEnabled (void) const;
+ bool IsEnabled (const SfxItemState eState) const;
/** Force the controller item to call its NotifyItemUpdate
callback with up-to-date data.
diff --git a/sfx2/source/sidebar/ControllerItem.cxx b/sfx2/source/sidebar/ControllerItem.cxx
index 521a295..5abc109 100644
--- a/sfx2/source/sidebar/ControllerItem.cxx
+++ b/sfx2/source/sidebar/ControllerItem.cxx
@@ -133,15 +133,17 @@ void ControllerItem::StateChanged (
SfxItemState eState,
const SfxPoolItem* pState)
{
- mrItemUpdateReceiver.NotifyItemUpdate(nSID, eState, pState, IsEnabled());
+ mrItemUpdateReceiver.NotifyItemUpdate(nSID, eState, pState, IsEnabled(eState));
}
-bool ControllerItem::IsEnabled (void) const
+bool ControllerItem::IsEnabled (SfxItemState eState) const
{
- if ( ! SvtCommandOptions().HasEntries(SvtCommandOptions::CMDOPTION_DISABLED))
+ if (eState == SFX_ITEM_DISABLED)
+ return false;
+ else if ( ! SvtCommandOptions().HasEntries(SvtCommandOptions::CMDOPTION_DISABLED))
{
// There are no disabled commands.
return true;
@@ -168,7 +170,7 @@ void ControllerItem::RequestUpdate (void)
{
SfxPoolItem* pState = NULL;
const SfxItemState eState (GetBindings().QueryState(GetId(), pState));
- mrItemUpdateReceiver.NotifyItemUpdate(GetId(), eState, pState, IsEnabled());
+ mrItemUpdateReceiver.NotifyItemUpdate(GetId(), eState, pState, IsEnabled(eState));
}
diff --git a/svx/source/sidebar/text/TextPropertyPanel.cxx b/svx/source/sidebar/text/TextPropertyPanel.cxx
index 3a9d605..3a67193 100644
--- a/svx/source/sidebar/text/TextPropertyPanel.cxx
+++ b/svx/source/sidebar/text/TextPropertyPanel.cxx
@@ -68,10 +68,7 @@ namespace svx { namespace sidebar {
#undef HAS_IA2
-#define TEXT_SECTIONPAGE_HEIGHT SECTIONPAGE_MARGIN_VERTICAL_TOP + CBOX_HEIGHT + ( TOOLBOX_ITEM_HEIGHT + 2 ) * 2 + CONTROL_SPACING_VERTICAL * 2 + SECTIONPAGE_MARGIN_VERTICAL_BOT
-
-
- PopupControl* TextPropertyPanel::CreateCharacterSpacingControl (PopupContainer* pParent)
+PopupControl* TextPropertyPanel::CreateCharacterSpacingControl (PopupContainer* pParent)
{
return new TextCharacterSpacingControl(pParent, *this, mpBindings);
}
@@ -335,6 +332,7 @@ void TextPropertyPanel::DataChanged (const DataChangedEvent& rEvent)
+
void TextPropertyPanel::Initialize (void)
{
//<<modify fill font list
@@ -420,11 +418,6 @@ void TextPropertyPanel::Initialize (void)
maFontSizeBox.SetSelectHdl(aLink);
aLink = LINK(this, TextPropertyPanel, FontSizeLoseFocus);
maFontSizeBox.SetLoseFocusHdl(aLink);
-
- Size aSize(PROPERTYPAGE_WIDTH, TEXT_SECTIONPAGE_HEIGHT);
- aSize = LogicToPixel( aSize, MapMode(MAP_APPFONT) );
- aSize.setWidth(GetOutputSizePixel().Width());
- SetSizePixel(aSize);
}
void TextPropertyPanel::EndSpacingPopupMode (void)
@@ -944,16 +937,38 @@ void TextPropertyPanel::NotifyItemUpdate (
{
mpHeightItem = (SvxFontHeightItem*)pState;//const SvxFontHeightItem*
SfxMapUnit eUnit = maFontSizeControl.GetCoreMetric();
- long iValue = (long)CalcToPoint( mpHeightItem->GetHeight(), eUnit, 10 );
+ const sal_Int64 nValue (CalcToPoint(mpHeightItem->GetHeight(), eUnit, 10 ));
mpToolBoxIncDec->Enable();
mpToolBoxIncDec->SetItemState(TBI_INCREASE, STATE_NOCHECK);
mpToolBoxIncDec->SetItemState(TBI_DECREASE, STATE_NOCHECK);
+ // For Writer we have to update the states of the
+ // increase and decrease buttons here, because we have
+ // no access to the slots used by Writer.
+ switch(maContext.GetCombinedContext_DI())
+ {
+ case CombinedEnumContext(Application_DrawImpress, Context_DrawText):
+ case CombinedEnumContext(Application_DrawImpress, Context_Text):
+ case CombinedEnumContext(Application_DrawImpress, Context_Table):
+ case CombinedEnumContext(Application_DrawImpress, Context_OutlineText):
+ case CombinedEnumContext(Application_DrawImpress, Context_Draw):
+ case CombinedEnumContext(Application_DrawImpress, Context_TextObject):
+ case CombinedEnumContext(Application_DrawImpress, Context_Graphic):
+ break;
+
+ default:
+ {
+ mpToolBoxIncDec->EnableItem(TBI_INCREASE, bIsEnabled && nValue<960);
+ mpToolBoxIncDec->EnableItem(TBI_DECREASE, bIsEnabled && nValue>60);
+ break;
+ }
+ }
+
if( mbFocusOnFontSizeCtrl )
return;
- maFontSizeBox.SetValue( iValue );
+ maFontSizeBox.SetValue(nValue);
maFontSizeBox.LoseFocus();
UpdateItem(SID_SHRINK_FONT_SIZE);
@@ -1147,8 +1162,8 @@ void TextPropertyPanel::NotifyItemUpdate (
{
meEscape = SVX_ESCAPEMENT_OFF;
}
- mpToolBoxScriptSw->EnableItem(TBI_SUPER, bIsItemEnabled && bIsEnabled);
- mpToolBoxScriptSw->EnableItem(TBI_SUB, bIsItemEnabled && bIsEnabled);
+ mpToolBoxScriptSw->EnableItem(TBI_SUPER_SW, bIsItemEnabled && bIsEnabled);
+ mpToolBoxScriptSw->EnableItem(TBI_SUB_SW, bIsItemEnabled && bIsEnabled);
break;
}
@@ -1224,17 +1239,27 @@ void TextPropertyPanel::NotifyItemUpdate (
case CombinedEnumContext(Application_DrawImpress, Context_Draw):
case CombinedEnumContext(Application_DrawImpress, Context_TextObject):
case CombinedEnumContext(Application_DrawImpress, Context_Graphic):
+ {
if(eState == SFX_ITEM_DISABLED)
mpToolBoxIncDec->Disable();
else
mpToolBoxIncDec->Enable();
- break;
+ const sal_Int64 nSize (maFontSizeBox.GetValue());
+ switch(nSID)
+ {
+ case SID_GROW_FONT_SIZE:
+ mpToolBoxIncDec->EnableItem(TBI_INCREASE, bIsEnabled && nSize<960);
+ break;
+
+ case SID_SHRINK_FONT_SIZE:
+ mpToolBoxIncDec->EnableItem(TBI_DECREASE, bIsEnabled && nSize>60);
+ break;
+
+ default:
+ break;
+ }
+ }
}
- const sal_Int32 nSize (maFontSizeBox.GetValue());
- if (nSID == SID_GROW_FONT_SIZE)
- mpToolBoxIncDec->EnableItem(TBI_INCREASE, bIsEnabled && nSize<960);
- else
- mpToolBoxIncDec->EnableItem(TBI_DECREASE, bIsEnabled && nSize>60);
break;
}
}
diff --git a/svx/source/sidebar/text/TextPropertyPanel.hxx b/svx/source/sidebar/text/TextPropertyPanel.hxx
index cb097d6..e2f4dac 100644
--- a/svx/source/sidebar/text/TextPropertyPanel.hxx
+++ b/svx/source/sidebar/text/TextPropertyPanel.hxx
@@ -57,6 +57,7 @@ public:
SfxBindings* pBindings);
virtual void DataChanged (const DataChangedEvent& rEvent);
+
::sfx2::sidebar::ControllerItem& GetSpaceController();
long GetSelFontSize();
void SetSpacing(long nKern);
diff --git a/svx/source/sidebar/text/TextPropertyPanel.src b/svx/source/sidebar/text/TextPropertyPanel.src
index d1ca9c3..f4038fe 100644
--- a/svx/source/sidebar/text/TextPropertyPanel.src
+++ b/svx/source/sidebar/text/TextPropertyPanel.src
@@ -60,6 +60,7 @@ Control RID_SIDEBAR_TEXT_PANEL
DropDown = TRUE;
HelpID = HID_COMBO_FONT_NAME ;
QuickHelpText [ en-US ] = "Font";
+// Command = ".uno:CharFontName";
};
MetricBox MB_SBFONT_FONTSIZE
{
@@ -70,6 +71,7 @@ Control RID_SIDEBAR_TEXT_PANEL
DropDown = TRUE;
HelpID = HID_METRIC_FONT_SIZE;
QuickHelpText [ en-US ] = "Font Size";
+// Command = ".uno:FontHeight";
};
ToolBox TB_INCREASE_DECREASE
@@ -86,11 +88,13 @@ Control RID_SIDEBAR_TEXT_PANEL
{
Identifier = TBI_INCREASE;
HelpID = HID_PPROPERTYPANEL_TEXT_TBI_INCREASE;
+ Command = ".uno:Grow";
};
ToolBoxItem
{
Identifier = TBI_DECREASE;
HelpID = HID_PPROPERTYPANEL_TEXT_TBI_DECREASE;
+ Command = ".uno:Shrink";
};
};
};
@@ -108,27 +112,32 @@ Control RID_SIDEBAR_TEXT_PANEL
{
Identifier = TBI_BOLD;
HelpID = HID_PPROPERTYPANEL_TEXT_TBI_BOLD;
+ Command = ".uno:Bold";
};
ToolBoxItem
{
Identifier = TBI_ITALIC;
HelpID = HID_PPROPERTYPANEL_TEXT_TBI_ITALIC;
+ Command = ".uno:Italic";
};
ToolBoxItem
{
Identifier = TBI_UNDERLINE;
DropDown = TRUE ;
HelpID = HID_PPROPERTYPANEL_TEXT_TBI_UNDERLINE;
+ Command = ".uno:Underline";
};
ToolBoxItem
{
Identifier = TBI_STRIKEOUT;
HelpID = HID_PPROPERTYPANEL_TEXT_TBI_STRIKEOUT;
+ Command = ".uno:Strikeout";
};
ToolBoxItem
{
Identifier = TBI_SHADOWED;
HelpID = HID_PPROPERTYPANEL_TEXT_TBI_SHADOWED;
+ Command = ".uno:Shadowed";
};
};
};
@@ -148,6 +157,7 @@ Control RID_SIDEBAR_TEXT_PANEL
Identifier = TBI_FONTCOLOR ;
HelpID = HID_PPROPERTYPANEL_TEXT_TBI_FONT_COLOR;
DropDown = TRUE ;
+ Command = ".uno:Color";
};
};
};
@@ -167,6 +177,7 @@ Control RID_SIDEBAR_TEXT_PANEL
Identifier = TBI_HIGHLIGHT ;
HelpID = HID_PPROPERTYPANEL_TEXT_TBI_HIGHLIGHT_COLOR;
DropDown = TRUE ;
+ Command = ".uno:CharacterBackgroundPattern";
};
};
};
@@ -185,11 +196,13 @@ Control RID_SIDEBAR_TEXT_PANEL
{
Identifier = TBI_SUPER_SW;
HelpID = HID_PPROPERTYPANEL_TEXT_TBI_SUPER_SW;
+ Command = ".uno:SuperScript";
};
ToolBoxItem
{
Identifier = TBI_SUB_SW;
HelpID = HID_PPROPERTYPANEL_TEXT_TBI_SUB_SW;
+ Command = ".uno:SubScript";
};
};
};
@@ -207,11 +220,13 @@ Control RID_SIDEBAR_TEXT_PANEL
{
Identifier = TBI_SUPER;
HelpID = HID_PPROPERTYPANEL_TEXT_TBI_SUPER;
+ Command = ".uno:SuperScript";
};
ToolBoxItem
{
Identifier = TBI_SUB;
HelpID = HID_PPROPERTYPANEL_TEXT_TBI_SUB;
+ Command = ".uno:SubScript";
};
};
};
@@ -231,6 +246,7 @@ Control RID_SIDEBAR_TEXT_PANEL
Identifier = TBI_SPACING;
DropDown = TRUE ;
HelpID = HID_TBI_SPACING;
+ Command = ".uno:Spacing";
};
};
};
More information about the Libreoffice-commits
mailing list