All pastes #2021349 Raw Edit

Untitled

public cpp v1 · immutable
#2021349 ·published 2010-12-16 17:22 UTC
rendered paste body
diff --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;