]> git.lyx.org Git - lyx.git/blobdiff - src/trans.C
removed a warning from screen and added CFLAGS in lyx.spec.in.
[lyx.git] / src / trans.C
index 58a413f4acb38207df5e80d8f9c18ea005687dfe..b9c8834b4d7187fa831179887ad0a7c2b60f2a37 100644 (file)
@@ -1,6 +1,6 @@
 #include <config.h>
 
-#include <stdio.h>
+//#include <cstdio>
 
 #ifdef __GNUG__
 #pragma implementation "trans.h"
@@ -8,17 +8,17 @@
 
 #include "LyXView.h"
 #include "trans.h"
-#include "filetools.h"
+#include "support/filetools.h"
 #include "tex-strings.h"
 #include "lyxlex.h"
-#include "error.h"
+#include "debug.h"
 #include "trans_mgr.h"
 
 
 // KmodInfo
 KmodInfo::KmodInfo()
 {
-       exception_list=NULL;
+       exception_list=0;
 }
 
 
@@ -54,7 +54,7 @@ DefaultTrans::DefaultTrans()
 }
 
 
-LString DefaultTrans::process(char c,TransManager& k)
+string DefaultTrans::process(char c,TransManager& k)
 {
        char dummy[2]="?";
        dummy[0]=c;
@@ -70,7 +70,7 @@ Trans::Trans()
        int i;
 
        for(i=0; i<256; i++)
-               keymap_[i]=NULL;
+               keymap_[i]=0;
 
        for(i=0; i<TEX_MAX_ACCENT+1; i++)
                kmod_list_[i]=0;
@@ -84,7 +84,7 @@ Trans::~Trans()
 
 
 void Trans::InsertException(Trans::keyexc& exclist, char c,
-                           const LString& data,bool flag,tex_accent accent)
+                           const string& data,bool flag,tex_accent accent)
 {
        keyexc p;
 
@@ -120,7 +120,7 @@ void Trans::FreeKeymap()
        for(i=0; i<256; i++)
                if (keymap_[i]) {
                        delete keymap_[i];
-                       keymap_[i]=NULL;
+                       keymap_[i]=0;
                }
        for(i=0; i<TEX_MAX_ACCENT+1; i++)
                if (kmod_list_[i]) {
@@ -137,7 +137,7 @@ bool Trans::IsDefined()
 }
 
 
-const LString& Trans::GetName()
+const string& Trans::GetName()
 {
        return name_;
 }
@@ -160,11 +160,11 @@ struct keyword_item kmapTags[K_LAST-1] = {
 };
 
 
-tex_accent getkeymod(const LString&);
+tex_accent getkeymod(const string&);
 
 
-void Trans::AddDeadkey(tex_accent accent,const LString& keys,
-                      const LString& allowed)
+void Trans::AddDeadkey(tex_accent accent,const string& keys,
+                      const string& allowed)
 {
        if (kmod_list_[accent]) {
                FreeException(kmod_list_[accent]->exception_list);
@@ -181,12 +181,12 @@ void Trans::AddDeadkey(tex_accent accent,const LString& keys,
                kmod_list_[accent]->allowed = allowed;
        }
        
-       for(int i=0;i<keys.length();i++) {
-               char *temp;
-               temp=keymap_[(unsigned char)keys[i]]=new char[2];
-               temp[0]=0; temp[1]=accent;
+       for(string::size_type i = 0; i < keys.length(); ++i) {
+               char * temp;
+               temp = keymap_[(unsigned char)keys[i]] = new char[2];
+               temp[0] = 0; temp[1] = accent;
        }
-       kmod_list_[accent]->exception_list=NULL;
+       kmod_list_[accent]->exception_list=0;
 }
 
 
@@ -198,19 +198,21 @@ int Trans::Load(LyXLex &lex)
                switch(lex.lex()) {
                case KMOD:
                {
-                       if (lyxerr.debugging(Error::KBMAP))
-                               fprintf(stderr,"KMOD:   %s\n",lex.text());
+                       if (lyxerr.debugging(Debug::KBMAP))
+                               lyxerr << "KMOD:\t" << lex.text() << endl;
                        if (lex.next(true)) {
-                               if (lyxerr.debugging(Error::KBMAP))
-                                       fprintf(stderr, "key     `%s'\n", lex.text());
+                               if (lyxerr.debugging(Debug::KBMAP))
+                                       lyxerr << "key\t`" << lex.text()
+                                              << "'" << endl;
                        } else
                                return -1;
                        
-                       LString keys = lex.GetString();
+                       string keys = lex.GetString();
 
                        if (lex.next(true)) {
-                               if ( lyxerr.debugging(Error::KBMAP))
-                                       fprintf(stderr, "accent     `%s'\n", lex.text());
+                               if ( lyxerr.debugging(Debug::KBMAP))
+                                       lyxerr << "accent\t`" << lex.text()
+                                              << "'" << endl;
                        } else
                                return -1;
 
@@ -220,14 +222,13 @@ int Trans::Load(LyXLex &lex)
                                return -1;
 
                        if (lex.next(true)) {
-                               if (lyxerr.debugging(Error::KBMAP))
-                                       fprintf(stderr,
-                                               "allowed     `%s'\n",
-                                               lex.text());
+                               if (lyxerr.debugging(Debug::KBMAP))
+                                       lyxerr << "allowed\t`" << lex.text()
+                                              << "'" << endl;
                        } else
                                return -1;
 
-                       LString allowed = lex.GetString();
+                       string allowed = lex.GetString();
 
                        AddDeadkey(accent, keys, allowed);
                        break;
@@ -235,10 +236,10 @@ int Trans::Load(LyXLex &lex)
                case KCOMB: {
                        const char *str;
 
-                       lyxerr.debug("KCOMB:",Error::KBMAP);
+                       lyxerr[Debug::KBMAP] << "KCOMB:" << endl;
                        if (lex.next(true)) {
                                str=lex.text();
-                               lyxerr.debug(str,Error::KBMAP);
+                               lyxerr[Debug::KBMAP] << str << endl;
                        } else
                                return -1;
                        
@@ -247,14 +248,14 @@ int Trans::Load(LyXLex &lex)
 
                        if (lex.next(true)) {
                                str=lex.text();
-                               lyxerr.debug(str,Error::KBMAP);
+                               lyxerr[Debug::KBMAP] << str << endl;
                        } else
                                return -1;
 
                        tex_accent accent_2=getkeymod(str);
                        if (accent_2==TEX_NOACCENT) return -1;
 
-                       if (kmod_list_[accent_1]==NULL || kmod_list_[accent_2]==NULL)
+                       if (kmod_list_[accent_1]==0 || kmod_list_[accent_2]==0)
                                return -1;
 
                        // Find what key accent_2 is on - should check about accent_1 also
@@ -264,11 +265,12 @@ int Trans::Load(LyXLex &lex)
                                if (keymap_[key] && keymap_[key][0]==0 && keymap_[key][1]==accent_2)
                                        break;
                        
-                       LString allowed;
+                       string allowed;
 
                        if (lex.next()) {
                                allowed=lex.GetString();
-                               lyxerr.debug("allowed: "+allowed,Error::KBMAP);
+                               lyxerr[Debug::KBMAP] << "allowed: "
+                                                    << allowed << endl;
                        } else
                                return -1;
 
@@ -279,12 +281,13 @@ int Trans::Load(LyXLex &lex)
                        char key_from;
                        char *string_to;
 
-                       if (lyxerr.debugging(Error::KBMAP))
-                               fprintf(stderr, "KMAP: %s\n", lex.text());
+                       if (lyxerr.debugging(Debug::KBMAP))
+                               lyxerr << "KMAP:\t" << lex.text() << endl;
                        if (lex.next(true)) {
                                key_from=lex.text()[0];
-                               if (lyxerr.debugging(Error::KBMAP))
-                                       fprintf(stderr, "     `%s'\n", lex.text());
+                               if (lyxerr.debugging(Debug::KBMAP))
+                                       lyxerr << "\t`" << lex.text() << "'"
+                                              << endl;
                        } else
                                return -1;
 
@@ -292,8 +295,9 @@ int Trans::Load(LyXLex &lex)
                                char const *t = lex.text();
                                string_to = strcpy(new char[strlen(t)+1],t);
                                keymap_[(unsigned char)key_from]=string_to;
-                               if (lyxerr.debugging(Error::KBMAP))
-                                       fprintf(stderr, "     `%s'\n", string_to);
+                               if (lyxerr.debugging(Debug::KBMAP))
+                                       lyxerr << "\t`" << string_to << "'"
+                                              << endl;
                        } else
                                return -1;
 
@@ -304,25 +308,28 @@ int Trans::Load(LyXLex &lex)
                        char key;
                        const char *str;
 
-                       if (lyxerr.debugging(Error::KBMAP))
-                               fprintf(stderr, "KXMOD: %s\n", lex.text());
+                       if (lyxerr.debugging(Debug::KBMAP))
+                               lyxerr << "KXMOD:\t" << lex.text() << endl;
                        if (lex.next(true)) {
-                               if (lyxerr.debugging(Error::KBMAP))
-                                       fprintf(stderr, "     `%s'\n", lex.text());
+                               if (lyxerr.debugging(Debug::KBMAP))
+                                       lyxerr << "\t`" << lex.text() << "'"
+                                              << endl;
                                accent = getkeymod(lex.GetString());
                        } else
                                return -1;
 
                        if (lex.next(true)) {
-                               if (lyxerr.debugging(Error::KBMAP))
-                                       fprintf(stderr, "      `%s'\n", lex.text());
+                               if (lyxerr.debugging(Debug::KBMAP))
+                                       lyxerr << "\t`" << lex.text() << "'"
+                                              << endl;
                                key=lex.text()[0];
                        } else
                                return -1;
 
                        if (lex.next(true)) {
-                               if (lyxerr.debugging(Error::KBMAP))
-                                       fprintf(stderr, "      `%s'\n", lex.text());
+                               if (lyxerr.debugging(Debug::KBMAP))
+                                       lyxerr << "\t`" << lex.text() << "'"
+                                              << endl;
                                str=lex.text();
                        } else
                                return -1;
@@ -331,7 +338,7 @@ int Trans::Load(LyXLex &lex)
                        break;
                }
                case LyXLex::LEX_FEOF:
-                       lyxerr.debug("End of parsing",Error::LEX_PARSER);
+                       lyxerr[Debug::PARSER] << "End of parsing" << endl;
                        break;
                default:
                        lex.printError("ParseKeymapFile: "
@@ -345,7 +352,7 @@ int Trans::Load(LyXLex &lex)
 
 bool Trans::isAccentDefined(tex_accent accent,KmodInfo& i)
 {
-       if (kmod_list_[accent]!=NULL) {
+       if (kmod_list_[accent]!=0) {
                i=*kmod_list_[accent];
                return true;
        }
@@ -353,14 +360,14 @@ bool Trans::isAccentDefined(tex_accent accent,KmodInfo& i)
 }
 
 
-LString Trans::process(char c,TransManager& k)
+string Trans::process(char c,TransManager& k)
 {
        char dummy[2]="?";
        char *dt=dummy;
        char *t=Match(c);
        
     
-       if ((t==NULL && (*dt=c)) || (t[0]!=0 && (dt=t)) ){
+       if ((t==0 && (*dt=c)) || (t[0]!=0 && (dt=t)) ){
                return k.normalkey(c,dt);
        } else {
                return k.deadkey(c,*kmod_list_[(tex_accent)t[1]]);
@@ -368,9 +375,9 @@ LString Trans::process(char c,TransManager& k)
 }
 
 
-int Trans::Load(LString const &language)
+int Trans::Load(string const &language)
 {
-       LString filename = LibFileSearch("kbd", language, "kmap");
+       string filename = LibFileSearch("kbd", language, "kmap");
        if (filename.empty())
                return -1;
 
@@ -383,23 +390,24 @@ int Trans::Load(LString const &language)
        if (res==0) {
                name_=language;
        } else
-               name_.clean();
+               name_.clear();
 
        return res;
 }
 
 
-tex_accent getkeymod(LString const &p)
+tex_accent getkeymod(string const &p)
        /* return modifier - decoded from p and update p */
 {
        for (int i = 1; i <= TEX_MAX_ACCENT; i++) {
-               if (lyxerr.debugging(Error::KBMAP))
-                       fprintf(stderr,
-                               "p = %s, lyx_accent_table[%d].name = `%s'\n",
-                               p.c_str(), i, lyx_accent_table[i].name);
+               if (lyxerr.debugging(Debug::KBMAP))
+                       lyxerr << "p = " << p
+                              << ", lyx_accent_table[" << i
+                              <<"].name = `" << lyx_accent_table[i].name
+                              << "'" << endl;
                
-               if ( lyx_accent_table[i].name && p.contains(lyx_accent_table[i].name)) {
-                       lyxerr.debug("Found it!",Error::KBMAP);
+               if ( lyx_accent_table[i].name && contains(p, lyx_accent_table[i].name)) {
+                       lyxerr[Debug::KBMAP] << "Found it!" << endl;
                        return (tex_accent)i;
                }
        }