mirror of
https://github.com/qelectrotech/qelectrotech-source-mirror.git
synced 2026-01-04 19:40:53 +01:00
improve waiting dialog when open a project
git-svn-id: svn+ssh://svn.tuxfamily.org/svnroot/qet/qet/trunk@5295 bfdf4180-ca20-0410-9c96-a3a8aa849046
This commit is contained in:
@@ -20,6 +20,8 @@
|
||||
#include "ui_dialogwaiting.h"
|
||||
#include <QPushButton>
|
||||
|
||||
|
||||
DialogWaiting *DialogWaiting::m_static_dialog = nullptr;
|
||||
/**
|
||||
* @brief DialogWaiting::DialogWaiting
|
||||
* @param parent
|
||||
@@ -70,8 +72,7 @@ void DialogWaiting::setProgressBarRange(int min, int max){
|
||||
* @param val is the string of action
|
||||
*/
|
||||
void DialogWaiting::setTitle(const QString& val){
|
||||
QString title="<b> "+val+" </b>";
|
||||
ui->labelTitle->setText(title);
|
||||
ui->labelTitle->setText(val);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -82,3 +83,12 @@ void DialogWaiting::setDetail(const QString& val){
|
||||
ui->label_detail->setText(val);
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief DialogWaiting::progressBarValue
|
||||
* @return The current vcalue of the progress bar
|
||||
*/
|
||||
int DialogWaiting::progressBarValue() const
|
||||
{
|
||||
ui->progressBar->value();
|
||||
}
|
||||
|
||||
|
||||
@@ -20,6 +20,7 @@
|
||||
#define DIALOGWAITING_H
|
||||
|
||||
#include <QDialog>
|
||||
#include <QMutex>
|
||||
|
||||
namespace Ui {
|
||||
class DialogWaiting;
|
||||
@@ -28,19 +29,56 @@ namespace Ui {
|
||||
class DialogWaiting : public QDialog
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit DialogWaiting(QWidget *parent = nullptr);
|
||||
~DialogWaiting() override;
|
||||
|
||||
void setProgressBar(int val);
|
||||
void setProgressBarRange(int min, int max);
|
||||
void setProgressReset();
|
||||
void setTitle(const QString& val);
|
||||
void setDetail(const QString& val);
|
||||
|
||||
public:
|
||||
static DialogWaiting* instance(QWidget *parent = nullptr)
|
||||
{
|
||||
static QMutex mutex;
|
||||
if(!m_static_dialog)
|
||||
{
|
||||
mutex.lock();
|
||||
if(!m_static_dialog)
|
||||
m_static_dialog = new DialogWaiting(parent);
|
||||
mutex.unlock();
|
||||
}
|
||||
return m_static_dialog;
|
||||
}
|
||||
|
||||
static bool hasInstance()
|
||||
{
|
||||
if(m_static_dialog == nullptr)
|
||||
return false;
|
||||
else
|
||||
return true;
|
||||
}
|
||||
|
||||
static void dropInstance()
|
||||
{
|
||||
static QMutex mutex;
|
||||
if(m_static_dialog)
|
||||
{
|
||||
mutex.lock();
|
||||
m_static_dialog->deleteLater();
|
||||
m_static_dialog = nullptr;
|
||||
mutex.unlock();
|
||||
}
|
||||
}
|
||||
private:
|
||||
Ui::DialogWaiting *ui;
|
||||
static DialogWaiting *m_static_dialog;
|
||||
|
||||
|
||||
public:
|
||||
explicit DialogWaiting(QWidget *parent = nullptr);
|
||||
~DialogWaiting() override;
|
||||
|
||||
void setProgressBar(int val);
|
||||
void setProgressBarRange(int min, int max);
|
||||
void setProgressReset();
|
||||
void setTitle(const QString& val);
|
||||
void setDetail(const QString& val);
|
||||
int progressBarValue() const;
|
||||
|
||||
private:
|
||||
Ui::DialogWaiting *ui;
|
||||
};
|
||||
|
||||
#endif // DIALOGWAITING_H
|
||||
|
||||
Reference in New Issue
Block a user