Kaydet (Commit) 0f61a89e authored tarafından Armin Le Grand's avatar Armin Le Grand Kaydeden (comit) Caolán McNamara

Resolves: #i125065# handle critical cases in FillStyle/FillProperties...

toolbar combination
(cherry picked from commit 0ce4a90e)

Conflicts:
	include/svx/fillctrl.hxx
	svx/source/tbxctrls/fillctrl.cxx

Change-Id: I9a1b2490a7e9285559dddd4df7fb20c2216fd450
üst 7b811b68
...@@ -40,32 +40,33 @@ class ListBox; ...@@ -40,32 +40,33 @@ class ListBox;
|* |*
\************************************************************************/ \************************************************************************/
class SVX_DLLPUBLIC SvxFillToolBoxControl: public SfxToolBoxControl class SVX_DLLPUBLIC SvxFillToolBoxControl : public SfxToolBoxControl
{ {
private: private:
XFillStyleItem* pStyleItem; XFillStyleItem* mpStyleItem;
XFillColorItem* pColorItem; XFillColorItem* mpColorItem;
XFillGradientItem* pGradientItem; XFillGradientItem* mpGradientItem;
XFillHatchItem* pHatchItem; XFillHatchItem* mpHatchItem;
XFillBitmapItem* pBitmapItem; XFillBitmapItem* mpBitmapItem;
FillControl* pFillControl; FillControl* mpFillControl;
SvxFillTypeBox* pFillTypeLB; SvxFillTypeBox* mpFillTypeLB;
SvxFillAttrBox* pFillAttrLB; SvxFillAttrBox* mpFillAttrLB;
bool bUpdate; XFillStyle meLastXFS;
sal_uInt16 eLastXFS;
/// bitfield
bool mbUpdate:1;
public: public:
SFX_DECL_TOOLBOX_CONTROL(); SFX_DECL_TOOLBOX_CONTROL();
SvxFillToolBoxControl( sal_uInt16 nSlotId, sal_uInt16 nId, ToolBox& rTbx ); SvxFillToolBoxControl(sal_uInt16 nSlotId, sal_uInt16 nId, ToolBox& rTbx);
virtual ~SvxFillToolBoxControl(); virtual ~SvxFillToolBoxControl();
virtual void StateChanged( sal_uInt16 nSID, SfxItemState eState, virtual void StateChanged(sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState) SAL_OVERRIDE;
const SfxPoolItem* pState ) SAL_OVERRIDE; void Update(const SfxPoolItem* pState);
void Update( const SfxPoolItem* pState ); virtual Window* CreateItemWindow(Window* pParent) SAL_OVERRIDE;
virtual Window* CreateItemWindow( Window *pParent ) SAL_OVERRIDE;
}; };
...@@ -75,18 +76,29 @@ class FillControl : public Window ...@@ -75,18 +76,29 @@ class FillControl : public Window
private: private:
friend class SvxFillToolBoxControl; friend class SvxFillToolBoxControl;
SvxFillTypeBox* pLbFillType; SvxFillTypeBox* mpLbFillType;
SvxFillAttrBox* pLbFillAttr; SvxFillAttrBox* mpLbFillAttr;
Size aLogicalFillSize; Size maLogicalFillSize;
Size aLogicalAttrSize; Size maLogicalAttrSize;
Timer aDelayTimer;
//
sal_uInt16 mnLastFillTypeControlSelectEntryPos;
sal_uInt16 mnLastFillAttrControlSelectEntryPos;
/// bitfield
bool mbFillTypeChanged : 1;
DECL_LINK(SelectFillTypeHdl,ListBox *);
DECL_LINK(SelectFillAttrHdl,ListBox *);
virtual void DataChanged(const DataChangedEvent& rDCEvt) SAL_OVERRIDE;
void InitializeFillStyleAccordingToGivenFillType(XFillStyle eFillStyle);
void updateLastFillTypeControlSelectEntryPos();
void updateLastFillAttrControlSelectEntryPos();
DECL_LINK( DelayHdl, void * );
DECL_LINK( SelectFillTypeHdl, ListBox * );
DECL_LINK( SelectFillAttrHdl, ListBox * );
virtual void DataChanged( const DataChangedEvent& rDCEvt ) SAL_OVERRIDE;
public: public:
FillControl( Window* pParent, WinBits nStyle = 0 ); FillControl(Window* pParent, WinBits nStyle = 0);
virtual ~FillControl(); virtual ~FillControl();
virtual void Resize() SAL_OVERRIDE; virtual void Resize() SAL_OVERRIDE;
......
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