X-Git-Url: https://vaikene.ee/gitweb/highlight.css?a=blobdiff_plain;f=src%2Fplugins%2FLogView%2Flogview.cpp;h=1f75c58759a43c873a24bc376e06cd661ffcf764;hb=7a8ba1ead6dbe609ecc6eeae5ddde607f0b5bd5f;hp=2eaae975d2ea4eae1338eeeb417d000d5d1f893a;hpb=0433bb7cef1ffca603bbcc61fa229d62467a8ea2;p=evaf diff --git a/src/plugins/LogView/logview.cpp b/src/plugins/LogView/logview.cpp index 2eaae97..1f75c58 100644 --- a/src/plugins/LogView/logview.cpp +++ b/src/plugins/LogView/logview.cpp @@ -23,8 +23,11 @@ #include #include #include +#include +#include #include +#include using namespace eVaf; @@ -243,11 +246,14 @@ void Widget::saveToFile() //------------------------------------------------------------------- -Window::Window(QWidget * parent, Qt::WindowFlags flags) - : QWidget(parent, flags) +Window::Window(QString const & args, QWidget * parent, Qt::WindowFlags flags) + : Gui::Panel(parent, flags) { setObjectName(QString("%1-Window").arg(VER_MODULE_NAME_STR)); + SdiWindow::iSdiWindow * win = evafQueryInterface("iSdiWindow"); + win->addPanel(getPanelName(args), this); + setWindowTitle(tr("Messages")); Common::iLogger * logger = Common::iLogger::instance(); @@ -295,6 +301,25 @@ Window::~Window() EVAF_INFO("%s destroyed", qPrintable(objectName())); } +QString Window::getPanelName(QString const & args) const +{ + QString panelName = "LogView"; + + QXmlStreamReader xml(args); + while (!xml.atEnd()) { + xml.readNext(); + if (xml.isStartElement() && xml.name() == "attributes") { + if (xml.attributes().hasAttribute("panelName")) { + QString s = xml.attributes().value("panelName").toString(); + if (!s.isEmpty()) + panelName = s; + } + } + } + + return panelName; +} + bool Window::event(QEvent * e) { if (e->type() == QEvent::StatusTip) { @@ -371,9 +396,7 @@ Module::~Module() bool Module::init(QString const & args) { - Q_UNUSED(args); - - wWindow = new Window(); + wWindow = new Window(args); EVAF_INFO("%s initialized", qPrintable(objectName()));