diff options
author | Olivier Hallot <olivier.hallot@edx.srv.br> | 2013-05-01 20:47:34 -0300 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2013-05-13 15:45:34 +0100 |
commit | 70af05cf740d3b4639f110489dc0e9e1e7571931 (patch) | |
tree | 34d96c6d0d473c1ef598974b6495cc7f7ff3e414 /sc | |
parent | dd5b15ebd868e21b4c948ccb7978136a91a7992c (diff) |
Convert Calc page header/footer content to Widget UI
Change-Id: I26465f69a7fa50fa58643c00225376a82ba8a7fc
Diffstat (limited to 'sc')
-rw-r--r-- | sc/UIConfig_scalc.mk | 3 | ||||
-rw-r--r-- | sc/inc/globstr.hrc | 14 | ||||
-rw-r--r-- | sc/inc/helpids.h | 6 | ||||
-rw-r--r-- | sc/inc/sc.hrc | 2 | ||||
-rw-r--r-- | sc/source/ui/inc/hfedtdlg.hxx | 2 | ||||
-rw-r--r-- | sc/source/ui/inc/popmenu.hxx | 2 | ||||
-rw-r--r-- | sc/source/ui/inc/scuitphfedit.hxx | 58 | ||||
-rw-r--r-- | sc/source/ui/inc/tphfedit.hxx | 5 | ||||
-rw-r--r-- | sc/source/ui/pagedlg/hfedtdlg.cxx | 2 | ||||
-rw-r--r-- | sc/source/ui/pagedlg/hfedtdlg.hrc | 16 | ||||
-rw-r--r-- | sc/source/ui/pagedlg/hfedtdlg.src | 190 | ||||
-rw-r--r-- | sc/source/ui/pagedlg/scuitphfedit.cxx | 587 | ||||
-rw-r--r-- | sc/source/ui/pagedlg/tphfedit.cxx | 68 | ||||
-rw-r--r-- | sc/source/ui/src/globstr.src | 66 | ||||
-rw-r--r-- | sc/uiconfig/scalc/ui/headerfootercontent.ui | 536 |
15 files changed, 964 insertions, 593 deletions
diff --git a/sc/UIConfig_scalc.mk b/sc/UIConfig_scalc.mk index 48a8da0915bc..b9ecfbbc0217 100644 --- a/sc/UIConfig_scalc.mk +++ b/sc/UIConfig_scalc.mk @@ -68,11 +68,12 @@ $(eval $(call gb_UIConfig_add_uifiles,modules/scalc,\ sc/uiconfig/scalc/ui/externaldata \ sc/uiconfig/scalc/ui/formatcellsdialog \ sc/uiconfig/scalc/ui/goalseekdlg \ + sc/uiconfig/scalc/ui/headerfootercontent \ sc/uiconfig/scalc/ui/insertname \ sc/uiconfig/scalc/ui/insertsheet \ sc/uiconfig/scalc/ui/managenamesdialog \ sc/uiconfig/scalc/ui/printeroptions \ - sc/uiconfig/scalc/ui/protectsheetdlg \ + sc/uiconfig/scalc/ui/protectsheetdlg \ sc/uiconfig/scalc/ui/sheetprintpage \ sc/uiconfig/scalc/ui/selectrange \ sc/uiconfig/scalc/ui/selectsource \ diff --git a/sc/inc/globstr.hrc b/sc/inc/globstr.hrc index 24727b798472..ae9629fafaa7 100644 --- a/sc/inc/globstr.hrc +++ b/sc/inc/globstr.hrc @@ -509,13 +509,13 @@ #define STR_CHANGED_MOVE_REJECTION_WARNING 402 #define STR_CHANGED_DELETE_REJECTION_WARNING 403 -#define STR_HF_NONE_IN_BRACKETS 404 -#define STR_HF_OF 405 -#define STR_HF_OF_QUESTION 406 -#define STR_HF_CREATED_BY 407 -#define STR_HF_CONFIDENTIAL 408 -#define STR_HF_CUSTOMIZED 409 -#define STR_HF_CUSTOM_FOOTER 410 +// #define STR_HF_NONE_IN_BRACKETS 404 +// #define STR_HF_OF 405 +// #define STR_HF_OF_QUESTION 406 +// #define STR_HF_CREATED_BY 407 +// #define STR_HF_CONFIDENTIAL 408 +// #define STR_HF_CUSTOMIZED 409 +//#define STR_HF_CUSTOM_FOOTER 410 #define STR_ERR_DATAPILOT_INPUT 411 diff --git a/sc/inc/helpids.h b/sc/inc/helpids.h index ef6e8496c6bd..8300e45086c5 100644 --- a/sc/inc/helpids.h +++ b/sc/inc/helpids.h @@ -142,12 +142,6 @@ #define HID_SCPAGE_OPREDLINE "SC_HID_SCPAGE_OPREDLINE" #define HID_SC_REDLIN_CTR "SC_HID_SC_REDLIN_CTR" -//Kopf/FusszeilenDlg: Contextmenue fuer Dateiname -#define HID_FCOMMAND_TITEL "SC_HID_FCOMMAND_TITEL" -#define HID_FCOMMAND_FILENAME "SC_HID_FCOMMAND_FILENAME" -#define HID_FCOMMAND_PATH "SC_HID_FCOMMAND_PATH" - - // Hilfe IDs fuer Objekt- und Werkzeugleisten (max.10) ----------------------- #define HID_SC_TOOLBOX_TOOLS "SC_HID_SC_TOOLBOX_TOOLS" diff --git a/sc/inc/sc.hrc b/sc/inc/sc.hrc index 1832839f3a1d..efa6f55088e0 100644 --- a/sc/inc/sc.hrc +++ b/sc/inc/sc.hrc @@ -979,7 +979,7 @@ #define RID_SCPAGE_AREAS (SC_DIALOGS_START + 44) #define RID_SCDLG_STYLES_PAR (SC_DIALOGS_START + 46) #define RID_SCDLG_STYLES_PAGE (SC_DIALOGS_START + 48) -#define RID_HFBASE (SC_DIALOGS_START + 49) + #define RID_SCDLG_HFEDIT (SC_DIALOGS_START + 50) #define RID_SCDLG_HFEDIT_ALL (SC_DIALOGS_START + 51) #define RID_SCDLG_HFED_HEADER (SC_DIALOGS_START + 52) diff --git a/sc/source/ui/inc/hfedtdlg.hxx b/sc/source/ui/inc/hfedtdlg.hxx index 967411899c45..56a50a9e3602 100644 --- a/sc/source/ui/inc/hfedtdlg.hxx +++ b/sc/source/ui/inc/hfedtdlg.hxx @@ -37,7 +37,7 @@ public: Window* pParent, const SfxItemSet& rCoreSet, const String& rPageStyle, - sal_uInt16 nResId = RID_SCDLG_HFEDIT ); + sal_uInt16 nResId = RID_SCDLG_HFEDIT ); ~ScHFEditDlg(); diff --git a/sc/source/ui/inc/popmenu.hxx b/sc/source/ui/inc/popmenu.hxx index e3c10b3d77b7..70bfeedb228a 100644 --- a/sc/source/ui/inc/popmenu.hxx +++ b/sc/source/ui/inc/popmenu.hxx @@ -32,7 +32,9 @@ protected: virtual void Select(); public: ScPopupMenu() : nSel(0),bHit(false) {} + ScPopupMenu(const ResId& rRes) : PopupMenu(rRes),nSel(0),bHit(false) {} + sal_uInt16 GetSelected() const { return nSel; } sal_Bool WasHit() const { return bHit; } }; diff --git a/sc/source/ui/inc/scuitphfedit.hxx b/sc/source/ui/inc/scuitphfedit.hxx index b95a3a0b6024..0c3a0d8080d9 100644 --- a/sc/source/ui/inc/scuitphfedit.hxx +++ b/sc/source/ui/inc/scuitphfedit.hxx @@ -21,6 +21,7 @@ #define SCUI_TPHFEDIT_HXX #include "tphfedit.hxx" +//#include <boost/graph/graph_concepts.hpp> //=================================================================== enum ScHFEntryId @@ -47,41 +48,46 @@ class ScHFEditPage : public SfxTabPage { public: virtual sal_Bool FillItemSet ( SfxItemSet& rCoreSet ); - virtual void Reset ( const SfxItemSet& rCoreSet ); + virtual void Reset ( const SfxItemSet& rCoreSet ); void SetNumType(SvxNumType eNumType); void ClearTextAreas(); protected: ScHFEditPage( Window* pParent, - sal_uInt16 nResId, const SfxItemSet& rCoreSet, - sal_uInt16 nWhich, bool bHeader ); + sal_uInt16 nWhich, + bool bHeader ); virtual ~ScHFEditPage(); private: - FixedText aFtLeft; - ScEditWindow aWndLeft; - FixedText aFtCenter; - ScEditWindow aWndCenter; - FixedText aFtRight; - ScEditWindow aWndRight; - FixedText maFtDefinedHF; - ListBox maLbDefined; - FixedText maFtCustomHF; - ImageButton aBtnText; - ScExtIButton aBtnFile; - ImageButton aBtnTable; - ImageButton aBtnPage; - ImageButton aBtnLastPage; - ImageButton aBtnDate; - ImageButton aBtnTime; - FixedLine aFlInfo; - FixedInfo aFtInfo; - ScPopupMenu aPopUpFile; - - sal_uInt16 nWhich; - String aCmdArr[6]; + //FixedText aFtLeft; + ScEditWindow* m_pWndLeft; + //FixedText aFtCenter; + ScEditWindow* m_pWndCenter; + //FixedText aFtRight; + ScEditWindow* m_pWndRight; + FixedText* m_pFtDefinedHF; + ListBox* m_pLbDefined; + FixedText* m_pFtCustomHF; + PushButton* m_pBtnText; + ScExtIButton* m_pBtnFile; + PushButton* m_pBtnTable; + PushButton* m_pBtnPage; + PushButton* m_pBtnLastPage; + PushButton* m_pBtnDate; + PushButton* m_pBtnTime; + + FixedText* m_pFtConfidential; + FixedText* m_pFtPage; + FixedText* m_pFtOfQuestion; + FixedText* m_pFtOf; + FixedText* m_pFtNone; + FixedText* m_pFtCreatedBy; + FixedText* m_pFtCustomized; + + sal_uInt16 nWhich; + OUString aCmdArr[6]; private: #ifdef _TPHFEDIT_CXX @@ -95,7 +101,7 @@ private: bool IsDateEntry(EditTextObject* pTextObj); bool IsExtFileNameEntry(EditTextObject* pTextObj); DECL_LINK( ListHdl_Impl, ListBox* ); - DECL_LINK( ClickHdl, ImageButton* ); + DECL_LINK( ClickHdl, PushButton* ); DECL_LINK( MenuHdl, ScExtIButton* ); #endif }; diff --git a/sc/source/ui/inc/tphfedit.hxx b/sc/source/ui/inc/tphfedit.hxx index f3d5e3307e6c..5a0c899a1b87 100644 --- a/sc/source/ui/inc/tphfedit.hxx +++ b/sc/source/ui/inc/tphfedit.hxx @@ -56,6 +56,7 @@ class SC_DLLPUBLIC ScEditWindow : public Control { public: ScEditWindow( Window* pParent, const ResId& rResId, ScEditWindowLocation eLoc ); + ScEditWindow( Window* pParent, WinBits nBits , ScEditWindowLocation eLoc ); ~ScEditWindow(); using Control::SetFont; @@ -72,6 +73,8 @@ public: virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > CreateAccessible(); inline ScHeaderEditEngine* GetEditEngine() const {return pEdEngine;} + + void SetLocation(ScEditWindowLocation eLoc) { eLocation = eLoc; } protected: virtual void Paint( const Rectangle& rRect ); virtual void MouseMove( const MouseEvent& rMEvt ); @@ -81,6 +84,7 @@ protected: virtual void Command( const CommandEvent& rCEvt ); virtual void GetFocus(); virtual void LoseFocus(); + virtual void Resize(); private: ScHeaderEditEngine* pEdEngine; @@ -116,6 +120,7 @@ protected: public: ScExtIButton(Window* pParent, const ResId& rResId ); + ScExtIButton(Window* pParent, WinBits nBits ); void SetPopupMenu(PopupMenu* pPopUp); diff --git a/sc/source/ui/pagedlg/hfedtdlg.cxx b/sc/source/ui/pagedlg/hfedtdlg.cxx index 61096a63e84e..a74e267f5239 100644 --- a/sc/source/ui/pagedlg/hfedtdlg.cxx +++ b/sc/source/ui/pagedlg/hfedtdlg.cxx @@ -54,7 +54,7 @@ ScHFEditDlg::ScHFEditDlg( SfxViewFrame* pFrameP, Window* pParent, const SfxItemSet& rCoreSet, const String& rPageStyle, - sal_uInt16 nResIdP ) + sal_uInt16 nResIdP ) : SfxTabDialog( pFrameP, pParent, ScResId( nResIdP ), &rCoreSet ) { eNumType = ((const SvxPageItem&)rCoreSet.Get(ATTR_PAGE)).GetNumType(); diff --git a/sc/source/ui/pagedlg/hfedtdlg.hrc b/sc/source/ui/pagedlg/hfedtdlg.hrc index 0193049ac87e..ff785356141b 100644 --- a/sc/source/ui/pagedlg/hfedtdlg.hrc +++ b/sc/source/ui/pagedlg/hfedtdlg.hrc @@ -19,25 +19,9 @@ #include "sc.hrc" -#define FT_LEFT 1 -#define FT_CENTER 2 -#define FT_RIGHT 3 -#define FT_INFO 4 #define WND_LEFT 1 #define WND_CENTER 2 #define WND_RIGHT 3 -#define BTN_TEXT 1 -#define BTN_PAGE 2 -#define BTN_PAGES 3 -#define BTN_DATE 4 -#define BTN_TIME 5 -#define BTN_FILE 6 -#define BTN_TABLE 7 - -#define RID_POPUP_FCOMMAND 10 -#define FILE_COMMAND_TITEL 11 -#define FILE_COMMAND_FILENAME 12 -#define FILE_COMMAND_PATH 13 #define FL_INFO 14 diff --git a/sc/source/ui/pagedlg/hfedtdlg.src b/sc/source/ui/pagedlg/hfedtdlg.src index ef84d424ba91..489a1386f915 100644 --- a/sc/source/ui/pagedlg/hfedtdlg.src +++ b/sc/source/ui/pagedlg/hfedtdlg.src @@ -429,190 +429,8 @@ TabDialog RID_SCDLG_HFEDIT_LEFTFOOTER }; }; - //------------------------------------------------------------------------ - // ScTpHFEdit - //------------------------------------------------------------------------ -TabPage RID_HFBASE -{ - Hide = TRUE ; - HelpId = HID_SCPAGE_HFEDIT ; - Pos = MAP_APPFONT ( 0 , 0 ) ; - Size = MAP_APPFONT ( TP_WIDTH , TP_HEIGHT ) ; - FixedText FT_LEFT - { - Pos = MAP_APPFONT ( 6 , 6 ) ; - Size = MAP_APPFONT ( 75 , 10 ) ; - Text [ en-US ] = "~Left area" ; - }; - FixedText FT_CENTER - { - Pos = MAP_APPFONT ( 90 , 6 ) ; - Size = MAP_APPFONT ( 75 , 10 ) ; - Text [ en-US ] = "~Center area" ; - }; - FixedText FT_RIGHT - { - Pos = MAP_APPFONT ( 174 , 6 ) ; - Size = MAP_APPFONT ( 75 , 10 ) ; - Text [ en-US ] = "R~ight area" ; - }; - FixedText FT_HF_DEFINED - { - Pos = MAP_APPFONT ( 12 , 102 ) ; - Size = MAP_APPFONT ( 76 , 10 ) ; - Text [ en-US ] = "Hea~der" ; - }; - - FixedText FT_HF_CUSTOM - { - Pos = MAP_APPFONT ( 12 , 124 ) ; - Size = MAP_APPFONT ( 76 , 10 ) ; - Text [ en-US ] = "Custom header" ; - }; - - ImageButton BTN_TEXT - { - HelpId = HID_SC_HF_TEXT ; - Pos = MAP_APPFONT ( 90 , 122 ) ; - Size = MAP_APPFONT ( 15 , 15 ) ; - TabStop = TRUE ; - QuickHelpText [ en-US ] = "Text Attributes" ; - ButtonImage = Image - { - ImageBitmap = Bitmap { File = "text.png" ; }; - MaskColor = STD_MASKCOLOR ; - }; - }; - - ImageButton BTN_FILE - { - HelpId = HID_SC_HF_FILE ; - Pos = MAP_APPFONT ( 113 , 122 ) ; - Size = MAP_APPFONT ( 15 , 15 ) ; - TabStop = TRUE ; - QuickHelpText [ en-US ] = "Title" ; - ButtonImage = Image - { - ImageBitmap = Bitmap { File = "file.png" ; }; - MaskColor = STD_MASKCOLOR ; - }; - }; - - Menu RID_POPUP_FCOMMAND - { - ItemList = - { - MenuItem - { - Identifier = FILE_COMMAND_TITEL ; - HelpID = HID_FCOMMAND_TITEL ; - Text [ en-US ] = "Title"; - }; - MenuItem - { - Identifier = FILE_COMMAND_FILENAME; - HelpID = HID_FCOMMAND_FILENAME; - RadioCheck = TRUE ; - Text [ en-US ] = "File Name"; - }; - MenuItem - { - Identifier = FILE_COMMAND_PATH; - HelpID = HID_FCOMMAND_PATH; - RadioCheck = TRUE ; - Text [ en-US ] = "Path/File Name"; - }; - }; - }; - - ImageButton BTN_TABLE - { - HelpId = HID_SC_HF_TABLE ; - Pos = MAP_APPFONT ( 130 , 122 ) ; - Size = MAP_APPFONT ( 15 , 15 ) ; - TabStop = TRUE ; - QuickHelpText [ en-US ] = "Sheet Name" ; - ButtonImage = Image - { - ImageBitmap = Bitmap { File = "table.png" ; }; - MaskColor = STD_MASKCOLOR; - }; - }; - - ImageButton BTN_PAGE - { - HelpId = HID_SC_HF_PAGE ; - Pos = MAP_APPFONT ( 150 , 122 ) ; - Size = MAP_APPFONT ( 15 , 15 ) ; - TabStop = TRUE ; - QuickHelpText [ en-US ] = "Page" ; - ButtonImage = Image - { - ImageBitmap = Bitmap { File = "page.png" ; }; - MaskColor = STD_MASKCOLOR ; - }; - }; - - ImageButton BTN_PAGES - { - HelpId = HID_SC_HF_PAGES ; - Pos = MAP_APPFONT ( 167 , 122 ) ; - Size = MAP_APPFONT ( 15 , 15 ) ; - TabStop = TRUE ; - QuickHelpText [ en-US ] = "Pages" ; - ButtonImage = Image - { - ImageBitmap = Bitmap { File = "pages.png" ; }; - MaskColor = STD_MASKCOLOR ; - }; - }; - - ImageButton BTN_DATE - { - HelpId = HID_SC_HF_DATE ; - Pos = MAP_APPFONT ( 187 , 122 ) ; - Size = MAP_APPFONT ( 15 , 15 ) ; - TabStop = TRUE ; - QuickHelpText [ en-US ] = "Date" ; - ButtonImage = Image - { - ImageBitmap = Bitmap { File = "date.png" ; }; - MaskColor = STD_MASKCOLOR ; - }; - }; - - ImageButton BTN_TIME - { - HelpId = HID_SC_HF_TIME ; - Pos = MAP_APPFONT ( 204 , 122 ) ; - Size = MAP_APPFONT ( 15 , 15 ) ; - TabStop = TRUE ; - QuickHelpText [ en-US ] = "Time" ; - ButtonImage = Image - { - ImageBitmap = Bitmap { File = "time.png" ; }; - MaskColor = STD_MASKCOLOR ; - }; - }; - - FixedText FT_INFO - { - Pos = MAP_APPFONT ( 12 , 155 ) ; - Size = MAP_APPFONT ( 240 , 24 ) ; - WordBreak = TRUE ; - Text [ en-US ] = "Use the buttons to change the font or insert field commands such as date, time, etc." ; - }; - FixedLine FL_INFO - { - Pos = MAP_APPFONT ( 6 , 144 ) ; - Size = MAP_APPFONT ( 248 , 8 ) ; - Text [ en-US ] = "Note" ; - }; -}; - // Kombinationen: Header/Footer links/rechts - // die Eingabefenster jeweils mit eigener ID, sonst aus RID_HFBASE kopiert -TabPage RID_SCPAGE_HFED_HL < RID_HFBASE +TabPage RID_SCPAGE_HFED_HL { Hide = TRUE ; HelpId = HID_SCPAGE_HFED_HL ; @@ -651,7 +469,7 @@ TabPage RID_SCPAGE_HFED_HL < RID_HFBASE }; }; -TabPage RID_SCPAGE_HFED_HR < RID_HFBASE +TabPage RID_SCPAGE_HFED_HR { Hide = TRUE ; HelpId = HID_SCPAGE_HFED_HR ; @@ -690,7 +508,7 @@ TabPage RID_SCPAGE_HFED_HR < RID_HFBASE }; }; -TabPage RID_SCPAGE_HFED_FL < RID_HFBASE +TabPage RID_SCPAGE_HFED_FL { Hide = TRUE ; HelpId = HID_SCPAGE_HFED_FL ; @@ -729,7 +547,7 @@ TabPage RID_SCPAGE_HFED_FL < RID_HFBASE }; }; -TabPage RID_SCPAGE_HFED_FR < RID_HFBASE +TabPage RID_SCPAGE_HFED_FR { Hide = TRUE ; HelpId = HID_SCPAGE_HFED_FR ; diff --git a/sc/source/ui/pagedlg/scuitphfedit.cxx b/sc/source/ui/pagedlg/scuitphfedit.cxx index 5a084d3a686c..342774a3a0f4 100644 --- a/sc/source/ui/pagedlg/scuitphfedit.cxx +++ b/sc/source/ui/pagedlg/scuitphfedit.cxx @@ -63,80 +63,84 @@ static ScEditWindow* pActiveEdWnd = NULL; // ScHFEditPage::ScHFEditPage( Window* pParent, - sal_uInt16 nResId, const SfxItemSet& rCoreAttrs, - sal_uInt16 nWhichId, - bool bHeader ) - - : SfxTabPage ( pParent, ScResId( nResId ), rCoreAttrs ), - - aFtLeft ( this, ScResId( FT_LEFT ) ), - aWndLeft ( this, ScResId( WND_LEFT ), Left ), - aFtCenter ( this, ScResId( FT_CENTER ) ), - aWndCenter ( this, ScResId( WND_CENTER ), Center ), - aFtRight ( this, ScResId( FT_RIGHT ) ), - aWndRight ( this, ScResId( WND_RIGHT ), Right ), - maFtDefinedHF ( this, ScResId( FT_HF_DEFINED ) ), - maLbDefined ( this, ScResId( LB_DEFINED ) ), - maFtCustomHF ( this, ScResId( FT_HF_CUSTOM ) ), - aBtnText ( this, ScResId( BTN_TEXT ) ), - aBtnFile ( this, ScResId( BTN_FILE ) ), - aBtnTable ( this, ScResId( BTN_TABLE ) ), - aBtnPage ( this, ScResId( BTN_PAGE ) ), - aBtnLastPage ( this, ScResId( BTN_PAGES ) ), - aBtnDate ( this, ScResId( BTN_DATE ) ), - aBtnTime ( this, ScResId( BTN_TIME ) ), - aFlInfo ( this, ScResId( FL_INFO ) ), - aFtInfo ( this, ScResId( FT_INFO ) ), - aPopUpFile ( ScResId( RID_POPUP_FCOMMAND) ), - nWhich ( nWhichId ) + sal_uInt16 nWhichId, + bool bHeader ) + : SfxTabPage( pParent, "HeaderFooterContent", "modules/scalc/ui/headerfootercontent.ui", rCoreAttrs ) + , nWhich( nWhichId ) { - //! use default style from current document? - //! if font color is used, header/footer background color must be set + get(m_pWndLeft,"textviewWND_LEFT"); + m_pWndLeft->SetLocation(Left); + get(m_pWndCenter,"textviewWND_CENTER"); + m_pWndCenter->SetLocation(Center); + get(m_pWndRight,"textviewWND_RIGHT"); + m_pWndRight->SetLocation(Right); - ScPatternAttr aPatAttr( rCoreAttrs.GetPool() ); + get(m_pLbDefined,"comboLB_DEFINED"); + get(m_pBtnText,"buttonBTN_TEXT"); + get(m_pBtnTable,"buttonBTN_TABLE"); + get(m_pBtnPage,"buttonBTN_PAGE"); + get(m_pBtnLastPage,"buttonBTN_PAGES"); + get(m_pBtnDate,"buttonBTN_DATE"); + get(m_pBtnTime,"buttonBTN_TIME"); - aBtnFile.SetPopupMenu(&aPopUpFile); + get(m_pBtnFile,"buttonBTN_FILE"); - maLbDefined.SetSelectHdl( LINK( this, ScHFEditPage, ListHdl_Impl ) ); - aBtnFile.SetMenuHdl( LINK( this, ScHFEditPage, MenuHdl ) ); - aBtnText .SetClickHdl( LINK( this, ScHFEditPage, ClickHdl ) ); - aBtnPage .SetClickHdl( LINK( this, ScHFEditPage, ClickHdl ) ); - aBtnLastPage.SetClickHdl( LINK( this, ScHFEditPage, ClickHdl ) ); - aBtnDate .SetClickHdl( LINK( this, ScHFEditPage, ClickHdl ) ); - aBtnTime .SetClickHdl( LINK( this, ScHFEditPage, ClickHdl ) ); - aBtnFile .SetClickHdl( LINK( this, ScHFEditPage, ClickHdl ) ); - aBtnTable .SetClickHdl( LINK( this, ScHFEditPage, ClickHdl ) ); + get(m_pFtConfidential,"labelSTR_HF_CONFIDENTIAL"); + get(m_pFtPage,"labelSTR_PAGE"); + get(m_pFtOfQuestion,"labelSTR_HF_OF_QUESTION"); + get(m_pFtOf,"labelSTR_HF_OF"); + get(m_pFtNone,"labelSTR_HF_NONE_IN_BRACKETS"); + get(m_pFtCreatedBy,"labelSTR_HF_CREATED_BY"); + get(m_pFtCustomized,"labelSTR_HF_CUSTOMIZED"); - if(!bHeader) - { - maFtDefinedHF.SetText(ScGlobal::GetRscString( STR_FOOTER )); - maFtCustomHF.SetText(ScGlobal::GetRscString( STR_HF_CUSTOM_FOOTER )); - } - if( Application::GetSettings().GetLayoutRTL() ) - { - Point pt1 = aWndLeft.GetPosPixel(); - Point pt2 = aWndRight.GetPosPixel(); - aWndLeft.SetPosPixel(pt2); - aWndRight.SetPosPixel(pt1); - - pt1 = aFtLeft.GetPosPixel(); - pt2 = aFtRight.GetPosPixel(); - aFtLeft.SetPosPixel(pt2); - aFtRight.SetPosPixel(pt1); - } - aWndLeft. SetFont( aPatAttr ); - aWndCenter. SetFont( aPatAttr ); - aWndRight. SetFont( aPatAttr ); + + //! use default style from current document? + //! if font color is used, header/footer background color must be set + + ScPatternAttr aPatAttr( rCoreAttrs.GetPool() ); + + m_pBtnFile->SetPopupMenu(get_menu("popup")); + + m_pLbDefined->SetSelectHdl( LINK( this, ScHFEditPage, ListHdl_Impl ) ); + m_pBtnFile->SetMenuHdl( LINK( this, ScHFEditPage, MenuHdl ) ); + m_pBtnText->SetClickHdl( LINK( this, ScHFEditPage, ClickHdl ) ); + m_pBtnPage->SetClickHdl( LINK( this, ScHFEditPage, ClickHdl ) ); + m_pBtnLastPage->SetClickHdl( LINK( this, ScHFEditPage, ClickHdl ) ); + m_pBtnDate->SetClickHdl( LINK( this, ScHFEditPage, ClickHdl ) ); + m_pBtnTime->SetClickHdl( LINK( this, ScHFEditPage, ClickHdl ) ); + m_pBtnFile->SetClickHdl( LINK( this, ScHFEditPage, ClickHdl ) ); + m_pBtnTable->SetClickHdl( LINK( this, ScHFEditPage, ClickHdl ) ); + + get(m_pFtDefinedHF,!bHeader ? "labelFT_F_DEFINED" : "labelFT_H_DEFINED"); + get(m_pFtCustomHF, !bHeader ? "labelFT_F_CUSTOM" : "labelFT_H_CUSTOM"); + + m_pFtDefinedHF->Show(); + m_pFtCustomHF->Show(); + +// if( Application::GetSettings().GetLayoutRTL() ) +// { +// Point pt1 = m_pWndLeft->GetPosPixel(); +// Point pt2 = m_pWndRight->GetPosPixel(); +// m_pWndLeft->SetPosPixel(pt2); +// m_pWndRight->SetPosPixel(pt1); +// +// pt1 = aFtLeft.GetPosPixel(); +// pt2 = aFtRight.GetPosPixel(); +// aFtLeft.SetPosPixel(pt2); +// aFtRight.SetPosPixel(pt1); +// } + m_pWndLeft->SetFont( aPatAttr ); + m_pWndCenter->SetFont( aPatAttr ); + m_pWndRight->SetFont( aPatAttr ); FillCmdArr(); - aWndLeft.GrabFocus(); + m_pWndLeft->GrabFocus(); InitPreDefinedList(); - FreeResource(); } // ----------------------------------------------------------------------- @@ -147,9 +151,9 @@ ScHFEditPage::~ScHFEditPage() void ScHFEditPage::SetNumType(SvxNumType eNumType) { - aWndLeft.SetNumType(eNumType); - aWndCenter.SetNumType(eNumType); - aWndRight.SetNumType(eNumType); + m_pWndLeft->SetNumType(eNumType); + m_pWndCenter->SetNumType(eNumType); + m_pWndRight->SetNumType(eNumType); } void ScHFEditPage::Reset( const SfxItemSet& rCoreSet ) @@ -160,11 +164,11 @@ void ScHFEditPage::Reset( const SfxItemSet& rCoreSet ) const ScPageHFItem& rItem = static_cast<const ScPageHFItem&>(*pItem); if( const EditTextObject* pLeft = rItem.GetLeftArea() ) - aWndLeft.SetText( *pLeft ); + m_pWndLeft->SetText( *pLeft ); if( const EditTextObject* pCenter = rItem.GetCenterArea() ) - aWndCenter.SetText( *pCenter ); + m_pWndCenter->SetText( *pCenter ); if( const EditTextObject* pRight = rItem.GetRightArea() ) - aWndRight.SetText( *pRight ); + m_pWndRight->SetText( *pRight ); SetSelectDefinedList(); } @@ -173,9 +177,9 @@ void ScHFEditPage::Reset( const SfxItemSet& rCoreSet ) sal_Bool ScHFEditPage::FillItemSet( SfxItemSet& rCoreSet ) { ScPageHFItem aItem( nWhich ); - EditTextObject* pLeft = aWndLeft .CreateTextObject(); - EditTextObject* pCenter = aWndCenter.CreateTextObject(); - EditTextObject* pRight = aWndRight .CreateTextObject(); + EditTextObject* pLeft = m_pWndLeft->CreateTextObject(); + EditTextObject* pCenter = m_pWndCenter->CreateTextObject(); + EditTextObject* pRight = m_pWndRight->CreateTextObject(); aItem.SetLeftArea ( *pLeft ); aItem.SetCenterArea( *pCenter ); @@ -201,8 +205,8 @@ sal_Bool ScHFEditPage::FillItemSet( SfxItemSet& rCoreSet ) void ScHFEditPage::FillCmdArr() { - String aDel( ScGlobal::GetRscString( STR_HFCMD_DELIMITER ) ); - String aCmd; + OUString aDel( ScGlobal::GetRscString( STR_HFCMD_DELIMITER ) ); + OUString aCmd; SET_CMD( 0, STR_HFCMD_PAGE ) SET_CMD( 1, STR_HFCMD_PAGES ) @@ -222,96 +226,64 @@ void ScHFEditPage::InitPreDefinedList() Color* pFldColour = NULL; // Get the all field values at the outset. - String aPageFieldValue(aWndLeft.GetEditEngine()->CalcFieldValue(SvxFieldItem(SvxPageField(), EE_FEATURE_FIELD), 0,0, pTxtColour, pFldColour)); - String aSheetFieldValue(aWndLeft.GetEditEngine()->CalcFieldValue(SvxFieldItem(SvxTableField(), EE_FEATURE_FIELD), 0,0, pTxtColour, pFldColour)); - String aFileFieldValue(aWndLeft.GetEditEngine()->CalcFieldValue(SvxFieldItem(SvxFileField(), EE_FEATURE_FIELD), 0,0, pTxtColour, pFldColour)); - String aExtFileFieldValue(aWndLeft.GetEditEngine()->CalcFieldValue(SvxFieldItem(SvxExtFileField(), EE_FEATURE_FIELD), 0,0, pTxtColour, pFldColour)); - String aDateFieldValue(aWndLeft.GetEditEngine()->CalcFieldValue(SvxFieldItem(SvxDateField(), EE_FEATURE_FIELD), 0,0, pTxtColour, pFldColour)); - - maLbDefined.Clear(); - - maLbDefined.InsertEntry( ScGlobal::GetRscString( STR_HF_NONE_IN_BRACKETS )); - - String aPageEntry(ScGlobal::GetRscString( STR_PAGE ) ); - aPageEntry += ' '; - aPageEntry += aPageFieldValue; - maLbDefined.InsertEntry(aPageEntry); - - String aPageOfEntry(aPageEntry); - aPageOfEntry += ' '; - aPageOfEntry += ScGlobal::GetRscString( STR_HF_OF_QUESTION ); - maLbDefined.InsertEntry( aPageOfEntry); - - maLbDefined.InsertEntry(aSheetFieldValue); - - String aConfidentialEntry(aUserOpt.GetCompany()); - aConfidentialEntry += ' '; - aConfidentialEntry += ScGlobal::GetRscString( STR_HF_CONFIDENTIAL ); - aConfidentialEntry.AppendAscii(RTL_CONSTASCII_STRINGPARAM(", ")); - aConfidentialEntry += aDateFieldValue; - aConfidentialEntry.AppendAscii(RTL_CONSTASCII_STRINGPARAM(", ")); - aConfidentialEntry += aPageEntry; - maLbDefined.InsertEntry( aConfidentialEntry); - - String aFileNamePageEntry(aFileFieldValue); - aFileNamePageEntry.AppendAscii(RTL_CONSTASCII_STRINGPARAM(", ")); - aFileNamePageEntry += aPageEntry; - maLbDefined.InsertEntry( aFileNamePageEntry); - - maLbDefined.InsertEntry( aExtFileFieldValue); - - String aPageSheetNameEntry(aPageEntry); - aPageSheetNameEntry.AppendAscii(RTL_CONSTASCII_STRINGPARAM(", ")); - aPageSheetNameEntry += aSheetFieldValue; - maLbDefined.InsertEntry( aPageSheetNameEntry); - - String aPageFileNameEntry(aPageEntry); - aPageFileNameEntry.AppendAscii(RTL_CONSTASCII_STRINGPARAM(", ")); - aPageFileNameEntry += aFileFieldValue; - maLbDefined.InsertEntry( aPageFileNameEntry); - - String aPagePathNameEntry(aPageEntry); - aPagePathNameEntry.AppendAscii(RTL_CONSTASCII_STRINGPARAM(", ")); - aPagePathNameEntry += aExtFileFieldValue; - maLbDefined.InsertEntry( aPagePathNameEntry); - - String aUserNameEntry(aUserOpt.GetFirstName()); - aUserNameEntry += ' '; - aUserNameEntry += (String)aUserOpt.GetLastName(); - aUserNameEntry.AppendAscii(RTL_CONSTASCII_STRINGPARAM(", ")); - aUserNameEntry += aPageEntry; - aUserNameEntry.AppendAscii(RTL_CONSTASCII_STRINGPARAM(", ")); - aUserNameEntry += aDateFieldValue; - maLbDefined.InsertEntry( aUserNameEntry); - - String aCreatedByEntry(ScGlobal::GetRscString( STR_HF_CREATED_BY ) ); - aCreatedByEntry += ' '; - aCreatedByEntry += (String)aUserOpt.GetFirstName(); - aCreatedByEntry += ' '; - aCreatedByEntry += (String)aUserOpt.GetLastName(); - aCreatedByEntry.AppendAscii(RTL_CONSTASCII_STRINGPARAM(", ")); - aCreatedByEntry += aDateFieldValue; - aCreatedByEntry.AppendAscii(RTL_CONSTASCII_STRINGPARAM(", ")); - aCreatedByEntry += aPageEntry; - maLbDefined.InsertEntry( aCreatedByEntry); + OUString aPageFieldValue(m_pWndLeft->GetEditEngine()->CalcFieldValue(SvxFieldItem(SvxPageField(), EE_FEATURE_FIELD), 0,0, pTxtColour, pFldColour)); + OUString aSheetFieldValue(m_pWndLeft->GetEditEngine()->CalcFieldValue(SvxFieldItem(SvxTableField(), EE_FEATURE_FIELD), 0,0, pTxtColour, pFldColour)); + OUString aFileFieldValue(m_pWndLeft->GetEditEngine()->CalcFieldValue(SvxFieldItem(SvxFileField(), EE_FEATURE_FIELD), 0,0, pTxtColour, pFldColour)); + OUString aExtFileFieldValue(m_pWndLeft->GetEditEngine()->CalcFieldValue(SvxFieldItem(SvxExtFileField(), EE_FEATURE_FIELD), 0,0, pTxtColour, pFldColour)); + OUString aDateFieldValue(m_pWndLeft->GetEditEngine()->CalcFieldValue(SvxFieldItem(SvxDateField(), EE_FEATURE_FIELD), 0,0, pTxtColour, pFldColour)); + + m_pLbDefined->Clear(); + + m_pLbDefined->InsertEntry(m_pFtNone->GetText()); + + OUString aPageEntry(m_pFtPage->GetText() + " " + aPageFieldValue); + m_pLbDefined->InsertEntry(aPageEntry); + + OUString aPageOfEntry(aPageEntry + " " + m_pFtOfQuestion->GetText()); + m_pLbDefined->InsertEntry( aPageOfEntry); + + m_pLbDefined->InsertEntry(aSheetFieldValue); + + OUString aConfidentialEntry(aUserOpt.GetCompany() + " " + m_pFtConfidential->GetText() + ", " + aDateFieldValue + ", " + aPageEntry); + m_pLbDefined->InsertEntry( aConfidentialEntry); + + OUString aFileNamePageEntry(aFileFieldValue + ", " + aPageEntry); + m_pLbDefined->InsertEntry( aFileNamePageEntry); + + m_pLbDefined->InsertEntry( aExtFileFieldValue); + + OUString aPageSheetNameEntry(aPageEntry + ", " + aSheetFieldValue); + m_pLbDefined->InsertEntry( aPageSheetNameEntry); + + OUString aPageFileNameEntry(aPageEntry + ", " + aFileFieldValue); + m_pLbDefined->InsertEntry( aPageFileNameEntry); + + OUString aPagePathNameEntry(aPageEntry + ", " + aExtFileFieldValue); + m_pLbDefined->InsertEntry( aPagePathNameEntry); + + OUString aUserNameEntry(aUserOpt.GetFirstName() + " " + aUserOpt.GetLastName() + ", " + aPageEntry + ", " + aDateFieldValue); + m_pLbDefined->InsertEntry( aUserNameEntry); + + OUString aCreatedByEntry( m_pFtCreatedBy->GetText() + " " + aUserOpt.GetFirstName() + " " + aUserOpt.GetLastName() + ", "); + aCreatedByEntry += aDateFieldValue + ", " + aPageEntry; + m_pLbDefined->InsertEntry( aCreatedByEntry); } void ScHFEditPage::InsertToDefinedList() { - sal_uInt16 nCount = maLbDefined.GetEntryCount(); + sal_uInt16 nCount = m_pLbDefined->GetEntryCount(); if(nCount == eEntryCount) { - String aCustomizedEntry(ScGlobal::GetRscString( STR_HF_CUSTOMIZED ) ); - maLbDefined.InsertEntry( aCustomizedEntry); - maLbDefined.SelectEntryPos(eEntryCount); + m_pLbDefined->InsertEntry( m_pFtCustomized->GetText() ); + m_pLbDefined->SelectEntryPos(eEntryCount); } } void ScHFEditPage::RemoveFromDefinedList() { - sal_uInt16 nCount = maLbDefined.GetEntryCount(); + sal_uInt16 nCount = m_pLbDefined->GetEntryCount(); if(nCount > eEntryCount ) - maLbDefined.RemoveEntry( nCount-1); + m_pLbDefined->RemoveEntry( nCount-1); } // determine if the header/footer exists in our predefined list and set select to it. @@ -328,18 +300,18 @@ void ScHFEditPage::SetSelectDefinedList() ::std::auto_ptr< EditTextObject > pRightObj; SAL_WNODEPRECATED_DECLARATIONS_POP - XubString aLeftEntry; - XubString aCenterEntry; - XubString aRightEntry; + OUString aLeftEntry; + OUString aCenterEntry; + OUString aRightEntry; - pLeftObj.reset(aWndLeft.GetEditEngine()->CreateTextObject()); - pCenterObj.reset(aWndCenter.GetEditEngine()->CreateTextObject()); - pRightObj.reset(aWndRight.GetEditEngine()->CreateTextObject()); + pLeftObj.reset(m_pWndLeft->GetEditEngine()->CreateTextObject()); + pCenterObj.reset(m_pWndCenter->GetEditEngine()->CreateTextObject()); + pRightObj.reset(m_pWndRight->GetEditEngine()->CreateTextObject()); bool bFound = false; sal_uInt16 i; - sal_uInt16 nCount = maLbDefined.GetEntryCount(); + sal_uInt16 nCount = m_pLbDefined->GetEntryCount(); for(i = 0; i < nCount && !bFound; i++) { switch(static_cast<ScHFEntryId>(i)) @@ -364,7 +336,7 @@ void ScHFEditPage::SetSelectDefinedList() aRightEntry = pRightObj->GetText(0); if(aLeftEntry == EMPTY_STRING && aRightEntry == EMPTY_STRING) { - if(IsPageEntry(aWndCenter.GetEditEngine(), pCenterObj.get())) + if(IsPageEntry(m_pWndCenter->GetEditEngine(), pCenterObj.get())) { eSelectEntry = ePageEntry; bFound = true; @@ -405,12 +377,10 @@ void ScHFEditPage::SetSelectDefinedList() case eConfidentialEntry: { - if(IsDateEntry(pCenterObj.get()) && IsPageEntry(aWndRight.GetEditEngine(), pRightObj.get())) + if(IsDateEntry(pCenterObj.get()) && IsPageEntry(m_pWndRight->GetEditEngine(), pRightObj.get())) { - String aConfidentialEntry(aUserOpt.GetCompany()); - aConfidentialEntry += ' '; - aConfidentialEntry += ScGlobal::GetRscString( STR_HF_CONFIDENTIAL ); - if(aConfidentialEntry == aWndLeft.GetEditEngine()->GetText(0)) + OUString aConfidentialEntry(aUserOpt.GetCompany() + " " + m_pFtConfidential->GetText()); + if(aConfidentialEntry == m_pWndLeft->GetEditEngine()->GetText(0)) { eSelectEntry = eConfidentialEntry; bFound = true; @@ -453,7 +423,7 @@ void ScHFEditPage::SetSelectDefinedList() case ePageExtFileNameEntry: { aLeftEntry = pLeftObj->GetText(0); - if(IsPageEntry(aWndCenter.GetEditEngine(), pCenterObj.get()) && + if(IsPageEntry(m_pWndCenter->GetEditEngine(), pCenterObj.get()) && IsExtFileNameEntry(pRightObj.get()) && aLeftEntry == EMPTY_STRING) { eSelectEntry = ePageExtFileNameEntry; @@ -464,12 +434,11 @@ void ScHFEditPage::SetSelectDefinedList() case eUserNameEntry: { - if(IsDateEntry(pRightObj.get()) && IsPageEntry(aWndCenter.GetEditEngine(), pCenterObj.get())) + if(IsDateEntry(pRightObj.get()) && IsPageEntry(m_pWndCenter->GetEditEngine(), pCenterObj.get())) { - String aUserNameEntry(aUserOpt.GetFirstName()); - aUserNameEntry += ' '; - aUserNameEntry += (String)aUserOpt.GetLastName(); - if(aUserNameEntry == aWndLeft.GetEditEngine()->GetText(0)) + OUString aUserNameEntry(aUserOpt.GetFirstName() + " " + aUserOpt.GetLastName()); + + if(aUserNameEntry == m_pWndLeft->GetEditEngine()->GetText(0)) { eSelectEntry = eUserNameEntry; bFound = true; @@ -480,14 +449,11 @@ void ScHFEditPage::SetSelectDefinedList() case eCreatedByEntry: { - if(IsDateEntry(pCenterObj.get()) && IsPageEntry(aWndRight.GetEditEngine(), pRightObj.get())) + if(IsDateEntry(pCenterObj.get()) && IsPageEntry(m_pWndRight->GetEditEngine(), pRightObj.get())) { - String aCreatedByEntry(ScGlobal::GetRscString( STR_HF_CREATED_BY ) ); - aCreatedByEntry += ' '; - aCreatedByEntry += (String)aUserOpt.GetFirstName(); - aCreatedByEntry += ' '; - aCreatedByEntry += (String)aUserOpt.GetLastName(); - if(aCreatedByEntry == aWndLeft.GetEditEngine()->GetText(0)) + OUString aCreatedByEntry(m_pFtCreatedBy->GetText() + " " + aUserOpt.GetFirstName() + " " + aUserOpt.GetLastName()); + + if(aCreatedByEntry == m_pWndLeft->GetEditEngine()->GetText(0)) { eSelectEntry = eCreatedByEntry; bFound = true; @@ -506,7 +472,7 @@ void ScHFEditPage::SetSelectDefinedList() if(eSelectEntry == eEntryCount) InsertToDefinedList(); - maLbDefined.SelectEntryPos( sal::static_int_cast<sal_uInt16>( eSelectEntry ) ); + m_pLbDefined->SelectEntryPos( sal::static_int_cast<sal_uInt16>( eSelectEntry ) ); } bool ScHFEditPage::IsPageEntry(EditEngine*pEngine, EditTextObject* pTextObj) @@ -522,10 +488,9 @@ bool ScHFEditPage::IsPageEntry(EditEngine*pEngine, EditTextObject* pTextObj) pEngine->GetPortions(0,aPosList); if(aPosList.size() == 2) { - String aPageEntry(ScGlobal::GetRscString( STR_PAGE ) ); - aPageEntry += ' '; + OUString aPageEntry(m_pFtPage->GetText() + " "); ESelection aSel(0,0,0,0); - aSel.nEndPos = aPageEntry.Len(); + aSel.nEndPos = aPageEntry.getLength(); if(aPageEntry == pEngine->GetText(aSel)) { aSel.nStartPos = aSel.nEndPos; @@ -599,18 +564,17 @@ void ScHFEditPage::ProcessDefinedListSel(ScHFEntryId eSel, bool bTravelling) case eNoneEntry: ClearTextAreas(); if(!bTravelling) - aWndLeft.GrabFocus(); + m_pWndLeft->GrabFocus(); break; case ePageEntry: { ClearTextAreas(); - String aPageEntry(ScGlobal::GetRscString( STR_PAGE ) ); - aPageEntry += ' '; - aWndCenter.GetEditEngine()->SetText(aPageEntry); - aWndCenter.InsertField( SvxFieldItem(SvxPageField(), EE_FEATURE_FIELD) ); + OUString aPageEntry( m_pFtPage->GetText() + " " ); + m_pWndCenter->GetEditEngine()->SetText(aPageEntry); + m_pWndCenter->InsertField( SvxFieldItem(SvxPageField(), EE_FEATURE_FIELD) ); if(!bTravelling) - aWndCenter.GrabFocus(); + m_pWndCenter->GrabFocus(); } break; @@ -618,46 +582,42 @@ void ScHFEditPage::ProcessDefinedListSel(ScHFEntryId eSel, bool bTravelling) { ClearTextAreas(); ESelection aSel(0,0,0,0); - String aPageEntry(ScGlobal::GetRscString( STR_PAGE ) ); - aPageEntry += ' '; - aWndCenter.GetEditEngine()->SetText(aPageEntry); - aSel.nEndPos = aPageEntry.Len(); - aWndCenter.GetEditEngine()->QuickInsertField(SvxFieldItem(SvxPageField(), EE_FEATURE_FIELD), ESelection(aSel.nEndPara, aSel.nEndPos, aSel.nEndPara, aSel.nEndPos)); + OUString aPageEntry( m_pFtPage->GetText() + " "); + m_pWndCenter->GetEditEngine()->SetText(aPageEntry); + aSel.nEndPos = aPageEntry.getLength(); + m_pWndCenter->GetEditEngine()->QuickInsertField(SvxFieldItem(SvxPageField(), EE_FEATURE_FIELD), ESelection(aSel.nEndPara, aSel.nEndPos, aSel.nEndPara, aSel.nEndPos)); ++aSel.nEndPos; - String aPageOfEntry = OUStringBuffer().append(' '). - append(ScGlobal::GetRscString( STR_HF_OF )).append(' '). - makeStringAndClear(); - aWndCenter.GetEditEngine()->QuickInsertText(aPageOfEntry,ESelection(aSel.nEndPara,aSel.nEndPos, aSel.nEndPara, aSel.nEndPos)); - aSel.nEndPos = sal::static_int_cast<xub_StrLen>( aSel.nEndPos + aPageOfEntry.Len() ); - aWndCenter.GetEditEngine()->QuickInsertField(SvxFieldItem(SvxPagesField(), EE_FEATURE_FIELD), ESelection(aSel.nEndPara,aSel.nEndPos, aSel.nEndPara, aSel.nEndPos)); - pTextObj.reset(aWndCenter.GetEditEngine()->CreateTextObject()); - aWndCenter.SetText(*pTextObj); + + OUString aPageOfEntry(" " + m_pFtOf->GetText() + " "); + m_pWndCenter->GetEditEngine()->QuickInsertText(aPageOfEntry,ESelection(aSel.nEndPara,aSel.nEndPos, aSel.nEndPara, aSel.nEndPos)); + aSel.nEndPos = sal::static_int_cast<xub_StrLen>( aSel.nEndPos + aPageOfEntry.getLength() ); + m_pWndCenter->GetEditEngine()->QuickInsertField(SvxFieldItem(SvxPagesField(), EE_FEATURE_FIELD), ESelection(aSel.nEndPara,aSel.nEndPos, aSel.nEndPara, aSel.nEndPos)); + pTextObj.reset(m_pWndCenter->GetEditEngine()->CreateTextObject()); + m_pWndCenter->SetText(*pTextObj); if(!bTravelling) - aWndCenter.GrabFocus(); + m_pWndCenter->GrabFocus(); } break; case eSheetEntry: ClearTextAreas(); - aWndCenter.InsertField( SvxFieldItem(SvxTableField(), EE_FEATURE_FIELD) ); + m_pWndCenter->InsertField( SvxFieldItem(SvxTableField(), EE_FEATURE_FIELD) ); if(!bTravelling) - aWndCenter.GrabFocus(); + m_pWndCenter->GrabFocus(); break; case eConfidentialEntry: { ClearTextAreas(); - String aConfidentialEntry(aUserOpt.GetCompany()); - aConfidentialEntry += ' '; - aConfidentialEntry += ScGlobal::GetRscString( STR_HF_CONFIDENTIAL ); - aWndLeft.GetEditEngine()->SetText(aConfidentialEntry); - aWndCenter.InsertField( SvxFieldItem(SvxDateField(Date( Date::SYSTEM ),SVXDATETYPE_VAR), EE_FEATURE_FIELD) ); - String aPageEntry(ScGlobal::GetRscString( STR_PAGE ) ); - aPageEntry += ' '; - aWndRight.GetEditEngine()->SetText(aPageEntry); - aWndRight.InsertField( SvxFieldItem(SvxPageField(), EE_FEATURE_FIELD) ); + OUString aConfidentialEntry(aUserOpt.GetCompany() + " " + m_pFtConfidential->GetText()); + m_pWndLeft->GetEditEngine()->SetText(aConfidentialEntry); + m_pWndCenter->InsertField( SvxFieldItem(SvxDateField(Date( Date::SYSTEM ),SVXDATETYPE_VAR), EE_FEATURE_FIELD) ); + + OUString aPageEntry( m_pFtPage->GetText() + " "); + m_pWndRight->GetEditEngine()->SetText(aPageEntry); + m_pWndRight->InsertField( SvxFieldItem(SvxPageField(), EE_FEATURE_FIELD) ); if(!bTravelling) - aWndRight.GrabFocus(); + m_pWndRight->GrabFocus(); } break; @@ -665,48 +625,46 @@ void ScHFEditPage::ProcessDefinedListSel(ScHFEntryId eSel, bool bTravelling) { ClearTextAreas(); ESelection aSel(0,0,0,0); - aWndCenter.GetEditEngine()->QuickInsertField(SvxFieldItem( SvxFileField(), EE_FEATURE_FIELD ), aSel ); + m_pWndCenter->GetEditEngine()->QuickInsertField(SvxFieldItem( SvxFileField(), EE_FEATURE_FIELD ), aSel ); ++aSel.nEndPos; - String aPageEntry(RTL_CONSTASCII_USTRINGPARAM(", ")); - aPageEntry += ScGlobal::GetRscString( STR_PAGE ) ; - aPageEntry += ' '; - aWndCenter.GetEditEngine()->QuickInsertText(aPageEntry, ESelection(aSel.nEndPara,aSel.nEndPos, aSel.nEndPara, aSel.nEndPos)); + OUString aPageEntry(", " + m_pFtPage->GetText() + " "); + m_pWndCenter->GetEditEngine()->QuickInsertText(aPageEntry, ESelection(aSel.nEndPara,aSel.nEndPos, aSel.nEndPara, aSel.nEndPos)); aSel.nStartPos = aSel.nEndPos; - aSel.nEndPos = sal::static_int_cast<xub_StrLen>( aSel.nEndPos + aPageEntry.Len() ); - aWndCenter.GetEditEngine()->QuickInsertField(SvxFieldItem(SvxPageField(), EE_FEATURE_FIELD), ESelection(aSel.nEndPara,aSel.nEndPos, aSel.nEndPara, aSel.nEndPos)); - pTextObj.reset(aWndCenter.GetEditEngine()->CreateTextObject()); - aWndCenter.SetText(*pTextObj); + aSel.nEndPos = sal::static_int_cast<xub_StrLen>( aSel.nEndPos + aPageEntry.getLength() ); + m_pWndCenter->GetEditEngine()->QuickInsertField(SvxFieldItem(SvxPageField(), EE_FEATURE_FIELD), ESelection(aSel.nEndPara,aSel.nEndPos, aSel.nEndPara, aSel.nEndPos)); + pTextObj.reset(m_pWndCenter->GetEditEngine()->CreateTextObject()); + m_pWndCenter->SetText(*pTextObj); if(!bTravelling) - aWndCenter.GrabFocus(); + m_pWndCenter->GrabFocus(); } break; case eExtFileNameEntry: ClearTextAreas(); - aWndCenter.InsertField( SvxFieldItem( SvxExtFileField( + m_pWndCenter->InsertField( SvxFieldItem( SvxExtFileField( EMPTY_STRING, SVXFILETYPE_VAR, SVXFILEFORMAT_FULLPATH ), EE_FEATURE_FIELD ) ); if(!bTravelling) - aWndCenter.GrabFocus(); + m_pWndCenter->GrabFocus(); break; case ePageSheetEntry: { ClearTextAreas(); ESelection aSel(0,0,0,0); - String aPageEntry(ScGlobal::GetRscString( STR_PAGE ) ); - aPageEntry += ' '; - aWndCenter.GetEditEngine()->SetText(aPageEntry); - aSel.nEndPos = aPageEntry.Len(); - aWndCenter.GetEditEngine()->QuickInsertField(SvxFieldItem(SvxPageField(), EE_FEATURE_FIELD), ESelection(aSel.nEndPara, aSel.nEndPos, aSel.nEndPara, aSel.nEndPos)); + OUString aPageEntry( m_pFtPage->GetText() + " " ); + m_pWndCenter->GetEditEngine()->SetText(aPageEntry); + aSel.nEndPos = aPageEntry.getLength(); + m_pWndCenter->GetEditEngine()->QuickInsertField(SvxFieldItem(SvxPageField(), EE_FEATURE_FIELD), ESelection(aSel.nEndPara, aSel.nEndPos, aSel.nEndPara, aSel.nEndPos)); ++aSel.nEndPos; - String aCommaSpace(RTL_CONSTASCII_USTRINGPARAM(", ")); - aWndCenter.GetEditEngine()->QuickInsertText(aCommaSpace,ESelection(aSel.nEndPara, aSel.nEndPos, aSel.nEndPara, aSel.nEndPos)); - aSel.nEndPos = sal::static_int_cast<xub_StrLen>( aSel.nEndPos + aCommaSpace.Len() ); - aWndCenter.GetEditEngine()->QuickInsertField( SvxFieldItem(SvxTableField(), EE_FEATURE_FIELD), ESelection(aSel.nEndPara, aSel.nEndPos, aSel.nEndPara, aSel.nEndPos)); - pTextObj.reset(aWndCenter.GetEditEngine()->CreateTextObject()); - aWndCenter.SetText(*pTextObj); + + OUString aCommaSpace(", "); + m_pWndCenter->GetEditEngine()->QuickInsertText(aCommaSpace,ESelection(aSel.nEndPara, aSel.nEndPos, aSel.nEndPara, aSel.nEndPos)); + aSel.nEndPos = sal::static_int_cast<xub_StrLen>( aSel.nEndPos + aCommaSpace.getLength() ); + m_pWndCenter->GetEditEngine()->QuickInsertField( SvxFieldItem(SvxTableField(), EE_FEATURE_FIELD), ESelection(aSel.nEndPara, aSel.nEndPos, aSel.nEndPara, aSel.nEndPos)); + pTextObj.reset(m_pWndCenter->GetEditEngine()->CreateTextObject()); + m_pWndCenter->SetText(*pTextObj); if(!bTravelling) - aWndCenter.GrabFocus(); + m_pWndCenter->GrabFocus(); } break; @@ -714,70 +672,62 @@ void ScHFEditPage::ProcessDefinedListSel(ScHFEntryId eSel, bool bTravelling) { ClearTextAreas(); ESelection aSel(0,0,0,0); - String aPageEntry(ScGlobal::GetRscString( STR_PAGE ) ); - aPageEntry += ' '; - aWndCenter.GetEditEngine()->SetText(aPageEntry); - aSel.nEndPos = aPageEntry.Len(); - aWndCenter.GetEditEngine()->QuickInsertField(SvxFieldItem(SvxPageField(), EE_FEATURE_FIELD), ESelection(aSel.nEndPara, aSel.nEndPos, aSel.nEndPara, aSel.nEndPos)); + OUString aPageEntry( m_pFtPage->GetText() + " " ); + m_pWndCenter->GetEditEngine()->SetText(aPageEntry); + aSel.nEndPos = aPageEntry.getLength(); + m_pWndCenter->GetEditEngine()->QuickInsertField(SvxFieldItem(SvxPageField(), EE_FEATURE_FIELD), ESelection(aSel.nEndPara, aSel.nEndPos, aSel.nEndPara, aSel.nEndPos)); ++aSel.nEndPos; - String aCommaSpace(RTL_CONSTASCII_USTRINGPARAM(", ")); - aWndCenter.GetEditEngine()->QuickInsertText(aCommaSpace,ESelection(aSel.nEndPara, aSel.nEndPos, aSel.nEndPara, aSel.nEndPos)); - aSel.nEndPos = sal::static_int_cast<xub_StrLen>( aSel.nEndPos + aCommaSpace.Len() ); - aWndCenter.GetEditEngine()->QuickInsertField( SvxFieldItem(SvxFileField(), EE_FEATURE_FIELD), ESelection(aSel.nEndPara, aSel.nEndPos, aSel.nEndPara, aSel.nEndPos)); - pTextObj.reset(aWndCenter.GetEditEngine()->CreateTextObject()); - aWndCenter.SetText(*pTextObj); + OUString aCommaSpace(", "); + m_pWndCenter->GetEditEngine()->QuickInsertText(aCommaSpace,ESelection(aSel.nEndPara, aSel.nEndPos, aSel.nEndPara, aSel.nEndPos)); + aSel.nEndPos = sal::static_int_cast<xub_StrLen>( aSel.nEndPos + aCommaSpace.getLength() ); + m_pWndCenter->GetEditEngine()->QuickInsertField( SvxFieldItem(SvxFileField(), EE_FEATURE_FIELD), ESelection(aSel.nEndPara, aSel.nEndPos, aSel.nEndPara, aSel.nEndPos)); + pTextObj.reset(m_pWndCenter->GetEditEngine()->CreateTextObject()); + m_pWndCenter->SetText(*pTextObj); if(!bTravelling) - aWndCenter.GrabFocus(); + m_pWndCenter->GrabFocus(); } break; case ePageExtFileNameEntry: { ClearTextAreas(); - String aPageEntry(ScGlobal::GetRscString( STR_PAGE ) ); - aPageEntry += ' '; - aWndCenter.GetEditEngine()->SetText(aPageEntry); - aWndCenter.InsertField( SvxFieldItem(SvxPageField(), EE_FEATURE_FIELD) ); - aWndRight.InsertField( SvxFieldItem( SvxExtFileField( + OUString aPageEntry( m_pFtPage->GetText() + " " ); + m_pWndCenter->GetEditEngine()->SetText(aPageEntry); + m_pWndCenter->InsertField( SvxFieldItem(SvxPageField(), EE_FEATURE_FIELD) ); + m_pWndRight->InsertField( SvxFieldItem( SvxExtFileField( EMPTY_STRING, SVXFILETYPE_VAR, SVXFILEFORMAT_FULLPATH ), EE_FEATURE_FIELD ) ); if(!bTravelling) - aWndRight.GrabFocus(); + m_pWndRight->GrabFocus(); } break; case eUserNameEntry: { ClearTextAreas(); - String aUserNameEntry(aUserOpt.GetFirstName()); - aUserNameEntry += ' '; - aUserNameEntry += (String)aUserOpt.GetLastName(); - aWndLeft.GetEditEngine()->SetText(aUserNameEntry); - String aPageEntry(ScGlobal::GetRscString( STR_PAGE ) ); - aPageEntry += ' '; - aWndCenter.GetEditEngine()->SetText(aPageEntry); - aWndCenter.InsertField( SvxFieldItem(SvxPageField(), EE_FEATURE_FIELD) ); - aWndRight.InsertField( SvxFieldItem(SvxDateField(Date( Date::SYSTEM ),SVXDATETYPE_VAR), EE_FEATURE_FIELD) ); + OUString aUserNameEntry(aUserOpt.GetFirstName() + " " + aUserOpt.GetLastName()); + m_pWndLeft->GetEditEngine()->SetText(aUserNameEntry); + OUString aPageEntry( m_pFtPage->GetText() + " "); + //aPageEntry += " "; + m_pWndCenter->GetEditEngine()->SetText(aPageEntry); + m_pWndCenter->InsertField( SvxFieldItem(SvxPageField(), EE_FEATURE_FIELD) ); + m_pWndRight->InsertField( SvxFieldItem(SvxDateField(Date( Date::SYSTEM ),SVXDATETYPE_VAR), EE_FEATURE_FIELD) ); if(!bTravelling) - aWndRight.GrabFocus(); + m_pWndRight->GrabFocus(); } break; case eCreatedByEntry: { ClearTextAreas(); - String aCreatedByEntry(ScGlobal::GetRscString( STR_HF_CREATED_BY ) ); - aCreatedByEntry += ' '; - aCreatedByEntry += (String)aUserOpt.GetFirstName(); - aCreatedByEntry += ' '; - aCreatedByEntry += (String)aUserOpt.GetLastName(); - aWndLeft.GetEditEngine()->SetText(aCreatedByEntry); - aWndCenter.InsertField( SvxFieldItem(SvxDateField(Date( Date::SYSTEM ),SVXDATETYPE_VAR), EE_FEATURE_FIELD) ); - String aPageEntry(ScGlobal::GetRscString( STR_PAGE ) ); - aPageEntry += ' '; - aWndRight.GetEditEngine()->SetText(aPageEntry); - aWndRight.InsertField( SvxFieldItem(SvxPageField(), EE_FEATURE_FIELD) ); + OUString aCreatedByEntry( m_pFtCreatedBy->GetText() + " " + aUserOpt.GetFirstName() + " " + aUserOpt.GetLastName()); + m_pWndLeft->GetEditEngine()->SetText(aCreatedByEntry); + m_pWndCenter->InsertField( SvxFieldItem(SvxDateField(Date( Date::SYSTEM ),SVXDATETYPE_VAR), EE_FEATURE_FIELD) ); + OUString aPageEntry( m_pFtPage->GetText() ); + aPageEntry += " "; + m_pWndRight->GetEditEngine()->SetText(aPageEntry); + m_pWndRight->InsertField( SvxFieldItem(SvxPageField(), EE_FEATURE_FIELD) ); if(!bTravelling) - aWndRight.GrabFocus(); + m_pWndRight->GrabFocus(); } break; @@ -788,12 +738,12 @@ void ScHFEditPage::ProcessDefinedListSel(ScHFEntryId eSel, bool bTravelling) void ScHFEditPage::ClearTextAreas() { - aWndLeft.GetEditEngine()->SetText(EMPTY_STRING); - aWndLeft.Invalidate(); - aWndCenter.GetEditEngine()->SetText(EMPTY_STRING); - aWndCenter.Invalidate(); - aWndRight.GetEditEngine()->SetText(EMPTY_STRING); - aWndRight.Invalidate(); + m_pWndLeft->GetEditEngine()->SetText(EMPTY_STRING); + m_pWndLeft->Invalidate(); + m_pWndCenter->GetEditEngine()->SetText(EMPTY_STRING); + m_pWndCenter->Invalidate(); + m_pWndRight->GetEditEngine()->SetText(EMPTY_STRING); + m_pWndRight->Invalidate(); } //----------------------------------------------------------------------- @@ -802,10 +752,10 @@ void ScHFEditPage::ClearTextAreas() IMPL_LINK( ScHFEditPage, ListHdl_Impl, ListBox*, pList ) { - if ( pList && pList == &maLbDefined ) + if ( pList && pList == m_pLbDefined ) { - ScHFEntryId eSel = static_cast<ScHFEntryId>(maLbDefined.GetSelectEntryPos()); - if(!maLbDefined.IsTravelSelect()) + ScHFEntryId eSel = static_cast<ScHFEntryId>(m_pLbDefined->GetSelectEntryPos()); + if(!m_pLbDefined->IsTravelSelect()) { ProcessDefinedListSel(eSel); @@ -821,31 +771,31 @@ IMPL_LINK( ScHFEditPage, ListHdl_Impl, ListBox*, pList ) return 0; } -IMPL_LINK( ScHFEditPage, ClickHdl, ImageButton*, pBtn ) +IMPL_LINK( ScHFEditPage, ClickHdl, PushButton*, pBtn ) { pActiveEdWnd = ::GetScEditWindow(); if ( !pActiveEdWnd ) return 0; - if ( pBtn == &aBtnText ) + if ( pBtn == m_pBtnText ) { pActiveEdWnd->SetCharAttriutes(); } else { - if ( pBtn == &aBtnPage ) + if ( pBtn == m_pBtnPage ) pActiveEdWnd->InsertField( SvxFieldItem(SvxPageField(), EE_FEATURE_FIELD) ); - else if ( pBtn == &aBtnLastPage ) + else if ( pBtn == m_pBtnLastPage ) pActiveEdWnd->InsertField( SvxFieldItem(SvxPagesField(), EE_FEATURE_FIELD) ); - else if ( pBtn == &aBtnDate ) + else if ( pBtn == m_pBtnDate ) pActiveEdWnd->InsertField( SvxFieldItem(SvxDateField(Date( Date::SYSTEM ),SVXDATETYPE_VAR), EE_FEATURE_FIELD) ); - else if ( pBtn == &aBtnTime ) + else if ( pBtn == m_pBtnTime ) pActiveEdWnd->InsertField( SvxFieldItem(SvxTimeField(), EE_FEATURE_FIELD) ); - else if ( pBtn == &aBtnFile ) + else if ( pBtn == m_pBtnFile ) { pActiveEdWnd->InsertField( SvxFieldItem( SvxFileField(), EE_FEATURE_FIELD ) ); } - else if ( pBtn == &aBtnTable ) + else if ( pBtn == m_pBtnTable ) pActiveEdWnd->InsertField( SvxFieldItem(SvxTableField(), EE_FEATURE_FIELD) ); } InsertToDefinedList(); @@ -862,19 +812,22 @@ IMPL_LINK( ScHFEditPage, MenuHdl, ScExtIButton*, pBtn ) if(pBtn!=NULL) { - switch(pBtn->GetSelected()) + OSL_ENSURE( true, pBtn->GetSelected()); + OString sSelectedId = pBtn->GetSelectedIdent(); + + if (sSelectedId == "title") + { + pActiveEdWnd->InsertField( SvxFieldItem( SvxFileField(), EE_FEATURE_FIELD ) ); + } + else if (sSelectedId == "filename") + { + pActiveEdWnd->InsertField( SvxFieldItem( SvxExtFileField( + OUString(), SVXFILETYPE_VAR, SVXFILEFORMAT_NAME_EXT ), EE_FEATURE_FIELD ) ); + } + else if (sSelectedId == "pathname") { - case FILE_COMMAND_TITEL: - pActiveEdWnd->InsertField( SvxFieldItem( SvxFileField(), EE_FEATURE_FIELD ) ); - break; - case FILE_COMMAND_FILENAME: - pActiveEdWnd->InsertField( SvxFieldItem( SvxExtFileField( - EMPTY_STRING, SVXFILETYPE_VAR, SVXFILEFORMAT_NAME_EXT ), EE_FEATURE_FIELD ) ); - break; - case FILE_COMMAND_PATH: - pActiveEdWnd->InsertField( SvxFieldItem( SvxExtFileField( - EMPTY_STRING, SVXFILETYPE_VAR, SVXFILEFORMAT_FULLPATH ), EE_FEATURE_FIELD ) ); - break; + pActiveEdWnd->InsertField( SvxFieldItem( SvxExtFileField( + OUString(), SVXFILETYPE_VAR, SVXFILEFORMAT_FULLPATH ), EE_FEATURE_FIELD ) ); } } return 0; @@ -885,8 +838,10 @@ IMPL_LINK( ScHFEditPage, MenuHdl, ScExtIButton*, pBtn ) //======================================================================== ScRightHeaderEditPage::ScRightHeaderEditPage( Window* pParent, const SfxItemSet& rCoreSet ) - : ScHFEditPage( pParent, RID_SCPAGE_HFED_HR, rCoreSet, - rCoreSet.GetPool()->GetWhich(SID_SCATTR_PAGE_HEADERRIGHT ), true ) + : ScHFEditPage( pParent, + rCoreSet, + rCoreSet.GetPool()->GetWhich(SID_SCATTR_PAGE_HEADERRIGHT ), + true ) {} // ----------------------------------------------------------------------- @@ -899,8 +854,10 @@ SfxTabPage* ScRightHeaderEditPage::Create( Window* pParent, const SfxItemSet& rC //======================================================================== ScLeftHeaderEditPage::ScLeftHeaderEditPage( Window* pParent, const SfxItemSet& rCoreSet ) - : ScHFEditPage( pParent, RID_SCPAGE_HFED_HL, rCoreSet, - rCoreSet.GetPool()->GetWhich(SID_SCATTR_PAGE_HEADERLEFT ), true ) + : ScHFEditPage( pParent, + rCoreSet, + rCoreSet.GetPool()->GetWhich(SID_SCATTR_PAGE_HEADERLEFT ), + true ) {} // ----------------------------------------------------------------------- @@ -913,8 +870,10 @@ SfxTabPage* ScLeftHeaderEditPage::Create( Window* pParent, const SfxItemSet& rCo //======================================================================== ScRightFooterEditPage::ScRightFooterEditPage( Window* pParent, const SfxItemSet& rCoreSet ) - : ScHFEditPage( pParent, RID_SCPAGE_HFED_FR, rCoreSet, - rCoreSet.GetPool()->GetWhich(SID_SCATTR_PAGE_FOOTERRIGHT ), false ) + : ScHFEditPage( pParent, + rCoreSet, + rCoreSet.GetPool()->GetWhich(SID_SCATTR_PAGE_FOOTERRIGHT ), + false ) {} // ----------------------------------------------------------------------- @@ -927,8 +886,10 @@ SfxTabPage* ScRightFooterEditPage::Create( Window* pParent, const SfxItemSet& rC //======================================================================== ScLeftFooterEditPage::ScLeftFooterEditPage( Window* pParent, const SfxItemSet& rCoreSet ) - : ScHFEditPage( pParent, RID_SCPAGE_HFED_FL, rCoreSet, - rCoreSet.GetPool()->GetWhich(SID_SCATTR_PAGE_FOOTERLEFT ), false ) + : ScHFEditPage( pParent, + rCoreSet, + rCoreSet.GetPool()->GetWhich(SID_SCATTR_PAGE_FOOTERLEFT ), + false ) {} // ----------------------------------------------------------------------- diff --git a/sc/source/ui/pagedlg/tphfedit.cxx b/sc/source/ui/pagedlg/tphfedit.cxx index a6fc37dcbf67..717c49308ca9 100644 --- a/sc/source/ui/pagedlg/tphfedit.cxx +++ b/sc/source/ui/pagedlg/tphfedit.cxx @@ -111,6 +111,54 @@ ScEditWindow::ScEditWindow( Window* pParent, const ResId& rResId, ScEditWindowLo pEdEngine->InsertView( pEdView ); } +ScEditWindow::ScEditWindow( Window* pParent, WinBits nBits, ScEditWindowLocation eLoc ) + : Control( pParent, nBits ), + eLocation(eLoc), + pAcc(NULL) +{ + EnableRTL(false); + + const StyleSettings& rStyleSettings = Application::GetSettings().GetStyleSettings(); + Color aBgColor = rStyleSettings.GetWindowColor(); + + SetMapMode( MAP_TWIP ); + SetPointer( POINTER_TEXT ); + SetBackground( aBgColor ); + + Size aSize( GetOutputSize() ); + aSize.Height() *= 4; + + pEdEngine = new ScHeaderEditEngine( EditEngine::CreatePool(), sal_True ); + pEdEngine->SetPaperSize( aSize ); + pEdEngine->SetRefDevice( this ); + + ScHeaderFieldData aData; + lcl_GetFieldData( aData ); + + // Feldbefehle: + pEdEngine->SetData( aData ); + pEdEngine->SetControlWord( pEdEngine->GetControlWord() | EE_CNTRL_MARKFIELDS ); + mbRTL = ScGlobal::IsSystemRTL(); + if (mbRTL) + pEdEngine->SetDefaultHorizontalTextDirection(EE_HTEXTDIR_R2L); + + pEdView = new EditView( pEdEngine, this ); + pEdView->SetOutputArea( Rectangle( Point(0,0), GetOutputSize() ) ); + + pEdView->SetBackgroundColor( aBgColor ); + pEdEngine->InsertView( pEdView ); +} + +void ScEditWindow::Resize() +{ + Size aOutputSize(GetOutputSize()); + Size aSize(aOutputSize); + aSize.Height() *= 4; + pEdEngine->SetPaperSize(aSize); + pEdView->SetOutputArea(Rectangle(Point(0,0), aOutputSize)); + Control::Resize(); +} + // ----------------------------------------------------------------------- ScEditWindow::~ScEditWindow() @@ -126,6 +174,11 @@ ScEditWindow::~ScEditWindow() delete pEdView; } +extern "C" SAL_DLLPUBLIC_EXPORT Window* SAL_CALL makeScEditWindow(Window *pParent, VclBuilder::stringmap &) +{ + return new ScEditWindow (pParent, WB_BORDER|WB_TABSTOP, Left); +} + // ----------------------------------------------------------------------- void ScEditWindow::SetNumType(SvxNumType eNumType) @@ -340,14 +393,25 @@ void ScEditWindow::LoseFocus() } ScExtIButton::ScExtIButton(Window* pParent, const ResId& rResId ) -: ImageButton(pParent,rResId), - pPopupMenu(NULL) + : ImageButton(pParent,rResId), pPopupMenu(NULL) +{ + nSelected=0; + aTimer.SetTimeout(600); + SetDropDown( true); +} +ScExtIButton::ScExtIButton(Window* pParent, WinBits nBits ) + : ImageButton(pParent,nBits), pPopupMenu(NULL) { nSelected=0; aTimer.SetTimeout(600); SetDropDown( true); } +extern "C" SAL_DLLPUBLIC_EXPORT Window* SAL_CALL makeScExtIButton(Window *pParent, VclBuilder::stringmap &) +{ + return new ScExtIButton (pParent, 0);// WB_BORDER|WB_TABSTOP); +} + void ScExtIButton::SetPopupMenu(PopupMenu* pPopUp) { pPopupMenu=pPopUp; diff --git a/sc/source/ui/src/globstr.src b/sc/source/ui/src/globstr.src index 375db7bbb282..a4a60187b32b 100644 --- a/sc/source/ui/src/globstr.src +++ b/sc/source/ui/src/globstr.src @@ -1619,40 +1619,40 @@ Resource RID_GLOBSTR Text[ en-US ] = "WARNING: This action may have resulted in references to the deleted area not being restored."; }; - String STR_HF_NONE_IN_BRACKETS - { - Text [ en-US ] = "(none)"; - }; - - String STR_HF_OF - { - Text [ en-US ] = "of"; - }; +// String STR_HF_NONE_IN_BRACKETS +// { +// Text [ en-US ] = "(none)"; +// }; +// +// String STR_HF_OF +// { +// Text [ en-US ] = "of"; +// }; +// +// String STR_HF_OF_QUESTION +// { +// Text [ en-US ] = "of ?"; +// }; +// +// String STR_HF_CREATED_BY +// { +// Text [ en-US ] = "Created by"; +// }; +// +// String STR_HF_CONFIDENTIAL +// { +// Text [ en-US ] = "Confidential"; +// }; +// +// String STR_HF_CUSTOMIZED +// { +// Text [ en-US ] = "Customized"; +// }; - String STR_HF_OF_QUESTION - { - Text [ en-US ] = "of ?"; - }; - - String STR_HF_CREATED_BY - { - Text [ en-US ] = "Created by"; - }; - - String STR_HF_CONFIDENTIAL - { - Text [ en-US ] = "Confidential"; - }; - - String STR_HF_CUSTOMIZED - { - Text [ en-US ] = "Customized"; - }; - - String STR_HF_CUSTOM_FOOTER - { - Text [ en-US ] = "Custom footer"; - }; +// String STR_HF_CUSTOM_FOOTER +// { +// Text [ en-US ] = "Custom footer"; +// }; String STR_UNDO_CHINESE_TRANSLATION { diff --git a/sc/uiconfig/scalc/ui/headerfootercontent.ui b/sc/uiconfig/scalc/ui/headerfootercontent.ui new file mode 100644 index 000000000000..d7f5642467a1 --- /dev/null +++ b/sc/uiconfig/scalc/ui/headerfootercontent.ui @@ -0,0 +1,536 @@ +<?xml version="1.0" encoding="UTF-8"?> +<interface> + <!-- interface-requires gtk+ 3.0 --> + <!-- interface-requires LibreOffice 1.0 --> + <object class="GtkVBox" id="HeaderFooterContent"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="border_width">6</property> + <property name="spacing">6</property> + <child> + <object class="GtkGrid" id="grid1"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="row_spacing">12</property> + <property name="column_spacing">6</property> + <property name="column_homogeneous">True</property> + <child> + <object class="GtkLabel" id="labelFT_LEFT"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="xalign">0</property> + <property name="label" translatable="yes">_Left area</property> + <property name="use_underline">True</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">0</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="labelFT_CENTER"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="xalign">0</property> + <property name="label" translatable="yes">_Center area</property> + <property name="use_underline">True</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">0</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="labelFT_RIGHT"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="xalign">0</property> + <property name="label" translatable="yes">R_ight area</property> + <property name="use_underline">True</property> + </object> + <packing> + <property name="left_attach">2</property> + <property name="top_attach">0</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="sclo-ScEditWindow" id="textviewWND_LEFT"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="wrap_mode">word</property> + <property name="overwrite">True</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">1</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="sclo-ScEditWindow" id="textviewWND_CENTER"> + <property name="visible">True</property> + <property name="can_focus">True</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">1</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="sclo-ScEditWindow" id="textviewWND_RIGHT"> + <property name="visible">True</property> + <property name="can_focus">True</property> + </object> + <packing> + <property name="left_attach">2</property> + <property name="top_attach">1</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkGrid" id="grid2"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="orientation">vertical</property> + <property name="row_spacing">12</property> + <property name="column_spacing">6</property> + <child> + <object class="GtkVBox" id="box2"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <child> + <object class="GtkLabel" id="labelFT_H_DEFINED"> + <property name="can_focus">False</property> + <property name="vexpand">True</property> + <property name="xalign">0</property> + <property name="label" translatable="yes">_Header</property> + <property name="use_underline">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="labelFT_F_DEFINED"> + <property name="can_focus">False</property> + <property name="vexpand">True</property> + <property name="xalign">0</property> + <property name="label" translatable="yes">_Footer</property> + <property name="use_underline">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">0</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="GtkVBox" id="box3"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="spacing">6</property> + <child> + <object class="GtkLabel" id="labelFT_H_CUSTOM"> + <property name="can_focus">False</property> + <property name="vexpand">True</property> + <property name="xalign">0</property> + <property name="label" translatable="yes">Custom header</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="labelFT_F_CUSTOM"> + <property name="can_focus">False</property> + <property name="vexpand">True</property> + <property name="xalign">0</property> + <property name="label" translatable="yes">Custom footer</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">1</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="GtkHBox" id="box"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="spacing">12</property> + <child> + <object class="GtkButton" id="buttonBTN_TEXT"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="has_tooltip">True</property> + <property name="tooltip_markup" translatable="yes">Text Attributes</property> + <property name="tooltip_text" translatable="yes">Text Attributes</property> + <property name="image">imageBTN_TEXT</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="sclo-ScExtIButton" id="buttonBTN_FILE"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="receives_default">True</property> + <property name="tooltip_text" translatable="yes">Title</property> + <property name="image">imageBTN_FILE</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkButton" id="buttonBTN_TABLE"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="has_tooltip">True</property> + <property name="tooltip_markup" translatable="yes">Sheet Name</property> + <property name="tooltip_text" translatable="yes">Sheet Name</property> + <property name="image">imageBTN_TABLE</property> + <property name="yalign">0.47999998927116394</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + <child> + <object class="GtkButton" id="buttonBTN_PAGE"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="has_tooltip">True</property> + <property name="tooltip_markup" translatable="yes">Page</property> + <property name="tooltip_text" translatable="yes">Page</property> + <property name="image">imageBTN_PAGE</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">3</property> + </packing> + </child> + <child> + <object class="GtkButton" id="buttonBTN_PAGES"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="has_tooltip">True</property> + <property name="tooltip_markup" translatable="yes">Pages</property> + <property name="tooltip_text" translatable="yes">Pages</property> + <property name="image">imageBTN_PAGES</property> + <property name="yalign">0.49000000953674316</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">4</property> + </packing> + </child> + <child> + <object class="GtkButton" id="buttonBTN_DATE"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="has_tooltip">True</property> + <property name="tooltip_markup" translatable="yes">Date</property> + <property name="tooltip_text" translatable="yes">Date</property> + <property name="image">imageBTN_DATE</property> + <property name="yalign">0.37000000476837158</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">5</property> + </packing> + </child> + <child> + <object class="GtkButton" id="buttonBTN_TIME"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="has_tooltip">True</property> + <property name="tooltip_markup" translatable="yes">Time</property> + <property name="tooltip_text" translatable="yes">Time</property> + <property name="image">imageBTN_TIME</property> + <property name="yalign">0.41999998688697815</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">6</property> + </packing> + </child> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">1</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + <child> + <object class="GtkComboBox" id="comboLB_DEFINED"> + <property name="visible">True</property> + <property name="can_focus">False</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">0</property> + <property name="width">1</property> + <property name="height">1</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkFrame" id="frame1"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label_xalign">0</property> + <property name="shadow_type">none</property> + <child> + <object class="GtkAlignment" id="alignment1"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="top_padding">6</property> + <property name="left_padding">12</property> + <child> + <object class="GtkLabel" id="label2"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Use the buttons to change the font or insert field commands such as date, time, etc.</property> + </object> + </child> + </object> + </child> + <child type="label"> + <object class="GtkLabel" id="label1"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Note</property> + <attributes> + <attribute name="weight" value="bold"/> + </attributes> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">3</property> + </packing> + </child> + <child> + <object class="GtkVBox" id="box4"> + <property name="can_focus">False</property> + <property name="spacing">6</property> + <child> + <object class="GtkLabel" id="labelSTR_HF_NONE_IN_BRACKETS"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">(none)</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="labelSTR_PAGE"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Page</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="labelSTR_HF_OF_QUESTION"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">of ?</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="labelSTR_HF_CONFIDENTIAL"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Confidential</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">3</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="labelSTR_HF_CREATED_BY"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Created by</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">4</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="labelSTR_HF_CUSTOMIZED"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Customized</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">5</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="labelSTR_HF_OF"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">of</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">6</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">4</property> + </packing> + </child> + </object> + <object class="GtkImage" id="imageBTN_DATE"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="pixbuf">sc/res/date.png</property> + </object> + <object class="GtkImage" id="imageBTN_FILE"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="pixbuf">sc/res/file.png</property> + </object> + <object class="GtkImage" id="imageBTN_PAGE"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="pixbuf">sc/res/page.png</property> + </object> + <object class="GtkImage" id="imageBTN_PAGES"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="pixbuf">sc/res/pages.png</property> + </object> + <object class="GtkImage" id="imageBTN_TABLE"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="pixbuf">sc/res/table.png</property> + </object> + <object class="GtkImage" id="imageBTN_TEXT"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="pixbuf">sc/res/text.png</property> + </object> + <object class="GtkImage" id="imageBTN_TIME"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="pixbuf">sc/res/time.png</property> + </object> + <object class="GtkMenu" id="popup"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <child> + <object class="GtkMenuItem" id="title"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Title</property> + <property name="use_underline">True</property> + </object> + </child> + <child> + <object class="GtkMenuItem" id="filename"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">File Name</property> + <property name="use_underline">True</property> + </object> + </child> + <child> + <object class="GtkMenuItem" id="pathname"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Path/File Name</property> + <property name="use_underline">True</property> + </object> + </child> + </object> +</interface> |