author | zautrix <zautrix> | 2005-04-30 07:32:03 (UTC) |
---|---|---|
committer | zautrix <zautrix> | 2005-04-30 07:32:03 (UTC) |
commit | 7c31102a00920834ab8e3778f0f459b96b2fb309 (patch) (unidiff) | |
tree | 9f238caaaab4ba150e4f14708d85162af0ea5092 /korganizer | |
parent | bdaded2da25b0ccef80d6e638fa12f92a4f8744d (diff) | |
download | kdepimpi-7c31102a00920834ab8e3778f0f459b96b2fb309.zip kdepimpi-7c31102a00920834ab8e3778f0f459b96b2fb309.tar.gz kdepimpi-7c31102a00920834ab8e3778f0f459b96b2fb309.tar.bz2 |
fixes
-rw-r--r-- | korganizer/koeditordetails.cpp | 102 | ||||
-rw-r--r-- | korganizer/koeditorgeneral.cpp | 16 | ||||
-rw-r--r-- | korganizer/koeventeditor.cpp | 4 | ||||
-rw-r--r-- | korganizer/kotodoeditor.cpp | 2 | ||||
-rw-r--r-- | korganizer/searchdialog.cpp | 4 |
5 files changed, 82 insertions, 46 deletions
diff --git a/korganizer/koeditordetails.cpp b/korganizer/koeditordetails.cpp index 802261c..bdfc637 100644 --- a/korganizer/koeditordetails.cpp +++ b/korganizer/koeditordetails.cpp | |||
@@ -1,285 +1,305 @@ | |||
1 | /* | 1 | /* |
2 | This file is part of KOrganizer. | 2 | This file is part of KOrganizer. |
3 | Copyright (c) 2001 Cornelius Schumacher <schumacher@kde.org> | 3 | Copyright (c) 2001 Cornelius Schumacher <schumacher@kde.org> |
4 | 4 | ||
5 | This program is free software; you can redistribute it and/or modify | 5 | This program is free software; you can redistribute it and/or modify |
6 | it under the terms of the GNU General Public License as published by | 6 | it under the terms of the GNU General Public License as published by |
7 | the Free Software Foundation; either version 2 of the License, or | 7 | the Free Software Foundation; either version 2 of the License, or |
8 | (at your option) any later version. | 8 | (at your option) any later version. |
9 | 9 | ||
10 | This program is distributed in thse hope that it will be useful, | 10 | This program is distributed in thse hope that it will be useful, |
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of |
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
13 | GNU General Public License for more details. | 13 | GNU General Public License for more details. |
14 | 14 | ||
15 | You should have received a copy of the GNU General Public License | 15 | You should have received a copy of the GNU General Public License |
16 | along with this program; if not, write to the Free Software | 16 | along with this program; if not, write to the Free Software |
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. | 17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. |
18 | 18 | ||
19 | As a special exception, permission is given to link this program | 19 | As a special exception, permission is given to link this program |
20 | with any edition of Qt, and distribute the resulting executable, | 20 | with any edition of Qt, and distribute the resulting executable, |
21 | without including the source code for Qt in the source distribution. | 21 | without including the source code for Qt in the source distribution. |
22 | */ | 22 | */ |
23 | 23 | ||
24 | #include <qtooltip.h> | 24 | #include <qtooltip.h> |
25 | #include <qfiledialog.h> | 25 | #include <qfiledialog.h> |
26 | #include <qlayout.h> | 26 | #include <qlayout.h> |
27 | #include <qvbox.h> | 27 | #include <qvbox.h> |
28 | #include <qbuttongroup.h> | 28 | #include <qbuttongroup.h> |
29 | #include <qvgroupbox.h> | 29 | #include <qvgroupbox.h> |
30 | #include <qwidgetstack.h> | 30 | #include <qwidgetstack.h> |
31 | #include <qdatetime.h> | 31 | #include <qdatetime.h> |
32 | #include <qapp.h> | 32 | #include <qapp.h> |
33 | 33 | ||
34 | #include <klocale.h> | 34 | #include <klocale.h> |
35 | #include <kglobal.h> | 35 | #include <kglobal.h> |
36 | #include <kiconloader.h> | 36 | #include <kiconloader.h> |
37 | #include <kstandarddirs.h> | 37 | #include <kstandarddirs.h> |
38 | #include <kmessagebox.h> | 38 | #include <kmessagebox.h> |
39 | #ifndef KORG_NOKABC | 39 | #ifndef KORG_NOKABC |
40 | 40 | ||
41 | #ifdef DESKTOP_VERSION | 41 | #ifdef DESKTOP_VERSION |
42 | #include <kabc/addresseedialog.h> | 42 | #include <kabc/addresseedialog.h> |
43 | #else //DESKTOP_VERSION | 43 | #else //DESKTOP_VERSION |
44 | #include <externalapphandler.h> | 44 | #include <externalapphandler.h> |
45 | #endif //DESKTOP_VERSION | 45 | #endif //DESKTOP_VERSION |
46 | 46 | ||
47 | #endif | 47 | #endif |
48 | 48 | ||
49 | #include <libkcal/incidence.h> | 49 | #include <libkcal/incidence.h> |
50 | 50 | ||
51 | #include "koprefs.h" | 51 | #include "koprefs.h" |
52 | 52 | ||
53 | #include "koeditordetails.h" | 53 | #include "koeditordetails.h" |
54 | 54 | ||
55 | template <> | 55 | template <> |
56 | CustomListViewItem<class Attendee *>::~CustomListViewItem() | 56 | CustomListViewItem<class Attendee *>::~CustomListViewItem() |
57 | { | 57 | { |
58 | delete mData; | 58 | delete mData; |
59 | } | 59 | } |
60 | 60 | ||
61 | template <> | 61 | template <> |
62 | void CustomListViewItem<class Attendee *>::updateItem() | 62 | void CustomListViewItem<class Attendee *>::updateItem() |
63 | { | 63 | { |
64 | setText(0,mData->name()); | 64 | setText(0,mData->name()); |
65 | setText(1,mData->email()); | 65 | setText(1,mData->email()); |
66 | setText(2,mData->roleStr()); | 66 | setText(2,mData->roleStr()); |
67 | setText(3,mData->statusStr()); | 67 | setText(3,mData->statusStr()); |
68 | if (mData->RSVP() && !mData->email().isEmpty()) | 68 | if (mData->RSVP() && !mData->email().isEmpty()) |
69 | setPixmap(4,SmallIcon("mailappt")); | 69 | setPixmap(4,SmallIcon("mailappt")); |
70 | else | 70 | else |
71 | setPixmap(4,SmallIcon("nomailappt")); | 71 | setPixmap(4,SmallIcon("nomailappt")); |
72 | } | 72 | } |
73 | 73 | ||
74 | 74 | ||
75 | KOEditorDetails::KOEditorDetails (int spacing,QWidget* parent,const char* name) | 75 | KOEditorDetails::KOEditorDetails (int spacing,QWidget* parent,const char* name) |
76 | : QWidget( parent, name), mDisableItemUpdate( false ) | 76 | : QWidget( parent, name), mDisableItemUpdate( false ) |
77 | { | 77 | { |
78 | QGridLayout *topLayout = new QGridLayout(this); | 78 | QGridLayout *topLayout = new QGridLayout(this); |
79 | topLayout->setSpacing(spacing); | 79 | topLayout->setSpacing(spacing); |
80 | 80 | ||
81 | QString organizer = KOPrefs::instance()->email(); | 81 | QString organizer = KOPrefs::instance()->email(); |
82 | mOrganizerLabel = new QLabel(i18n("Organizer: %1").arg(organizer),this); | 82 | mOrganizerLabel = new QLabel(i18n("Organizer: %1").arg(organizer),this); |
83 | 83 | ||
84 | mListView = new KListView(this,"mListView"); | 84 | mListView = new KListView(this,"mListView"); |
85 | mListView->addColumn(i18n("Name"),180); | 85 | mListView->addColumn(i18n("Name"),180); |
86 | mListView->addColumn(i18n("Email"),180); | 86 | mListView->addColumn(i18n("Email"),180); |
87 | mListView->addColumn(i18n("Role"),60); | 87 | mListView->addColumn(i18n("Role"),60); |
88 | mListView->addColumn(i18n("Status"),100); | 88 | mListView->addColumn(i18n("Status"),100); |
89 | mListView->addColumn(i18n("RSVP"),35); | 89 | mListView->addColumn(i18n("RSVP"),35); |
90 | if ( QApplication::desktop()->width() <= 320 ) { | 90 | if ( QApplication::desktop()->width() <= 320 ) { |
91 | //mListView->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Expanding) ); | 91 | int hei = 80; |
92 | mListView->setFixedHeight(80); | 92 | if ( QApplication::desktop()->height() <= 240 ) |
93 | hei = 60; | ||
94 | mListView->setFixedHeight(hei); | ||
93 | } | 95 | } |
94 | mListView->setAllColumnsShowFocus (true ); | 96 | mListView->setAllColumnsShowFocus (true ); |
95 | //mListView->setSingleClick( true ); | 97 | //mListView->setSingleClick( true ); |
96 | connect(mListView,SIGNAL(selectionChanged(QListViewItem *)), | 98 | connect(mListView,SIGNAL(selectionChanged(QListViewItem *)), |
97 | SLOT(updateAttendeeInput())); | 99 | SLOT(updateAttendeeInput())); |
98 | 100 | ||
99 | connect(mListView,SIGNAL(executed(QListViewItem * ,const QPoint&, int )), | 101 | connect(mListView,SIGNAL(executed(QListViewItem * ,const QPoint&, int )), |
100 | SLOT(itemClicked(QListViewItem * ,const QPoint& , int ))); | 102 | SLOT(itemClicked(QListViewItem * ,const QPoint& , int ))); |
101 | 103 | ||
102 | mRsvpButton = new QCheckBox(this); | 104 | mRsvpButton = new QCheckBox(this); |
103 | mRsvpButton->setText(i18n("Request response")); | 105 | mRsvpButton->setText(i18n("Request response")); |
104 | mAddressBookButton = new QPushButton(i18n("Address &Book..."),this); | 106 | mAddressBookButton = new QPushButton(i18n("Address &Book..."),this); |
105 | QLabel *attendeeLabel = new QLabel(this); | 107 | QLabel *attendeeLabel = new QLabel(this); |
106 | attendeeLabel->setText(i18n("Name:")); | 108 | attendeeLabel->setText(i18n("Name:")); |
107 | attendeeLabel->setFixedSize( attendeeLabel->sizeHint() ); | 109 | attendeeLabel->setFixedSize( attendeeLabel->sizeHint() ); |
108 | mNameEdit = new QLineEdit(this); | 110 | mNameEdit = new QLineEdit(this); |
109 | connect(mNameEdit,SIGNAL(textChanged(const QString &)), | 111 | connect(mNameEdit,SIGNAL(textChanged(const QString &)), |
110 | SLOT(updateAttendeeItem())); | 112 | SLOT(updateAttendeeItem())); |
111 | 113 | ||
112 | mUidEdit = new QLineEdit(0); | 114 | mUidEdit = new QLineEdit(0); |
113 | mUidEdit->setText(""); | 115 | mUidEdit->setText(""); |
114 | 116 | ||
115 | QLabel *emailLabel = new QLabel(this); | 117 | QLabel *emailLabel = new QLabel(this); |
116 | emailLabel->setText(i18n("Email:")); | 118 | emailLabel->setText(i18n("Email:")); |
117 | mEmailEdit = new QLineEdit(this); | 119 | mEmailEdit = new QLineEdit(this); |
118 | connect(mEmailEdit,SIGNAL(textChanged(const QString &)), | 120 | connect(mEmailEdit,SIGNAL(textChanged(const QString &)), |
119 | SLOT(updateAttendeeItem())); | 121 | SLOT(updateAttendeeItem())); |
120 | 122 | ||
121 | QLabel *attendeeRoleLabel = new QLabel(this); | 123 | QLabel *attendeeRoleLabel = new QLabel(this); |
122 | attendeeRoleLabel->setText(i18n("Role:")); | 124 | attendeeRoleLabel->setText(i18n("Role:")); |
123 | mRoleCombo = new QComboBox(false,this); | 125 | mRoleCombo = new QComboBox(false,this); |
124 | mRoleCombo->insertStringList(Attendee::roleList()); | 126 | mRoleCombo->insertStringList(Attendee::roleList()); |
125 | connect(mRoleCombo,SIGNAL(activated(int)),SLOT(updateAttendeeItem())); | 127 | connect(mRoleCombo,SIGNAL(activated(int)),SLOT(updateAttendeeItem())); |
126 | 128 | ||
127 | QLabel *statusLabel = new QLabel(this); | 129 | QLabel *statusLabel = new QLabel(this); |
128 | statusLabel->setText( i18n("Status:") ); | 130 | statusLabel->setText( i18n("Status:") ); |
129 | 131 | ||
130 | mStatusCombo = new QComboBox(false,this); | 132 | mStatusCombo = new QComboBox(false,this); |
131 | mStatusCombo->insertStringList(Attendee::statusList()); | 133 | mStatusCombo->insertStringList(Attendee::statusList()); |
132 | connect(mStatusCombo,SIGNAL(activated(int)),SLOT(updateAttendeeItem())); | 134 | connect(mStatusCombo,SIGNAL(activated(int)),SLOT(updateAttendeeItem())); |
133 | 135 | ||
134 | 136 | ||
135 | connect(mRsvpButton,SIGNAL(clicked()),SLOT(updateAttendeeItem())); | 137 | connect(mRsvpButton,SIGNAL(clicked()),SLOT(updateAttendeeItem())); |
136 | QWidget *buttonBox = new QWidget(this); | 138 | QWidget *buttonBox = new QWidget(this); |
137 | QVBoxLayout *buttonLayout = new QVBoxLayout(buttonBox); | 139 | QVBoxLayout *buttonLayout = new QVBoxLayout(buttonBox); |
138 | 140 | ||
139 | QPushButton *newButton = new QPushButton(i18n("&New"),buttonBox); | 141 | QPushButton *newButton = new QPushButton(i18n("&New"),buttonBox); |
140 | buttonLayout->addWidget(newButton); | 142 | buttonLayout->addWidget(newButton); |
141 | connect(newButton,SIGNAL(clicked()),SLOT(addNewAttendee())); | 143 | connect(newButton,SIGNAL(clicked()),SLOT(addNewAttendee())); |
142 | 144 | ||
143 | mRemoveButton = new QPushButton(i18n("&Remove"),buttonBox); | 145 | mRemoveButton = new QPushButton(i18n("&Remove"),buttonBox); |
144 | buttonLayout->addWidget(mRemoveButton); | 146 | buttonLayout->addWidget(mRemoveButton); |
145 | connect(mRemoveButton, SIGNAL(clicked()),SLOT(removeAttendee())); | 147 | connect(mRemoveButton, SIGNAL(clicked()),SLOT(removeAttendee())); |
146 | 148 | ||
147 | // buttonLayout->addWidget(mAddressBookButton); | 149 | // buttonLayout->addWidget(mAddressBookButton); |
148 | connect(mAddressBookButton,SIGNAL(clicked()),SLOT(openAddressBook())); | 150 | connect(mAddressBookButton,SIGNAL(clicked()),SLOT(openAddressBook())); |
149 | //mRoleCombo->setFixedSize( mRoleCombo->sizeHint () ); | 151 | //mRoleCombo->setFixedSize( mRoleCombo->sizeHint () ); |
150 | 152 | if ( QApplication::desktop()->height() <= 240 ) { | |
151 | if (qApp->desktop()->width() < 640 ) { | 153 | mRoleCombo->setSizePolicy( QSizePolicy( QSizePolicy::Preferred ,QSizePolicy::Minimum ,FALSE) ); |
152 | if ( qApp->desktop()->width() < 300 ) | 154 | mStatusCombo->setSizePolicy( QSizePolicy( QSizePolicy::Preferred ,QSizePolicy::Minimum ,FALSE) ); |
153 | topLayout->setSpacing(1); | ||
154 | ;//mListView->setFixedHeight(80); | ||
155 | topLayout->addMultiCellWidget(mOrganizerLabel,0,0,0,3); | ||
156 | topLayout->addMultiCellWidget(mListView,1,1,0,3); | ||
157 | topLayout->addWidget(attendeeLabel,3,0); | ||
158 | topLayout->addMultiCellWidget(mNameEdit,3,3,1,2); | ||
159 | topLayout->addWidget(emailLabel,4,0); | ||
160 | topLayout->addMultiCellWidget(mEmailEdit,4,4,1,2); | ||
161 | topLayout->addWidget(attendeeRoleLabel,5,0); | ||
162 | topLayout->addMultiCellWidget(mRoleCombo,5,5,1,3); | ||
163 | topLayout->addWidget(statusLabel,6,0); | ||
164 | topLayout->addMultiCellWidget(mStatusCombo,6,6,1,3); | ||
165 | topLayout->addMultiCellWidget(mAddressBookButton,2,2,2,3); | ||
166 | topLayout->addMultiCellWidget(mRsvpButton,2,2,0,1); | ||
167 | topLayout->addMultiCellWidget(buttonBox,3,4,3,3); | ||
168 | topLayout->setRowStretch(1,2); | ||
169 | topLayout->setColStretch(0,0); | ||
170 | topLayout->setColStretch(1,2); | ||
171 | topLayout->setColStretch(2,1); | ||
172 | topLayout->setColStretch(3,1); | ||
173 | |||
174 | } else { | ||
175 | topLayout->addMultiCellWidget(mOrganizerLabel,0,0,0,5); | 155 | topLayout->addMultiCellWidget(mOrganizerLabel,0,0,0,5); |
176 | topLayout->addMultiCellWidget(mListView,1,1,0,5); | 156 | topLayout->addMultiCellWidget(mListView,1,1,0,5); |
177 | topLayout->addWidget(attendeeLabel,3,0); | 157 | topLayout->addWidget(attendeeLabel,3,0); |
178 | topLayout->addMultiCellWidget(mNameEdit,3,3,1,4); | 158 | topLayout->addMultiCellWidget(mNameEdit,3,3,1,4); |
179 | topLayout->addWidget(emailLabel,4,0); | 159 | topLayout->addWidget(emailLabel,4,0); |
180 | topLayout->addMultiCellWidget(mEmailEdit,4,4,1,4); | 160 | topLayout->addMultiCellWidget(mEmailEdit,4,4,1,4); |
181 | topLayout->addWidget(attendeeRoleLabel,5,0); | 161 | topLayout->addWidget(attendeeRoleLabel,5,0); |
182 | topLayout->addMultiCellWidget(mRoleCombo,5,5,1,2); | 162 | topLayout->addMultiCellWidget(mRoleCombo,5,5,1,2); |
183 | topLayout->addWidget(statusLabel,5,3); | 163 | topLayout->addWidget(statusLabel,5,3); |
184 | topLayout->addMultiCellWidget(mStatusCombo,5,5,4,5); | 164 | topLayout->addMultiCellWidget(mStatusCombo,5,5,4,5); |
185 | topLayout->addMultiCellWidget(mAddressBookButton,2,2,4,5); | 165 | topLayout->addMultiCellWidget(mAddressBookButton,2,2,2,5); |
186 | topLayout->addMultiCellWidget(mRsvpButton,2,2,0,1); | 166 | topLayout->addMultiCellWidget(mRsvpButton,2,2,0,1); |
187 | topLayout->addMultiCellWidget(buttonBox,3,4,5,5); | 167 | topLayout->addMultiCellWidget(buttonBox,3,4,5,5); |
188 | topLayout->setRowStretch(1,5); | 168 | topLayout->setRowStretch(1,5); |
189 | topLayout->setColStretch(0,0); | 169 | topLayout->setColStretch(0,0); |
170 | } else { | ||
171 | if (qApp->desktop()->width() < 640 ) { | ||
172 | if ( qApp->desktop()->width() < 300 ) | ||
173 | topLayout->setSpacing(1); | ||
174 | ;//mListView->setFixedHeight(80); | ||
175 | topLayout->addMultiCellWidget(mOrganizerLabel,0,0,0,3); | ||
176 | topLayout->addMultiCellWidget(mListView,1,1,0,3); | ||
177 | topLayout->addWidget(attendeeLabel,3,0); | ||
178 | topLayout->addMultiCellWidget(mNameEdit,3,3,1,2); | ||
179 | topLayout->addWidget(emailLabel,4,0); | ||
180 | topLayout->addMultiCellWidget(mEmailEdit,4,4,1,2); | ||
181 | topLayout->addWidget(attendeeRoleLabel,5,0); | ||
182 | topLayout->addMultiCellWidget(mRoleCombo,5,5,1,3); | ||
183 | topLayout->addWidget(statusLabel,6,0); | ||
184 | topLayout->addMultiCellWidget(mStatusCombo,6,6,1,3); | ||
185 | topLayout->addMultiCellWidget(mAddressBookButton,2,2,2,3); | ||
186 | topLayout->addMultiCellWidget(mRsvpButton,2,2,0,1); | ||
187 | topLayout->addMultiCellWidget(buttonBox,3,4,3,3); | ||
188 | topLayout->setRowStretch(1,2); | ||
189 | topLayout->setColStretch(0,0); | ||
190 | topLayout->setColStretch(1,2); | ||
191 | topLayout->setColStretch(2,1); | ||
192 | topLayout->setColStretch(3,1); | ||
193 | } else { | ||
194 | topLayout->addMultiCellWidget(mOrganizerLabel,0,0,0,5); | ||
195 | topLayout->addMultiCellWidget(mListView,1,1,0,5); | ||
196 | topLayout->addWidget(attendeeLabel,3,0); | ||
197 | topLayout->addMultiCellWidget(mNameEdit,3,3,1,4); | ||
198 | topLayout->addWidget(emailLabel,4,0); | ||
199 | topLayout->addMultiCellWidget(mEmailEdit,4,4,1,4); | ||
200 | topLayout->addWidget(attendeeRoleLabel,5,0); | ||
201 | topLayout->addMultiCellWidget(mRoleCombo,5,5,1,2); | ||
202 | topLayout->addWidget(statusLabel,5,3); | ||
203 | topLayout->addMultiCellWidget(mStatusCombo,5,5,4,5); | ||
204 | topLayout->addMultiCellWidget(mAddressBookButton,2,2,4,5); | ||
205 | topLayout->addMultiCellWidget(mRsvpButton,2,2,0,1); | ||
206 | topLayout->addMultiCellWidget(buttonBox,3,4,5,5); | ||
207 | topLayout->setRowStretch(1,5); | ||
208 | topLayout->setColStretch(0,0); | ||
209 | } | ||
190 | } | 210 | } |
191 | // #if 0 | 211 | // #if 0 |
192 | // topLayout->setColStretch(2,1); | 212 | // topLayout->setColStretch(2,1); |
193 | // topLayout->addWidget(statusLabel,3,3); | 213 | // topLayout->addWidget(statusLabel,3,3); |
194 | // topLayout->addWidget(mStatusCombo,3,4); | 214 | // topLayout->addWidget(mStatusCombo,3,4); |
195 | // #else | 215 | // #else |
196 | // topLayout->addWidget(statusLabel,4,3); | 216 | // topLayout->addWidget(statusLabel,4,3); |
197 | // // topLayout->addWidget(mStatusCombo,4,3); | 217 | // // topLayout->addWidget(mStatusCombo,4,3); |
198 | // topLayout->addMultiCellWidget(mStatusCombo,4,4,4,5); | 218 | // topLayout->addMultiCellWidget(mStatusCombo,4,4,4,5); |
199 | 219 | ||
200 | // #endif | 220 | // #endif |
201 | // // topLayout->setRowStretch(5,1); | 221 | // // topLayout->setRowStretch(5,1); |
202 | // topLayout->addMultiCellWidget(mRsvpButton,5,5,0,1); | 222 | // topLayout->addMultiCellWidget(mRsvpButton,5,5,0,1); |
203 | // topLayout->addMultiCellWidget(buttonBox,2,3,5,5); | 223 | // topLayout->addMultiCellWidget(buttonBox,2,3,5,5); |
204 | // topLayout->setRowStretch(1,5); | 224 | // topLayout->setRowStretch(1,5); |
205 | // topLayout->setColStretch(0,0); | 225 | // topLayout->setColStretch(0,0); |
206 | 226 | ||
207 | #ifdef KORG_NOKABC | 227 | #ifdef KORG_NOKABC |
208 | mAddressBookButton->hide(); | 228 | mAddressBookButton->hide(); |
209 | #endif | 229 | #endif |
210 | 230 | ||
211 | updateAttendeeInput(); | 231 | updateAttendeeInput(); |
212 | #ifndef DESKTOP_VERSION | 232 | #ifndef DESKTOP_VERSION |
213 | //US listen for arriving address resultsets | 233 | //US listen for arriving address resultsets |
214 | connect(ExternalAppHandler::instance(), SIGNAL(receivedNameEmailUidListEvent(const QString&, const QStringList&, const QStringList&, const QStringList&)), | 234 | connect(ExternalAppHandler::instance(), SIGNAL(receivedNameEmailUidListEvent(const QString&, const QStringList&, const QStringList&, const QStringList&)), |
215 | this, SLOT(insertAttendees(const QString&, const QStringList&, const QStringList&, const QStringList&))); | 235 | this, SLOT(insertAttendees(const QString&, const QStringList&, const QStringList&, const QStringList&))); |
216 | #endif | 236 | #endif |
217 | 237 | ||
218 | } | 238 | } |
219 | 239 | ||
220 | KOEditorDetails::~KOEditorDetails() | 240 | KOEditorDetails::~KOEditorDetails() |
221 | { | 241 | { |
222 | } | 242 | } |
223 | 243 | ||
224 | void KOEditorDetails::removeAttendee() | 244 | void KOEditorDetails::removeAttendee() |
225 | { | 245 | { |
226 | AttendeeListItem *aItem = (AttendeeListItem *)mListView->selectedItem(); | 246 | AttendeeListItem *aItem = (AttendeeListItem *)mListView->selectedItem(); |
227 | if (!aItem) return; | 247 | if (!aItem) return; |
228 | 248 | ||
229 | Attendee *delA = new Attendee(aItem->data()->name(),aItem->data()->email(), | 249 | Attendee *delA = new Attendee(aItem->data()->name(),aItem->data()->email(), |
230 | aItem->data()->RSVP(),aItem->data()->status(),aItem->data()->role(), | 250 | aItem->data()->RSVP(),aItem->data()->status(),aItem->data()->role(), |
231 | aItem->data()->uid()); | 251 | aItem->data()->uid()); |
232 | mdelAttendees.append(delA); | 252 | mdelAttendees.append(delA); |
233 | 253 | ||
234 | delete aItem; | 254 | delete aItem; |
235 | 255 | ||
236 | updateAttendeeInput(); | 256 | updateAttendeeInput(); |
237 | } | 257 | } |
238 | 258 | ||
239 | 259 | ||
240 | void KOEditorDetails::openAddressBook() | 260 | void KOEditorDetails::openAddressBook() |
241 | { | 261 | { |
242 | #ifndef KORG_NOKABC | 262 | #ifndef KORG_NOKABC |
243 | 263 | ||
244 | #ifdef DESKTOP_VERSION | 264 | #ifdef DESKTOP_VERSION |
245 | KABC::Addressee::List list = KABC::AddresseeDialog::getAddressees(this); | 265 | KABC::Addressee::List list = KABC::AddresseeDialog::getAddressees(this); |
246 | uint i=0; | 266 | uint i=0; |
247 | for (i=0; i < list.count(); i++) { | 267 | for (i=0; i < list.count(); i++) { |
248 | insertAttendee( new Attendee( list[i].realName(), list[i].preferredEmail(),false,KCal::Attendee::NeedsAction,KCal::Attendee::ReqParticipant,list[i].uid()) ); | 268 | insertAttendee( new Attendee( list[i].realName(), list[i].preferredEmail(),false,KCal::Attendee::NeedsAction,KCal::Attendee::ReqParticipant,list[i].uid()) ); |
249 | } | 269 | } |
250 | #else | 270 | #else |
251 | bool res = ExternalAppHandler::instance()->requestNameEmailUidListFromKAPI("QPE/Application/kopi", this->name() /* name is here the unique uid*/); | 271 | bool res = ExternalAppHandler::instance()->requestNameEmailUidListFromKAPI("QPE/Application/kopi", this->name() /* name is here the unique uid*/); |
252 | // the result should now arrive through method insertAttendees | 272 | // the result should now arrive through method insertAttendees |
253 | #endif | 273 | #endif |
254 | 274 | ||
255 | 275 | ||
256 | #if 0 | 276 | #if 0 |
257 | KABC::Addressee a = KABC::AddresseeDialog::getAddressee(this); | 277 | KABC::Addressee a = KABC::AddresseeDialog::getAddressee(this); |
258 | if (!a.isEmpty()) { | 278 | if (!a.isEmpty()) { |
259 | insertAttendee( new Attendee( a.realName(), a.preferredEmail(),false,KCal::Attendee::NeedsAction,KCal::Attendee::ReqParticipant,a.uid()) ); | 279 | insertAttendee( new Attendee( a.realName(), a.preferredEmail(),false,KCal::Attendee::NeedsAction,KCal::Attendee::ReqParticipant,a.uid()) ); |
260 | } | 280 | } |
261 | #endif | 281 | #endif |
262 | #endif | 282 | #endif |
263 | } | 283 | } |
264 | 284 | ||
265 | 285 | ||
266 | void KOEditorDetails::addNewAttendee() | 286 | void KOEditorDetails::addNewAttendee() |
267 | { | 287 | { |
268 | #if 0 | 288 | #if 0 |
269 | // this is cool. If they didn't enter an email address, | 289 | // this is cool. If they didn't enter an email address, |
270 | // try to look it up in the address book and fill it in for them. | 290 | // try to look it up in the address book and fill it in for them. |
271 | if (QString(mEmailEdit->text()).stripWhiteSpace().isEmpty()) { | 291 | if (QString(mEmailEdit->text()).stripWhiteSpace().isEmpty()) { |
272 | KabAPI addrBook; | 292 | KabAPI addrBook; |
273 | QString name; | 293 | QString name; |
274 | std::list<AddressBook::Entry> entries; | 294 | std::list<AddressBook::Entry> entries; |
275 | name = mNameEdit->text(); | 295 | name = mNameEdit->text(); |
276 | if (addrBook.init() == AddressBook::NoError) { | 296 | if (addrBook.init() == AddressBook::NoError) { |
277 | if (addrBook.getEntryByName(name, entries, 1) == AddressBook::NoError) { | 297 | if (addrBook.getEntryByName(name, entries, 1) == AddressBook::NoError) { |
278 | kdDebug() << "positive match" << endl; | 298 | kdDebug() << "positive match" << endl; |
279 | // take first email address | 299 | // take first email address |
280 | if (!entries.front().emails.isEmpty() && | 300 | if (!entries.front().emails.isEmpty() && |
281 | entries.front().emails.first().length()>0) | 301 | entries.front().emails.first().length()>0) |
282 | mEmailEdit->setText(entries.front().emails.first()); | 302 | mEmailEdit->setText(entries.front().emails.first()); |
283 | } | 303 | } |
284 | } | 304 | } |
285 | } | 305 | } |
diff --git a/korganizer/koeditorgeneral.cpp b/korganizer/koeditorgeneral.cpp index 0045b7f..bfe0aec 100644 --- a/korganizer/koeditorgeneral.cpp +++ b/korganizer/koeditorgeneral.cpp | |||
@@ -1,202 +1,212 @@ | |||
1 | /* | 1 | /* |
2 | This file is part of KOrganizer. | 2 | This file is part of KOrganizer. |
3 | Copyright (c) 2001 Cornelius Schumacher <schumacher@kde.org> | 3 | Copyright (c) 2001 Cornelius Schumacher <schumacher@kde.org> |
4 | 4 | ||
5 | This program is free software; you can redistribute it and/or modify | 5 | This program is free software; you can redistribute it and/or modify |
6 | it under the terms of the GNU General Public License as published by | 6 | it under the terms of the GNU General Public License as published by |
7 | the Free Software Foundation; either version 2 of the License, or | 7 | the Free Software Foundation; either version 2 of the License, or |
8 | (at your option) any later version. | 8 | (at your option) any later version. |
9 | 9 | ||
10 | This program is distributed in the hope that it will be useful, | 10 | This program is distributed in the hope that it will be useful, |
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of |
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
13 | GNU General Public License for more details. | 13 | GNU General Public License for more details. |
14 | 14 | ||
15 | You should have received a copy of the GNU General Public License | 15 | You should have received a copy of the GNU General Public License |
16 | along with this program; if not, write to the Free Software | 16 | along with this program; if not, write to the Free Software |
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. | 17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. |
18 | 18 | ||
19 | As a special exception, permission is given to link this program | 19 | As a special exception, permission is given to link this program |
20 | with any edition of Qt, and distribute the resulting executable, | 20 | with any edition of Qt, and distribute the resulting executable, |
21 | without including the source code for Qt in the source distribution. | 21 | without including the source code for Qt in the source distribution. |
22 | */ | 22 | */ |
23 | 23 | ||
24 | #include <qwidget.h> | 24 | #include <qwidget.h> |
25 | #include <qtooltip.h> | 25 | #include <qtooltip.h> |
26 | #include <qlayout.h> | 26 | #include <qlayout.h> |
27 | #include <qvbox.h> | 27 | #include <qvbox.h> |
28 | #include <qbuttongroup.h> | 28 | #include <qbuttongroup.h> |
29 | #include <qvgroupbox.h> | 29 | #include <qvgroupbox.h> |
30 | #include <qwidgetstack.h> | 30 | #include <qwidgetstack.h> |
31 | #include <qdatetime.h> | 31 | #include <qdatetime.h> |
32 | #include <qtimer.h> | 32 | #include <qtimer.h> |
33 | #include <qfile.h> | 33 | #include <qfile.h> |
34 | 34 | ||
35 | 35 | ||
36 | #include <kglobal.h> | 36 | #include <kglobal.h> |
37 | #include <kdebug.h> | 37 | #include <kdebug.h> |
38 | #include <klocale.h> | 38 | #include <klocale.h> |
39 | #include <kiconloader.h> | 39 | #include <kiconloader.h> |
40 | #include <kmessagebox.h> | 40 | #include <kmessagebox.h> |
41 | #include <kfiledialog.h> | 41 | #include <kfiledialog.h> |
42 | #include <kstandarddirs.h> | 42 | #include <kstandarddirs.h> |
43 | 43 | ||
44 | #include <libkcal/todo.h> | 44 | #include <libkcal/todo.h> |
45 | #include <libkcal/event.h> | 45 | #include <libkcal/event.h> |
46 | #include <libkdepim/categoryselectdialog.h> | 46 | #include <libkdepim/categoryselectdialog.h> |
47 | #include <libkdepim/kdateedit.h> | 47 | #include <libkdepim/kdateedit.h> |
48 | 48 | ||
49 | #include "koprefs.h" | 49 | #include "koprefs.h" |
50 | #include "koglobals.h" | 50 | #include "koglobals.h" |
51 | 51 | ||
52 | #include "koeditorgeneral.h" | 52 | #include "koeditorgeneral.h" |
53 | #include "kolocationbox.h" | 53 | #include "kolocationbox.h" |
54 | #ifndef DESKTOP_VERSION | 54 | #ifndef DESKTOP_VERSION |
55 | #include <qpe/qpeapplication.h> | 55 | #include <qpe/qpeapplication.h> |
56 | #else | 56 | #else |
57 | #include <qapplication.h> | 57 | #include <qapplication.h> |
58 | #endif | 58 | #endif |
59 | 59 | ||
60 | KOEditorGeneral::KOEditorGeneral(QObject* parent, const char* name) : | 60 | KOEditorGeneral::KOEditorGeneral(QObject* parent, const char* name) : |
61 | QObject( parent, name) | 61 | QObject( parent, name) |
62 | { | 62 | { |
63 | mNextFocus = 0; | 63 | mNextFocus = 0; |
64 | } | 64 | } |
65 | 65 | ||
66 | KOEditorGeneral::~KOEditorGeneral() | 66 | KOEditorGeneral::~KOEditorGeneral() |
67 | { | 67 | { |
68 | } | 68 | } |
69 | 69 | ||
70 | void KOEditorGeneral::initHeader(QWidget *parent,QBoxLayout *topLayout) | 70 | void KOEditorGeneral::initHeader(QWidget *parent,QBoxLayout *topLayout) |
71 | { | 71 | { |
72 | QGridLayout *headerLayout = new QGridLayout(topLayout); | 72 | QGridLayout *headerLayout = new QGridLayout(topLayout); |
73 | 73 | ||
74 | #if 0 | 74 | #if 0 |
75 | mOwnerLabel = new QLabel(i18n("Owner:"),parent); | 75 | mOwnerLabel = new QLabel(i18n("Owner:"),parent); |
76 | headerLayout->addMultiCellWidget(mOwnerLabel,0,0,0,1); | 76 | headerLayout->addMultiCellWidget(mOwnerLabel,0,0,0,1); |
77 | #endif | 77 | #endif |
78 | 78 | ||
79 | QLabel *summaryLabel = new QLabel(i18n("Summary:"),parent); | 79 | QLabel *summaryLabel = new QLabel(i18n("Summary:"),parent); |
80 | headerLayout->addWidget(summaryLabel,1,0); | 80 | headerLayout->addWidget(summaryLabel,1,0); |
81 | 81 | ||
82 | mSummaryEdit = new KOLocationBox(TRUE,parent, 10); | 82 | mSummaryEdit = new KOLocationBox(TRUE,parent, 10); |
83 | mSummaryEdit->setSizePolicy( QSizePolicy( QSizePolicy::Preferred ,QSizePolicy::MinimumExpanding ,FALSE) ); | 83 | mSummaryEdit->setSizePolicy( QSizePolicy( QSizePolicy::Preferred ,QSizePolicy::MinimumExpanding ,FALSE) ); |
84 | //mSummaryEdit->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)5 ,(QSizePolicy::SizeType)3 ,FALSE) ); | 84 | //mSummaryEdit->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)5 ,(QSizePolicy::SizeType)3 ,FALSE) ); |
85 | //qDebug("h %d %d ", summaryLabel->sizeHint().height(),mSummaryEdit->sizeHint().height() ); | 85 | //qDebug("h %d %d ", summaryLabel->sizeHint().height(),mSummaryEdit->sizeHint().height() ); |
86 | int hei = (summaryLabel->sizeHint().height() + mSummaryEdit->sizeHint().height())/2; | 86 | int hei = (summaryLabel->sizeHint().height() + mSummaryEdit->sizeHint().height())/2; |
87 | if ( QApplication::desktop()->width() > 320 ) | 87 | if ( QApplication::desktop()->width() > 320 ) |
88 | mSummaryEdit->setMaximumHeight( hei +6 ); | 88 | mSummaryEdit->setMaximumHeight( hei +6 ); |
89 | //qDebug("%d %d %d %d %d %d ", QSizePolicy::Fixed , QSizePolicy::Minimum , QSizePolicy:: Maximum , QSizePolicy:: Preferred , QSizePolicy:: MinimumExpanding , QSizePolicy::Expanding ); | 89 | //qDebug("%d %d %d %d %d %d ", QSizePolicy::Fixed , QSizePolicy::Minimum , QSizePolicy:: Maximum , QSizePolicy:: Preferred , QSizePolicy:: MinimumExpanding , QSizePolicy::Expanding ); |
90 | // SizeType { Fixed = 0, Minimum = MayGrow, Maximum = MayShrink, Preferred = MayGrow|MayShrink, MinimumExpanding = Minimum|ExpMask, Expanding = MinimumExpanding|MayShrink } | 90 | // SizeType { Fixed = 0, Minimum = MayGrow, Maximum = MayShrink, Preferred = MayGrow|MayShrink, MinimumExpanding = Minimum|ExpMask, Expanding = MinimumExpanding|MayShrink } |
91 | // mSummaryEdit = new QLineEdit(parent); | 91 | // mSummaryEdit = new QLineEdit(parent); |
92 | headerLayout->addWidget(mSummaryEdit,1,1); | 92 | headerLayout->addWidget(mSummaryEdit,1,1); |
93 | connect ( mSummaryEdit->lineEdit(), SIGNAL ( returnPressed() ), this, SIGNAL (allAccepted () ) ); | 93 | connect ( mSummaryEdit->lineEdit(), SIGNAL ( returnPressed() ), this, SIGNAL (allAccepted () ) ); |
94 | 94 | ||
95 | QLabel *locationLabel = new QLabel(i18n("Location:"),parent); | 95 | QLabel *locationLabel = new QLabel(i18n("Location:"),parent); |
96 | headerLayout->addWidget(locationLabel,2,0); | 96 | if ( QApplication::desktop()->height() < 320 ) |
97 | headerLayout->addWidget(locationLabel,1,2); | ||
98 | else | ||
99 | headerLayout->addWidget(locationLabel,2,0); | ||
97 | 100 | ||
98 | mLocationEdit = new KOLocationBox(TRUE,parent,10); | 101 | mLocationEdit = new KOLocationBox(TRUE,parent,10); |
99 | mLocationEdit->setSizePolicy( QSizePolicy( QSizePolicy::Preferred ,QSizePolicy::MinimumExpanding ,FALSE) ); | 102 | mLocationEdit->setSizePolicy( QSizePolicy( QSizePolicy::Preferred ,QSizePolicy::MinimumExpanding ,FALSE) ); |
100 | if ( QApplication::desktop()->width() > 320 ) | 103 | if ( QApplication::desktop()->width() > 320 ) |
101 | mLocationEdit->setMaximumHeight( hei + 6); | 104 | mLocationEdit->setMaximumHeight( hei + 6); |
102 | 105 | ||
103 | // mLocationEdit = new QLineEdit(parent); | 106 | // mLocationEdit = new QLineEdit(parent); |
104 | connect ( mLocationEdit->lineEdit(), SIGNAL ( returnPressed() ), this, SIGNAL (allAccepted () ) ); | 107 | connect ( mLocationEdit->lineEdit(), SIGNAL ( returnPressed() ), this, SIGNAL (allAccepted () ) ); |
105 | headerLayout->addWidget(mLocationEdit,2,1); | 108 | if ( QApplication::desktop()->height() < 320 ) { |
106 | headerLayout->setColStretch( 1, 10); | 109 | headerLayout->addWidget(mLocationEdit,1,3); |
110 | headerLayout->setColStretch( 1, 10); | ||
111 | headerLayout->setColStretch( 3, 10); | ||
112 | } | ||
113 | else { | ||
114 | headerLayout->addWidget(mLocationEdit,2,1); | ||
115 | headerLayout->setColStretch( 1, 10); | ||
116 | } | ||
107 | } | 117 | } |
108 | void KOEditorGeneral::setFocusOn( int i ) | 118 | void KOEditorGeneral::setFocusOn( int i ) |
109 | { | 119 | { |
110 | mNextFocus = i; | 120 | mNextFocus = i; |
111 | QTimer::singleShot( 0, this, SLOT ( slotSetFocusOn() )); | 121 | QTimer::singleShot( 0, this, SLOT ( slotSetFocusOn() )); |
112 | } | 122 | } |
113 | void KOEditorGeneral::slotSetFocusOn() | 123 | void KOEditorGeneral::slotSetFocusOn() |
114 | { | 124 | { |
115 | mNextFocus; | 125 | mNextFocus; |
116 | if ( mNextFocus == 1 ) { | 126 | if ( mNextFocus == 1 ) { |
117 | mDescriptionEdit->setFocus(); | 127 | mDescriptionEdit->setFocus(); |
118 | mDescriptionEdit->setCursorPosition( mDescriptionEdit->numLines (), 333); | 128 | mDescriptionEdit->setCursorPosition( mDescriptionEdit->numLines (), 333); |
119 | } | 129 | } |
120 | if ( mNextFocus == 2 ) { | 130 | if ( mNextFocus == 2 ) { |
121 | mSummaryEdit->setFocus(); | 131 | mSummaryEdit->setFocus(); |
122 | } | 132 | } |
123 | } | 133 | } |
124 | void KOEditorGeneral::editCategories() | 134 | void KOEditorGeneral::editCategories() |
125 | { | 135 | { |
126 | // qDebug("KOEditorGeneral::editCategories() "); | 136 | // qDebug("KOEditorGeneral::editCategories() "); |
127 | KPIM::CategorySelectDialog* csd = new KPIM::CategorySelectDialog( KOPrefs::instance(), 0 ); | 137 | KPIM::CategorySelectDialog* csd = new KPIM::CategorySelectDialog( KOPrefs::instance(), 0 ); |
128 | connect(csd,SIGNAL(categoriesSelected(const QString &)), this ,SLOT(setCategories(const QString &))); | 138 | connect(csd,SIGNAL(categoriesSelected(const QString &)), this ,SLOT(setCategories(const QString &))); |
129 | //KOGlobals::fitDialogToScreen( csd ); | 139 | //KOGlobals::fitDialogToScreen( csd ); |
130 | csd->setColorEnabled(); | 140 | csd->setColorEnabled(); |
131 | csd->setSelected( QStringList::split (",", mCategoriesLabel->text()) ); | 141 | csd->setSelected( QStringList::split (",", mCategoriesLabel->text()) ); |
132 | csd->exec(); | 142 | csd->exec(); |
133 | delete csd; | 143 | delete csd; |
134 | } | 144 | } |
135 | void KOEditorGeneral::initCategories(QWidget *parent, QBoxLayout *topLayout) | 145 | void KOEditorGeneral::initCategories(QWidget *parent, QBoxLayout *topLayout) |
136 | { | 146 | { |
137 | QBoxLayout *categoriesLayout = new QHBoxLayout( topLayout ); | 147 | QBoxLayout *categoriesLayout = new QHBoxLayout( topLayout ); |
138 | 148 | ||
139 | mCategoriesButton = new QPushButton(parent); | 149 | mCategoriesButton = new QPushButton(parent); |
140 | mCategoriesButton->setText(i18n("Categories...")); | 150 | mCategoriesButton->setText(i18n("Categories...")); |
141 | connect(mCategoriesButton,SIGNAL(clicked()),this, SLOT(editCategories() )); | 151 | connect(mCategoriesButton,SIGNAL(clicked()),this, SLOT(editCategories() )); |
142 | categoriesLayout->addWidget(mCategoriesButton); | 152 | categoriesLayout->addWidget(mCategoriesButton); |
143 | 153 | ||
144 | mCategoriesLabel = new QLabel(parent); | 154 | mCategoriesLabel = new QLabel(parent); |
145 | mCategoriesLabel->setFrameStyle(QFrame::Panel|QFrame::Sunken); | 155 | mCategoriesLabel->setFrameStyle(QFrame::Panel|QFrame::Sunken); |
146 | categoriesLayout->addWidget(mCategoriesLabel,1); | 156 | categoriesLayout->addWidget(mCategoriesLabel,1); |
147 | } | 157 | } |
148 | 158 | ||
149 | void KOEditorGeneral::initSecrecy(QWidget *parent, QBoxLayout *topLayout) | 159 | void KOEditorGeneral::initSecrecy(QWidget *parent, QBoxLayout *topLayout) |
150 | { | 160 | { |
151 | QBoxLayout *secrecyLayout = new QHBoxLayout( topLayout ); | 161 | QBoxLayout *secrecyLayout = new QHBoxLayout( topLayout ); |
152 | 162 | ||
153 | QLabel *secrecyLabel = new QLabel(i18n("Access:"),parent); | 163 | QLabel *secrecyLabel = new QLabel(i18n("Access:"),parent); |
154 | mCancelBox = new QCheckBox ( i18n("Cancelled"), parent); | 164 | mCancelBox = new QCheckBox ( i18n("Cancelled"), parent); |
155 | secrecyLayout->addWidget(mCancelBox); | 165 | secrecyLayout->addWidget(mCancelBox); |
156 | secrecyLayout->addWidget(secrecyLabel); | 166 | secrecyLayout->addWidget(secrecyLabel); |
157 | 167 | ||
158 | mSecrecyCombo = new QComboBox(parent); | 168 | mSecrecyCombo = new QComboBox(parent); |
159 | mSecrecyCombo->insertStringList(Incidence::secrecyList()); | 169 | mSecrecyCombo->insertStringList(Incidence::secrecyList()); |
160 | secrecyLayout->addWidget(mSecrecyCombo); | 170 | secrecyLayout->addWidget(mSecrecyCombo); |
161 | } | 171 | } |
162 | 172 | ||
163 | void KOEditorGeneral::initDescription(QWidget *parent,QBoxLayout *topLayout) | 173 | void KOEditorGeneral::initDescription(QWidget *parent,QBoxLayout *topLayout) |
164 | { | 174 | { |
165 | mDescriptionEdit = new KTextEdit(parent); | 175 | mDescriptionEdit = new KTextEdit(parent); |
166 | mDescriptionEdit->setFont(KOPrefs::instance()->mEditBoxFont ); | 176 | mDescriptionEdit->setFont(KOPrefs::instance()->mEditBoxFont ); |
167 | mDescriptionEdit->append(""); | 177 | mDescriptionEdit->append(""); |
168 | mDescriptionEdit->setReadOnly(false); | 178 | mDescriptionEdit->setReadOnly(false); |
169 | mDescriptionEdit->setOverwriteMode(false); | 179 | mDescriptionEdit->setOverwriteMode(false); |
170 | mDescriptionEdit->setWordWrap( KTextEdit::WidgetWidth ); | 180 | mDescriptionEdit->setWordWrap( KTextEdit::WidgetWidth ); |
171 | topLayout->addWidget(mDescriptionEdit); | 181 | topLayout->addWidget(mDescriptionEdit); |
172 | #ifndef DESKTOP_VERSION | 182 | #ifndef DESKTOP_VERSION |
173 | QPEApplication::setStylusOperation( mDescriptionEdit, QPEApplication::RightOnHold ); | 183 | QPEApplication::setStylusOperation( mDescriptionEdit, QPEApplication::RightOnHold ); |
174 | #endif | 184 | #endif |
175 | 185 | ||
176 | } | 186 | } |
177 | 187 | ||
178 | void KOEditorGeneral::initAlarm(QWidget *parent,QBoxLayout *topLayout) | 188 | void KOEditorGeneral::initAlarm(QWidget *parent,QBoxLayout *topLayout) |
179 | { | 189 | { |
180 | QBoxLayout *alarmLayout = new QHBoxLayout(topLayout); | 190 | QBoxLayout *alarmLayout = new QHBoxLayout(topLayout); |
181 | 191 | ||
182 | //mAlarmBell = new QLabel(parent); | 192 | //mAlarmBell = new QLabel(parent); |
183 | //mAlarmBell->setPixmap(SmallIcon("bell")); | 193 | //mAlarmBell->setPixmap(SmallIcon("bell")); |
184 | //alarmLayout->addWidget(mAlarmBell); | 194 | //alarmLayout->addWidget(mAlarmBell); |
185 | if ( QApplication::desktop()->width() < 320 ) | 195 | if ( QApplication::desktop()->width() < 320 ) |
186 | mAlarmButton = new QCheckBox(i18n("Rem."),parent); | 196 | mAlarmButton = new QCheckBox(i18n("Rem."),parent); |
187 | else | 197 | else |
188 | mAlarmButton = new QCheckBox(i18n("Reminder:"),parent); | 198 | mAlarmButton = new QCheckBox(i18n("Reminder:"),parent); |
189 | 199 | ||
190 | connect(mAlarmButton, SIGNAL(toggled(bool)), SLOT(enableAlarmEdit(bool))); | 200 | connect(mAlarmButton, SIGNAL(toggled(bool)), SLOT(enableAlarmEdit(bool))); |
191 | alarmLayout->addWidget(mAlarmButton); | 201 | alarmLayout->addWidget(mAlarmButton); |
192 | 202 | ||
193 | mAlarmTimeEdit = new QSpinBox ( 0, 9999, 1, parent, "mAlarmTimeEdit " ) ; | 203 | mAlarmTimeEdit = new QSpinBox ( 0, 9999, 1, parent, "mAlarmTimeEdit " ) ; |
194 | mAlarmTimeEdit->setButtonSymbols( QSpinBox::PlusMinus ); | 204 | mAlarmTimeEdit->setButtonSymbols( QSpinBox::PlusMinus ); |
195 | alarmLayout->addWidget(mAlarmTimeEdit); | 205 | alarmLayout->addWidget(mAlarmTimeEdit); |
196 | mAlarmIncrCombo = new QComboBox(false, parent); | 206 | mAlarmIncrCombo = new QComboBox(false, parent); |
197 | if ( QApplication::desktop()->width() < 320 ) { | 207 | if ( QApplication::desktop()->width() < 320 ) { |
198 | mAlarmIncrCombo->insertItem(i18n("min")); | 208 | mAlarmIncrCombo->insertItem(i18n("min")); |
199 | mAlarmIncrCombo->insertItem(i18n("hou")); | 209 | mAlarmIncrCombo->insertItem(i18n("hou")); |
200 | mAlarmIncrCombo->insertItem(i18n("day")); | 210 | mAlarmIncrCombo->insertItem(i18n("day")); |
201 | mAlarmTimeEdit->setMaximumWidth( mAlarmTimeEdit->sizeHint().width() ); | 211 | mAlarmTimeEdit->setMaximumWidth( mAlarmTimeEdit->sizeHint().width() ); |
202 | mAlarmIncrCombo->setMaximumWidth( mAlarmIncrCombo->sizeHint().width() ); | 212 | mAlarmIncrCombo->setMaximumWidth( mAlarmIncrCombo->sizeHint().width() ); |
diff --git a/korganizer/koeventeditor.cpp b/korganizer/koeventeditor.cpp index e23e680..02d4a78 100644 --- a/korganizer/koeventeditor.cpp +++ b/korganizer/koeventeditor.cpp | |||
@@ -1,212 +1,214 @@ | |||
1 | /* | 1 | /* |
2 | This file is part of KOrganizer. | 2 | This file is part of KOrganizer. |
3 | Copyright (c) 2001,2002 Cornelius Schumacher <schumacher@kde.org> | 3 | Copyright (c) 2001,2002 Cornelius Schumacher <schumacher@kde.org> |
4 | 4 | ||
5 | This program is free software; you can redistribute it and/or modify | 5 | This program is free software; you can redistribute it and/or modify |
6 | it under the terms of the GNU General Public License as published by | 6 | it under the terms of the GNU General Public License as published by |
7 | the Free Software Foundation; either version 2 of the License, or | 7 | the Free Software Foundation; either version 2 of the License, or |
8 | (at your option) any later version. | 8 | (at your option) any later version. |
9 | 9 | ||
10 | This program is distributed in the hope that it will be useful, | 10 | This program is distributed in the hope that it will be useful, |
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of |
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
13 | GNU General Public License for more details. | 13 | GNU General Public License for more details. |
14 | 14 | ||
15 | You should have received a copy of the GNU General Public License | 15 | You should have received a copy of the GNU General Public License |
16 | along with this program; if not, write to the Free Software | 16 | along with this program; if not, write to the Free Software |
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. | 17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. |
18 | 18 | ||
19 | As a special exception, permission is given to link this program | 19 | As a special exception, permission is given to link this program |
20 | with any edition of Qt, and distribute the resulting executable, | 20 | with any edition of Qt, and distribute the resulting executable, |
21 | without including the source code for Qt in the source distribution. | 21 | without including the source code for Qt in the source distribution. |
22 | */ | 22 | */ |
23 | 23 | ||
24 | #include <qtooltip.h> | 24 | #include <qtooltip.h> |
25 | #include <qframe.h> | 25 | #include <qframe.h> |
26 | #include <qpixmap.h> | 26 | #include <qpixmap.h> |
27 | #include <qhbox.h> | 27 | #include <qhbox.h> |
28 | #include <qdir.h> | 28 | #include <qdir.h> |
29 | #include <qlayout.h> | 29 | #include <qlayout.h> |
30 | #include <qwidgetstack.h> | 30 | #include <qwidgetstack.h> |
31 | #include <qapplication.h> | 31 | #include <qapplication.h> |
32 | 32 | ||
33 | #include <kiconloader.h> | 33 | #include <kiconloader.h> |
34 | #include <kstandarddirs.h> | 34 | #include <kstandarddirs.h> |
35 | #include <kdebug.h> | 35 | #include <kdebug.h> |
36 | #include <klocale.h> | 36 | #include <klocale.h> |
37 | #include <kfiledialog.h> | 37 | #include <kfiledialog.h> |
38 | #include <kmessagebox.h> | 38 | #include <kmessagebox.h> |
39 | #include <libkcal/calendarresources.h> | 39 | #include <libkcal/calendarresources.h> |
40 | #include <libkcal/resourcecalendar.h> | 40 | #include <libkcal/resourcecalendar.h> |
41 | #include <kresources/resourceselectdialog.h> | 41 | #include <kresources/resourceselectdialog.h> |
42 | 42 | ||
43 | #include <libkdepim/categoryselectdialog.h> | 43 | #include <libkdepim/categoryselectdialog.h> |
44 | #include <libkcal/calendarlocal.h> | 44 | #include <libkcal/calendarlocal.h> |
45 | #include <libkcal/icalformat.h> | 45 | #include <libkcal/icalformat.h> |
46 | 46 | ||
47 | #include "koprefs.h" | 47 | #include "koprefs.h" |
48 | 48 | ||
49 | #include "koeventeditor.h" | 49 | #include "koeventeditor.h" |
50 | extern int globalFlagBlockAgenda; | 50 | extern int globalFlagBlockAgenda; |
51 | 51 | ||
52 | KOEventEditor::KOEventEditor( Calendar *calendar, QWidget *parent ) : | 52 | KOEventEditor::KOEventEditor( Calendar *calendar, QWidget *parent ) : |
53 | KOIncidenceEditor( i18n("Edit Event"), calendar, parent ) | 53 | KOIncidenceEditor( i18n("Edit Event"), calendar, parent ) |
54 | { | 54 | { |
55 | mEvent = 0; | 55 | mEvent = 0; |
56 | init(); | 56 | init(); |
57 | if ( QApplication::desktop()->height() <= 240 ) | ||
58 | hideButtons(); | ||
57 | } | 59 | } |
58 | 60 | ||
59 | KOEventEditor::~KOEventEditor() | 61 | KOEventEditor::~KOEventEditor() |
60 | { | 62 | { |
61 | //emit dialogClose( mEvent ); | 63 | //emit dialogClose( mEvent ); |
62 | } | 64 | } |
63 | 65 | ||
64 | void KOEventEditor::init() | 66 | void KOEventEditor::init() |
65 | { | 67 | { |
66 | 68 | ||
67 | setupGeneral(); | 69 | setupGeneral(); |
68 | setupAttendeesTab(); | 70 | setupAttendeesTab(); |
69 | setupRecurrence(); | 71 | setupRecurrence(); |
70 | 72 | ||
71 | // Propagate date time settings to recurrence tab | 73 | // Propagate date time settings to recurrence tab |
72 | connect(mGeneral,SIGNAL(dateTimesChanged(QDateTime,QDateTime)), | 74 | connect(mGeneral,SIGNAL(dateTimesChanged(QDateTime,QDateTime)), |
73 | mRecurrence,SLOT(setDateTimes(QDateTime,QDateTime))); | 75 | mRecurrence,SLOT(setDateTimes(QDateTime,QDateTime))); |
74 | connect(mGeneral,SIGNAL(dateTimeStrChanged(const QString &)), | 76 | connect(mGeneral,SIGNAL(dateTimeStrChanged(const QString &)), |
75 | mRecurrence,SLOT(setDateTimeStr(const QString &))); | 77 | mRecurrence,SLOT(setDateTimeStr(const QString &))); |
76 | 78 | ||
77 | // Category dialog | 79 | // Category dialog |
78 | // connect(mGeneral,SIGNAL(openCategoryDialog()),mCategoryDialog,SLOT(show())); | 80 | // connect(mGeneral,SIGNAL(openCategoryDialog()),mCategoryDialog,SLOT(show())); |
79 | //connect(mCategoryDialog,SIGNAL(categoriesSelected(const QString &)), | 81 | //connect(mCategoryDialog,SIGNAL(categoriesSelected(const QString &)), |
80 | // mGeneral,SLOT(setCategories(const QString &))); | 82 | // mGeneral,SLOT(setCategories(const QString &))); |
81 | 83 | ||
82 | 84 | ||
83 | } | 85 | } |
84 | 86 | ||
85 | void KOEventEditor::reload() | 87 | void KOEventEditor::reload() |
86 | { | 88 | { |
87 | if ( mEvent ) readEvent( mEvent ); | 89 | if ( mEvent ) readEvent( mEvent ); |
88 | } | 90 | } |
89 | 91 | ||
90 | void KOEventEditor::setSecrecy( int sec ) | 92 | void KOEventEditor::setSecrecy( int sec ) |
91 | { | 93 | { |
92 | mGeneral->setSecrecy( sec ); | 94 | mGeneral->setSecrecy( sec ); |
93 | } | 95 | } |
94 | void KOEventEditor::setCategories( QString s ) | 96 | void KOEventEditor::setCategories( QString s ) |
95 | { | 97 | { |
96 | mGeneral->setCategories(s); | 98 | mGeneral->setCategories(s); |
97 | 99 | ||
98 | } | 100 | } |
99 | void KOEventEditor::setupGeneral() | 101 | void KOEventEditor::setupGeneral() |
100 | { | 102 | { |
101 | mGeneral = new KOEditorGeneralEvent( this, "KOEditorGeneralEvent" ); | 103 | mGeneral = new KOEditorGeneralEvent( this, "KOEditorGeneralEvent" ); |
102 | connect ( mGeneral, SIGNAL ( allAccepted() ), this, SLOT ( slotOk () ) ); | 104 | connect ( mGeneral, SIGNAL ( allAccepted() ), this, SLOT ( slotOk () ) ); |
103 | 105 | ||
104 | if( KOPrefs::instance()->mCompactDialogs ) { | 106 | if( KOPrefs::instance()->mCompactDialogs ) { |
105 | QFrame *topFrame = addPage(i18n("General")); | 107 | QFrame *topFrame = addPage(i18n("General")); |
106 | QBoxLayout *topLayout = new QVBoxLayout(topFrame); | 108 | QBoxLayout *topLayout = new QVBoxLayout(topFrame); |
107 | topLayout->setSpacing(spacingHint()-1); | 109 | topLayout->setSpacing(spacingHint()-1); |
108 | topLayout->setMargin(marginHint()-1); | 110 | topLayout->setMargin(marginHint()-1); |
109 | mGeneral->initHeader(topFrame,topLayout); | 111 | mGeneral->initHeader(topFrame,topLayout); |
110 | mGeneral->initTime(topFrame,topLayout); | 112 | mGeneral->initTime(topFrame,topLayout); |
111 | // QBoxLayout *alarmLineLayout = new QHBoxLayout(topLayout); | 113 | // QBoxLayout *alarmLineLayout = new QHBoxLayout(topLayout); |
112 | mGeneral->initAlarm(topFrame,topLayout); | 114 | mGeneral->initAlarm(topFrame,topLayout); |
113 | mGeneral->enableAlarm( false ); | 115 | mGeneral->enableAlarm( false ); |
114 | 116 | ||
115 | QBoxLayout *buttonLayout; | 117 | QBoxLayout *buttonLayout; |
116 | if ( QApplication::desktop()->width() < 500 ) | 118 | if ( QApplication::desktop()->width() < 500 && QApplication::desktop()->height() > 240 ) |
117 | buttonLayout = new QVBoxLayout( topLayout ); | 119 | buttonLayout = new QVBoxLayout( topLayout ); |
118 | else | 120 | else |
119 | buttonLayout = new QHBoxLayout( topLayout ); | 121 | buttonLayout = new QHBoxLayout( topLayout ); |
120 | QHBox* buttonWidget = new QHBox (topFrame); | 122 | QHBox* buttonWidget = new QHBox (topFrame); |
121 | QIconSet icon; | 123 | QIconSet icon; |
122 | if ( QApplication::desktop()->width() < 321 ) | 124 | if ( QApplication::desktop()->width() < 321 ) |
123 | icon = SmallIcon("fileexport16"); | 125 | icon = SmallIcon("fileexport16"); |
124 | else | 126 | else |
125 | icon = SmallIcon("fileexport"); | 127 | icon = SmallIcon("fileexport"); |
126 | QPushButton * loadTemplate = new QPushButton( buttonWidget); | 128 | QPushButton * loadTemplate = new QPushButton( buttonWidget); |
127 | QPushButton * saveTemplate = new QPushButton( buttonWidget); | 129 | QPushButton * saveTemplate = new QPushButton( buttonWidget); |
128 | saveTemplate->setIconSet (icon ) ; | 130 | saveTemplate->setIconSet (icon ) ; |
129 | int size = saveTemplate->sizeHint().height(); | 131 | int size = saveTemplate->sizeHint().height(); |
130 | saveTemplate->setFixedSize( size, size ); | 132 | saveTemplate->setFixedSize( size, size ); |
131 | if ( QApplication::desktop()->width() < 321 ) | 133 | if ( QApplication::desktop()->width() < 321 ) |
132 | icon = SmallIcon("fileimport16"); | 134 | icon = SmallIcon("fileimport16"); |
133 | else | 135 | else |
134 | icon = SmallIcon("fileimport"); | 136 | icon = SmallIcon("fileimport"); |
135 | loadTemplate->setIconSet (icon ) ; | 137 | loadTemplate->setIconSet (icon ) ; |
136 | loadTemplate->setFixedSize( size, size ); | 138 | loadTemplate->setFixedSize( size, size ); |
137 | buttonLayout->addWidget( buttonWidget ); | 139 | buttonLayout->addWidget( buttonWidget ); |
138 | mGeneral->initCategories( topFrame, buttonLayout ); | 140 | mGeneral->initCategories( topFrame, buttonLayout ); |
139 | 141 | ||
140 | topLayout->addStretch( 1 ); | 142 | topLayout->addStretch( 1 ); |
141 | 143 | ||
142 | QFrame *topFrame2 = addPage(i18n("Details")); | 144 | QFrame *topFrame2 = addPage(i18n("Details")); |
143 | 145 | ||
144 | QBoxLayout *topLayout2 = new QVBoxLayout(topFrame2); | 146 | QBoxLayout *topLayout2 = new QVBoxLayout(topFrame2); |
145 | topLayout2->setSpacing(spacingHint()); | 147 | topLayout2->setSpacing(spacingHint()); |
146 | 148 | ||
147 | mGeneral->initClass(topFrame2,topLayout2); | 149 | mGeneral->initClass(topFrame2,topLayout2); |
148 | mGeneral->initSecrecy( topFrame2, topLayout2 ); | 150 | mGeneral->initSecrecy( topFrame2, topLayout2 ); |
149 | mGeneral->initDescription(topFrame2,topLayout2); | 151 | mGeneral->initDescription(topFrame2,topLayout2); |
150 | 152 | ||
151 | connect( saveTemplate, SIGNAL( clicked() ), this , SLOT( slotSaveTemplate() ) ); | 153 | connect( saveTemplate, SIGNAL( clicked() ), this , SLOT( slotSaveTemplate() ) ); |
152 | connect( loadTemplate, SIGNAL( clicked() ), this , SLOT( slotLoadTemplate() ) ); | 154 | connect( loadTemplate, SIGNAL( clicked() ), this , SLOT( slotLoadTemplate() ) ); |
153 | } else { | 155 | } else { |
154 | QFrame *topFrame = addPage(i18n("General")); | 156 | QFrame *topFrame = addPage(i18n("General")); |
155 | 157 | ||
156 | QBoxLayout *topLayout = new QVBoxLayout(topFrame); | 158 | QBoxLayout *topLayout = new QVBoxLayout(topFrame); |
157 | topLayout->setSpacing(spacingHint()); | 159 | topLayout->setSpacing(spacingHint()); |
158 | 160 | ||
159 | mGeneral->initHeader(topFrame,topLayout); | 161 | mGeneral->initHeader(topFrame,topLayout); |
160 | mGeneral->initTime(topFrame,topLayout); | 162 | mGeneral->initTime(topFrame,topLayout); |
161 | QBoxLayout *alarmLineLayout = new QHBoxLayout(topLayout); | 163 | QBoxLayout *alarmLineLayout = new QHBoxLayout(topLayout); |
162 | mGeneral->initAlarm(topFrame,alarmLineLayout); | 164 | mGeneral->initAlarm(topFrame,alarmLineLayout); |
163 | mGeneral->initClass(topFrame,alarmLineLayout); | 165 | mGeneral->initClass(topFrame,alarmLineLayout); |
164 | mGeneral->initDescription(topFrame,topLayout); | 166 | mGeneral->initDescription(topFrame,topLayout); |
165 | QBoxLayout *detailsLayout = new QHBoxLayout(topLayout); | 167 | QBoxLayout *detailsLayout = new QHBoxLayout(topLayout); |
166 | mGeneral->initCategories( topFrame, detailsLayout ); | 168 | mGeneral->initCategories( topFrame, detailsLayout ); |
167 | mGeneral->initSecrecy( topFrame, detailsLayout ); | 169 | mGeneral->initSecrecy( topFrame, detailsLayout ); |
168 | } | 170 | } |
169 | 171 | ||
170 | mGeneral->finishSetup(); | 172 | mGeneral->finishSetup(); |
171 | 173 | ||
172 | } | 174 | } |
173 | 175 | ||
174 | void KOEventEditor::setupRecurrence() | 176 | void KOEventEditor::setupRecurrence() |
175 | { | 177 | { |
176 | QFrame *topFrame = addPage( i18n("Recurrence") ); | 178 | QFrame *topFrame = addPage( i18n("Recurrence") ); |
177 | QBoxLayout *topLayout = new QVBoxLayout( topFrame ); | 179 | QBoxLayout *topLayout = new QVBoxLayout( topFrame ); |
178 | 180 | ||
179 | mRecurrence = new KOEditorRecurrence( topFrame ); | 181 | mRecurrence = new KOEditorRecurrence( topFrame ); |
180 | topLayout->addWidget( mRecurrence ); | 182 | topLayout->addWidget( mRecurrence ); |
181 | } | 183 | } |
182 | 184 | ||
183 | void KOEventEditor::editEvent(Event *event, bool showDescription) | 185 | void KOEventEditor::editEvent(Event *event, bool showDescription) |
184 | { | 186 | { |
185 | // init(); | 187 | // init(); |
186 | 188 | ||
187 | mEvent = event; | 189 | mEvent = event; |
188 | readEvent(mEvent); | 190 | readEvent(mEvent); |
189 | if ( showDescription ) { | 191 | if ( showDescription ) { |
190 | showPage( 1 ); | 192 | showPage( 1 ); |
191 | mGeneral->setFocusOn( 1 ); | 193 | mGeneral->setFocusOn( 1 ); |
192 | } else { | 194 | } else { |
193 | showPage( 0 ); | 195 | showPage( 0 ); |
194 | mGeneral->setFocusOn( 2 ); | 196 | mGeneral->setFocusOn( 2 ); |
195 | } | 197 | } |
196 | } | 198 | } |
197 | 199 | ||
198 | void KOEventEditor::newEvent( QDateTime from, QDateTime to, bool allDay ) | 200 | void KOEventEditor::newEvent( QDateTime from, QDateTime to, bool allDay ) |
199 | { | 201 | { |
200 | // init(); | 202 | // init(); |
201 | 203 | ||
202 | mEvent = 0; | 204 | mEvent = 0; |
203 | setDefaults(from,to,allDay); | 205 | setDefaults(from,to,allDay); |
204 | } | 206 | } |
205 | 207 | ||
206 | void KOEventEditor::loadDefaults() | 208 | void KOEventEditor::loadDefaults() |
207 | { | 209 | { |
208 | int fmt = KOPrefs::instance()->mStartTime; | 210 | int fmt = KOPrefs::instance()->mStartTime; |
209 | 211 | ||
210 | QDateTime from(QDate::currentDate(), QTime(fmt,0,0)); | 212 | QDateTime from(QDate::currentDate(), QTime(fmt,0,0)); |
211 | QDateTime to(QDate::currentDate(), | 213 | QDateTime to(QDate::currentDate(), |
212 | QTime(fmt+KOPrefs::instance()->mDefaultDuration,0,0)); | 214 | QTime(fmt+KOPrefs::instance()->mDefaultDuration,0,0)); |
diff --git a/korganizer/kotodoeditor.cpp b/korganizer/kotodoeditor.cpp index 5513e8b..9073bca 100644 --- a/korganizer/kotodoeditor.cpp +++ b/korganizer/kotodoeditor.cpp | |||
@@ -1,157 +1,159 @@ | |||
1 | /* | 1 | /* |
2 | This file is part of KOrganizer. | 2 | This file is part of KOrganizer. |
3 | Copyright (c) 1997, 1998 Preston Brown | 3 | Copyright (c) 1997, 1998 Preston Brown |
4 | Copyright (c) 2000,2001 Cornelius Schumacher <schumacher@kde.org> | 4 | Copyright (c) 2000,2001 Cornelius Schumacher <schumacher@kde.org> |
5 | 5 | ||
6 | This program is free software; you can redistribute it and/or modify | 6 | This program is free software; you can redistribute it and/or modify |
7 | it under the terms of the GNU General Public License as published by | 7 | it under the terms of the GNU General Public License as published by |
8 | the Free Software Foundation; either version 2 of the License, or | 8 | the Free Software Foundation; either version 2 of the License, or |
9 | (at your option) any later version. | 9 | (at your option) any later version. |
10 | 10 | ||
11 | This program is distributed in the hope that it will be useful, | 11 | This program is distributed in the hope that it will be useful, |
12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of |
13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
14 | GNU General Public License for more details. | 14 | GNU General Public License for more details. |
15 | 15 | ||
16 | You should have received a copy of the GNU General Public License | 16 | You should have received a copy of the GNU General Public License |
17 | along with this program; if not, write to the Free Software | 17 | along with this program; if not, write to the Free Software |
18 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. | 18 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. |
19 | 19 | ||
20 | As a special exception, permission is given to link this program | 20 | As a special exception, permission is given to link this program |
21 | with any edition of Qt, and distribute the resulting executable, | 21 | with any edition of Qt, and distribute the resulting executable, |
22 | without including the source code for Qt in the source distribution. | 22 | without including the source code for Qt in the source distribution. |
23 | */ | 23 | */ |
24 | 24 | ||
25 | #include <qtooltip.h> | 25 | #include <qtooltip.h> |
26 | #include <qframe.h> | 26 | #include <qframe.h> |
27 | #include <qpixmap.h> | 27 | #include <qpixmap.h> |
28 | #include <qlayout.h> | 28 | #include <qlayout.h> |
29 | #include <qhbox.h> | 29 | #include <qhbox.h> |
30 | #include <qdir.h> | 30 | #include <qdir.h> |
31 | #include <qdatetime.h> | 31 | #include <qdatetime.h> |
32 | #include <qapplication.h> | 32 | #include <qapplication.h> |
33 | #include <qtabwidget.h> | 33 | #include <qtabwidget.h> |
34 | 34 | ||
35 | #include <kiconloader.h> | 35 | #include <kiconloader.h> |
36 | #include <klocale.h> | 36 | #include <klocale.h> |
37 | #include <kfiledialog.h> | 37 | #include <kfiledialog.h> |
38 | #include <kstandarddirs.h> | 38 | #include <kstandarddirs.h> |
39 | #include <kmessagebox.h> | 39 | #include <kmessagebox.h> |
40 | 40 | ||
41 | #include <libkdepim/categoryselectdialog.h> | 41 | #include <libkdepim/categoryselectdialog.h> |
42 | #include <libkcal/calendarlocal.h> | 42 | #include <libkcal/calendarlocal.h> |
43 | #include <libkcal/calendarresources.h> | 43 | #include <libkcal/calendarresources.h> |
44 | #include <libkcal/resourcecalendar.h> | 44 | #include <libkcal/resourcecalendar.h> |
45 | #include <libkcal/icalformat.h> | 45 | #include <libkcal/icalformat.h> |
46 | #include <kresources/resourceselectdialog.h> | 46 | #include <kresources/resourceselectdialog.h> |
47 | #include <libkdepim/kdateedit.h> | 47 | #include <libkdepim/kdateedit.h> |
48 | 48 | ||
49 | #include "koprefs.h" | 49 | #include "koprefs.h" |
50 | #include "kolocationbox.h" | 50 | #include "kolocationbox.h" |
51 | 51 | ||
52 | #include "kotodoeditor.h" | 52 | #include "kotodoeditor.h" |
53 | extern int globalFlagBlockAgenda; | 53 | extern int globalFlagBlockAgenda; |
54 | 54 | ||
55 | KOTodoEditor::KOTodoEditor( Calendar *calendar, QWidget *parent ) : | 55 | KOTodoEditor::KOTodoEditor( Calendar *calendar, QWidget *parent ) : |
56 | KOIncidenceEditor( i18n("Edit To-Do"), calendar, parent ) | 56 | KOIncidenceEditor( i18n("Edit To-Do"), calendar, parent ) |
57 | { | 57 | { |
58 | mTodo = 0; | 58 | mTodo = 0; |
59 | mRelatedTodo = 0; | 59 | mRelatedTodo = 0; |
60 | findButton(User1)->hide(); | 60 | findButton(User1)->hide(); |
61 | init(); | 61 | init(); |
62 | if ( QApplication::desktop()->height() <= 240 ) | ||
63 | hideButtons(); | ||
62 | } | 64 | } |
63 | 65 | ||
64 | KOTodoEditor::~KOTodoEditor() | 66 | KOTodoEditor::~KOTodoEditor() |
65 | { | 67 | { |
66 | emit dialogClose( mTodo ); | 68 | emit dialogClose( mTodo ); |
67 | } | 69 | } |
68 | 70 | ||
69 | void KOTodoEditor::init() | 71 | void KOTodoEditor::init() |
70 | { | 72 | { |
71 | setupGeneral(); | 73 | setupGeneral(); |
72 | setupAttendeesTab(); | 74 | setupAttendeesTab(); |
73 | setupRecurrence(); | 75 | setupRecurrence(); |
74 | connect(mGeneral,SIGNAL(datesChecked()),this ,SLOT(checkRecurrence())); | 76 | connect(mGeneral,SIGNAL(datesChecked()),this ,SLOT(checkRecurrence())); |
75 | mRecurrence->setDateTimeStr( i18n("<i>The recurrence is computed from the start datetime!</i>") ); | 77 | mRecurrence->setDateTimeStr( i18n("<i>The recurrence is computed from the start datetime!</i>") ); |
76 | } | 78 | } |
77 | void KOTodoEditor::setupRecurrence() | 79 | void KOTodoEditor::setupRecurrence() |
78 | { | 80 | { |
79 | QFrame *topFrame = addPage( i18n("Recurrence") ); | 81 | QFrame *topFrame = addPage( i18n("Recurrence") ); |
80 | QBoxLayout *topLayout = new QVBoxLayout( topFrame ); | 82 | QBoxLayout *topLayout = new QVBoxLayout( topFrame ); |
81 | 83 | ||
82 | mRecurrence = new KOEditorRecurrence( topFrame ); | 84 | mRecurrence = new KOEditorRecurrence( topFrame ); |
83 | topLayout->addWidget( mRecurrence ); | 85 | topLayout->addWidget( mRecurrence ); |
84 | } | 86 | } |
85 | 87 | ||
86 | void KOTodoEditor::setCategories( QString s ) | 88 | void KOTodoEditor::setCategories( QString s ) |
87 | { | 89 | { |
88 | mGeneral->setCategories(s); | 90 | mGeneral->setCategories(s); |
89 | } | 91 | } |
90 | void KOTodoEditor::setSecrecy( int sec ) | 92 | void KOTodoEditor::setSecrecy( int sec ) |
91 | { | 93 | { |
92 | mGeneral->setSecrecy( sec ); | 94 | mGeneral->setSecrecy( sec ); |
93 | } | 95 | } |
94 | void KOTodoEditor::reload() | 96 | void KOTodoEditor::reload() |
95 | { | 97 | { |
96 | if ( mTodo ) readTodo( mTodo ); | 98 | if ( mTodo ) readTodo( mTodo ); |
97 | } | 99 | } |
98 | 100 | ||
99 | void KOTodoEditor::setupGeneral() | 101 | void KOTodoEditor::setupGeneral() |
100 | { | 102 | { |
101 | mGeneral = new KOEditorGeneralTodo(this); | 103 | mGeneral = new KOEditorGeneralTodo(this); |
102 | connect ( mGeneral, SIGNAL ( allAccepted() ), this, SLOT ( slotOk () ) ); | 104 | connect ( mGeneral, SIGNAL ( allAccepted() ), this, SLOT ( slotOk () ) ); |
103 | 105 | ||
104 | // connect(mGeneral,SIGNAL(openCategoryDialog()),mCategoryDialog,SLOT(show())); | 106 | // connect(mGeneral,SIGNAL(openCategoryDialog()),mCategoryDialog,SLOT(show())); |
105 | //connect(mCategoryDialog, SIGNAL(categoriesSelected(const QString &)), | 107 | //connect(mCategoryDialog, SIGNAL(categoriesSelected(const QString &)), |
106 | // mGeneral,SLOT(setCategories(const QString &))); | 108 | // mGeneral,SLOT(setCategories(const QString &))); |
107 | 109 | ||
108 | if (KOPrefs::instance()->mCompactDialogs) { | 110 | if (KOPrefs::instance()->mCompactDialogs) { |
109 | QFrame *topFrame = addPage(i18n("General")); | 111 | QFrame *topFrame = addPage(i18n("General")); |
110 | 112 | ||
111 | QBoxLayout *topLayout = new QVBoxLayout(topFrame); | 113 | QBoxLayout *topLayout = new QVBoxLayout(topFrame); |
112 | if ( QApplication::desktop()->width() < 480 ) { | 114 | if ( QApplication::desktop()->width() < 480 ) { |
113 | topLayout->setMargin(marginHintSmall()); | 115 | topLayout->setMargin(marginHintSmall()); |
114 | topLayout->setSpacing(spacingHintSmall()); | 116 | topLayout->setSpacing(spacingHintSmall()); |
115 | } else { | 117 | } else { |
116 | topLayout->setMargin(marginHint()); | 118 | topLayout->setMargin(marginHint()); |
117 | topLayout->setSpacing(spacingHint()); | 119 | topLayout->setSpacing(spacingHint()); |
118 | } | 120 | } |
119 | mGeneral->initHeader(topFrame,topLayout); | 121 | mGeneral->initHeader(topFrame,topLayout); |
120 | mGeneral->initTime(topFrame,topLayout); | 122 | mGeneral->initTime(topFrame,topLayout); |
121 | mGeneral->initAlarm(topFrame,topLayout); | 123 | mGeneral->initAlarm(topFrame,topLayout); |
122 | mGeneral->enableAlarm( false ); | 124 | mGeneral->enableAlarm( false ); |
123 | 125 | ||
124 | 126 | ||
125 | QBoxLayout *priorityLayout; | 127 | QBoxLayout *priorityLayout; |
126 | if ( QApplication::desktop()->width() < 500 ) | 128 | if ( QApplication::desktop()->width() < 500 ) |
127 | priorityLayout = new QVBoxLayout( topLayout ); | 129 | priorityLayout = new QVBoxLayout( topLayout ); |
128 | else | 130 | else |
129 | priorityLayout = new QHBoxLayout( topLayout ); | 131 | priorityLayout = new QHBoxLayout( topLayout ); |
130 | QWidget* prioWidget = new QWidget (topFrame); | 132 | QWidget* prioWidget = new QWidget (topFrame); |
131 | priorityLayout->addWidget( prioWidget ); | 133 | priorityLayout->addWidget( prioWidget ); |
132 | QHBoxLayout* priorityLayout2 = new QHBoxLayout( prioWidget); | 134 | QHBoxLayout* priorityLayout2 = new QHBoxLayout( prioWidget); |
133 | 135 | ||
134 | 136 | ||
135 | QIconSet icon; | 137 | QIconSet icon; |
136 | if ( QApplication::desktop()->width() < 321 ) | 138 | if ( QApplication::desktop()->width() < 321 ) |
137 | icon = SmallIcon("fileimport16"); | 139 | icon = SmallIcon("fileimport16"); |
138 | else | 140 | else |
139 | icon = SmallIcon("fileimport"); | 141 | icon = SmallIcon("fileimport"); |
140 | QPushButton * loadTemplate = new QPushButton( prioWidget); | 142 | QPushButton * loadTemplate = new QPushButton( prioWidget); |
141 | loadTemplate->setIconSet (icon ) ; | 143 | loadTemplate->setIconSet (icon ) ; |
142 | int size = loadTemplate->sizeHint().height(); | 144 | int size = loadTemplate->sizeHint().height(); |
143 | loadTemplate->setFixedSize( size, size ); | 145 | loadTemplate->setFixedSize( size, size ); |
144 | if ( QApplication::desktop()->width() < 321 ) | 146 | if ( QApplication::desktop()->width() < 321 ) |
145 | icon = SmallIcon("fileexport16"); | 147 | icon = SmallIcon("fileexport16"); |
146 | else | 148 | else |
147 | icon = SmallIcon("fileexport"); | 149 | icon = SmallIcon("fileexport"); |
148 | QPushButton * saveTemplate = new QPushButton( prioWidget); | 150 | QPushButton * saveTemplate = new QPushButton( prioWidget); |
149 | saveTemplate->setIconSet (icon ) ; | 151 | saveTemplate->setIconSet (icon ) ; |
150 | saveTemplate->setFixedSize( size, size ); | 152 | saveTemplate->setFixedSize( size, size ); |
151 | 153 | ||
152 | priorityLayout2->addWidget(loadTemplate); | 154 | priorityLayout2->addWidget(loadTemplate); |
153 | priorityLayout2->addWidget(saveTemplate); | 155 | priorityLayout2->addWidget(saveTemplate); |
154 | mGeneral->initPriority(prioWidget,priorityLayout2); | 156 | mGeneral->initPriority(prioWidget,priorityLayout2); |
155 | mGeneral->initCategories( topFrame, priorityLayout ); | 157 | mGeneral->initCategories( topFrame, priorityLayout ); |
156 | topLayout->addStretch(1); | 158 | topLayout->addStretch(1); |
157 | 159 | ||
diff --git a/korganizer/searchdialog.cpp b/korganizer/searchdialog.cpp index 007d1f3..59bf1a2 100644 --- a/korganizer/searchdialog.cpp +++ b/korganizer/searchdialog.cpp | |||
@@ -21,193 +21,195 @@ | |||
21 | with any edition of Qt, and distribute the resulting executable, | 21 | with any edition of Qt, and distribute the resulting executable, |
22 | without including the source code for Qt in the source distribution. | 22 | without including the source code for Qt in the source distribution. |
23 | */ | 23 | */ |
24 | 24 | ||
25 | #include <qlayout.h> | 25 | #include <qlayout.h> |
26 | #include <qcheckbox.h> | 26 | #include <qcheckbox.h> |
27 | #include <qgroupbox.h> | 27 | #include <qgroupbox.h> |
28 | #include <qlabel.h> | 28 | #include <qlabel.h> |
29 | #include <qlistview.h> | 29 | #include <qlistview.h> |
30 | #include <qwhatsthis.h> | 30 | #include <qwhatsthis.h> |
31 | #include <qlineedit.h> | 31 | #include <qlineedit.h> |
32 | #include <qpushbutton.h> | 32 | #include <qpushbutton.h> |
33 | 33 | ||
34 | #include <klocale.h> | 34 | #include <klocale.h> |
35 | #include <kmessagebox.h> | 35 | #include <kmessagebox.h> |
36 | 36 | ||
37 | #include <libkdepim/kdateedit.h> | 37 | #include <libkdepim/kdateedit.h> |
38 | 38 | ||
39 | #include "koglobals.h" | 39 | #include "koglobals.h" |
40 | #include "koprefs.h" | 40 | #include "koprefs.h" |
41 | #include "klineedit.h" | 41 | #include "klineedit.h" |
42 | 42 | ||
43 | #include "calendarview.h" | 43 | #include "calendarview.h" |
44 | #include "koviewmanager.h" | 44 | #include "koviewmanager.h" |
45 | #include "searchdialog.h" | 45 | #include "searchdialog.h" |
46 | 46 | ||
47 | SearchDialog::SearchDialog(Calendar *calendar,CalendarView *parent) | 47 | SearchDialog::SearchDialog(Calendar *calendar,CalendarView *parent) |
48 | : QVBox( 0 ) | 48 | : QVBox( 0 ) |
49 | 49 | ||
50 | { | 50 | { |
51 | mCalendar = calendar; | 51 | mCalendar = calendar; |
52 | QFrame *topFrame = new QFrame( this ) ;//plainPage(); | 52 | QFrame *topFrame = new QFrame( this ) ;//plainPage(); |
53 | QVBoxLayout *layout = new QVBoxLayout(topFrame,KDialog::marginHint(),KDialog::spacingHint()); | 53 | QVBoxLayout *layout = new QVBoxLayout(topFrame,KDialog::marginHint(),KDialog::spacingHint()); |
54 | 54 | ||
55 | // Search expression | 55 | // Search expression |
56 | QHBoxLayout *subLayout = new QHBoxLayout(); | 56 | QHBoxLayout *subLayout = new QHBoxLayout(); |
57 | layout->addLayout(subLayout); | 57 | layout->addLayout(subLayout); |
58 | searchLabel = new QLabel(topFrame); | 58 | searchLabel = new QLabel(topFrame); |
59 | searchLabel->setText(i18n("Search for:")); | 59 | searchLabel->setText(i18n("Search for:")); |
60 | subLayout->addWidget(searchLabel); | 60 | subLayout->addWidget(searchLabel); |
61 | 61 | ||
62 | searchEdit = new KLineEdit(topFrame); | 62 | searchEdit = new KLineEdit(topFrame); |
63 | subLayout->addWidget(searchEdit); | 63 | subLayout->addWidget(searchEdit); |
64 | QPushButton *OkButton = new QPushButton( i18n("&Find"), topFrame ); | 64 | QPushButton *OkButton = new QPushButton( i18n("&Find"), topFrame ); |
65 | //OkButton->setDefault( true ); | 65 | //OkButton->setDefault( true ); |
66 | connect(OkButton,SIGNAL(clicked()),SLOT(doSearch())); | 66 | connect(OkButton,SIGNAL(clicked()),SLOT(doSearch())); |
67 | subLayout->addWidget(OkButton); | 67 | subLayout->addWidget(OkButton); |
68 | searchEdit->setText("*"); // Find all events by default | 68 | searchEdit->setText("*"); // Find all events by default |
69 | searchEdit->setFocus(); | 69 | searchEdit->setFocus(); |
70 | connect(searchEdit, SIGNAL(textChanged ( const QString & )),this,SLOT(searchTextChanged( const QString & ))); | 70 | connect(searchEdit, SIGNAL(textChanged ( const QString & )),this,SLOT(searchTextChanged( const QString & ))); |
71 | connect(searchEdit, SIGNAL( returnPressed () ),this,SLOT(doSearch())); | 71 | connect(searchEdit, SIGNAL( returnPressed () ),this,SLOT(doSearch())); |
72 | // Subjects to search | 72 | // Subjects to search |
73 | // QGroupBox *subjectGroup = new QGroupBox(1,Vertical,i18n("Search In"), | 73 | // QGroupBox *subjectGroup = new QGroupBox(1,Vertical,i18n("Search In"), |
74 | // topFrame); | 74 | // topFrame); |
75 | 75 | ||
76 | QHBox *incidenceGroup = new QHBox( topFrame ); | 76 | QHBox *incidenceGroup = new QHBox( topFrame ); |
77 | layout->addWidget(incidenceGroup); | 77 | layout->addWidget(incidenceGroup); |
78 | 78 | ||
79 | mSearchEvent = new QCheckBox(i18n("Events"),incidenceGroup); | 79 | mSearchEvent = new QCheckBox(i18n("Events"),incidenceGroup); |
80 | //mSearchEvent->setChecked(true); | 80 | //mSearchEvent->setChecked(true); |
81 | mSearchTodo = new QCheckBox(i18n("Todos"),incidenceGroup); | 81 | mSearchTodo = new QCheckBox(i18n("Todos"),incidenceGroup); |
82 | mSearchJournal = new QCheckBox(i18n("Journals"),incidenceGroup); | 82 | mSearchJournal = new QCheckBox(i18n("Journals"),incidenceGroup); |
83 | 83 | ||
84 | QHBox *subjectGroup = new QHBox( topFrame ); | 84 | QHBox *subjectGroup = new QHBox( topFrame ); |
85 | layout->addWidget(subjectGroup); | 85 | layout->addWidget(subjectGroup); |
86 | 86 | ||
87 | mSummaryCheck = new QCheckBox(i18n("Summary/Loc."),subjectGroup); | 87 | mSummaryCheck = new QCheckBox(i18n("Summary/Loc."),subjectGroup); |
88 | mSummaryCheck->setChecked(true); | 88 | mSummaryCheck->setChecked(true); |
89 | mDescriptionCheck = new QCheckBox(i18n("Details"),subjectGroup); | 89 | mDescriptionCheck = new QCheckBox(i18n("Details"),subjectGroup); |
90 | mCategoryCheck = new QCheckBox(i18n("Categories"),subjectGroup); | 90 | mCategoryCheck = new QCheckBox(i18n("Categories"),subjectGroup); |
91 | 91 | ||
92 | QHBox *attendeeGroup = new QHBox( topFrame ); | 92 | QHBox *attendeeGroup = new QHBox( topFrame ); |
93 | layout->addWidget(attendeeGroup ); | 93 | layout->addWidget(attendeeGroup ); |
94 | new QLabel( i18n("Attendee:"),attendeeGroup ); | 94 | new QLabel( i18n("Attendee:"),attendeeGroup ); |
95 | mSearchAName = new QCheckBox(i18n("Name"),attendeeGroup ); | 95 | mSearchAName = new QCheckBox(i18n("Name"),attendeeGroup ); |
96 | mSearchAEmail = new QCheckBox(i18n("Email"), attendeeGroup ); | 96 | mSearchAEmail = new QCheckBox(i18n("Email"), attendeeGroup ); |
97 | // Date range | 97 | // Date range |
98 | // QGroupBox *rangeGroup = new QGroupBox(1,Horizontal,i18n("Date Range"), | 98 | // QGroupBox *rangeGroup = new QGroupBox(1,Horizontal,i18n("Date Range"), |
99 | // topFrame); | 99 | // topFrame); |
100 | // layout->addWidget(rangeGroup); | 100 | // layout->addWidget(rangeGroup); |
101 | 101 | ||
102 | QWidget *rangeWidget = new QWidget(topFrame); | 102 | QWidget *rangeWidget = new QWidget(topFrame); |
103 | QHBoxLayout *rangeLayout = new QHBoxLayout(rangeWidget,0,KDialog::spacingHint()); | 103 | QHBoxLayout *rangeLayout = new QHBoxLayout(rangeWidget,0,KDialog::spacingHint()); |
104 | rangeLayout->addWidget(new QLabel(i18n("From:"),rangeWidget)); | 104 | rangeLayout->addWidget(new QLabel(i18n("From:"),rangeWidget)); |
105 | mStartDate = new KDateEdit(rangeWidget); | 105 | mStartDate = new KDateEdit(rangeWidget); |
106 | rangeLayout->addWidget(mStartDate); | 106 | rangeLayout->addWidget(mStartDate); |
107 | rangeLayout->addWidget(new QLabel(i18n("To:"),rangeWidget)); | 107 | rangeLayout->addWidget(new QLabel(i18n("To:"),rangeWidget)); |
108 | mEndDate = new KDateEdit(rangeWidget); | 108 | mEndDate = new KDateEdit(rangeWidget); |
109 | mEndDate->setDate(QDate::currentDate().addDays(365)); | 109 | mEndDate->setDate(QDate::currentDate().addDays(365)); |
110 | rangeLayout->addWidget(mEndDate); | 110 | rangeLayout->addWidget(mEndDate); |
111 | QToolButton *wt = QWhatsThis::whatsThisButton ( rangeWidget ); | 111 | QToolButton *wt = QWhatsThis::whatsThisButton ( rangeWidget ); |
112 | rangeLayout->addWidget( (QWidget*)wt ); | 112 | rangeLayout->addWidget( (QWidget*)wt ); |
113 | layout->addWidget(rangeWidget); | 113 | layout->addWidget(rangeWidget); |
114 | // Results list view | 114 | // Results list view |
115 | listView = new KOListView(mCalendar,topFrame); | 115 | listView = new KOListView(mCalendar,topFrame); |
116 | layout->addWidget(listView); | 116 | layout->addWidget(listView); |
117 | 117 | //layout->setStretchFactor( listView, 333 ); | |
118 | //listView->setSizePolicy( QSizePolicy( QSizePolicy::Preferred ,QSizePolicy::Expanding) ); | ||
119 | //listView->setMaximumHeight( 50 ); | ||
118 | listView->readSettings(KOGlobals::config(),"SearchListView Layout"); | 120 | listView->readSettings(KOGlobals::config(),"SearchListView Layout"); |
119 | connect(searchEdit,SIGNAL(scrollDOWN()),SLOT(setFocusToList())); | 121 | connect(searchEdit,SIGNAL(scrollDOWN()),SLOT(setFocusToList())); |
120 | 122 | ||
121 | setCaption( i18n("KO/Pi Find: ")); | 123 | setCaption( i18n("KO/Pi Find: ")); |
122 | #ifdef DESKTOP_VERSION | 124 | #ifdef DESKTOP_VERSION |
123 | OkButton = new QPushButton( i18n("Close"), this ); | 125 | OkButton = new QPushButton( i18n("Close"), this ); |
124 | connect(OkButton,SIGNAL(clicked()),SLOT(hide())); | 126 | connect(OkButton,SIGNAL(clicked()),SLOT(hide())); |
125 | #endif | 127 | #endif |
126 | } | 128 | } |
127 | 129 | ||
128 | SearchDialog::~SearchDialog() | 130 | SearchDialog::~SearchDialog() |
129 | { | 131 | { |
130 | 132 | ||
131 | } | 133 | } |
132 | void SearchDialog::raiseAndSelect() | 134 | void SearchDialog::raiseAndSelect() |
133 | { | 135 | { |
134 | 136 | ||
135 | static int currentState = 0; | 137 | static int currentState = 0; |
136 | 138 | ||
137 | if ( !mSearchJournal->isChecked() && !mSearchTodo->isChecked() && !mSearchEvent->isChecked() ) | 139 | if ( !mSearchJournal->isChecked() && !mSearchTodo->isChecked() && !mSearchEvent->isChecked() ) |
138 | currentState = 0; | 140 | currentState = 0; |
139 | int newState = 0; | 141 | int newState = 0; |
140 | if ( KOPrefs::instance()->mCurrentDisplayedView == VIEW_J_VIEW ) { | 142 | if ( KOPrefs::instance()->mCurrentDisplayedView == VIEW_J_VIEW ) { |
141 | newState = VIEW_J_VIEW; | 143 | newState = VIEW_J_VIEW; |
142 | } | 144 | } |
143 | else if ( KOPrefs::instance()->mCurrentDisplayedView == VIEW_T_VIEW ) { | 145 | else if ( KOPrefs::instance()->mCurrentDisplayedView == VIEW_T_VIEW ) { |
144 | newState = VIEW_T_VIEW; | 146 | newState = VIEW_T_VIEW; |
145 | } | 147 | } |
146 | else { | 148 | else { |
147 | newState = VIEW_A_VIEW; | 149 | newState = VIEW_A_VIEW; |
148 | } | 150 | } |
149 | if ( newState != currentState ) { | 151 | if ( newState != currentState ) { |
150 | if ( KOPrefs::instance()->mCurrentDisplayedView == VIEW_J_VIEW ) { | 152 | if ( KOPrefs::instance()->mCurrentDisplayedView == VIEW_J_VIEW ) { |
151 | if ( ! mSearchJournal->isChecked() ) { | 153 | if ( ! mSearchJournal->isChecked() ) { |
152 | mSearchJournal->setChecked( true ); | 154 | mSearchJournal->setChecked( true ); |
153 | mSearchTodo->setChecked( false ); | 155 | mSearchTodo->setChecked( false ); |
154 | mSearchEvent->setChecked( false ); | 156 | mSearchEvent->setChecked( false ); |
155 | } | 157 | } |
156 | } | 158 | } |
157 | else if ( KOPrefs::instance()->mCurrentDisplayedView == VIEW_T_VIEW ) { | 159 | else if ( KOPrefs::instance()->mCurrentDisplayedView == VIEW_T_VIEW ) { |
158 | if ( ! mSearchTodo->isChecked() ) { | 160 | if ( ! mSearchTodo->isChecked() ) { |
159 | mSearchTodo->setChecked( true ); | 161 | mSearchTodo->setChecked( true ); |
160 | mSearchJournal->setChecked( false ); | 162 | mSearchJournal->setChecked( false ); |
161 | mSearchEvent->setChecked( false ); | 163 | mSearchEvent->setChecked( false ); |
162 | } | 164 | } |
163 | } | 165 | } |
164 | else { | 166 | else { |
165 | if ( ! mSearchEvent->isChecked() ) { | 167 | if ( ! mSearchEvent->isChecked() ) { |
166 | mSearchEvent->setChecked( true ); | 168 | mSearchEvent->setChecked( true ); |
167 | mSearchJournal->setChecked( false ); | 169 | mSearchJournal->setChecked( false ); |
168 | mSearchTodo->setChecked( false ); | 170 | mSearchTodo->setChecked( false ); |
169 | } | 171 | } |
170 | } | 172 | } |
171 | } | 173 | } |
172 | currentState = newState; | 174 | currentState = newState; |
173 | raise(); | 175 | raise(); |
174 | } | 176 | } |
175 | void SearchDialog::setFocusToList() | 177 | void SearchDialog::setFocusToList() |
176 | { | 178 | { |
177 | listView->resetFocus(); | 179 | listView->resetFocus(); |
178 | } | 180 | } |
179 | void SearchDialog::accept() | 181 | void SearchDialog::accept() |
180 | { | 182 | { |
181 | doSearch(); | 183 | doSearch(); |
182 | } | 184 | } |
183 | void SearchDialog::updateList() | 185 | void SearchDialog::updateList() |
184 | { | 186 | { |
185 | //listView->updateList(); | 187 | //listView->updateList(); |
186 | if ( isVisible() ) { | 188 | if ( isVisible() ) { |
187 | updateView(); | 189 | updateView(); |
188 | //qDebug("SearchDialog::updated "); | 190 | //qDebug("SearchDialog::updated "); |
189 | } | 191 | } |
190 | else { | 192 | else { |
191 | listView->clear(); | 193 | listView->clear(); |
192 | //qDebug("SearchDialog::cleared "); | 194 | //qDebug("SearchDialog::cleared "); |
193 | 195 | ||
194 | } | 196 | } |
195 | } | 197 | } |
196 | void SearchDialog::searchTextChanged( const QString &_text ) | 198 | void SearchDialog::searchTextChanged( const QString &_text ) |
197 | { | 199 | { |
198 | #if 0 | 200 | #if 0 |
199 | enableButton( KDialogBase::User1, !_text.isEmpty() ); | 201 | enableButton( KDialogBase::User1, !_text.isEmpty() ); |
200 | #endif | 202 | #endif |
201 | } | 203 | } |
202 | 204 | ||
203 | void SearchDialog::doSearch() | 205 | void SearchDialog::doSearch() |
204 | { | 206 | { |
205 | QRegExp re; | 207 | QRegExp re; |
206 | 208 | ||
207 | re.setWildcard(true); // most people understand these better. | 209 | re.setWildcard(true); // most people understand these better. |
208 | re.setCaseSensitive(false); | 210 | re.setCaseSensitive(false); |
209 | QString st = searchEdit->text(); | 211 | QString st = searchEdit->text(); |
210 | if ( st.right(1) != "*") | 212 | if ( st.right(1) != "*") |
211 | st += "*"; | 213 | st += "*"; |
212 | re.setPattern(st); | 214 | re.setPattern(st); |
213 | if (!mSearchEvent->isChecked() && !mSearchTodo->isChecked() && !mSearchJournal->isChecked() ) { | 215 | if (!mSearchEvent->isChecked() && !mSearchTodo->isChecked() && !mSearchJournal->isChecked() ) { |