]> git.lyx.org Git - lyx.git/blobdiff - src/frontends/xforms/FormVCLog.C
fix crash with "save as"
[lyx.git] / src / frontends / xforms / FormVCLog.C
index 0fd056768cd1705f51e9a6a8ddc036ec43eca0e9..2c6be8eeb7bd570ac8cface9a308b9340e9c169e 100644 (file)
@@ -1,47 +1,39 @@
-/* FormVCLog.C
- * (C) 2001 LyX Team
- * John Levon, moz@compsoc.man.ac.uk
+/**
+ * \file FormVCLog.C
+ * This file is part of LyX, the document processor.
+ * Licence details can be found in the file COPYING.
+ *
+ * \author John Levon
+ *
+ * Full author contact details are available in file CREDITS
  */
 
 #include <config.h>
-
-#include FORMS_H_LOCATION
+#include "Lsstream.h"
 
 #ifdef __GNUG__
 #pragma implementation
 #endif
 
-#include "gettext.h" 
+#include "xformsBC.h"
+#include "ControlVCLog.h"
 #include "FormVCLog.h"
-#include "form_browser.h"
-#include "LyXView.h"
-#include "Dialogs.h"
-#include "lyxrc.h"
-#include "buffer.h"
+#include "forms/form_browser.h"
+#include "gettext.h"
+#include FORMS_H_LOCATION
 
-using SigC::slot;
 
-FormVCLog::FormVCLog(LyXView * lv, Dialogs * d)
-       : FormBrowser(lv, d, _("Version Control Log"))
-{
-       // let the dialog be shown
-       // This is a permanent connection so we won't bother
-       // storing a copy because we won't be disconnecting.
-       d->showVCLogFile.connect(slot(this, &FormVCLog::show));
-}
+FormVCLog::FormVCLog()
+       : FormCB<ControlVCLog, FormBrowser>(_("Version Control Log"))
+{}
 
 
 void FormVCLog::update()
 {
-       if (!dialog_.get() || !lv_->view()->available())
-               return;
-       const string logfile = lv_->view()->buffer()->lyxvc.getLogFile();
-
        fl_clear_browser(dialog_->browser);
 
-       if (logfile=="" || !fl_load_browser(dialog_->browser, logfile.c_str()))
-               fl_add_browser_line(dialog_->browser, _("No version control log file available"));
+       ostringstream ss;
+       controller().getVCLogFile(ss);
 
-       lyx::unlink(logfile); 
+       fl_add_browser_line(dialog_->browser, ss.str().c_str());
 }