Merge branch 'master' of https://github.com/highfidelity/hifi into animenu

This commit is contained in:
Andrzej Kapolka 2014-05-21 11:03:55 -07:00
commit 20a931178d
5 changed files with 68 additions and 67 deletions

View file

@ -20,12 +20,12 @@ class AbstractLoggerInterface : public QObject {
Q_OBJECT Q_OBJECT
public: public:
AbstractLoggerInterface(QObject* parent = NULL) : QObject(parent) {}; AbstractLoggerInterface(QObject* parent = NULL) : QObject(parent) {}
inline bool extraDebugging() { return _extraDebugging; }; inline bool extraDebugging() { return _extraDebugging; }
inline void setExtraDebugging(bool debugging) { _extraDebugging = debugging; }; inline void setExtraDebugging(bool debugging) { _extraDebugging = debugging; }
virtual void addMessage(QString) = 0; virtual void addMessage(QString) = 0;
virtual QStringList getLogData() = 0; virtual QString getLogData() = 0;
virtual void locateLog() = 0; virtual void locateLog() = 0;
signals: signals:

View file

@ -3614,9 +3614,12 @@ void Application::loadScriptURLDialog() {
void Application::toggleLogDialog() { void Application::toggleLogDialog() {
if (! _logDialog) { if (! _logDialog) {
_logDialog = new LogDialog(_glWidget, getLogger()); _logDialog = new LogDialog(_glWidget, getLogger());
_logDialog->show(); }
if (_logDialog->isVisible()) {
_logDialog->hide();
} else { } else {
_logDialog->close(); _logDialog->show();
} }
} }

View file

@ -23,7 +23,7 @@ const QString LOGS_DIRECTORY = "Logs";
FileLogger::FileLogger(QObject* parent) : FileLogger::FileLogger(QObject* parent) :
AbstractLoggerInterface(parent), AbstractLoggerInterface(parent),
_logData(NULL) _logData("")
{ {
setExtraDebugging(false); setExtraDebugging(false);
@ -36,7 +36,7 @@ FileLogger::FileLogger(QObject* parent) :
void FileLogger::addMessage(QString message) { void FileLogger::addMessage(QString message) {
QMutexLocker locker(&_mutex); QMutexLocker locker(&_mutex);
emit logReceived(message); emit logReceived(message);
_logData.append(message); _logData += message;
QFile file(_fileName); QFile file(_fileName);
if (file.open(QIODevice::WriteOnly | QIODevice::Append | QIODevice::Text)) { if (file.open(QIODevice::WriteOnly | QIODevice::Append | QIODevice::Text)) {

View file

@ -22,11 +22,11 @@ public:
FileLogger(QObject* parent = NULL); FileLogger(QObject* parent = NULL);
virtual void addMessage(QString); virtual void addMessage(QString);
virtual QStringList getLogData() { return _logData; }; virtual QString getLogData() { return _logData; }
virtual void locateLog(); virtual void locateLog();
private: private:
QStringList _logData; QString _logData;
QString _fileName; QString _fileName;
QMutex _mutex; QMutex _mutex;

View file

@ -57,6 +57,8 @@ LogDialog::LogDialog(QWidget* parent, AbstractLoggerInterface* logger) : QDialog
resize(INITIAL_WIDTH, static_cast<int>(screen.height() * INITIAL_HEIGHT_RATIO)); resize(INITIAL_WIDTH, static_cast<int>(screen.height() * INITIAL_HEIGHT_RATIO));
move(screen.center() - rect().center()); move(screen.center() - rect().center());
setMinimumWidth(MINIMAL_WIDTH); setMinimumWidth(MINIMAL_WIDTH);
connect(_logger, SIGNAL(logReceived(QString)), this, SLOT(appendLogLine(QString)), Qt::QueuedConnection);
} }
LogDialog::~LogDialog() { LogDialog::~LogDialog() {
@ -105,7 +107,6 @@ void LogDialog::initControls() {
} }
void LogDialog::showEvent(QShowEvent*) { void LogDialog::showEvent(QShowEvent*) {
connect(_logger, SIGNAL(logReceived(QString)), this, SLOT(appendLogLine(QString)), Qt::QueuedConnection);
showLogData(); showLogData();
} }
@ -122,7 +123,6 @@ void LogDialog::appendLogLine(QString logLine) {
if (logLine.contains(_searchTerm, Qt::CaseInsensitive)) { if (logLine.contains(_searchTerm, Qt::CaseInsensitive)) {
_logTextBox->appendPlainText(logLine.simplified()); _logTextBox->appendPlainText(logLine.simplified());
} }
_logTextBox->ensureCursorVisible();
} }
} }
@ -146,10 +146,8 @@ void LogDialog::handleSearchTextChanged(const QString searchText) {
void LogDialog::showLogData() { void LogDialog::showLogData() {
_logTextBox->clear(); _logTextBox->clear();
QStringList _logData = _logger->getLogData(); _logTextBox->insertPlainText(_logger->getLogData());
for (int i = 0; i < _logData.size(); ++i) { _logTextBox->ensureCursorVisible();
appendLogLine(_logData[i]);
}
} }
KeywordHighlighter::KeywordHighlighter(QTextDocument *parent) : QSyntaxHighlighter(parent), keywordFormat() { KeywordHighlighter::KeywordHighlighter(QTextDocument *parent) : QSyntaxHighlighter(parent), keywordFormat() {