summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cui/source/inc/cuires.hrc2
-rw-r--r--cui/source/options/optfltr.cxx6
-rw-r--r--cui/source/options/optfltr.hxx3
-rw-r--r--cui/source/options/optfltr.src4
-rw-r--r--include/unotools/fltrcfg.hxx3
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/Common.xcs6
-rw-r--r--unotools/source/config/fltrcfg.cxx23
7 files changed, 43 insertions, 4 deletions
diff --git a/cui/source/inc/cuires.hrc b/cui/source/inc/cuires.hrc
index 0b8cf5a6df32..4a887c292435 100644
--- a/cui/source/inc/cuires.hrc
+++ b/cui/source/inc/cuires.hrc
@@ -454,6 +454,8 @@
#define RID_SVXSTR_YES (RID_SVX_START + 1249)
#define RID_SVXSTR_NO (RID_SVX_START + 1250)
+#define RID_SVXSTR_CHG_SMARTART (RID_SVX_START + 1251)
+
#endif
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/cui/source/options/optfltr.cxx b/cui/source/options/optfltr.cxx
index d6ec2973974b..30409b4e8007 100644
--- a/cui/source/options/optfltr.cxx
+++ b/cui/source/options/optfltr.cxx
@@ -32,6 +32,7 @@ enum MSFltrPg2_CheckBoxEntries {
Writer,
Calc,
Impress,
+ SmartArt,
InvalidCBEntry
};
@@ -136,6 +137,7 @@ OfaMSFilterTabPage2::OfaMSFilterTabPage2( Window* pParent, const SfxItemSet& rSe
sChgToFromWriter(CUI_RES(RID_SVXSTR_CHG_WRITER)),
sChgToFromCalc(CUI_RES(RID_SVXSTR_CHG_CALC)),
sChgToFromImpress(CUI_RES(RID_SVXSTR_CHG_IMPRESS)),
+ sChgToFromSmartArt(CUI_RES(RID_SVXSTR_CHG_SMARTART)),
pCheckButtonData(0)
{
get(m_pCheckLBContainer, "checklbcontainer");
@@ -193,6 +195,8 @@ sal_Bool OfaMSFilterTabPage2::FillItemSet( SfxItemSet& )
&SvtFilterOptions::SetPowerPoint2Impress },
{ Impress, &SvtFilterOptions::IsImpress2PowerPoint,
&SvtFilterOptions::SetImpress2PowerPoint },
+ { SmartArt, &SvtFilterOptions::IsSmartArt2Shape,
+ &SvtFilterOptions::SetSmartArt2Shape },
{ InvalidCBEntry, 0, 0 }
};
@@ -238,6 +242,7 @@ void OfaMSFilterTabPage2::Reset( const SfxItemSet& )
InsertEntry( sChgToFromCalc, static_cast< sal_IntPtr >( Calc ) );
if ( aModuleOpt.IsModuleInstalled( SvtModuleOptions::E_SIMPRESS ) )
InsertEntry( sChgToFromImpress, static_cast< sal_IntPtr >( Impress ) );
+ InsertEntry( sChgToFromSmartArt, static_cast< sal_IntPtr >( SmartArt ), true, false );
static struct ChkCBoxEntries{
MSFltrPg2_CheckBoxEntries eType;
@@ -251,6 +256,7 @@ void OfaMSFilterTabPage2::Reset( const SfxItemSet& )
{ Calc, &SvtFilterOptions::IsCalc2Excel },
{ Impress, &SvtFilterOptions::IsPowerPoint2Impress },
{ Impress, &SvtFilterOptions::IsImpress2PowerPoint },
+ { SmartArt, &SvtFilterOptions::IsSmartArt2Shape },
{ InvalidCBEntry, NULL }
};
diff --git a/cui/source/options/optfltr.hxx b/cui/source/options/optfltr.hxx
index a81d5c698378..7ae67214cbc3 100644
--- a/cui/source/options/optfltr.hxx
+++ b/cui/source/options/optfltr.hxx
@@ -79,7 +79,8 @@ class OfaMSFilterTabPage2 : public SfxTabPage
OUString sChgToFromMath,
sChgToFromWriter,
sChgToFromCalc,
- sChgToFromImpress;
+ sChgToFromImpress,
+ sChgToFromSmartArt;
SvLBoxButtonData* pCheckButtonData;
OfaMSFilterTabPage2( Window* pParent, const SfxItemSet& rSet );
diff --git a/cui/source/options/optfltr.src b/cui/source/options/optfltr.src
index 628b26df8b57..41b378c05342 100644
--- a/cui/source/options/optfltr.src
+++ b/cui/source/options/optfltr.src
@@ -43,5 +43,9 @@ String RID_SVXSTR_CHG_IMPRESS
{
Text [ en-US ] = "PowerPoint to %PRODUCTNAME Impress or reverse";
};
+String RID_SVXSTR_CHG_SMARTART
+{
+ Text [ en-US ] = "SmartArt to %PRODUCTNAME shapes or reverse";
+};
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/include/unotools/fltrcfg.hxx b/include/unotools/fltrcfg.hxx
index 0356aeeb5d12..71425a3e62c3 100644
--- a/include/unotools/fltrcfg.hxx
+++ b/include/unotools/fltrcfg.hxx
@@ -79,6 +79,9 @@ public:
sal_Bool IsImpress2PowerPoint() const;
void SetImpress2PowerPoint( sal_Bool bFlag );
+ sal_Bool IsSmartArt2Shape() const;
+ void SetSmartArt2Shape( sal_Bool bFlag );
+
sal_Bool IsEnablePPTPreview() const;
sal_Bool IsEnableCalcPreview() const;
sal_Bool IsEnableWordPreview() const;
diff --git a/officecfg/registry/schema/org/openoffice/Office/Common.xcs b/officecfg/registry/schema/org/openoffice/Office/Common.xcs
index ccc6d12316b2..9484a5f2a761 100644
--- a/officecfg/registry/schema/org/openoffice/Office/Common.xcs
+++ b/officecfg/registry/schema/org/openoffice/Office/Common.xcs
@@ -3977,6 +3977,12 @@
</info>
<value>true</value>
</prop>
+ <prop oor:name="SmartArtToShapes" oor:type="xs:boolean" oor:nillable="false">
+ <info>
+ <desc>Specifies if OOXML SmartArt objects are converted into LO shapes.</desc>
+ </info>
+ <value>false</value>
+ </prop>
<prop oor:name="ImportWWFieldsAsEnhancedFields" oor:type="xs:boolean" oor:nillable="false">
<info>
<desc>Flag to control use of enhanced fields.</desc>
diff --git a/unotools/source/config/fltrcfg.cxx b/unotools/source/config/fltrcfg.cxx
index 29678a1991b4..09829dbcb911 100644
--- a/unotools/source/config/fltrcfg.cxx
+++ b/unotools/source/config/fltrcfg.cxx
@@ -48,6 +48,7 @@ using namespace com::sun::star::uno;
#define FILTERCFG_ENABLE_WORD_PREVIEW 0x80000
#define FILTERCFG_USE_ENHANCED_FIELDS 0x100000
#define FILTERCFG_WORD_WBCTBL 0x200000
+#define FILTERCFG_SMARTART_SHAPE_LOAD 0x400000
class SvtAppFilterOptions_Impl : public utl::ConfigItem
{
@@ -240,7 +241,8 @@ struct SvtFilterOptions_Impl
FILTERCFG_CALC_SAVE |
FILTERCFG_IMPRESS_LOAD |
FILTERCFG_IMPRESS_SAVE |
- FILTERCFG_USE_ENHANCED_FIELDS;
+ FILTERCFG_USE_ENHANCED_FIELDS |
+ FILTERCFG_SMARTART_SHAPE_LOAD;
Load();
}
@@ -314,7 +316,7 @@ const Sequence<OUString>& SvtFilterOptions::GetPropertyNames()
static Sequence<OUString> aNames;
if(!aNames.getLength())
{
- int nCount = 12;
+ int nCount = 13;
aNames.realloc(nCount);
static const char* aPropNames[] =
{
@@ -329,7 +331,8 @@ const Sequence<OUString>& SvtFilterOptions::GetPropertyNames()
"Export/EnablePowerPointPreview", // 8
"Export/EnableExcelPreview", // 9
"Export/EnableWordPreview", // 10
- "Import/ImportWWFieldsAsEnhancedFields" // 11
+ "Import/ImportWWFieldsAsEnhancedFields", // 11
+ "Import/SmartArtToShapes" // 12
};
OUString* pNames = aNames.getArray();
for(int i = 0; i < nCount; i++)
@@ -355,6 +358,7 @@ static sal_uLong lcl_GetFlag(sal_Int32 nProp)
case 9: nFlag = FILTERCFG_ENABLE_EXCEL_PREVIEW; break;
case 10: nFlag = FILTERCFG_ENABLE_WORD_PREVIEW; break;
case 11: nFlag = FILTERCFG_USE_ENHANCED_FIELDS; break;
+ case 12: nFlag = FILTERCFG_SMARTART_SHAPE_LOAD; break;
default: OSL_FAIL("illegal value");
}
@@ -597,6 +601,19 @@ void SvtFilterOptions::SetImpress2PowerPoint( sal_Bool bFlag )
SetModified();
}
+
+// -----------------------------------------------------------------------
+sal_Bool SvtFilterOptions::IsSmartArt2Shape() const
+{
+ return pImp->IsFlag( FILTERCFG_SMARTART_SHAPE_LOAD );
+}
+
+void SvtFilterOptions::SetSmartArt2Shape( sal_Bool bFlag )
+{
+ pImp->SetFlag( FILTERCFG_SMARTART_SHAPE_LOAD, bFlag );
+ SetModified();
+}
+
namespace
{
class theFilterOptions