]> git.lyx.org Git - lyx.git/blobdiff - src/support/lyxlib.h
Display error/warning dialogs if possible.
[lyx.git] / src / support / lyxlib.h
index ecf3289b617159bdae465937cc9fcc45de07a7e5..aacb7a6342a24d8f5322deb3a268975caa3e9256 100644 (file)
 #ifndef LYX_LIB_H
 #define LYX_LIB_H
 
-#include "LString.h"
+#include "support/filename.h"
+
+#include <string>
+
 
 namespace lyx {
 namespace support {
 
 /// get the current working directory
-string const getcwd();
+FileName const getcwd();
 /// change to a directory, 0 is returned on success.
-int chdir(string const & name);
+int chdir(FileName const & name);
+/// Change file permissions
+bool chmod(FileName const & file, unsigned long int mode);
 /**
  * rename a file, returns false if it fails.
  * It can handle renames across partitions.
  */
-bool rename(string const & from, string const & to);
+bool rename(FileName const & from, FileName const & to);
 /// copy a file, returns false it it fails
-bool copy(string const & from, string const & to);
+bool copy(FileName const & from, FileName const & to,
+          unsigned long int mode = (unsigned long int)-1);
 /// generates a checksum of a file
-unsigned long sum(string const & file);
+unsigned long sum(FileName const & file);
 /// FIXME: some point to this hmm ?
 int kill(int pid, int sig);
 /// FIXME: same here
 void abort();
 /// create the given directory with the given mode
-int mkdir(string const & pathname, unsigned long int mode);
-/// put a C string into the environment
-int putenv(char const * str);
+int mkdir(FileName const & pathname, unsigned long int mode);
 /// unlink the given file
-int unlink(string const & file);
-/// remove the given directory
-int rmdir(string const & file);
-/// convert the given string to an integer
-int atoi(string const & nstr);
-/// (securely) create a temporary file in the given dir with the given prefix
-string const tempName(string const & dir = string(),
-                     string const & mask = string());
+int unlink(FileName const & file);
+/// (securely) create a temporary file in the given dir with the given mask
+/// \p mask must be in filesystem encoding
+FileName const tempName(FileName const & dir = FileName(),
+                     std::string const & mask = std::string());
 
 
 /**
@@ -60,7 +61,7 @@ string const tempName(string const & dir = string(),
  *
  * This will check if 'var' is approx. equal to 'number' with error of 1/1000
  */
-inline bool float_equal(float var, float number, float error)
+inline bool float_equal(double var, double number, double error)
 {
        return (number - error <= var && var <= number + error);
 }