From a2f947e3003b353f2ac0b5de63eab6b6d6483534 Mon Sep 17 00:00:00 2001
From: fluxgen <fluxgen>
Date: Mon, 17 Nov 2003 00:33:16 +0000
Subject: check for sstream header

---
 src/ClientPattern.cc    | 20 +++++++++++++++++---
 src/FbCommandFactory.cc | 25 ++++++++++++++++++++-----
 2 files changed, 37 insertions(+), 8 deletions(-)

diff --git a/src/ClientPattern.cc b/src/ClientPattern.cc
index 99f6b49..5c110fc 100644
--- a/src/ClientPattern.cc
+++ b/src/ClientPattern.cc
@@ -20,7 +20,7 @@
 // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
 // DEALINGS IN THE SOFTWARE.
 
-// $Id: ClientPattern.cc,v 1.4 2003/10/12 16:25:28 rathnor Exp $
+// $Id: ClientPattern.cc,v 1.5 2003/11/17 00:29:30 fluxgen Exp $
 
 #include "ClientPattern.hh"
 #include "RegExp.hh"
@@ -34,7 +34,6 @@
 
 
 #include <iostream>
-#include <sstream>
 #include <fstream>
 #include <string>
 #include <memory>
@@ -43,6 +42,21 @@
 // needed as well for index on some systems (e.g. solaris)
 #include <strings.h> 
 
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif // HAVE_CONFIG_H
+
+#ifdef HAVE_SSTREAM
+#include <sstream>
+#define FB_istringstream istringstream
+#elif HAVE_STRSTREAM 
+#include <strstream>
+#define FB_istringstream istrstream
+#else
+#error "You dont have sstream or strstream headers!"
+#endif // HAVE_STRSTREAM
+
+
 using namespace std;
 
 ClientPattern::ClientPattern():
@@ -120,7 +134,7 @@ ClientPattern::ClientPattern(const char *str):
                                              str+pos,
                                              '{', '}');
         if (err > 0) {
-            istringstream iss(number.c_str());
+            FB_istringstream iss(number.c_str());
             iss >> m_matchlimit;
             pos+=err;
         }
diff --git a/src/FbCommandFactory.cc b/src/FbCommandFactory.cc
index b0b5976..b62a9ce 100644
--- a/src/FbCommandFactory.cc
+++ b/src/FbCommandFactory.cc
@@ -20,7 +20,7 @@
 // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
 // DEALINGS IN THE SOFTWARE.
 
-// $Id: FbCommandFactory.cc,v 1.19 2003/10/25 22:11:22 fluxgen Exp $
+// $Id: FbCommandFactory.cc,v 1.20 2003/11/17 00:33:16 fluxgen Exp $
 
 #include "FbCommandFactory.hh"
 
@@ -36,7 +36,22 @@
 #include "FbTk/MacroCommand.hh"
 
 #include <string>
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif // HAVE_CONFIG_H
+
+#ifdef HAVE_SSTREAM
 #include <sstream>
+#define FB_istringstream istringstream
+#elif HAVE_STRSTREAM 
+#include <strstream>
+#define FB_istringstream istrstream
+#else
+#error "You dont have sstream or strstream headers!"
+#endif // HAVE_STRSTREAM
+
+using namespace std;
 
 // autoregister this module to command parser
 FbCommandFactory FbCommandFactory::s_autoreg;
@@ -141,13 +156,13 @@ FbTk::Command *FbCommandFactory::stringToCommand(const std::string &command,
     else if (command == "maximizehorizontal")
         return new CurrentWindowCmd(&FluxboxWindow::maximizeHorizontal);
     else if (command == "resize") {
-        std::istringstream is(arguments); 
+        FB_istringstream is(arguments.c_str()); 
         int dx = 0, dy = 0;
         is >> dx >> dy;
         return new ResizeCmd(dx, dy);
     }
     else if (command == "resizeto") {
-        std::istringstream is(arguments);
+        FB_istringstream is(arguments.c_str());
         int dx = 0, dy = 0;
         is >> dx >> dy;
         return new ResizeToCmd(dx, dy);
@@ -157,13 +172,13 @@ FbTk::Command *FbCommandFactory::stringToCommand(const std::string &command,
     else if (command == "resizevertical")
         return new ResizeCmd(0,atoi(arguments.c_str()));
     else if (command == "moveto") {
-       std::istringstream is(arguments);
+       FB_istringstream is(arguments.c_str());
        int dx = 0, dy = 0;
        is >> dx >> dy;
        return new MoveToCmd(dx,dy);    
     }
     else if (command == "move") {
-        std::istringstream is(arguments);
+        FB_istringstream is(arguments.c_str());
         int dx = 0, dy = 0;
         is >> dx >> dy;
         return new MoveCmd(dx, dy);
-- 
cgit v0.11.2