Редакция 202 | Только различия | Не учитывать пробелы | Содержимое файла | Авторство | Последнее изменение | Открыть журнал | RSS
Редакция 202 | Редакция 203 | ||
---|---|---|---|
1 | #include "fileform.h"
|
1 | #include "fileform.h"
|
2 | #include "ui_fileform.h"
|
2 | #include "ui_fileform.h"
|
3 | #include "mainwindow.h"
|
3 | #include "mainwindow.h"
|
4 | 4 | ||
5 | FileForm::FileForm(QWidget *parent) : |
5 | FileForm::FileForm(QWidget *parent) : |
6 | QWidget(parent), |
6 | QWidget(parent), |
7 | ui(new Ui::FileForm) |
7 | ui(new Ui::FileForm) |
8 | {
|
8 | {
|
9 | ui->setupUi(this); |
9 | ui->setupUi(this); |
10 | FileForm::fdataIsChanged = false; |
10 | FileForm::fdataIsChanged = false; |
11 | }
|
11 | }
|
12 | 12 | ||
13 | FileForm::~FileForm() |
13 | FileForm::~FileForm() |
14 | {
|
14 | {
|
15 | delete ui; |
15 | delete ui; |
16 | }
|
16 | }
|
17 | 17 | ||
18 | void FileForm::changeEvent(QEvent *e) |
18 | void FileForm::changeEvent(QEvent *e) |
19 | {
|
19 | {
|
20 | QWidget::changeEvent(e); |
20 | QWidget::changeEvent(e); |
21 | switch (e->type()) { |
21 | switch (e->type()) { |
22 | case QEvent::LanguageChange: |
22 | case QEvent::LanguageChange: |
23 | ui->retranslateUi(this); |
23 | ui->retranslateUi(this); |
24 | break; |
24 | break; |
25 | default: |
25 | default: |
26 | break; |
26 | break; |
27 | }
|
27 | }
|
28 | }
|
28 | }
|
29 | 29 | ||
30 | 30 | ||
31 | 31 | ||
32 | void FileForm::on_pushButton_clicked(){ // îáðàáîò÷èê íàæàòèÿ êíîïêè "Îòêðûòü ôàéë" |
32 | void FileForm::on_pushButton_clicked(){ // îáðàáîò÷èê íàæàòèÿ êíîïêè "Îòêðûòü ôàéë" |
33 | QString fileName;
|
33 | QString fileName;
|
- | 34 | QStringList fileName_list;
|
|
- | 35 | int list_size; |
|
34 | QFile file;
|
36 | QFile file;
|
35 | QByteArra |
37 | QByteArray data_tmp;
|
36 | 38 | ||
37 | 39 | fileName = QFileDialog::getOpenFileName(this, |
|
38 | 40 | tr("Open Image"), "", tr("All Files (*.*);;Image Files (*.png *.jpg *.bmp);;Text files (*.txt);;XML files (*.xml)")); //Images (*.png *.xpm *.jpg);;Text files (*.txt);;XML files (*.xml) |
|
39 | 41 | ||
40 | 42 | if (fileName.isEmpty()) return; |
|
41 | 43 | file.setFileName(fileName); |
|
42 | 44 | if (!file.open(QIODevice::ReadOnly)) return; |
|
43 | 45 | Data.clear(); |
|
44 | 46 | // Data = file.readAll();
|
|
45 | 47 | QDataStream out(&Data,QIODevice::ReadWrite); |
|
- | 48 | fileName_list = fileName.split(QRegExp("[/\]"), QString::SkipEmptyParts); |
|
- | 49 | ||
- | 50 | list_size = fileName_list.size(); |
|
- | 51 | ||
- | 52 | fileName = fileName_list.last(); |
|
- | 53 | ||
46 | 54 | out << fileName; |
|
47 | 55 | data_tmp = file.readAll(); |
|
48 | 56 | out << data_tmp; |
|
49 | 57 | file.close(); |
|
50 | 58 | FileForm::fdataIsChanged = true; |
|
51 | 59 | ||
52 | 60 | }
|
|
53 | 61 | ||
54 | 62 | void FileForm::on_pushButton_2_clicked(){ // îáðàáîò÷èê íàæàòèÿ êíîïêè "Óäàëèòü ôàéë" |
|
55 | 63 | ||
56 | 64 | Data.clear(); |
|
57 | 65 | FileForm::fdataIsChanged = true; |
|
58 | 66 | ||
59 | 67 | }
|
|
60 | 68 | ||
61 | 69 | void FileForm::on_pushButton_3_clicked(){ // îáðàáîò÷èê íàæàòèÿ êíîïêè "Ñîõðàíèòü ôàéë" |
|
62 | 70 | ||
63 | 71 | QByteArray data_tmp;
|
|
64 | 72 | QFile file;
|
|
65 | 73 | QDataStream out(&Data,QIODevice::ReadOnly); |
|
66 | 74 | QString fileName;
|
|
67 | 75 | QStringList fileName_list;
|
|
68 | 76 | if (Data.isEmpty()) return; |
|
69 | 77 | out.device()->reset(); |
|
70 | 78 | out >> fileName; |
|
- | 79 | fileName_list = fileName.split(QRegExp("[/\]"), QString::SkipEmptyParts); |
|
- | 80 | ||
- | 81 | ||
- | 82 | ||
71 | 83 | fileName = QFileDialog::getSaveFileName(this, tr("Save File"), |
|
- | 84 | fileName, |
|
- | 85 | tr("All Files (*.*);;Image Files (*.png *.jpg *.bmp);;Text files (*.txt);;XML files (*.xml)")); |
|
- | 86 | ||
- | 87 | ||
- | 88 | if (fileName.isEmpty()) return; |
|
- | 89 | ||
- | 90 | ||
- | 91 | file.setFileName(fileName); |
|
- | 92 | if (!file.open(QIODevice::WriteOnly)) return; |
|
- | 93 | ||
- | 94 | ||
- | 95 | // Data = file.readAll();
|
|
- | 96 | ||
- | 97 | // out.device()->reset();
|
|
- | 98 | ||
- | 99 | ||
- | 100 | ||
- | 101 | data_tmp.clear(); |
|
- | 102 | out >> data_tmp; |
|
- | 103 | int count; |
|
- | 104 | count = file.write(data_tmp); |
|
- | 105 | int size; |
|
- | 106 | size = file.size(); |
|
- | 107 | file.close(); |
|
- | 108 | FileForm::fdataIsChanged = true; |
|
- | 109 | ||
- | 110 | ||
- | 111 | ||
- | 112 | }
|
|
- | 113 | ||
- | 114 | void FileForm::setData(QByteArray new_data){ |
|
- | 115 | int i; |
|
- | 116 | ||
- | 117 | Data = new_data; |
|
- | 118 | ||
- | 119 | i++; |
|
- | 120 | }
|
|
- | 121 |