summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/sfx2/new.hxx23
-rw-r--r--sfx2/source/doc/new.cxx33
-rw-r--r--sw/source/uibase/app/docsh2.cxx24
3 files changed, 44 insertions, 36 deletions
diff --git a/include/sfx2/new.hxx b/include/sfx2/new.hxx
index aa53d4ce4ae7..48b6dab5cc38 100644
--- a/include/sfx2/new.hxx
+++ b/include/sfx2/new.hxx
@@ -27,6 +27,7 @@
#include <vcl/edit.hxx>
#include <vcl/fixed.hxx>
#include <sfx2/basedlgs.hxx>
+#include <o3tl/typed_flags_set.hxx>
@@ -38,11 +39,19 @@ class SfxObjectShell;
#define SFXWB_PREVIEW 0x0003
#define SFXWB_LOAD_TEMPLATE 0x0004
-#define SFX_LOAD_TEXT_STYLES 0x0001
-#define SFX_LOAD_FRAME_STYLES 0x0002
-#define SFX_LOAD_PAGE_STYLES 0x0004
-#define SFX_LOAD_NUM_STYLES 0x0008
-#define SFX_MERGE_STYLES 0x0010
+enum class SfxTemplateFlags
+{
+ NONE = 0x00,
+ LOAD_TEXT_STYLES = 0x01,
+ LOAD_FRAME_STYLES = 0x02,
+ LOAD_PAGE_STYLES = 0x04,
+ LOAD_NUM_STYLES = 0x08,
+ MERGE_STYLES = 0x10,
+};
+namespace o3tl
+{
+ template<> struct typed_flags<SfxTemplateFlags> : is_typed_flags<SfxTemplateFlags, 0x1f> {};
+}
#define RET_TEMPLATE_LOAD 100
@@ -65,8 +74,8 @@ public:
OUString GetTemplateFileName() const;
// load template methods
- sal_uInt16 GetTemplateFlags()const;
- void SetTemplateFlags(sal_uInt16 nSet);
+ SfxTemplateFlags GetTemplateFlags() const;
+ void SetTemplateFlags(SfxTemplateFlags nSet);
};
#endif
diff --git a/sfx2/source/doc/new.cxx b/sfx2/source/doc/new.cxx
index 8a718b99338f..e62676bca661 100644
--- a/sfx2/source/doc/new.cxx
+++ b/sfx2/source/doc/new.cxx
@@ -165,8 +165,8 @@ public:
bool IsTemplate() const;
OUString GetTemplateFileName() const;
- sal_uInt16 GetTemplateFlags()const;
- void SetTemplateFlags(sal_uInt16 nSet);
+ SfxTemplateFlags GetTemplateFlags() const;
+ void SetTemplateFlags(SfxTemplateFlags nSet);
};
IMPL_LINK_NOARG(SfxNewFileDialog_Impl, Update)
@@ -340,27 +340,27 @@ OUString SfxNewFileDialog_Impl::GetTemplateFileName() const
GetSelectedTemplatePos()-1);
}
-sal_uInt16 SfxNewFileDialog_Impl::GetTemplateFlags()const
+SfxTemplateFlags SfxNewFileDialog_Impl::GetTemplateFlags()const
{
- sal_uInt16 nRet = m_pTextStyleCB->IsChecked() ? SFX_LOAD_TEXT_STYLES : 0;
+ SfxTemplateFlags nRet = m_pTextStyleCB->IsChecked() ? SfxTemplateFlags::LOAD_TEXT_STYLES : SfxTemplateFlags::NONE;
if(m_pFrameStyleCB->IsChecked())
- nRet |= SFX_LOAD_FRAME_STYLES;
+ nRet |= SfxTemplateFlags::LOAD_FRAME_STYLES;
if(m_pPageStyleCB->IsChecked())
- nRet |= SFX_LOAD_PAGE_STYLES;
+ nRet |= SfxTemplateFlags::LOAD_PAGE_STYLES;
if(m_pNumStyleCB->IsChecked())
- nRet |= SFX_LOAD_NUM_STYLES;
+ nRet |= SfxTemplateFlags::LOAD_NUM_STYLES;
if(m_pMergeStyleCB->IsChecked())
- nRet |= SFX_MERGE_STYLES;
+ nRet |= SfxTemplateFlags::MERGE_STYLES;
return nRet;
}
-void SfxNewFileDialog_Impl::SetTemplateFlags(sal_uInt16 nSet)
+void SfxNewFileDialog_Impl::SetTemplateFlags(SfxTemplateFlags nSet)
{
- m_pTextStyleCB->Check( 0 != (nSet&SFX_LOAD_TEXT_STYLES ));
- m_pFrameStyleCB->Check( 0 != (nSet&SFX_LOAD_FRAME_STYLES));
- m_pPageStyleCB->Check( 0 != (nSet&SFX_LOAD_PAGE_STYLES ));
- m_pNumStyleCB->Check( 0 != (nSet&SFX_LOAD_NUM_STYLES ));
- m_pMergeStyleCB->Check( 0 != (nSet&SFX_MERGE_STYLES ));
+ m_pTextStyleCB->Check( bool(nSet & SfxTemplateFlags::LOAD_TEXT_STYLES ));
+ m_pFrameStyleCB->Check( bool(nSet & SfxTemplateFlags::LOAD_FRAME_STYLES));
+ m_pPageStyleCB->Check( bool(nSet & SfxTemplateFlags::LOAD_PAGE_STYLES ));
+ m_pNumStyleCB->Check( bool(nSet & SfxTemplateFlags::LOAD_NUM_STYLES ));
+ m_pMergeStyleCB->Check( bool(nSet & SfxTemplateFlags::MERGE_STYLES ));
}
@@ -467,13 +467,12 @@ OUString SfxNewFileDialog::GetTemplateFileName() const
return pImpl->GetTemplateFileName();
}
-sal_uInt16 SfxNewFileDialog::GetTemplateFlags()const
+SfxTemplateFlags SfxNewFileDialog::GetTemplateFlags()const
{
return pImpl->GetTemplateFlags();
-
}
-void SfxNewFileDialog::SetTemplateFlags(sal_uInt16 nSet)
+void SfxNewFileDialog::SetTemplateFlags(SfxTemplateFlags nSet)
{
pImpl->SetTemplateFlags(nSet);
}
diff --git a/sw/source/uibase/app/docsh2.cxx b/sw/source/uibase/app/docsh2.cxx
index f3056be8a357..f9fba49adc50 100644
--- a/sw/source/uibase/app/docsh2.cxx
+++ b/sw/source/uibase/app/docsh2.cxx
@@ -475,15 +475,15 @@ void SwDocShell::Execute(SfxRequest& rReq)
static bool bMerge = false;
sal_uInt16 nRet = USHRT_MAX;
- sal_uInt16 nFlags = bFrame ? SFX_LOAD_FRAME_STYLES : 0;
+ SfxTemplateFlags nFlags = bFrame ? SfxTemplateFlags::LOAD_FRAME_STYLES : SfxTemplateFlags::NONE;
if(bPage)
- nFlags|= SFX_LOAD_PAGE_STYLES;
+ nFlags |= SfxTemplateFlags::LOAD_PAGE_STYLES;
if(bNum)
- nFlags|= SFX_LOAD_NUM_STYLES;
- if(!nFlags || bText)
- nFlags|= SFX_LOAD_TEXT_STYLES;
+ nFlags |= SfxTemplateFlags::LOAD_NUM_STYLES;
+ if(nFlags == SfxTemplateFlags::NONE || bText)
+ nFlags |= SfxTemplateFlags::LOAD_TEXT_STYLES;
if(bMerge)
- nFlags|= SFX_MERGE_STYLES;
+ nFlags |= SfxTemplateFlags::MERGE_STYLES;
if ( pArgs )
{
@@ -493,7 +493,7 @@ void SwDocShell::Execute(SfxRequest& rReq)
aFileName = pTemplateItem->GetValue();
SFX_REQUEST_ARG( rReq, pFlagsItem, SfxInt32Item, SID_TEMPLATE_LOAD, false );
if ( pFlagsItem )
- nFlags = (sal_uInt16) pFlagsItem->GetValue();
+ nFlags = static_cast<SfxTemplateFlags>((sal_uInt16) pFlagsItem->GetValue());
}
}
@@ -570,12 +570,12 @@ void SwDocShell::Execute(SfxRequest& rReq)
if( !aFileName.isEmpty() )
{
SwgReaderOption aOpt;
- aOpt.SetTxtFmts( bText = (0 != (nFlags&SFX_LOAD_TEXT_STYLES) ));
- aOpt.SetFrmFmts( bFrame = (0 != (nFlags&SFX_LOAD_FRAME_STYLES)));
- aOpt.SetPageDescs( bPage = (0 != (nFlags&SFX_LOAD_PAGE_STYLES )));
- aOpt.SetNumRules( bNum = (0 != (nFlags&SFX_LOAD_NUM_STYLES )));
+ aOpt.SetTxtFmts( bText = bool(nFlags & SfxTemplateFlags::LOAD_TEXT_STYLES ));
+ aOpt.SetFrmFmts( bFrame = bool(nFlags & SfxTemplateFlags::LOAD_FRAME_STYLES));
+ aOpt.SetPageDescs( bPage = bool(nFlags & SfxTemplateFlags::LOAD_PAGE_STYLES ));
+ aOpt.SetNumRules( bNum = bool(nFlags & SfxTemplateFlags::LOAD_NUM_STYLES ));
//different meaning between SFX_MERGE_STYLES and aOpt.SetMerge!
- bMerge = 0 != (nFlags&SFX_MERGE_STYLES);
+ bMerge = bool(nFlags & SfxTemplateFlags::MERGE_STYLES);
aOpt.SetMerge( !bMerge );
SetError( LoadStylesFromFile( aFileName, aOpt, false ), OUString( OSL_LOG_PREFIX ));