1. the latest documents loaded (lastfiles)
2. cursor positions of files closed (lastfilepos)
3. opened files when a lyx session is closed (lastopened)
- 4. bookmarks
+ 4. bookmarks
5. general purpose session info in the form of key/value pairs
*/
namespace lyx {
/** Write the session file.
*/
void writeFile() const;
-
+
/** Insert #file# into the lastfile dequeue.
This funtion inserts #file# into the last files list. If the file
already exists it is moved to the top of the list, else exist it
@param file the file to insert in the lastfile list.
*/
void addLastFile(std::string const & file);
-
+
/** add cursor position to the fname entry in the filepos map
@param fname file entry for which to save position information
@param pos position of the cursor when the file is closed.
*/
void saveFilePosition(std::string const & fname, FilePos pos);
-
+
/** clear lastopened file list
*/
void clearLastOpenedFiles();
-
- /** set lastopened file list
- @param files filenames of a list of opened files
+
+ /** add file to lastopened file list
+ @param file filename to add
*/
- void setLastOpenedFiles(std::vector<std::string> const & files);
-
+ void addLastOpenedFile(std::string const & file);
+
/** load saved cursor position from the fname entry in the filepos map
@param fname file entry for which to load position information
*/
FilePos loadFilePosition(std::string const & fname) const;
-
+
/// Return lastfiles container (deque)
LastFiles const lastFiles() const { return lastfiles; }
-
+
/// Return lastopened container (vector)
LastOpened const lastOpenedFiles() const { return lastopened; }
@bookmark bookmark to be saved
*/
void saveBookmark(Bookmark const & bookmark);
-
- /** return bookmark list. Non-const container is used since
+
+ /** return bookmark list. Non-const container is used since
bookmarks will be cleaned after use.
*/
BookmarkList & loadBookmarks() { return bookmarks; }
- /** set session info
+ /** set session info
@param key key of the value to store
@param value value, a string without newline ('\n')
*/
void saveSessionInfo(std::string const & key, std::string const & value);
/** load session info
- @param key a key to extract value from the session file
+ @param key a key to extract value from the session file
@param release whether or not clear the value. Default to true
since most of such values are supposed to be used only once.
*/
- std::string const loadSessionInfo(std::string const & key, bool release = true);
+ std::string const loadSessionInfo(std::string const & key, bool release = true);
private:
/// Default number of lastfiles.
unsigned int const default_num_last_files;
/// file to save session, determined in the constructor.
std::string session_file;
-
+
/// a list of lastfiles
LastFiles lastfiles;
/// a map to save session info
MiscInfo sessioninfo;
-
+
/// number of files in the lastfiles list.
unsigned int num_lastfiles;
-
+
/// a map of file positions
FilePosMap lastfilepos;
-
+
/// a list of lastopened files
LastOpened lastopened;
-
+
/** Read the session file.
Reads the #.lyx/session# at the beginning of the LyX session.
- This will read the session file (usually #.lyx/session#).
+ This will read the session file (usually #.lyx/session#).
@param file the file containing the session.
*/
void readFile();