Angus Leeming <[EMAIL PROTECTED]> writes:

| I remember having a rant sometime ago about the need for something better 
| than our current handling of file names. My proposal was to have a helper 
| class that would enable us to 'do the right thing' when reading/writing the 
| buffer to file:
| 
| class FileName {
| public:
|         FileName();
|         /** \param abs_filename the name of the path with full path.
|             \param save_abs_path should the file name be stored in the
|             LyX file as an absolute path or relative to the buffer?
|          */
|         FileName(string const & abs_filename, bool save_abs_path = true);
| 
|         bool empty() const { return name_.empty(); }
| 
|         string const absFilename() const { return name_; }
|         void absFilename(string const abs_filename);
| 
|         bool saveAbsPath() const { return save_abs_path_; }
|         void saveAbsPath(bool);
| private:
|         string name_;
|         bool save_abs_path_;
| };
| 
| Internally we use FileName::absFilename() but we check 
| FileName::saveAbsPath() when reading/writing to file.
| 
| The attached patch implements this and uses it for the graphics inset. (Also 
| removes a couple of #warnings as the code is fixed properly.)
| 
| Do people think this is a clean solution? Should I move the class into its 
| own files rather than putting it in support/filetools.[Ch]?

Well... I think the boost::path stuff would do this...

| Comments please.

boost::filesystem.

-- 
        Lgb

Reply via email to