]> git.lyx.org Git - lyx.git/blobdiff - src/support/lyxlib.h
small changes and two patches from Dekel
[lyx.git] / src / support / lyxlib.h
index 87a5aaee80043f9170072a2cc42596dd3978b851..acaa2b0e4eb70f065d89683d6d8f0ddb5f25791a 100644 (file)
@@ -1,47 +1,99 @@
 // -*- C++ -*-
 /* This file is part of
- * ======================================================
+ * ====================================================== 
  * 
  *           LyX, The Document Processor
  *        
- *           Copyright (C) 1995 Matthias Ettrich
- *           Copyright (C) 1995-1999 The LyX Team.
+ *           Copyright 1995 Matthias Ettrich
+ *           Copyright 1995-2000 The LyX Team.
  *
- * ======================================================*/
+ * ====================================================== */
 
 #ifndef LYX_LIB_H
 #define LYX_LIB_H
 
-#include <ctime>
 #include "LString.h"
-#include "gettext.h"
-#include "support/filetools.h"
-
-/// generates an checksum
-unsigned long lyxsum(char const * file);
-
-/// returns a date string
-inline char * date() 
-{
-       time_t tid;
-       if ((tid=time(0)) == (time_t)-1)
-               return (char*)0;
-       else
-               return (ctime(&tid));
-}
-
 
 // Where can I put this?  I found the occurence of the same code
 // three/four times. Don't you think it better to use a macro definition
 // (an inlined member of some class)?
+
+// This should have been a namespace
+#ifdef CXX_WORKING_NAMESPACES
 ///
-inline string getUserName()
-{
-       string userName(GetEnv("LOGNAME"));
-       if (userName.empty())
-               userName = GetEnv("USER");
-       if (userName.empty())
-               userName = _("unknown");
-       return userName;
+namespace lyx {
+       ///
+       char * getcwd(char * buffer, size_t size);
+       ///
+       int chdir(char const * name);
+        ///
+        int chdir(string const & name);
+       /// Returns false it it fails
+       bool rename(char const * from, char const * to);
+        /// Returns false if it fails
+        bool rename(string const & from, string const & to);
+       /// Returns false it it fails
+       bool copy(string const & from, string const & to);
+       /// generates a checksum
+       unsigned long sum(char const * file);
+       /// generates a checksum
+       unsigned long sum(string const & file);
+       /// returns a date string (not used currently)
+       char * date(); 
+       /// returns the name of the user (not used currently)
+       string const getUserName();
+       ///
+       int kill(int pid, int sig);
+       ///
+       void abort();
+        ///
+        int mkdir(string const & pathname, unsigned long int mode);
+       ///
+       int putenv(char const * str);
+        ///
+        int unlink(string const & file);
+        ///
+        int rmdir(string const & file);
+        ///
+        int atoi(string const & nstr);
 }
+#else
+///
+struct lyx {
+       ///
+       static char * getcwd(char * buffer, size_t size);
+       ///
+       static int chdir(char const * name);
+       ///
+       static int chdir(string const & name);
+       /// Returns false it it fails
+       static bool rename(char const * from, char const * to);
+        /// Returns false if it fails
+        static bool rename(string const & from, string const & to);
+       /// Returns false it it fails
+       static bool copy(string const & from, string const & to);
+       /// generates a checksum
+       static unsigned long sum(char const * file);
+       /// generates a checksum
+       static unsigned long sum(string const & file);
+       /// returns a date string (not used currently)
+       static char * date(); 
+       /// returns the name of the user (not used currently)
+       static string const getUserName();
+       ///
+       static int kill(int pid, int sig);
+       ///
+       static void abort();
+       ///
+       static int mkdir(string const & pathname, unsigned long int mode);
+       ///
+       static int putenv(char const * str);
+        ///
+        static int unlink(string const & file);
+        ///
+        static int rmdir(string const & file);
+        ///
+        static int atoi(string const & nstr);
+};
+#endif // CXX_WORKING_NAMESPACES
 #endif