Subversion Repositories svn1-original

Rev

Rev 321 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 321 Rev 322
Line 1... Line 1...
1
#include <QFile>
1
#include <QFile>
2
#include <QTextStream>
2
#include <QTextStream>
3
#include <QMessageBox>
3
#include <QMessageBox>
4
#include <QDir>
4
#include <QDir>
5
#include <QPushButton>
5
#include <QPushButton>
-
 
6
#include <QDateTime>
6
 
7
 
7
#include "qmeditaddendum.h"
8
#include "qmeditaddendum.h"
8
#include "ui_qmeditaddendum.h"
9
#include "ui_qmeditaddendum.h"
9
#include    "consts.h"
10
#include    "consts.h"
10
#include    "structs.h"
11
#include    "structs.h"
Line 14... Line 15...
14
    QDialog(parent),
15
    QDialog(parent),
15
    ui(new Ui::QmEditAddendum)
16
    ui(new Ui::QmEditAddendum)
16
{
17
{
17
    ui->setupUi(this);
18
    ui->setupUi(this);
18
 
19
 
-
 
20
    // First row of buttons
-
 
21
    QPushButton * delButton = new QPushButton("Delete");
-
 
22
    delButton->setToolTip("Close and delete the message");
-
 
23
    ui->horizontalLayout1->addWidget(delButton);
-
 
24
    connect(delButton,SIGNAL(clicked()), this, SLOT(doDelete()));
-
 
25
 
-
 
26
    QSpacerItem *horizontalSpacer1;
-
 
27
    horizontalSpacer1 = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum);
-
 
28
    ui->horizontalLayout1->addItem(horizontalSpacer1);
-
 
29
 
-
 
30
    QPushButton * saveButton = new QPushButton("Save");
-
 
31
    saveButton->setToolTip("Save message and keep editing");
-
 
32
    ui->horizontalLayout1->addWidget(saveButton);
-
 
33
    connect(saveButton,SIGNAL(clicked()), this, SLOT(save()));
-
 
34
 
19
    QPushButton * doneButton = new QPushButton("Save and Close");
35
    QPushButton * doneButton = new QPushButton("Save and Close");
20
    ui->buttonBox->addButton(doneButton,QDialogButtonBox::ActionRole);
36
    doneButton->setToolTip("Save message and close editor");
-
 
37
    ui->horizontalLayout1->addWidget(doneButton);
-
 
38
    connect(doneButton,SIGNAL(clicked()), this, SLOT(saveAndClose()));
21
 
39
 
22
    QPushButton * clearButton = new QPushButton("Clear");
40
    QPushButton * cancelButton = new QPushButton("Cancel");
-
 
41
    cancelButton->setToolTip("Exit the dialog now. Changes made since the last save will be lost.");
23
    ui->buttonBox2->addButton(clearButton,QDialogButtonBox::ActionRole);
42
    ui->horizontalLayout1->addWidget(cancelButton);
-
 
43
    connect(cancelButton,SIGNAL(clicked()), this, SLOT(reject()));
24
 
44
 
-
 
45
    //  Second Row of Buttons
25
    QPushButton * delButton = new QPushButton("Delete");
46
    QPushButton * clearButton = new QPushButton("Clear");
26
    ui->buttonBox2->addButton(delButton,QDialogButtonBox::ActionRole);
47
    clearButton->setToolTip("Clear the text. Continue editing");
-
 
48
    ui->horizontalLayout2->addWidget(clearButton);
-
 
49
    connect(clearButton,SIGNAL(clicked()), this, SLOT(doClear()));
27
 
50
 
28
    QPushButton * timeButton = new QPushButton("TimeStamp");
51
    QPushButton * timeButton = new QPushButton("TimeStamp");
29
    ui->buttonBox2->addButton(timeButton,QDialogButtonBox::ActionRole);
52
    timeButton->setToolTip("Insert a timestamp into the message");
-
 
53
    ui->horizontalLayout2->addWidget(timeButton);
-
 
54
    connect(timeButton,SIGNAL(clicked()), this, SLOT(doTimeStamp()));
30
 
55
 
31
    connect(ui->buttonBox,SIGNAL(accepted()), this, SLOT(save()));
56
    QSpacerItem *horizontalSpacer2;
32
    connect(ui->buttonBox,SIGNAL(rejected()), this, SLOT(reject()));
57
    horizontalSpacer2 = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum);
33
    connect(doneButton,SIGNAL(clicked()), this, SLOT(saveAndClose()));
58
    ui->horizontalLayout2->addItem(horizontalSpacer2);
34
 
59
 
35
    //  Attempt to open the file name specified
60
    //  Attempt to open the file name specified
36
    //qDebug("Edit: %s", name);
61
    // qDebug("Edit: %s", name);
37
    setWindowTitle(name);
62
    setWindowTitle(name);
38
 
63
 
-
 
64
    /*
-
 
65
    ** Read the file into the message area
-
 
66
    */
39
    file.setFileName(name);
67
    file.setFileName(name);
