~ubuntu-branches/ubuntu/karmic/kst/karmic

« back to all changes in this revision

Viewing changes to kst/kst/kstdatadialog.ui.h

  • Committer: Bazaar Package Importer
  • Author(s): Daniel T Chen
  • Date: 2006-06-30 19:11:30 UTC
  • mfrom: (1.2.3 upstream)
  • Revision ID: james.westby@ubuntu.com-20060630191130-acumuar75bz4puty
Tags: 1.2.1-1ubuntu1
Merge from debian unstable.

Show diffs side-by-side

added added

removed removed

Lines of Context:
13
13
 
14
14
void KstDataDialog::ok()
15
15
{
 
16
    _ok->setEnabled(false);
 
17
    _cancel->setEnabled(false);
16
18
    if (_newDialog || _dp == 0L) {
17
19
        if (newObject()) {
18
20
            close();
 
21
        } else {
 
22
            _ok->setEnabled(true);
 
23
            _cancel->setEnabled(true);
19
24
        }
20
25
    } else {
21
26
        if (editObject()) {
22
27
            close();
 
28
        } else {
 
29
            _ok->setEnabled(true);
 
30
            _cancel->setEnabled(true);
23
31
        }
24
32
    }
25
33
}
41
49
 
42
50
void KstDataDialog::init()
43
51
{
 
52
    _dp = 0L;
44
53
    _newDialog = false;
 
54
    _multiple = false;
 
55
    _editMultipleMode = false;
 
56
    connect(_editMultiple, SIGNAL(clicked()), this, SLOT(toggleEditMultiple()));
 
57
    _editMultiple->hide();
 
58
    _editMultipleWidget->hide();
45
59
}
46
60
 
47
61
 
48
 
void KstDataDialog::showNew()
 
62
void KstDataDialog::show()
49
63
{
50
64
    _newDialog = true;
51
65
    _dp = 0L;
52
66
 
 
67
    update();
53
68
    fillFieldsForNew();
54
69
 
 
70
    _editMultiple->hide();
 
71
    _editMultipleWidget->hide();
 
72
    _editMultipleMode = false;
 
73
    _tagName->setEnabled(true);
 
74
    _legendText->setEnabled(true);
 
75
 
55
76
    setCaption(i18n("New %1").arg(objectName()));
56
 
    show();
 
77
    QDialog::show();
57
78
    raise();
 
79
    _ok->setEnabled(true);
 
80
    _cancel->setEnabled(true);
 
81
}
 
82
 
 
83
 
 
84
void KstDataDialog::update()
 
85
{
58
86
}
59
87
 
60
88
 
64
92
    _dp = findObject(field);
65
93
 
66
94
    if (!_dp) {
67
 
        showNew();
 
95
        show();
68
96
        return;
69
97
    }
70
98
 
 
99
    if (_multiple) {
 
100
        _editMultiple->show();
 
101
        _editMultiple->setText(i18n("Edit Multiple >>"));
 
102
        _editMultipleWidget->hide();
 
103
        _editMultipleMode = false;
 
104
    }
 
105
 
 
106
    _tagName->setEnabled(true);
 
107
    _legendText->setEnabled(true);
 
108
 
 
109
    update();
71
110
    fillFieldsForEdit();
72
111
 
73
112
    setCaption(i18n("Edit %1").arg(objectName()));
74
 
    show();
 
113
    QDialog::show();
75
114
    raise();
 
115
    _ok->setEnabled(true);
 
116
    _cancel->setEnabled(true);
76
117
}
77
118
 
78
119
 
79
120
QString KstDataDialog::objectName()
80
121
{
81
 
    // Designer support for pure virtuals appears to be broken
82
122
    return QString::null;
83
123
}
84
124
 
85
125
 
86
126
void KstDataDialog::fillFieldsForEdit()
87
127
{
88
 
    // Designer support for pure virtuals appears to be broken
89
128
}
90
129
 
91
130
 
92
131
void KstDataDialog::fillFieldsForNew()
93
132
{
94
 
    // Designer support for pure virtuals appears to be broken
95
133
}
96
134
 
97
135
 
98
 
KstDataObjectPtr KstDataDialog::findObject( const QString & name )
 
136
KstObjectPtr KstDataDialog::findObject( const QString & name )
99
137
{
100
 
    Q_UNUSED(name)
101
 
    // Designer support for pure virtuals appears to be broken
102
 
    return 0L;
 
138
    KST::dataObjectList.lock().readLock();
 
139
    KstObjectPtr o = (*KST::dataObjectList.findTag(name)).data();
 
140
    KST::dataObjectList.lock().readUnlock();
 
141
    return o;
103
142
}
104
143
 
105
144
 
106
145
bool KstDataDialog::newObject()
107
146
{
108
 
    // Designer support for pure virtuals appears to be broken
109
147
    return false;
110
148
}
111
149
 
112
150
 
113
151
bool KstDataDialog::editObject()
114
152
{
115
 
    // Designer support for pure virtuals appears to be broken
116
153
    return false;
117
154
}
 
155
 
 
156
 
 
157
void KstDataDialog::populateEditMultiple()
 
158
{
 
159
}
 
160
 
 
161
 
 
162
bool KstDataDialog::multiple()
 
163
{
 
164
    return _multiple;
 
165
}
 
166
 
 
167
 
 
168
void KstDataDialog::setMultiple(bool multiple)
 
169
{
 
170
    _multiple = multiple;
 
171
}
 
172
 
 
173
 
 
174
void KstDataDialog::toggleEditMultiple()
 
175
{
 
176
    if (_multiple) {
 
177
        if (_editMultipleMode) {
 
178
            cleanup();
 
179
            showEdit(_dp->tagName()); // redisplay the edit dialog
 
180
        } else {
 
181
            _editMultipleMode = true;
 
182
            _editMultipleWidget->_objectList->clear();
 
183
            // fill in list of objects and prepare the fields for multiple edit
 
184
            populateEditMultiple();
 
185
            _editMultipleWidget->show();
 
186
            _editMultiple->setText(i18n("Edit Multiple <<"));
 
187
            adjustSize();
 
188
            resize(minimumSizeHint());
 
189
            setFixedHeight(height());
 
190
        }
 
191
    }
 
192
}
 
193
 
 
194
 
 
195
void KstDataDialog::closeEvent(QCloseEvent *e)
 
196
{
 
197
    cleanup();
 
198
    QWidget::closeEvent(e);
 
199
}
 
200
 
 
201
 
 
202
void KstDataDialog::cleanup()
 
203
{
 
204
}
 
205
 
 
206
// vim: ts=8 sw=4 noet