rendered paste bodydiff --git a/mythtv/libs/libmythui/mythprogressdialog.cpp b/mythtv/libs/libmythui/mythprogressdialog.cppindex d9842ef..aef4fc8 100644--- a/mythtv/libs/libmythui/mythprogressdialog.cpp+++ b/mythtv/libs/libmythui/mythprogressdialog.cpp@@ -13,6 +13,7 @@ MythUIBusyDialog::MythUIBusyDialog(const QString &message, m_message = message; else m_message = tr("Please Wait...");+ m_origMessage = m_message; m_messageText = NULL; } @@ -29,6 +30,32 @@ bool MythUIBusyDialog::Create(void) return true; } +void MythUIBusyDialog::SetMessage(const QString &message)+{+ m_newMessageLock.lock();+ m_newMessage = message;+ m_haveNewMessage = true;+ m_newMessageLock.unlock();+}++void MythUIBusyDialog::ResetMessage(void)+{+ SetMessage(m_origMessage);+}++void MythUIBusyDialog::Pulse(void)+{+ if (m_haveNewMessage && m_messageText)+ {+ m_newMessageLock.lock();+ m_message = m_newMessage;+ m_messageText->SetText(m_message);+ m_newMessageLock.unlock();+ }++ MythUIType::Pulse();+}+ bool MythUIBusyDialog::keyPressEvent(QKeyEvent *event) { QStringList actions;diff --git a/mythtv/libs/libmythui/mythprogressdialog.h b/mythtv/libs/libmythui/mythprogressdialog.hindex b567c18..748c939 100644--- a/mythtv/libs/libmythui/mythprogressdialog.h+++ b/mythtv/libs/libmythui/mythprogressdialog.h@@ -36,9 +36,17 @@ class MPUBLIC MythUIBusyDialog : public MythScreenType bool Create(void); bool keyPressEvent(QKeyEvent *event);+ void SetMessage(const QString &message);+ void ResetMessage(void);++ virtual void Pulse(void); protected:+ QString m_origMessage; QString m_message;+ bool m_haveNewMessage;+ QString m_newMessage;+ QMutex m_newMessageLock; MythUIText *m_messageText; };diff --git a/mythtv/libs/libmythui/mythscreentype.cpp b/mythtv/libs/libmythui/mythscreentype.cppindex 6b9f3a4..4f6de20 100644--- a/mythtv/libs/libmythui/mythscreentype.cpp+++ b/mythtv/libs/libmythui/mythscreentype.cpp@@ -317,6 +317,18 @@ void MythScreenType::CloseBusyPopup(void) m_BusyPopup = NULL; } +void MythScreenType::SetBusyPopupMessage(const QString &message)+{+ if (m_BusyPopup)+ m_BusyPopup->SetMessage(message);+}++void MythScreenType::ResetBusyPopupMessage(void)+{+ if (m_BusyPopup)+ m_BusyPopup->ResetMessage();+}+ bool MythScreenType::IsInitialized(void) const { return m_IsInitialized;diff --git a/mythtv/libs/libmythui/mythscreentype.h b/mythtv/libs/libmythui/mythscreentype.hindex 1dedf53..66bd7b6 100644--- a/mythtv/libs/libmythui/mythscreentype.h+++ b/mythtv/libs/libmythui/mythscreentype.h@@ -103,6 +103,8 @@ class MPUBLIC MythScreenType : public MythUIType void OpenBusyPopup(QString message = ""); void CloseBusyPopup(void);+ void SetBusyPopupMessage(const QString &message);+ void ResetBusyPopupMessage(void); bool m_FullScreen; bool m_IsDeleting;