MessageManger::printToOutputPane: Add more control over the popup

Change-Id: I40254c0d152bf1d94c74e2602e5bfb642fe933e1
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
This commit is contained in:
Daniel Teske
2013-03-12 16:13:34 +01:00
parent 2bb2628054
commit f4b19e0e8f
2 changed files with 32 additions and 4 deletions

View File

@@ -43,6 +43,7 @@ MessageManager::MessageManager()
: m_messageOutputWindow(0)
{
m_instance = this;
qRegisterMetaType<Core::MessageManager::PrintToOutputPaneFlags>();
}
MessageManager::~MessageManager()
@@ -68,21 +69,33 @@ void MessageManager::showOutputPane()
}
void MessageManager::printToOutputPane(const QString &text, bool bringToForeground)
{
printToOutputPane(text, bringToForeground ? ModeSwitch
: Silent);
}
void MessageManager::printToOutputPane(const QString &text, PrintToOutputPaneFlags flags)
{
if (!m_messageOutputWindow)
return;
if (bringToForeground)
m_messageOutputWindow->popup(IOutputPane::ModeSwitch);
if (flags & Flash) {
m_messageOutputWindow->flash();
} else if (flags & Silent) {
// Do nothing
} else {
m_messageOutputWindow->popup(Core::IOutputPane::Flag(int(flags)));
}
m_messageOutputWindow->append(text + QLatin1Char('\n'));
}
void MessageManager::printToOutputPanePopup(const QString &text)
{
printToOutputPane(text, true);
printToOutputPane(text, ModeSwitch);
}
void MessageManager::printToOutputPane(const QString &text)
{
printToOutputPane(text, false);
printToOutputPane(text, Silent);
}