summaryrefslogtreecommitdiff
path: root/sw/source/core/uibase/inc/regionsw.hxx
diff options
context:
space:
mode:
Diffstat (limited to 'sw/source/core/uibase/inc/regionsw.hxx')
-rw-r--r--sw/source/core/uibase/inc/regionsw.hxx303
1 files changed, 303 insertions, 0 deletions
diff --git a/sw/source/core/uibase/inc/regionsw.hxx b/sw/source/core/uibase/inc/regionsw.hxx
new file mode 100644
index 000000000000..44a9fa642684
--- /dev/null
+++ b/sw/source/core/uibase/inc/regionsw.hxx
@@ -0,0 +1,303 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * 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 .
+ */
+#ifndef INCLUDED_SW_SOURCE_UI_INC_REGIONSW_HXX
+#define INCLUDED_SW_SOURCE_UI_INC_REGIONSW_HXX
+
+#include <hintids.hxx>
+#include <vcl/field.hxx>
+#include <vcl/lstbox.hxx>
+#include <vcl/edit.hxx>
+#include <vcl/button.hxx>
+#include <vcl/fixed.hxx>
+#include <vcl/combobox.hxx>
+#include <vcl/group.hxx>
+#include <vcl/layout.hxx>
+#include <svtools/treelistbox.hxx>
+#include <sfx2/basedlgs.hxx>
+#include <sfx2/tabdlg.hxx>
+#include <editeng/brushitem.hxx>
+
+#include <condedit.hxx>
+#include <section.hxx>
+#include <fmtclds.hxx>
+#include <fmtftntx.hxx>
+#include <fmtclbl.hxx>
+#include <numberingtypelistbox.hxx>
+#include <editeng/frmdiritem.hxx>
+#include <vcl/image.hxx>
+#include <svx/paraprev.hxx>
+#include <editeng/lrspitem.hxx>
+
+#include <boost/ptr_container/ptr_set.hpp>
+
+class SwWrtShell;
+
+namespace sfx2
+{
+ class DocumentInserter;
+ class FileDialogHelper;
+}
+
+/*************************************************************************
+ dialog "edit regions"
+*************************************************************************/
+class SectRepr;
+typedef SectRepr* SectReprPtr;
+typedef boost::ptr_set<SectRepr> SectReprArr;
+
+class SwEditRegionDlg : public SfxModalDialog
+{
+ Edit* m_pCurName;
+ SvTreeListBox* m_pTree;
+
+ TriStateBox* m_pFileCB;
+ CheckBox* m_pDDECB;
+ VclContainer* m_pDDEFrame;
+ FixedText* m_pFileNameFT;
+ FixedText* m_pDDECommandFT;
+ Edit* m_pFileNameED;
+ PushButton* m_pFilePB;
+ FixedText* m_pSubRegionFT;
+ ComboBox* m_pSubRegionED;
+ bool m_bSubRegionsFilled;
+
+ TriStateBox* m_pProtectCB;
+ CheckBox* m_pPasswdCB;
+ PushButton* m_pPasswdPB;
+
+ TriStateBox* m_pHideCB;
+ FixedText* m_pConditionFT;
+ ConditionEdit* m_pConditionED;
+
+ // #114856# edit in readonly sections
+ TriStateBox* m_pEditInReadonlyCB;
+
+ OKButton* m_pOK;
+ PushButton* m_pOptionsPB;
+ PushButton* m_pDismiss;
+ ImageList aImageIL;
+
+ SwWrtShell& rSh;
+ SectReprArr aSectReprArr;
+ const SwSection* pCurrSect;
+ sfx2::DocumentInserter* m_pDocInserter;
+ Window* m_pOldDefDlgParent;
+
+ sal_Bool bDontCheckPasswd :1;
+ sal_Bool bWeb :1;
+
+ Image BuildBitmap(sal_Bool bProtect,sal_Bool bHidden);
+
+ void RecurseList( const SwSectionFmt* pFmt, SvTreeListEntry* pEntry);
+ sal_uInt16 FindArrPos(const SwSectionFmt* pFmt);
+
+ DECL_LINK( GetFirstEntryHdl, SvTreeListBox * );
+ DECL_LINK( DeselectHdl, SvTreeListBox * );
+
+ DECL_LINK(OkHdl, void *);
+ DECL_LINK(NameEditHdl, void *);
+ DECL_LINK( ConditionEditHdl, Edit * );
+
+ DECL_LINK( ChangePasswdHdl, Button * );
+ DECL_LINK( ChangeProtectHdl, TriStateBox * );
+ DECL_LINK( ChangeHideHdl, TriStateBox * );
+ // #114856# edit in readonly sections
+ DECL_LINK( ChangeEditInReadonlyHdl, TriStateBox * );
+ DECL_LINK(ChangeDismissHdl, void *);
+ DECL_LINK( UseFileHdl, CheckBox* );
+ DECL_LINK(FileSearchHdl, void *);
+ DECL_LINK(OptionsHdl, void *);
+ DECL_LINK( FileNameHdl, Edit* );
+ DECL_LINK( DDEHdl, CheckBox* );
+ DECL_LINK( DlgClosedHdl, sfx2::FileDialogHelper* );
+ DECL_LINK( SubRegionEventHdl, VclWindowEvent * );
+
+ sal_Bool CheckPasswd(CheckBox* pBox = 0);
+
+public:
+ SwEditRegionDlg( Window* pParent, SwWrtShell& rWrtSh );
+ virtual ~SwEditRegionDlg();
+
+ void SelectSection(const OUString& rSectionName);
+
+};
+
+/*************************************************************************
+ dialog "insert region"
+*************************************************************************/
+class SwInsertSectionTabPage : public SfxTabPage
+{
+ ComboBox* m_pCurName;
+
+ CheckBox* m_pFileCB;
+ CheckBox* m_pDDECB;
+ FixedText* m_pDDECommandFT;
+ FixedText* m_pFileNameFT;
+ Edit* m_pFileNameED;
+ PushButton* m_pFilePB;
+ FixedText* m_pSubRegionFT;
+ ComboBox* m_pSubRegionED;
+
+ CheckBox* m_pProtectCB;
+ CheckBox* m_pPasswdCB;
+ PushButton* m_pPasswdPB;
+
+ CheckBox* m_pHideCB;
+ FixedText* m_pConditionFT;
+ ConditionEdit* m_pConditionED;
+
+ // #114856# edit in readonly sections
+ CheckBox* m_pEditInReadonlyCB;
+
+ OUString m_sFileName;
+ OUString m_sFilterName;
+ OUString m_sFilePasswd;
+
+ ::com::sun::star::uno::Sequence <sal_Int8 > m_aNewPasswd;
+ SwWrtShell* m_pWrtSh;
+ sfx2::DocumentInserter* m_pDocInserter;
+ Window* m_pOldDefDlgParent;
+
+ DECL_LINK( ChangeHideHdl, CheckBox * );
+ // #114856# edit in readonly sections
+ DECL_LINK(ChangeEditInReadonlyHdl, void *);
+ DECL_LINK( ChangeProtectHdl, CheckBox * );
+ DECL_LINK( ChangePasswdHdl, Button * );
+ DECL_LINK(NameEditHdl, void *);
+ DECL_LINK( UseFileHdl, CheckBox* );
+ DECL_LINK(FileSearchHdl, void *);
+ DECL_LINK( DDEHdl, CheckBox* );
+ DECL_LINK( DlgClosedHdl, sfx2::FileDialogHelper* );
+
+public:
+ SwInsertSectionTabPage(Window *pParent, const SfxItemSet &rAttrSet);
+ virtual ~SwInsertSectionTabPage();
+
+ void SetWrtShell(SwWrtShell& rSh);
+
+ virtual sal_Bool FillItemSet( SfxItemSet& );
+ virtual void Reset( const SfxItemSet& );
+
+ static SfxTabPage* Create( Window* pParent,
+ const SfxItemSet& rAttrSet);
+};
+
+class SwSectionFtnEndTabPage : public SfxTabPage
+{
+ CheckBox* pFtnNtAtTextEndCB;
+
+ CheckBox* pFtnNtNumCB;
+ FixedText* pFtnOffsetLbl;
+ NumericField* pFtnOffsetFld;
+
+ CheckBox* pFtnNtNumFmtCB;
+ FixedText* pFtnPrefixFT;
+ Edit* pFtnPrefixED;
+ SwNumberingTypeListBox* pFtnNumViewBox;
+ FixedText* pFtnSuffixFT;
+ Edit* pFtnSuffixED;
+
+ CheckBox* pEndNtAtTextEndCB;
+
+ CheckBox* pEndNtNumCB;
+ FixedText* pEndOffsetLbl;
+ NumericField* pEndOffsetFld;
+
+ CheckBox* pEndNtNumFmtCB;
+ FixedText* pEndPrefixFT;
+ Edit* pEndPrefixED;
+ SwNumberingTypeListBox* pEndNumViewBox;
+ FixedText* pEndSuffixFT;
+ Edit* pEndSuffixED;
+
+ DECL_LINK( FootEndHdl, CheckBox * );
+ void ResetState( sal_Bool bFtn, const SwFmtFtnEndAtTxtEnd& );
+
+public:
+ SwSectionFtnEndTabPage( Window *pParent, const SfxItemSet &rAttrSet );
+ virtual ~SwSectionFtnEndTabPage();
+
+ virtual sal_Bool FillItemSet( SfxItemSet& );
+ virtual void Reset( const SfxItemSet& );
+
+ static SfxTabPage* Create( Window* pParent,
+ const SfxItemSet& rAttrSet);
+};
+
+class SwSectionIndentTabPage : public SfxTabPage
+{
+ MetricField* m_pBeforeMF;
+ MetricField* m_pAfterMF;
+ SvxParaPrevWindow* m_pPreviewWin;
+
+ DECL_LINK(IndentModifyHdl, void *);
+public:
+ SwSectionIndentTabPage( Window *pParent, const SfxItemSet &rAttrSet );
+ virtual ~SwSectionIndentTabPage();
+
+ virtual sal_Bool FillItemSet( SfxItemSet& );
+ virtual void Reset( const SfxItemSet& );
+
+ static SfxTabPage* Create( Window* pParent,
+ const SfxItemSet& rAttrSet);
+
+ void SetWrtShell(SwWrtShell& rSh);
+};
+
+class SwInsertSectionTabDialog : public SfxTabDialog
+{
+ SwWrtShell& rWrtSh;
+ ::std::auto_ptr<SwSectionData> m_pSectionData;
+
+ sal_uInt16 m_nSectionPageId;
+ sal_uInt16 m_nColumnPageId;
+ sal_uInt16 m_nBackPageId;
+ sal_uInt16 m_nNotePageId;
+ sal_uInt16 m_nIndentPage;
+
+protected:
+ virtual void PageCreated( sal_uInt16 nId, SfxTabPage &rPage );
+ virtual short Ok();
+public:
+ SwInsertSectionTabDialog(Window* pParent, const SfxItemSet& rSet, SwWrtShell& rSh);
+ virtual ~SwInsertSectionTabDialog();
+
+ void SetSectionData(SwSectionData const& rSect);
+ SwSectionData * GetSectionData() { return m_pSectionData.get(); }
+};
+
+class SwSectionPropertyTabDialog : public SfxTabDialog
+{
+ SwWrtShell& rWrtSh;
+
+ sal_uInt16 m_nColumnPageId;
+ sal_uInt16 m_nBackPageId;
+ sal_uInt16 m_nNotePageId;
+ sal_uInt16 m_nIndentPage;
+
+protected:
+ virtual void PageCreated( sal_uInt16 nId, SfxTabPage &rPage );
+public:
+ SwSectionPropertyTabDialog(Window* pParent, const SfxItemSet& rSet, SwWrtShell& rSh);
+ virtual ~SwSectionPropertyTabDialog();
+};
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */