| /************************************************************** |
| * |
| * Licensed to the Apache Software Foundation (ASF) under one |
| * or more contributor license agreements. See the NOTICE file |
| * distributed with this work for additional information |
| * regarding copyright ownership. The ASF licenses this file |
| * to you under the Apache License, Version 2.0 (the |
| * "License"); you may not use this file except in compliance |
| * with the License. You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, |
| * software distributed under the License is distributed on an |
| * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| * KIND, either express or implied. See the License for the |
| * specific language governing permissions and limitations |
| * under the License. |
| * |
| *************************************************************/ |
| |
| |
| #ifndef _CUI_TAB_LINE_HXX |
| #define _CUI_TAB_LINE_HXX |
| |
| // include --------------------------------------------------------------- |
| #include <svx/tabline.hxx> |
| /************************************************************************* |
| |* |
| |* Transform-Tab-Dialog |
| |* |
| \************************************************************************/ |
| |
| class SvxLineTabDialog : public SfxTabDialog |
| { |
| private: |
| SdrModel* pDrawModel; |
| const SdrObject* pObj; |
| |
| const SfxItemSet& rOutAttrs; |
| |
| XColorListSharedPtr maColorTab; |
| XColorListSharedPtr maNewColorTab; |
| XDashListSharedPtr maDashList; |
| XDashListSharedPtr maNewDashList; |
| XLineEndListSharedPtr maLineEndList; |
| XLineEndListSharedPtr maNewLineEndList; |
| sal_Bool bObjSelected; |
| |
| ChangeType nLineEndListState; |
| ChangeType nDashListState; |
| ChangeType mnColorTableState; |
| |
| sal_uInt16 nPageType; |
| sal_uInt16 nDlgType; |
| sal_uInt16 nPosDashLb; |
| sal_uInt16 nPosLineEndLb; |
| sal_uInt16 mnPos; |
| sal_Bool mbAreaTP; |
| |
| virtual void PageCreated( sal_uInt16 nId, SfxTabPage &rPage ); |
| |
| protected: |
| virtual short Ok(); |
| #ifdef _SVX_TABLINE_CXX |
| DECL_LINK( CancelHdlImpl, void * ); |
| void SavePalettes(); |
| #endif |
| |
| public: |
| SvxLineTabDialog( Window* pParent, const SfxItemSet* pAttr, |
| SdrModel* pModel, const SdrObject* pObj = NULL, |
| sal_Bool bHasObj = sal_True ); |
| ~SvxLineTabDialog(); |
| |
| void SetNewDashList( XDashListSharedPtr aInLst) { maNewDashList = aInLst; } |
| XDashListSharedPtr GetNewDashList() const { return maNewDashList; } |
| const XDashListSharedPtr GetDashList() const { return maDashList; } |
| |
| void SetNewLineEndList( XLineEndListSharedPtr aInLst) { maNewLineEndList = aInLst; } |
| XLineEndListSharedPtr GetNewLineEndList() const { return maNewLineEndList; } |
| const XLineEndListSharedPtr GetLineEndList() const { return maLineEndList; } |
| |
| void SetNewColorTable( XColorListSharedPtr aColTab ) { maNewColorTab = aColTab; } |
| XColorListSharedPtr GetNewColorTable() const { return maNewColorTab; } |
| const XColorListSharedPtr GetColorTable() const { return maColorTab; } |
| }; |
| |
| /************************************************************************* |
| |* |
| |* Linien-Tab-Page |
| |* |
| \************************************************************************/ |
| |
| class SvxLineTabPage : public SvxTabPage |
| { |
| using TabPage::ActivatePage; |
| using TabPage::DeactivatePage; |
| private: |
| FixedLine aFlLine; |
| FixedText aFtLineStyle; |
| LineLB aLbLineStyle; |
| FixedText aFtColor; |
| ColorLB aLbColor; |
| FixedText aFtLineWidth; |
| MetricField aMtrLineWidth; |
| FixedText aFtTransparent; |
| MetricField aMtrTransparent; |
| FixedLine aFlLineEnds; |
| LineEndLB aLbStartStyle; |
| MetricField aMtrStartWidth; |
| TriStateBox aTsbCenterStart; |
| FixedText aFtLineEndsStyle; |
| LineEndLB aLbEndStyle; |
| FixedText aFtLineEndsWidth; |
| MetricField aMtrEndWidth; |
| TriStateBox aTsbCenterEnd; |
| CheckBox aCbxSynchronize; |
| FixedLine aFLSeparator; |
| SvxXLinePreview aCtlPreview; |
| |
| // #116827# |
| FixedLine maFLEdgeStyle; |
| FixedText maFTEdgeStyle; |
| LineEndLB maLBEdgeStyle; |
| |
| // LineCaps |
| FixedText maFTCapStyle; |
| LineEndLB maLBCapStyle; |
| |
| //#58425# Symbole auf einer Linie (z.B. StarChart) -> |
| SdrObjList* pSymbolList; //a list of symbols to be shown in menu. Symbol at position SID_ATTR_SYMBOLTYPE is to be shown in preview. The list position is to be used cyclic. |
| bool bNewSize; |
| Graphic aAutoSymbolGraphic; //a graphic to be displayed in the preview in case that an automatic symbol is chosen |
| long nNumMenuGalleryItems; |
| long nSymbolType; |
| SfxItemSet* pSymbolAttr; //attributes for the shown symbols; only necessary if not equal to line properties |
| FixedLine aFlSymbol; |
| MenuButton aSymbolMB; |
| FixedText aSymbolWidthFT; |
| MetricField aSymbolWidthMF; |
| FixedText aSymbolHeightFT; |
| MetricField aSymbolHeightMF; |
| CheckBox aSymbolRatioCB; |
| List aGrfNames; |
| List aGrfBrushItems; |
| String sNumCharFmtName; |
| sal_Bool bLastWidthModified; |
| Size aSymbolLastSize; |
| Graphic aSymbolGraphic; |
| Size aSymbolSize; |
| sal_Bool bSymbols; |
| |
| const SfxItemSet& rOutAttrs; |
| RECT_POINT eRP; |
| sal_Bool bObjSelected; |
| |
| XOutdevItemPool* pXPool; |
| XLineStyleItem aXLStyle; |
| XLineWidthItem aXWidth; |
| XLineDashItem aXDash; |
| XLineColorItem aXColor; |
| XLineAttrSetItem aXLineAttr; |
| SfxItemSet& rXLSet; |
| |
| XColorListSharedPtr maColorTab; |
| XDashListSharedPtr maDashList; |
| XLineEndListSharedPtr maLineEndList; |
| |
| ChangeType* pnLineEndListState; |
| ChangeType* pnDashListState; |
| ChangeType* pnColorTableState; |
| sal_uInt16 nPageType; //add CHINA001 |
| sal_uInt16 nDlgType; //add CHINA001 |
| sal_uInt16* pPosDashLb; |
| sal_uInt16* pPosLineEndLb; |
| |
| SfxMapUnit ePoolUnit; |
| |
| // #63083# |
| sal_Int32 nActLineWidth; |
| |
| //Handler für Gallery-Popup-Menue-Button + Size |
| DECL_LINK( GraphicHdl_Impl, MenuButton * ); |
| DECL_LINK( MenuCreateHdl_Impl, MenuButton * ); |
| DECL_STATIC_LINK( SvxLineTabPage, GraphicArrivedHdl_Impl, SvxBrushItem* ); |
| DECL_LINK( SizeHdl_Impl, MetricField * ); |
| DECL_LINK( RatioHdl_Impl, CheckBox * ); |
| // <- Symbole |
| |
| #ifdef _SVX_TPLINE_CXX |
| DECL_LINK( ClickInvisibleHdl_Impl, void * ); |
| DECL_LINK( ChangeStartHdl_Impl, void * ); |
| DECL_LINK( ChangeEndHdl_Impl, void * ); |
| DECL_LINK( ChangePreviewHdl_Impl, void * ); |
| DECL_LINK( ChangeTransparentHdl_Impl, void * ); |
| |
| // #116827# |
| DECL_LINK( ChangeEdgeStyleHdl_Impl, void * ); |
| |
| // LineCaps |
| DECL_LINK ( ChangeCapStyleHdl_Impl, void * ); |
| |
| sal_Bool FillXLSet_Impl(); |
| #endif |
| |
| void FillListboxes(); |
| public: |
| |
| void ShowSymbolControls(sal_Bool bOn); |
| |
| SvxLineTabPage( Window* pParent, const SfxItemSet& rInAttrs ); |
| virtual ~SvxLineTabPage(); |
| |
| void Construct(); |
| |
| |
| static SfxTabPage* Create( Window*, const SfxItemSet& ); |
| static sal_uInt16* GetRanges(); |
| |
| virtual sal_Bool FillItemSet( SfxItemSet& ); |
| virtual void Reset( const SfxItemSet& ); |
| |
| virtual void ActivatePage( const SfxItemSet& rSet ); |
| virtual int DeactivatePage( SfxItemSet* pSet ); |
| |
| virtual void PointChanged( Window* pWindow, RECT_POINT eRP ); |
| |
| virtual void FillUserData(); |
| |
| void SetColorTable( XColorListSharedPtr aColTab ) { maColorTab = aColTab; } |
| void SetDashList( XDashListSharedPtr aDshLst ) { maDashList = aDshLst; } |
| void SetLineEndList( XLineEndListSharedPtr aLneEndLst) { maLineEndList = aLneEndLst; } |
| void SetObjSelected( sal_Bool bHasObj ) { bObjSelected = bHasObj; } |
| |
| void SetPageType( sal_uInt16 nInType ) { nPageType = nInType; }//CHINA001 void SetPageType( sal_uInt16* pInType ) { pPageType = pInType; } |
| void SetDlgType( sal_uInt16 nInType ) { nDlgType = nInType; } //CHINA001 void SetDlgType( sal_uInt16* pInType ) { pDlgType = pInType; } |
| void SetPosDashLb( sal_uInt16* pInPos ) { pPosDashLb = pInPos; } |
| void SetPosLineEndLb( sal_uInt16* pInPos ) { pPosLineEndLb = pInPos; } |
| |
| void SetLineEndChgd( ChangeType* pIn ) { pnLineEndListState = pIn; } |
| void SetDashChgd( ChangeType* pIn ) { pnDashListState = pIn; } |
| void SetColorChgd( ChangeType* pIn ) { pnColorTableState = pIn; } |
| |
| virtual void PageCreated (SfxAllItemSet aSet); //add CHINA001 |
| virtual void DataChanged( const DataChangedEvent& rDCEvt ); |
| }; |
| |
| /************************************************************************* |
| |* |
| |* Linien-Definitions-Tab-Page |
| |* |
| \************************************************************************/ |
| |
| class SvxLineDefTabPage : public SfxTabPage |
| { |
| using TabPage::ActivatePage; |
| using TabPage::DeactivatePage; |
| private: |
| FixedLine aFlDefinition; |
| FixedText aFTLinestyle; |
| LineLB aLbLineStyles; |
| FixedText aFtType; |
| ListBox aLbType1; |
| ListBox aLbType2; |
| FixedText aFtNumber; |
| NumericField aNumFldNumber1; |
| NumericField aNumFldNumber2; |
| FixedText aFtLength; |
| MetricField aMtrLength1; |
| MetricField aMtrLength2; |
| FixedText aFtDistance; |
| MetricField aMtrDistance; |
| CheckBox aCbxSynchronize; |
| PushButton aBtnAdd; |
| PushButton aBtnModify; |
| PushButton aBtnDelete; |
| ImageButton aBtnLoad; |
| ImageButton aBtnSave; |
| SvxXLinePreview aCtlPreview; |
| |
| const SfxItemSet& rOutAttrs; |
| XDash aDash; |
| sal_Bool bObjSelected; |
| |
| XOutdevItemPool* pXPool; |
| XLineStyleItem aXLStyle; |
| XLineWidthItem aXWidth; |
| XLineDashItem aXDash; |
| XLineColorItem aXColor; |
| XLineAttrSetItem aXLineAttr; |
| SfxItemSet& rXLSet; |
| |
| XDashListSharedPtr maDashList; |
| |
| ChangeType* pnDashListState; |
| sal_uInt16* pPageType; |
| sal_uInt16* pDlgType; |
| sal_uInt16* pPosDashLb; |
| |
| SfxMapUnit ePoolUnit; |
| FieldUnit eFUnit; |
| |
| #ifdef _SVX_TPLNEDEF_CXX |
| void FillDash_Impl(); |
| void FillDialog_Impl(); |
| |
| DECL_LINK( ClickAddHdl_Impl, void * ); |
| DECL_LINK( ClickModifyHdl_Impl, void * ); |
| DECL_LINK( ClickDeleteHdl_Impl, void * ); |
| DECL_LINK( SelectLinestyleHdl_Impl, void * ); |
| DECL_LINK( ChangePreviewHdl_Impl, void * ); |
| DECL_LINK( ChangeNumber1Hdl_Impl, void * ); |
| DECL_LINK( ChangeNumber2Hdl_Impl, void * ); |
| DECL_LINK( ClickLoadHdl_Impl, void * ); |
| DECL_LINK( ClickSaveHdl_Impl, void * ); |
| DECL_LINK( ChangeMetricHdl_Impl, void * ); |
| DECL_LINK( SelectTypeHdl_Impl, void * ); |
| |
| void CheckChanges_Impl(); |
| #endif |
| |
| public: |
| SvxLineDefTabPage( Window* pParent, const SfxItemSet& rInAttrs ); |
| |
| void Construct(); |
| |
| static SfxTabPage* Create( Window*, const SfxItemSet& ); |
| virtual sal_Bool FillItemSet( SfxItemSet& ); |
| virtual void Reset( const SfxItemSet & ); |
| |
| virtual void ActivatePage( const SfxItemSet& rSet ); |
| virtual int DeactivatePage( SfxItemSet* pSet ); |
| |
| void SetDashList( XDashListSharedPtr aDshLst ) { maDashList = aDshLst; } |
| void SetObjSelected( sal_Bool bHasObj ) { bObjSelected = bHasObj; } |
| |
| void SetPageType( sal_uInt16* pInType ) { pPageType = pInType; } |
| void SetDlgType( sal_uInt16* pInType ) { pDlgType = pInType; } |
| void SetPosDashLb( sal_uInt16* pInPos ) { pPosDashLb = pInPos; } |
| |
| void SetDashChgd( ChangeType* pIn ) { pnDashListState = pIn; } |
| |
| virtual void DataChanged( const DataChangedEvent& rDCEvt ); |
| }; |
| |
| /************************************************************************* |
| |* |
| |* Linienenden-Definitions-Tab-Page |
| |* |
| \************************************************************************/ |
| |
| class SvxLineEndDefTabPage : public SfxTabPage |
| { |
| using TabPage::ActivatePage; |
| using TabPage::DeactivatePage; |
| |
| private: |
| FixedLine aFlTip; |
| FixedText aFTTitle; |
| Edit aEdtName; |
| FixedText aFTLineEndStyle; |
| LineEndLB aLbLineEnds; |
| PushButton aBtnAdd; |
| PushButton aBtnModify; |
| PushButton aBtnDelete; |
| ImageButton aBtnLoad; |
| ImageButton aBtnSave; |
| FixedInfo aFiTip; |
| SvxXLinePreview aCtlPreview; |
| |
| const SfxItemSet& rOutAttrs; |
| const SdrObject* pPolyObj; |
| sal_Bool bObjSelected; |
| |
| XOutdevItemPool* pXPool; |
| XLineStyleItem aXLStyle; |
| XLineWidthItem aXWidth; |
| XLineColorItem aXColor; |
| XLineAttrSetItem aXLineAttr; |
| SfxItemSet& rXLSet; |
| |
| XLineEndListSharedPtr maLineEndList; |
| |
| ChangeType* pnLineEndListState; |
| sal_uInt16* pPageType; |
| sal_uInt16* pDlgType; |
| sal_uInt16* pPosLineEndLb; |
| |
| #ifdef _SVX_TPLNEEND_CXX |
| DECL_LINK( ClickAddHdl_Impl, void * ); |
| DECL_LINK( ClickModifyHdl_Impl, void * ); |
| DECL_LINK( ClickDeleteHdl_Impl, void * ); |
| DECL_LINK( ClickLoadHdl_Impl, void * ); |
| DECL_LINK( ClickSaveHdl_Impl, void * ); |
| DECL_LINK( SelectLineEndHdl_Impl, void * ); |
| long ChangePreviewHdl_Impl( void* p ); |
| |
| void CheckChanges_Impl(); |
| #endif |
| |
| public: |
| SvxLineEndDefTabPage( Window* pParent, const SfxItemSet& rInAttrs ); |
| ~SvxLineEndDefTabPage(); |
| |
| void Construct(); |
| |
| static SfxTabPage* Create( Window*, const SfxItemSet& ); |
| virtual sal_Bool FillItemSet( SfxItemSet& ); |
| virtual void Reset( const SfxItemSet & ); |
| |
| virtual void ActivatePage( const SfxItemSet& rSet ); |
| virtual int DeactivatePage( SfxItemSet* pSet ); |
| |
| void SetLineEndList( XLineEndListSharedPtr aInList ) { maLineEndList = aInList; } |
| void SetPolyObj( const SdrObject* pObj ) { pPolyObj = pObj; } |
| void SetObjSelected( sal_Bool bHasObj ) { bObjSelected = bHasObj; } |
| |
| void SetPageType( sal_uInt16* pInType ) { pPageType = pInType; } |
| void SetDlgType( sal_uInt16* pInType ) { pDlgType = pInType; } |
| void SetPosLineEndLb( sal_uInt16* pInPos ) { pPosLineEndLb = pInPos; } |
| |
| void SetLineEndChgd( ChangeType* pIn ) { pnLineEndListState = pIn; } |
| |
| virtual void DataChanged( const DataChangedEvent& rDCEvt ); |
| }; |
| |
| |
| #endif // _CUI_TAB_LINE_HXX |
| |