summaryrefslogtreecommitdiffstats
path: root/pica-client
diff options
context:
space:
mode:
authorme_desk <me_desk@fb96df88-216d-11de-830c-f3023f12d8ac>2013-10-20 19:59:32 +0000
committerme_desk <me_desk@fb96df88-216d-11de-830c-f3023f12d8ac>2013-10-20 19:59:32 +0000
commit7d18e6fc53b400e618aeba9181188e934e23cbe1 (patch)
tree02d4b3f87d96f3a2a2f567863e9870a1aec88544 /pica-client
parentdf3ffdfe86c7c875ab1a3ef4f64236d8d97eb376 (diff)
downloadpica-pica-7d18e6fc53b400e618aeba9181188e934e23cbe1.tar.gz
pica-pica-7d18e6fc53b400e618aeba9181188e934e23cbe1.zip
new dialog ShowPicaIdDialog for showing Pica ID
git-svn-id: svn://localhost/project_picapica/trunk@294 fb96df88-216d-11de-830c-f3023f12d8ac
Diffstat (limited to 'pica-client')
-rw-r--r--pica-client/accountswindow.cpp7
-rw-r--r--pica-client/contactlistwidget.cpp12
-rw-r--r--pica-client/dialogs/showpicaiddialog.cpp36
-rw-r--r--pica-client/dialogs/showpicaiddialog.h27
-rw-r--r--pica-client/mainwindow.ui8
-rw-r--r--pica-client/pica-client.pro6
-rw-r--r--pica-client/picaactioncenter.cpp9
7 files changed, 78 insertions, 27 deletions
diff --git a/pica-client/accountswindow.cpp b/pica-client/accountswindow.cpp
index 84c607d..e9c88e5 100644
--- a/pica-client/accountswindow.cpp
+++ b/pica-client/accountswindow.cpp
@@ -4,6 +4,7 @@
#include "globals.h"
#include "dialogs/addaccountdialog.h"
#include "dialogs/registeraccountdialog.h"
+#include "dialogs/showpicaiddialog.h"
#include "../PICA_client.h"
#include "skynet.h"
#include "openssltool.h"
@@ -168,10 +169,8 @@ void AccountsWindow::CreateAccount(QString CertFilename, QString PkeyFilename, b
}
else
{
- QMessageBox mbx;
- mbx.setTextFormat(Qt::RichText);
- mbx.setText(tr("New account<br> Pica Pica ID: <b>%1</b><br> is created.").arg(id.toBase64().constData()));
- mbx.exec();
+ ShowPicaIdDialog d(name, id, tr("New account is created"));
+ d.exec();
}
LoadAccounts();
}
diff --git a/pica-client/contactlistwidget.cpp b/pica-client/contactlistwidget.cpp
index 1d53f49..03ef901 100644
--- a/pica-client/contactlistwidget.cpp
+++ b/pica-client/contactlistwidget.cpp
@@ -1,6 +1,7 @@
#include "contactlistwidget.h"
#include "globals.h"
#include "dialogs/viewcertdialog.h"
+#include "dialogs/showpicaiddialog.h"
#include "msguirouter.h"
#include <QMenu>
#include <QMessageBox>
@@ -191,13 +192,10 @@ void ContactListWidget::view_cert()
void ContactListWidget::show_id()
{
- QMessageBox mbx;
- mbx.setTextFormat(Qt::RichText);
- mbx.setText(tr("Contact name: <b>%1</b><br>Pica Pica ID: <b>%2</b>")
- .arg(wgitem_to_recs[currentItem()]->name)
- .arg(wgitem_to_recs[currentItem()]->id.toBase64().constData()));
-
- mbx.exec();
+ ShowPicaIdDialog d(wgitem_to_recs[currentItem()]->name,
+ wgitem_to_recs[currentItem()]->id,
+ tr("Contact's ID"));
+ d.exec();
}
void ContactListWidget::Reload()
diff --git a/pica-client/dialogs/showpicaiddialog.cpp b/pica-client/dialogs/showpicaiddialog.cpp
new file mode 100644
index 0000000..8fed71e
--- /dev/null
+++ b/pica-client/dialogs/showpicaiddialog.cpp
@@ -0,0 +1,36 @@
+#include "showpicaiddialog.h"
+#include <QVBoxLayout>
+#include <QFontMetrics>
+#include <QStyle>
+
+ShowPicaIdDialog::ShowPicaIdDialog(QString name, QByteArray id, QString caption, QWidget *parent) :
+ QDialog(parent)
+{
+ setWindowTitle(caption);
+ QVBoxLayout *layout = new QVBoxLayout(this);
+
+ lbname_ = new QLabel(tr("Account: <b>%1</b>").arg(name));
+ lbname_ ->setTextFormat(Qt::RichText);
+
+ picaid_ = new QLineEdit();
+
+ picaid_ ->setText(id.toBase64().constData());
+ picaid_->setReadOnly(true);
+ picaid_->setSelection(0, picaid_->text().size());
+ picaid_->setMinimumWidth(picaid_->fontMetrics().width(picaid_->text()) + 2 * picaid_->style()->pixelMetric(QStyle::PM_DefaultFrameWidth));
+
+ btok_ = new QPushButton(tr("OK"));
+ btok_->setDefault(true);
+ btok_->setMaximumWidth(btok_->fontMetrics().width(btok_->text()) * 3 / 2 + 2 * btok_->style()->pixelMetric(QStyle::PM_ButtonMargin));
+
+ layout->addWidget(lbname_);
+ layout->addWidget(picaid_);
+ layout->addWidget(btok_, 0, Qt::AlignHCenter);
+
+ connect(btok_, SIGNAL(clicked()), this, SLOT(Ok()));
+}
+
+void ShowPicaIdDialog::Ok()
+{
+ done(0);
+}
diff --git a/pica-client/dialogs/showpicaiddialog.h b/pica-client/dialogs/showpicaiddialog.h
new file mode 100644
index 0000000..a566c12
--- /dev/null
+++ b/pica-client/dialogs/showpicaiddialog.h
@@ -0,0 +1,27 @@
+#ifndef SHOWPICAIDDIALOG_H
+#define SHOWPICAIDDIALOG_H
+
+#include <QDialog>
+#include <QLineEdit>
+#include <QPushButton>
+#include <QLabel>
+#include <QString>
+#include <QByteArray>
+
+class ShowPicaIdDialog : public QDialog
+{
+ Q_OBJECT
+public:
+ explicit ShowPicaIdDialog(QString name, QByteArray id, QString caption, QWidget *parent = 0);
+
+private slots:
+ void Ok();
+
+private:
+ QLabel *lbname_;
+ QLineEdit *picaid_;
+ QPushButton *btok_;
+
+};
+
+#endif // SHOWPICAIDDIALOG_H
diff --git a/pica-client/mainwindow.ui b/pica-client/mainwindow.ui
index 0f2e2a7..f4b770d 100644
--- a/pica-client/mainwindow.ui
+++ b/pica-client/mainwindow.ui
@@ -24,14 +24,6 @@
</rect>
</property>
</widget>
- <widget class="QToolBar" name="mainToolBar">
- <attribute name="toolBarArea">
- <enum>TopToolBarArea</enum>
- </attribute>
- <attribute name="toolBarBreak">
- <bool>false</bool>
- </attribute>
- </widget>
<widget class="QStatusBar" name="statusBar"/>
</widget>
<layoutdefault spacing="6" margin="11"/>
diff --git a/pica-client/pica-client.pro b/pica-client/pica-client.pro
index e74cd1d..97e7315 100644
--- a/pica-client/pica-client.pro
+++ b/pica-client/pica-client.pro
@@ -33,7 +33,8 @@ SOURCES += main.cpp\
openssltool.cpp \
history.cpp \
../PICA_id.c \
- dhparam.cpp
+ dhparam.cpp \
+ dialogs/showpicaiddialog.cpp
HEADERS += mainwindow.h \
chatwindow.h \
@@ -60,7 +61,8 @@ HEADERS += mainwindow.h \
openssltool.h \
history.h \
../PICA_id.h \
- dhparam.h
+ dhparam.h \
+ dialogs/showpicaiddialog.h
DEFINES = PICA_MULTITHREADED
diff --git a/pica-client/picaactioncenter.cpp b/pica-client/picaactioncenter.cpp
index a447b44..fe22c9b 100644
--- a/pica-client/picaactioncenter.cpp
+++ b/pica-client/picaactioncenter.cpp
@@ -5,6 +5,7 @@
#include <QApplication>
#include "../PICA_proto.h"
#include "accounts.h"
+#include "dialogs/showpicaiddialog.h"
#include <QMessageBox>
@@ -50,10 +51,6 @@ void PicaActionCenter::exit()
void PicaActionCenter::showmyid()
{
- QMessageBox mbx;
- mbx.setTextFormat(Qt::RichText);
- mbx.setText(tr("Account: <b>%1</b><br>Pica Pica ID: <b>%2</b>")
- .arg(Accounts::GetCurrentAccount().name)
- .arg(Accounts::GetCurrentAccount().id.toBase64().constData()));
- mbx.exec();
+ ShowPicaIdDialog d(Accounts::GetCurrentAccount().name, Accounts::GetCurrentAccount().id, tr("My Current Account"));
+ d.exec();
}