-
Notifications
You must be signed in to change notification settings - Fork 1
/
window.cpp
65 lines (57 loc) · 1.61 KB
/
window.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
#include "window.h"
#include "ui_window.h"
Window::Window(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::Window)
{
clipboard = QApplication::clipboard();
ui->setupUi(this);
abtdlg = new AboutDialog(this);
connect(ui->bCopy, SIGNAL(clicked()), this, SLOT(copyText()));
connect(ui->bPaste, SIGNAL(clicked()), this, SLOT(pasteText()));
connect(ui->bEncode, SIGNAL(clicked()), this, SLOT(encodeText()));
connect(ui->bDecode, SIGNAL(clicked()), this, SLOT(decodeText()));
connect(ui->bmd5, SIGNAL(clicked()), this, SLOT(getmd5()));
connect(ui->bAbout, SIGNAL(clicked()), abtdlg, SLOT(show()));
connect(ui->bExit, SIGNAL(clicked()), qApp, SLOT(quit()));
}
Window::~Window()
{
delete ui;
}
void Window::encodeText()
{
if(validateInput())
return;
ui->output->setPlainText(QByteArray(ui->input->toPlainText().toAscii()).toBase64());
}
void Window::decodeText()
{
if(validateInput())
return;
ui->output->setPlainText(QByteArray::fromBase64(ui->input->toPlainText().toAscii()));
}
void Window::getmd5()
{
if(validateInput())
return;
ui->output->setPlainText(QCryptographicHash::hash((ui->input->toPlainText().toAscii()),QCryptographicHash::Md5).toHex());
}
void Window::copyText()
{
clipboard->setText(ui->output->toPlainText());
}
void Window::pasteText()
{
ui->input->setPlainText(clipboard->text());
}
bool Window::validateInput()
{
if(ui->input->toPlainText().isEmpty())
{
QMessageBox::warning(this, "Error", "Please write some text...", QMessageBox::Ok);
return true;
}
else
return false;
}