Kaydet (Commit) dd8c2352 authored tarafından Eike Rathke's avatar Eike Rathke

introduce ODFSaneDefaultVersion; ODFDefaultVersion is a mess, mess, mess..

A running ODFVER_LATEST is fine for configuration purposes, but not for
determining how to store a feature.

Change-Id: I8ebc13f900f62f8c36d2cdc50a18855fc6693527
üst 009762b0
...@@ -51,7 +51,14 @@ public: ...@@ -51,7 +51,14 @@ public:
E_USERAUTOSAVE, E_USERAUTOSAVE,
}; };
// keep enum values sorted that a less or greater compare maps to older and newer versions! /** Keep enum values sorted that a less or greater compare maps to older
and newer versions.
Do not change values, they are stored in the configuration.
ODFVER_LATEST designates the "current greatest and latest".
When adding a new value or ODFVER_LATEST designates a new real version
(plus extensions) adjust the mapping in
SvtSaveOptions::GetODFSaneDefaultVersion().
*/
enum ODFDefaultVersion enum ODFDefaultVersion
{ {
ODFVER_UNKNOWN = 0, // unknown ODFVER_UNKNOWN = 0, // unknown
...@@ -60,11 +67,23 @@ public: ...@@ -60,11 +67,23 @@ public:
DO_NOT_USE = 3, // Do not use this, only here for compatibility with pre OOo 3.2 configuration DO_NOT_USE = 3, // Do not use this, only here for compatibility with pre OOo 3.2 configuration
ODFVER_012 = 4, // ODF 1.2 ODFVER_012 = 4, // ODF 1.2
ODFVER_012_EXT_COMPAT = 8, // ODF 1.2 extended, but with compatibility fallbacks ODFVER_012_EXT_COMPAT = 8, // ODF 1.2 extended, but with compatibility fallbacks
ODFVER_013 = 9, // ODF 1.3
ODFVER_LATEST = SAL_MAX_ENUM, // ODF latest version with enhancements ODFVER_LATEST = SAL_MAX_ENUM, // ODF latest version with enhancements
}; };
/// Enums that allow a sane comparison of versions, without LATEST.
enum ODFSaneDefaultVersion
{
ODFSVER_EXTENDED = 1, // bit designating extensions are allowed
ODFSVER_010 = 2, // ODF 1.0
ODFSVER_011 = 4, // ODF 1.1
ODFSVER_012 = 6, // ODF 1.2
ODFSVER_012_EXT_COMPAT = 9, // ODF 1.2 extended, but with compatibility fallbacks
ODFSVER_012_EXTENDED = 11, // ODF 1.2 extended
ODFSVER_013 = 12, // ODF 1.3
ODFSVER_013_EXTENDED = 13 // ODF 1.3 extended
};
SvtSaveOptions(); SvtSaveOptions();
virtual ~SvtSaveOptions(); virtual ~SvtSaveOptions();
...@@ -117,6 +136,7 @@ public: ...@@ -117,6 +136,7 @@ public:
void SetODFDefaultVersion( ODFDefaultVersion eVersion ); void SetODFDefaultVersion( ODFDefaultVersion eVersion );
ODFDefaultVersion GetODFDefaultVersion() const; ODFDefaultVersion GetODFDefaultVersion() const;
ODFSaneDefaultVersion GetODFSaneDefaultVersion() const;
bool IsUseSHA1InODF12() const; bool IsUseSHA1InODF12() const;
......
...@@ -1005,6 +1005,30 @@ SvtSaveOptions::ODFDefaultVersion SvtSaveOptions::GetODFDefaultVersion() const ...@@ -1005,6 +1005,30 @@ SvtSaveOptions::ODFDefaultVersion SvtSaveOptions::GetODFDefaultVersion() const
return pImp->pSaveOpt->GetODFDefaultVersion(); return pImp->pSaveOpt->GetODFDefaultVersion();
} }
SvtSaveOptions::ODFSaneDefaultVersion SvtSaveOptions::GetODFSaneDefaultVersion() const
{
const ODFSaneDefaultVersion NOW_CURRENT_LATEST = ODFSVER_012_EXTENDED;
switch (pImp->pSaveOpt->GetODFDefaultVersion())
{
default:
assert(!"map new ODFDefaultVersion to ODFSaneDefaultVersion");
break;
case ODFVER_UNKNOWN:
case ODFVER_LATEST:
return NOW_CURRENT_LATEST;
case ODFVER_010:
return ODFSVER_010;
case ODFVER_011:
return ODFSVER_011;
case ODFVER_012:
return ODFSVER_012;
case ODFVER_012_EXT_COMPAT:
return ODFSVER_012_EXT_COMPAT;
}
return NOW_CURRENT_LATEST;
}
bool SvtSaveOptions::IsUseSHA1InODF12() const bool SvtSaveOptions::IsUseSHA1InODF12() const
{ {
return pImp->pSaveOpt->IsUseSHA1InODF12(); return pImp->pSaveOpt->IsUseSHA1InODF12();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment