libcvd-members
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[libcvd-members] gvars3/src GUI.cc GUI_readline.cc


From: Edward Rosten
Subject: [libcvd-members] gvars3/src GUI.cc GUI_readline.cc
Date: Mon, 22 Oct 2007 22:20:44 +0000

CVSROOT:        /cvsroot/libcvd
Module name:    gvars3
Changes by:     Edward Rosten <edrosten>        07/10/22 22:20:44

Modified files:
        src            : GUI.cc GUI_readline.cc 

Log message:
        Fix for machines with readline.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/gvars3/src/GUI.cc?cvsroot=libcvd&r1=1.17&r2=1.18
http://cvs.savannah.gnu.org/viewcvs/gvars3/src/GUI_readline.cc?cvsroot=libcvd&r1=1.8&r2=1.9

Patches:
Index: GUI.cc
===================================================================
RCS file: /cvsroot/libcvd/gvars3/src/GUI.cc,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -b -r1.17 -r1.18
--- GUI.cc      18 Oct 2007 16:17:51 -0000      1.17
+++ GUI.cc      22 Oct 2007 22:20:44 -0000      1.18
@@ -73,55 +73,6 @@
        return false;
 }
 
-char* GV3ReadlineCommandGenerator(const char *szText, int nState)
-{
-       static vector<string> tags;
-       static vector<string>::iterator tag_i;
-       
-       if(!nState)
-       {
-               tags = GV3::tag_list();
-               tag_i = tags.begin();
-               
-       };
-
-       while(tag_i != tags.end())
-       {
-               int text_len = strlen(szText);
-               bool bEqualsAtEnd = false;
-               if(text_len>0)
-                 if(szText[text_len-1]=='=')
-                   bEqualsAtEnd = true;
-               string sCurrent = *tag_i;
-               string sComparison = *tag_i;
-               if(bEqualsAtEnd)
-                 sComparison = sComparison + "=";
-
-               tag_i++;
-
-               if(strncmp(szText, sComparison.c_str(), text_len) == 0)
-                 {
-                       //If it's a prefect match, complete with the value
-                       string sCompleted;
-                       if(text_len == sComparison.size())
-                         sCompleted = szText + ((bEqualsAtEnd?"":"=") + 
GV3::get_var(sCurrent));
-                       else
-                         sCompleted = sCurrent;
-                       
-                       char* r;
-                       
-                       if((r= (char*)malloc(sCompleted.size() + 1)) == NULL)
-                               return 0;
-
-                       strcpy(r, sCompleted.c_str());
-                       return r;
-               }
-       }
-
-       return 0;
-}
-
-
 
 
 GUI *GUI::mpReadlineCompleterGUI=NULL;

Index: GUI_readline.cc
===================================================================
RCS file: /cvsroot/libcvd/gvars3/src/GUI_readline.cc,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -b -r1.8 -r1.9
--- GUI_readline.cc     18 Oct 2007 16:17:51 -0000      1.8
+++ GUI_readline.cc     22 Oct 2007 22:20:44 -0000      1.9
@@ -20,6 +20,7 @@
 */
 
 #include "gvars3/instances.h"
+#include "gvars3/GUI.h"
 #include "gvars3/GUI_readline.h"
 
 #include <pthread.h>
@@ -146,13 +147,61 @@
                }
        }
 
-}
 
 char * GUI::ReadlineCommandGeneratorCB(const char *szText, int nState)
 {
   return mpReadlineCompleterGUI->ReadlineCommandGenerator(szText, nState);
 
 }
+char* GV3ReadlineCommandGenerator(const char *szText, int nState)
+{
+       static vector<string> tags;
+       static vector<string>::iterator tag_i;
+       
+       if(!nState)
+       {
+               tags = GV3::tag_list();
+               tag_i = tags.begin();
+               
+       };
+
+       while(tag_i != tags.end())
+       {
+               int text_len = strlen(szText);
+               bool bEqualsAtEnd = false;
+               if(text_len>0)
+                 if(szText[text_len-1]=='=')
+                   bEqualsAtEnd = true;
+               string sCurrent = *tag_i;
+               string sComparison = *tag_i;
+               if(bEqualsAtEnd)
+                 sComparison = sComparison + "=";
+
+               tag_i++;
+
+               if(strncmp(szText, sComparison.c_str(), text_len) == 0)
+                 {
+                       //If it's a prefect match, complete with the value
+                       string sCompleted;
+                       if(text_len == sComparison.size())
+                         sCompleted = szText + ((bEqualsAtEnd?"":"=") + 
GV3::get_var(sCurrent));
+                       else
+                         sCompleted = sCurrent;
+                       
+                       char* r;
+                       
+                       if((r= (char*)malloc(sCompleted.size() + 1)) == NULL)
+                               return 0;
+
+                       strcpy(r, sCompleted.c_str());
+                       return r;
+               }
+       }
+
+       return 0;
+}
+
+
 
 char * GUI::ReadlineCommandGenerator(const char *szText, int nState)
 {
@@ -191,3 +240,4 @@
   
 };
 
+}




reply via email to

[Prev in Thread] Current Thread [Next in Thread]