]> git.lyx.org Git - lyx.git/blobdiff - src/lyxserver.C
small changes to ButtonController usage
[lyx.git] / src / lyxserver.C
index 9dafa73de03d39f75f065451b9873495829a8f23..d0ad5c7ce2e9734c4a0349da9492f97bcc6b94a3 100644 (file)
@@ -1,13 +1,13 @@
 // -*- C++ -*-
 /* This file is part of
- * ======================================================
+ * ====================================================== 
  * 
  *           LyX, The Document Processor
  *        
  *           Copyright 1995 Matthias Ettrich
- *           Copyright 1995-1999 The LyX Team.
+ *           Copyright 1995-2000 The LyX Team.
  *
- * ======================================================*/
+ * ====================================================== */
 
 /**
   Docu   : To use the lyxserver define the name of the pipe in your
@@ -38,7 +38,6 @@
 #include <config.h>
 
 #include <cstring>
-#include <cstdio>
 #include <sys/types.h>
 #include <sys/stat.h>
 #include <unistd.h>
@@ -54,6 +53,7 @@
 #include "lyxfunc.h"
 #include "lyx_main.h"
 #include "debug.h"
+#include "LyXAction.h"
 #include "support/lstrings.h"
 
 #ifdef __EMX__
@@ -66,6 +66,8 @@
 #include "os2_errortable.h"
 #endif
 
+using std::endl;
+
 // provide an empty mkfifo() if we do not have one. This disables the
 // lyxserver. 
 #ifndef HAVE_MKFIFO
@@ -118,7 +120,7 @@ void LyXComm::openConnection() {
                lyxerr << "LyXComm: Pipe " << tmp << " already exists.\n"
                       << "If no other LyX program is active, please delete"
                        " the pipe by hand and try again." << endl;
-               pipename = string();
+               pipename.erase();
                return;
        }
 #ifndef __EMX__
@@ -152,7 +154,7 @@ void LyXComm::openConnection() {
                       << strerror(errno) << endl;
                return;
        }
-       fl_add_io_callback(infd, FL_READ, C_LyXComm_callback, (void*)this);
+       fl_add_io_callback(infd, FL_READ, C_LyXComm_callback, this);
  
        // --- prepare output pipe ---------------------------------------
  
@@ -169,7 +171,7 @@ void LyXComm::openConnection() {
                lyxerr << "LyXComm: Pipe " << tmp << " already exists.\n"
                       << "If no other LyX program is active, please delete"
                        " the pipe by hand and try again." << endl;
-               pipename = string();
+               pipename.erase();
                return;
        }
 #ifndef __EMX__
@@ -289,7 +291,7 @@ void LyXComm::closeConnection() {
 // Receives messages and sends then to client
 void LyXComm::callback(int fd, void *v)
 {
-       LyXComm * c = (LyXComm *) v;
+       LyXComm * c = static_cast<LyXComm*>(v);
  
        if (lyxerr.debugging(Debug::LYXSERVER)) {
                lyxerr << "LyXComm: Receiving from fd " << fd << endl;
@@ -304,11 +306,11 @@ void LyXComm::callback(int fd, void *v)
        errno = 0;
        int status;
        // the single = is intended here.
-       while((status = read(fd,charbuf,CMDBUFLEN-1)))
+       while((status = read(fd, charbuf, CMDBUFLEN-1)))
        {// break and return in loop
                if(status > 0) // got something
                {
-                       charbuf[status]='\0'; // turn it into a c string
+                       charbuf[status]= '\0'; // turn it into a c string
                        lsbuf += strip(charbuf, '\r');
                        // commit any commands read
                        while(lsbuf.find('\n') != string::npos) // while still
@@ -317,7 +319,7 @@ void LyXComm::callback(int fd, void *v)
                        {
                                // split() grabs the entire string if
                                // the delim /wasn't/ found. ?:-P 
-                               lsbuf=split(lsbuf, cmd,'\n');
+                               lsbuf= split(lsbuf, cmd,'\n');
                                lyxerr[Debug::LYXSERVER]
                                        << "LyXComm: status:" << status
                                        << ", lsbuf:" << lsbuf 
@@ -341,14 +343,14 @@ void LyXComm::callback(int fd, void *v)
                        {
                                lyxerr << "LyxComm: truncated command: " 
                                       << lsbuf << endl;
-                               lsbuf.clear();
+                               lsbuf.erase();
                        }
                        break; // reset connection
                }
        }
        c->closeConnection();
        c->openConnection();
-       errno=0;
+       errno= 0;
 }
 
 extern "C" void C_LyXComm_callback(int fd, void *v)
@@ -401,7 +403,7 @@ LyXServer::~LyXServer()
        // modified june 1999 by stefano@zool.su.se to send as many bye
        // messages as there are clients, each with client's name.
        string message;
-       for (int i=0; i<numclients; i++) {
+       for (int i= 0; i<numclients; ++i) {
                message = "LYXSRV:" + clients[i] + ":bye\n";
                pipes.send(message);
        }
@@ -428,9 +430,10 @@ void LyXServer::callback(LyXServer * serv, string const & msg)
        bool server_only = false;
        while(*p) {
                // --- 1. check 'header' ---
-               if (strncmp(p, "LYXSRV:", 7)==0) {
+
+               if (strncmp(p, "LYXSRV:", 7) == 0) {
                        server_only = true; 
-               } else if(0!=strncmp(p, "LYXCMD:", 7)) {
+               } else if(0!= strncmp(p, "LYXCMD:", 7)) {
                        lyxerr << "LyXServer: Unknown request" << endl;
                        return;
                }
@@ -440,7 +443,7 @@ void LyXServer::callback(LyXServer * serv, string const & msg)
                string client;
                while(*p && *p != ':')
                        client += char(*p++);
-               if(*p == ':') p++;
+               if(*p == ':') ++p;
                if(!*p) return;
                
                // --- 3. get function name ---
@@ -453,7 +456,7 @@ void LyXServer::callback(LyXServer * serv, string const & msg)
                if(!server_only && *p == ':' && *(++p)) {
                        while(*p && *p != '\n')
                                arg += char(*p++);
-                       if(*p) p++;
+                       if(*p) ++p;
                }
  
                lyxerr[Debug::LYXSERVER]
@@ -469,16 +472,16 @@ void LyXServer::callback(LyXServer * serv, string const & msg)
                        // we are listening.
                        if (cmd == "hello") {
                                // One more client
-                               if(serv->numclients==MAX_CLIENTS){ //paranoid check
+                               if(serv->numclients == MAX_CLIENTS){ //paranoid check
                                        lyxerr[Debug::LYXSERVER]
                                                << "LyXServer: too many clients..."
                                                << endl;
                                        return;
                                }
-                               int i=0; //find place in clients[]
+                               int i= 0; //find place in clients[]
                                while (!serv->clients[i].empty() 
                                       && i<serv->numclients) 
-                                       i++;
+                                       ++i;
                                serv->clients[i] = client;
                                serv->numclients++;
                                buf = "LYXSRV:" + client + ":hello\n";
@@ -487,15 +490,15 @@ void LyXServer::callback(LyXServer * serv, string const & msg)
                                        << client << endl;
                                serv->pipes.send(buf);
                        } else if (cmd == "bye") {
-                               // If clients==0 maybe we should reset the pipes
+                               // If clients == 0 maybe we should reset the pipes
                                // to prevent fake callbacks
-                               int i; //look if client is registered
-                               for (i=0; i<serv->numclients; i++) {
+                               int i = 0; //look if client is registered
+                               for (; i < serv->numclients; ++i) {
                                        if (serv->clients[i] == client) break;
                                }
-                               if (i<serv->numclients) {
+                               if (i < serv->numclients) {
                                        serv->numclients--;
-                                       serv->clients[i].clear();
+                                       serv->clients[i].erase();
                                        lyxerr[Debug::LYXSERVER]
                                                << "LyXServer: Client "
                                                << client << " said goodbye"
@@ -524,7 +527,7 @@ void LyXServer::callback(LyXServer * serv, string const & msg)
                        //int action = -1;
                        string rval, buf;
                    
-                       if (action>=0) {
+                       if (action>= 0) {
                                rval = serv->func->Dispatch(action, arg.c_str());
                        } else {
                                rval = "Unknown command";