summaryrefslogtreecommitdiff
path: root/starmath/inc/symbol.hxx
diff options
context:
space:
mode:
Diffstat (limited to 'starmath/inc/symbol.hxx')
-rw-r--r--starmath/inc/symbol.hxx20
1 files changed, 16 insertions, 4 deletions
diff --git a/starmath/inc/symbol.hxx b/starmath/inc/symbol.hxx
index 503859485095..621538790300 100644
--- a/starmath/inc/symbol.hxx
+++ b/starmath/inc/symbol.hxx
@@ -38,7 +38,10 @@
#include <map>
#include <vector>
#include <set>
+#include <functional>
+#include <algorithm>
+#include "unomodel.hxx"
#include "utility.hxx"
#include "smmod.hxx"
@@ -79,24 +82,24 @@ class SmSym
String m_aName;
String m_aExportName;
String m_aSetName;
- sal_Unicode m_cChar;
+ sal_UCS4 m_cChar;
BOOL m_bPredefined;
BOOL m_bDocSymbol;
public:
SmSym();
- SmSym(const String& rName, const Font& rFont, sal_Unicode cChar,
+ SmSym(const String& rName, const Font& rFont, sal_UCS4 cChar,
const String& rSet, BOOL bIsPredefined = FALSE);
SmSym(const SmSym& rSymbol);
SmSym& operator = (const SmSym& rSymbol);
const Font& GetFace() const { return m_aFace; }
- sal_Unicode GetCharacter() const { return m_cChar; }
+ sal_UCS4 GetCharacter() const { return m_cChar; }
const String& GetName() const { return m_aName; }
void SetFace( const Font& rFont ) { m_aFace = rFont; }
- void SetCharacter( sal_Unicode cChar ) { m_cChar = cChar; }
+ void SetCharacter( sal_UCS4 cChar ) { m_cChar = cChar; }
//! since the symbol name is also used as key in the map it should not be possible to change the name
//! because ten the key would not be the same as its supposed copy here
@@ -133,6 +136,15 @@ typedef std::map< String, SmSym, lt_String > SymbolMap_t;
// vector of pointers to the actual symbols in the above container
typedef std::vector< const SmSym * > SymbolPtrVec_t;
+struct lt_SmSymPtr : public std::binary_function< const SmSym *, const SmSym *, bool >
+{
+ bool operator() ( const SmSym *pSym1, const SmSym *pSym2 )
+ {
+ return pSym1->GetCharacter() < pSym2->GetCharacter();
+ }
+};
+
+
class SmSymbolManager : public SfxListener
{
SymbolMap_t m_aSymbols;