]> git.lyx.org Git - lyx.git/blobdiff - src/trans_mgr.h
work around for bug reported by Mario Morandini
[lyx.git] / src / trans_mgr.h
index 7e23cc46dd81c7b721e17915820f942cad25f25a..4507f48272cef9a03678d5ec5252179452b7e10d 100644 (file)
@@ -20,11 +20,11 @@ public:
        ///
        virtual ~TransState() {}
        ///
-       virtual string normalkey(char, char *) = 0;
+       virtual string const normalkey(char) = 0;
        ///
        virtual bool backspace() = 0;
        ///
-       virtual string deadkey(char, KmodInfo) = 0;
+       virtual string const deadkey(char, KmodInfo) = 0;
        ///
        static char const TOKEN_SEP;
 };
@@ -44,7 +44,7 @@ protected:
        ///
        KmodInfo deadkey2_info_;
        ///
-       KmodException comb_info_;
+       Keyexc comb_info_;
        ///
        TransState * init_state_;
        ///
@@ -61,80 +61,70 @@ public:
 
 
 /// Init State
-class TransInitState: 
-       virtual public TransFSMData,
-       public TransState {
+class TransInitState : virtual public TransFSMData, public TransState {
 public:
-               ///
-               TransInitState();
-               ///
-               virtual string normalkey(char, char *);
-               ///
-               virtual bool backspace() { return true; }
-               ///
-               virtual string deadkey(char, KmodInfo);
+       ///
+       TransInitState();
+       ///
+       virtual string const normalkey(char);
+       ///
+       virtual bool backspace() { return true; }
+       ///
+       virtual string const deadkey(char, KmodInfo);
 };
 
 
 /// Deadkey State
-class TransDeadkeyState: 
-       virtual public TransFSMData,
-       public TransState {
+class TransDeadkeyState : virtual public TransFSMData, public TransState {
 public:
-               ///
-               TransDeadkeyState();
-               ///
-               virtual string normalkey(char, char *);
-               ///
-               virtual bool backspace()
-       {
+       ///
+       TransDeadkeyState();
+       ///
+       virtual string const normalkey(char);
+       ///
+       virtual bool backspace() {
                currentState = init_state_;
                return false;
        }
-               ///
-               virtual string deadkey(char, KmodInfo);
+       ///
+       virtual string const deadkey(char, KmodInfo);
 };
 
 
 /// Combined State
-class TransCombinedState: 
-       virtual public TransFSMData,
-       public TransState {
+class TransCombinedState : virtual public TransFSMData, public TransState {
 public:
-               ///
-               TransCombinedState();
-               ///
-               virtual string normalkey(char, char *);
-               ///
-               virtual bool backspace()
-       {
+       ///
+       TransCombinedState();
+       ///
+       virtual string const normalkey(char);
+       ///
+       virtual bool backspace() {
                // cancel the second deadkey
                deadkey2_ = 0;
                deadkey2_info_.accent = TEX_NOACCENT;
                currentState = deadkey_state_;
-               
+
                return false;
        }
-               ///
-               virtual string deadkey(char, KmodInfo);
+       ///
+       virtual string const deadkey(char, KmodInfo);
 };
 
 
 ///
-class TransFSM:        
-       virtual public TransFSMData,
-       public TransInitState,
-       public TransDeadkeyState,
-       public TransCombinedState
-{
+class TransFSM : virtual public TransFSMData,
+                public TransInitState,
+                public TransDeadkeyState,
+                public TransCombinedState {
 public:
        ///
        TransFSM();
 };
 
+
 ///
-class TransManager
-{
+class TransManager {
 private:
        ///
        TransFSM trans_fsm_;
@@ -145,11 +135,11 @@ private:
        ///
        Trans * t2_;
        ///
-       static Trans default_;
+       static Trans default_;
        ///
        CharacterSet chset_;
        ///
-       void insert(string, LyXText *);
+       void insert(string const &, LyXText *);
        ///
        void insertVerbatim(string const &, LyXText *);
 public:
@@ -168,30 +158,31 @@ public:
        ///
        void DisableKeymap();
        ///
-       bool setCharset(const char *);
+       bool setCharset(string const &);
        ///
-       bool backspace()
-       {
+       bool backspace() {
                return trans_fsm_.currentState->backspace();
        }
        ///
        void TranslateAndInsert(char, LyXText *);
        ///
-       inline string deadkey(char, KmodInfo);
+       string const deadkey(char, KmodInfo);
        ///
-       inline string normalkey(char, char *);
+       string const normalkey(char);
        ///
        void deadkey(char, tex_accent, LyXText *);
 };
 
 
-string TransManager::normalkey(char c, char * t)
+inline
+string const TransManager::normalkey(char c)
 {
-       return trans_fsm_.currentState->normalkey(c, t);
+       return trans_fsm_.currentState->normalkey(c);
 }
 
 
-string TransManager::deadkey(char c, KmodInfo t)
+inline
+string const TransManager::deadkey(char c, KmodInfo t)
 {
        return trans_fsm_.currentState->deadkey(c, t);
 }