#include "Lexer.h"
#include "support/docstring.h"
+#include "support/FileName.h"
#include "support/gettext.h"
#include <QTextBrowser>
connect(findPB, SIGNAL(clicked()), this, SLOT(find()));
// FIXME: find via returnPressed() does not work!
connect(findLE, SIGNAL(returnPressed()), this, SLOT(find()));
+ connect(logTypeCO, SIGNAL(activated(int)),
+ this, SLOT(typeChanged(int)));
bc().setPolicy(ButtonPolicy::OkCancelPolicy);
}
+void GuiLog::typeChanged(int i)
+{
+ string const type =
+ fromqstr(logTypeCO->itemData(i).toString());
+ string ext;
+ if (type == "latex")
+ ext = "log";
+ else if (type == "bibtex")
+ ext = "blg";
+ else if (type == "index")
+ ext = "ilg";
+
+ if (!ext.empty())
+ logfile_.changeExtension(ext);
+
+ updateContents();
+}
+
+
void GuiLog::find()
{
logTB->find(findLE->text());
// Parsing of the data failed.
return false;
- if (logtype == "latex")
+ logTypeCO->setEnabled(logtype == "latex");
+ logTypeCO->clear();
+
+ FileName log(logfile);
+
+ if (logtype == "latex") {
type_ = LatexLog;
+ logTypeCO->addItem(qt_("LaTeX"), toqstr(logtype));
+ FileName tmp = log;
+ tmp.changeExtension("blg");
+ if (tmp.exists())
+ logTypeCO->addItem(qt_("BibTeX"), QString("bibtex"));
+ tmp.changeExtension("ilg");
+ if (tmp.exists())
+ logTypeCO->addItem(qt_("Index"), QString("index"));
// FIXME: not sure "literate" still works.
- else if (logtype == "literate")
+ } else if (logtype == "literate") {
type_ = LiterateLog;
- else if (logtype == "lyx2lyx")
+ logTypeCO->addItem(qt_("Literate"), toqstr(logtype));
+ } else if (logtype == "lyx2lyx") {
type_ = Lyx2lyxLog;
- else if (logtype == "vc")
+ logTypeCO->addItem(qt_("LyX2LyX"), toqstr(logtype));
+ } else if (logtype == "vc") {
type_ = VCLog;
- else
+ logTypeCO->addItem(qt_("Version Control"), toqstr(logtype));
+ } else
return false;
- logfile_ = FileName(logfile);
+ logfile_ = log;
updateContents();
switch (type_) {
case LatexLog:
- ss << to_utf8(_("No LaTeX log file found."));
+ ss << to_utf8(_("Log file not found."));
break;
case LiterateLog:
ss << to_utf8(_("No literate programming build log file found."));
<x>0</x>
<y>0</y>
<width>421</width>
- <height>441</height>
+ <height>474</height>
</rect>
</property>
<property name="windowTitle" >
<property name="spacing" >
<number>6</number>
</property>
- <item row="2" column="1" colspan="5" >
- <widget class="QLineEdit" name="findLE" >
- <property name="toolTip" >
- <string>Hit Enter to search, or click Go!</string>
- </property>
- </widget>
- </item>
- <item row="2" column="0" >
+ <item row="3" column="0" >
<widget class="QLabel" name="findLA" >
<property name="text" >
<string>&Find:</string>
</property>
</widget>
</item>
- <item row="0" column="0" colspan="7" >
- <widget class="QTextBrowser" name="logTB" />
- </item>
- <item row="1" column="3" colspan="2" >
- <widget class="QPushButton" name="nextErrorPB" >
+ <item row="3" column="1" colspan="5" >
+ <widget class="QLineEdit" name="findLE" >
<property name="toolTip" >
- <string>Jump to the next error message.</string>
+ <string>Hit Enter to search, or click Go!</string>
</property>
+ </widget>
+ </item>
+ <item row="0" column="0" >
+ <widget class="QLabel" name="logTypeLA" >
<property name="text" >
- <string>Next &Error</string>
+ <string>Log &Type:</string>
+ </property>
+ <property name="buddy" >
+ <cstring>logTypeCO</cstring>
</property>
</widget>
</item>
- <item row="1" column="5" colspan="2" >
- <widget class="QPushButton" name="nextWarningPB" >
+ <item row="0" column="4" colspan="3" >
+ <spacer>
+ <property name="orientation" >
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <property name="sizeHint" >
+ <size>
+ <width>161</width>
+ <height>20</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ <item row="0" column="1" colspan="3" >
+ <widget class="QComboBox" name="logTypeCO" />
+ </item>
+ <item row="1" column="0" colspan="7" >
+ <widget class="QTextBrowser" name="logTB" />
+ </item>
+ <item row="4" column="4" colspan="2" >
+ <widget class="QPushButton" name="updatePB" >
<property name="toolTip" >
- <string>Jump to the next warning message.</string>
+ <string>Update the display</string>
</property>
<property name="text" >
- <string>Next &Warning</string>
+ <string>&Update</string>
+ </property>
+ <property name="default" >
+ <bool>true</bool>
</property>
</widget>
</item>
- <item row="2" column="6" >
- <widget class="QPushButton" name="findPB" >
+ <item row="4" column="6" >
+ <widget class="QPushButton" name="closePB" >
<property name="text" >
- <string>&Go!</string>
+ <string>&Close</string>
</property>
</widget>
</item>
- <item row="1" column="0" colspan="3" >
+ <item row="4" column="2" colspan="2" >
<spacer>
<property name="orientation" >
<enum>Qt::Horizontal</enum>
</property>
+ <property name="sizeType" >
+ <enum>QSizePolicy::Expanding</enum>
+ </property>
<property name="sizeHint" >
<size>
- <width>201</width>
- <height>20</height>
+ <width>111</width>
+ <height>26</height>
</size>
</property>
</spacer>
</item>
- <item row="3" column="0" colspan="2" >
+ <item row="4" column="0" colspan="2" >
<widget class="QPushButton" name="copyPB" >
<property name="text" >
<string>Copy to Clip&board</string>
</property>
</widget>
</item>
- <item row="3" column="2" colspan="2" >
+ <item row="2" column="0" colspan="3" >
<spacer>
<property name="orientation" >
<enum>Qt::Horizontal</enum>
</property>
- <property name="sizeType" >
- <enum>QSizePolicy::Expanding</enum>
- </property>
<property name="sizeHint" >
<size>
- <width>111</width>
- <height>26</height>
+ <width>201</width>
+ <height>20</height>
</size>
</property>
</spacer>
</item>
<item row="3" column="6" >
- <widget class="QPushButton" name="closePB" >
+ <widget class="QPushButton" name="findPB" >
<property name="text" >
- <string>&Close</string>
+ <string>&Go!</string>
</property>
</widget>
</item>
- <item row="3" column="4" colspan="2" >
- <widget class="QPushButton" name="updatePB" >
+ <item row="2" column="5" colspan="2" >
+ <widget class="QPushButton" name="nextWarningPB" >
<property name="toolTip" >
- <string>Update the display</string>
+ <string>Jump to the next warning message.</string>
</property>
<property name="text" >
- <string>&Update</string>
+ <string>Next &Warning</string>
</property>
- <property name="default" >
- <bool>true</bool>
+ </widget>
+ </item>
+ <item row="2" column="3" colspan="2" >
+ <widget class="QPushButton" name="nextErrorPB" >
+ <property name="toolTip" >
+ <string>Jump to the next error message.</string>
+ </property>
+ <property name="text" >
+ <string>Next &Error</string>
</property>
</widget>
</item>