40
    if (!file.open(QFile::ReadOnly | QFile::Text)) {
68
    if (!file.open(QFile::ReadOnly | QFile::Text)) {
41
        if (! silentCreate)
69
        if (! silentCreate)
42
        {
70
        {
43
            QMessageBox::warning(this, tr("Application"),
71
            QMessageBox::warning(this, tr("Application"),
Line 50... Line 78...
50
 
78
 
51
    QTextStream in(&file);
79
    QTextStream in(&file);
52
    ui->textEdit->setPlainText(in.readAll());
80
    ui->textEdit->setPlainText(in.readAll());
53
    file.close();
81
    file.close();
54
 
82
 
-
 
83
    /*
-
 
84
    ** Put the user into the editor
-
 
85
    */
55
    ui->textEdit->setFocus();
86
    ui->textEdit->setFocus();
56
}
87
}
57
 
88
 
-
 
89
/*----------------------------------------------------------------------------
-
 
90
** FUNCTION           : ~QmEditAddendum()
-
 
91
**
-
 
92
** DESCRIPTION        : Descructor
-
 
93
**
-
 
94
**
-
 
95
** INPUTS             :
-
 
96
**
-
 
97
** RETURNS            :
-
 
98
**
-
 
99
----------------------------------------------------------------------------*/
-
 
100
 
-
 
101
QmEditAddendum::~QmEditAddendum()
-
 
102
{
-
 
103
    delete ui;
-
 
104
}
-
 
105
 
-
 
106
/*----------------------------------------------------------------------------
-
 
107
** FUNCTION           : save
-
 
108
**
-
 
109
** DESCRIPTION        : Save the text to the output file
-
 
110
**
-
 
111
**
-
 
112
** INPUTS             :
-
 
113
**
-
 
114
** RETURNS            :
-
 
115
**
-
 
116
----------------------------------------------------------------------------*/
58
 
117
 
59
void QmEditAddendum::save(void)
118
void QmEditAddendum::save(void)
60
{
119
{
61
    //qDebug("Save File");
120
    //qDebug("Save File");
62
    if (file.open(QFile::WriteOnly | QFile::Text | QFile::Truncate))
121
    if (file.open(QFile::WriteOnly | QFile::Text | QFile::Truncate))
63
    {
122
    {
64
        QTextStream out(&file);
123
        QTextStream out(&file);
65
        out << ui->textEdit->toPlainText();
124
        out << ui->textEdit->toPlainText();
66
        file.close();
125
        file.close();
67
    }
126
    }
68
 
-
 
69
}
127
}
70
 
128
 
-
 
129
/*----------------------------------------------------------------------------
-
 
130
** FUNCTION           : saveAndClose
-
 
131
**
-
 
132
** DESCRIPTION        : Save the text and close the dialog
-
 
133
**
-
 
134
**
-
 
135
** INPUTS             :
-
 
136
**
-
 
137
** RETURNS            :
-
 
138
**
-
 
139
----------------------------------------------------------------------------*/
-
 
140
 
71
void QmEditAddendum::saveAndClose(void)
141
void QmEditAddendum::saveAndClose(void)
72
{
142
{
73
    qDebug("saveAndClose");
143
    qDebug("saveAndClose");
74
    save();
144
    save();
75
    done(0);
145
    done(0);
76
}
146
}
77
 
147
 
-
 
148
/*----------------------------------------------------------------------------
-
 
149
** FUNCTION           : doClear
-
 
150
**
-
 
151
** DESCRIPTION        : Clear the text
-
 
152
**
-
 
153
**
-
 
154
** INPUTS             :
-
 
155
**
-
 
156
** RETURNS            :
-
 
157
**
-
 
158
----------------------------------------------------------------------------*/
78
 
159
 
79
QmEditAddendum::~QmEditAddendum()
160
void QmEditAddendum::doClear(void)
80
{
161
{
-
 
162
    ui->textEdit->clear();
-
 
163
    ui->textEdit->setFocus();
-
 
164
}
-
 
165
 
-
 
166
/*----------------------------------------------------------------------------
-
 
167
** FUNCTION           : doDelete
-
 
168
**
-
 
169
** DESCRIPTION        : Delete the file from disk
-
 
170
**
-
 
171
**
-
 
172
** INPUTS             :
-
 
173
**
-
 
174
** RETURNS            :
-
 
175
**
-
 
176
----------------------------------------------------------------------------*/
-
 
177
 
-
 
178
void QmEditAddendum::doDelete(void)
-
 
179
{
-
 
180
    file.remove();
81
    delete ui;
181
    done(0);
82
}
182
}
-
 
183
 
-
 
184
/*----------------------------------------------------------------------------
-
 
185
** FUNCTION           : doTimeStamp
-
 
186
**
-
 
187
** DESCRIPTION        : Insert a Date-Time into the text
-
 
188
**
-
 
189
**
-
 
190
** INPUTS             :
-
 
191
**
-
 
192
** RETURNS            :
-
 
193
**
-
 
194
----------------------------------------------------------------------------*/
-
 
195
 
-
 
196
 
-
 
197
void QmEditAddendum::doTimeStamp(void)
-
 
198
{
-
 
199
    ui->textEdit->insertPlainText(QDateTime::currentDateTime().toString("dd-MMM-yy hh:mm:ss").append(":"));
-
 
200
    ui->textEdit->setFocus();
-
 
201
}
-
 
202