Resolves: #i125065# handle critical cases in FillStyle/FillProperties...
toolbar combination (cherry picked from commit 0ce4a90e14ddc9067d014405235a36aa959c6ea2) Conflicts: include/svx/fillctrl.hxx svx/source/tbxctrls/fillctrl.cxx Change-Id: I9a1b2490a7e9285559dddd4df7fb20c2216fd450
This commit is contained in:
parent
7b811b689c
commit
0f61a89e51
@ -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
|
|||||||
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;
|
||||||
|
File diff suppressed because it is too large
Load Diff
Loading…
x
Reference in New Issue
Block a user