summaryrefslogtreecommitdiffabout
authorzautrix <zautrix>2005-04-02 17:24:28 (UTC)
committer zautrix <zautrix>2005-04-02 17:24:28 (UTC)
commit40e5edc1ab153144f0e824ad2d3a0ab37357e408 (patch) (unidiff)
tree25b1d980554303d99d41960267d57872a338960d
parentf3c3a836ae97ef3e65cfbcd22156b0ba6eaae578 (diff)
downloadkdepimpi-40e5edc1ab153144f0e824ad2d3a0ab37357e408.zip
kdepimpi-40e5edc1ab153144f0e824ad2d3a0ab37357e408.tar.gz
kdepimpi-40e5edc1ab153144f0e824ad2d3a0ab37357e408.tar.bz2
commit
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--bin/kdepim/WhatsNew.txt6
-rw-r--r--korganizer/koagendaview.cpp1
2 files changed, 6 insertions, 1 deletions
diff --git a/bin/kdepim/WhatsNew.txt b/bin/kdepim/WhatsNew.txt
index da5f365..6bc6be9 100644
--- a/bin/kdepim/WhatsNew.txt
+++ b/bin/kdepim/WhatsNew.txt
@@ -1,98 +1,104 @@
1Info about the changes in new versions of KDE-Pim/Pi 1Info about the changes in new versions of KDE-Pim/Pi
2 2
3********** VERSION 2.0.23 ************
4
5Fixed again a lot of small and strange bugs, e.g. the missing toolbar of KA/Pi after a new installation.
6Fixed the (agenda) layout of KO/Pi on 5500er.
7Some usebility enhancements (e.g. reselection the current item of the todo view after some changes).
8
3********** VERSION 2.0.22 ************ 9********** VERSION 2.0.22 ************
4 10
5KO/Pi: 11KO/Pi:
6Fix for creating events/todos via the abgenda context menu. 12Fix for creating events/todos via the abgenda context menu.
7Added option to split toolbar to 3 toolbars. 13Added option to split toolbar to 3 toolbars.
8(Toolbar moving s disabled for this option due to a bug in Qt somewhere). 14(Toolbar moving s disabled for this option due to a bug in Qt somewhere).
9Added option to show one small filter-view-toolbar. 15Added option to show one small filter-view-toolbar.
10Added a print option to the desktop version: 16Added a print option to the desktop version:
11Now you can print out the view of the "Event Viewer". 17Now you can print out the view of the "Event Viewer".
12That means you can print all data of one particular event/todo. 18That means you can print all data of one particular event/todo.
13Added scaling options to printout of Event Viewer and What'sNext View. 19Added scaling options to printout of Event Viewer and What'sNext View.
14Fixed some problems in the month view in "week start sunday" mode. 20Fixed some problems in the month view in "week start sunday" mode.
15KA/Pi: 21KA/Pi:
16Added two more config options. 22Added two more config options.
17Fixed resizing problem of address request dialog when orientation was switched. 23Fixed resizing problem of address request dialog when orientation was switched.
18Cleaned up the menu structure. 24Cleaned up the menu structure.
19Fixed some more problems. 25Fixed some more problems.
20 26
21Fixed the annoying problem that scrolling continued after the key was released in KO/Pi Monthview and the KA/Pi views. 27Fixed the annoying problem that scrolling continued after the key was released in KO/Pi Monthview and the KA/Pi views.
22 28
23And, this is a really cool option (Ben did suggest it): 29And, this is a really cool option (Ben did suggest it):
24Now KO/Pi and KA/Pi can be run from a USB stick: 30Now KO/Pi and KA/Pi can be run from a USB stick:
25All data is read from and written to the stick. 31All data is read from and written to the stick.
26You can enable this in the global configure option TAB with: 32You can enable this in the global configure option TAB with:
27Save using LOCAL storage. 33Save using LOCAL storage.
28Just put KDE-Pim/Pi on a memory stick and you can access all your PIM data on every computer with Windows XP. It will work with the ME and Linux versions as well. I will put a memory stick version for teh next stable release online. 34Just put KDE-Pim/Pi on a memory stick and you can access all your PIM data on every computer with Windows XP. It will work with the ME and Linux versions as well. I will put a memory stick version for teh next stable release online.
29 35
30********** VERSION 2.0.21 ************ 36********** VERSION 2.0.21 ************
31 37
32Fixed another SMTP problem in OM/Pi. 38Fixed another SMTP problem in OM/Pi.
33Some small changed in the new datenavigator in KO/Pi. 39Some small changed in the new datenavigator in KO/Pi.
34Changed default setting for new filter in KA/Pi to "exclude categories". 40Changed default setting for new filter in KA/Pi to "exclude categories".
35Changed the default font size for 640x480 display . 41Changed the default font size for 640x480 display .
36Changed popup menu behaviour in agenda and list view. 42Changed popup menu behaviour in agenda and list view.
37Fixed some layout problems of the date label size in the month view. 43Fixed some layout problems of the date label size in the month view.
38Made month view update faster. 44Made month view update faster.
39Made first datenavigator repainting faster. 45Made first datenavigator repainting faster.
40Changed the title of the event/todo edit dialogs. 46Changed the title of the event/todo edit dialogs.
41Timelabels in agenga changed from 22:00 to 22 oo. ( the oo higher, of course). 47Timelabels in agenga changed from 22:00 to 22 oo. ( the oo higher, of course).
42Many small usebility fixes in KO/Pi. 48Many small usebility fixes in KO/Pi.
43Pressing the "Calendar" button on the Z switches now to the next view in KO/Pi. 49Pressing the "Calendar" button on the Z switches now to the next view in KO/Pi.
44The set of possible "next views" are the views you have toolbar buttons for. 50The set of possible "next views" are the views you have toolbar buttons for.
45 51
46Made alarm sound working on Linux. 52Made alarm sound working on Linux.
47 53
48KO/Pi alarm applet changed: 54KO/Pi alarm applet changed:
49Made buttons in alarm dialog much bigger. 55Made buttons in alarm dialog much bigger.
50Made setting of timer more user friendly by showing the actual timer fire time and making the buttons in the timer settings much bigger. 56Made setting of timer more user friendly by showing the actual timer fire time and making the buttons in the timer settings much bigger.
51The goal was it to make it possible to use a finger tip ( and not the stylus ) on the touchscreen to adjust the settings. 57The goal was it to make it possible to use a finger tip ( and not the stylus ) on the touchscreen to adjust the settings.
52 58
53And because this version is realeased at Easter, I added an Easter-egg: 59And because this version is realeased at Easter, I added an Easter-egg:
54With a new undocumented command you can get a message box about the next alarm. 60With a new undocumented command you can get a message box about the next alarm.
55Good luck to find it! 61Good luck to find it!
56 62
57 63
58 64
59********** VERSION 2.0.20 ************ 65********** VERSION 2.0.20 ************
60 66
61Two small fixes in OM/Pi. 67Two small fixes in OM/Pi.
62 68
63Better resizing of the new datenavigator in KO/Pi. 69Better resizing of the new datenavigator in KO/Pi.
64 70
65********** VERSION 2.0.19 ************ 71********** VERSION 2.0.19 ************
66KO/Pi: 72KO/Pi:
67Enhancements and bugfixes in the new datenavigator. 73Enhancements and bugfixes in the new datenavigator.
68Bugfix in this changelog: 74Bugfix in this changelog:
69The datenavigator was changed in version 2.0.18, not the datepicker. 75The datenavigator was changed in version 2.0.18, not the datepicker.
70 76
71********** VERSION 2.0.18 ************ 77********** VERSION 2.0.18 ************
72KO/Pi: 78KO/Pi:
73Fixed some minor problems. 79Fixed some minor problems.
74Cleaned up the KO/Pi config dialog. 80Cleaned up the KO/Pi config dialog.
75Fixed problem moving events in aganda view. 81Fixed problem moving events in aganda view.
76Made datepicker scaleable, i.e. if the datenavigator shows now a 82Made datepicker scaleable, i.e. if the datenavigator shows now a
77datenavigator matrix depending on its size. 83datenavigator matrix depending on its size.
78Birthdays are now displayed green in the datenavigator. 84Birthdays are now displayed green in the datenavigator.
79What'sThis Help in datenavigator shows all events of the day. 85What'sThis Help in datenavigator shows all events of the day.
80 86
81OM/Pi: 87OM/Pi:
82Updated the backend mail library to the latest version. 88Updated the backend mail library to the latest version.
83Please backup your mail before using this version. 89Please backup your mail before using this version.
84 90
85********** VERSION 2.0.17 ************ 91********** VERSION 2.0.17 ************
86 92
87KO/Pi: 93KO/Pi:
88Tooltips in month view were not sorted. Fixed. 94Tooltips in month view were not sorted. Fixed.
89Daylabel in agenda view ( for display of one day ) was too short. Fixed. 95Daylabel in agenda view ( for display of one day ) was too short. Fixed.
90Conflict display dialog for syncing was not on top of other windows. Fixed. 96Conflict display dialog for syncing was not on top of other windows. Fixed.
91Fixed some minor problems. 97Fixed some minor problems.
92 98
93Fixed an endless loop when importing vcs file with RESOURCES entry. 99Fixed an endless loop when importing vcs file with RESOURCES entry.
94 100
95********** VERSION 2.0.16 ************ 101********** VERSION 2.0.16 ************
96OM/Pi: 102OM/Pi:
97Fixed the SMTP account setting the option. 103Fixed the SMTP account setting the option.
98Fixed something in mail sending. 104Fixed something in mail sending.
diff --git a/korganizer/koagendaview.cpp b/korganizer/koagendaview.cpp
index 880d399..d450a97 100644
--- a/korganizer/koagendaview.cpp
+++ b/korganizer/koagendaview.cpp
@@ -117,193 +117,192 @@ void TimeLabels::drawContents(QPainter *p,int cx, int cy, int cw, int ch)
117 int cell = ((int)(cy/mCellHeight)); 117 int cell = ((int)(cy/mCellHeight));
118 int y = cell * mCellHeight; 118 int y = cell * mCellHeight;
119 QFontMetrics fm = fontMetrics(); 119 QFontMetrics fm = fontMetrics();
120 QString hour; 120 QString hour;
121 QString suffix = "am"; 121 QString suffix = "am";
122 int timeHeight = fm.ascent(); 122 int timeHeight = fm.ascent();
123 QFont nFont = font(); 123 QFont nFont = font();
124 p->setFont( font()); 124 p->setFont( font());
125 125
126 if (!KGlobal::locale()->use12Clock()) { 126 if (!KGlobal::locale()->use12Clock()) {
127 suffix = "00"; 127 suffix = "00";
128 } else 128 } else
129 if (cell > 11) suffix = "pm"; 129 if (cell > 11) suffix = "pm";
130 130
131 if ( timeHeight > mCellHeight ) { 131 if ( timeHeight > mCellHeight ) {
132 timeHeight = mCellHeight-1; 132 timeHeight = mCellHeight-1;
133 int pointS = nFont.pointSize(); 133 int pointS = nFont.pointSize();
134 while ( pointS > 4 ) { 134 while ( pointS > 4 ) {
135 nFont.setPointSize( pointS ); 135 nFont.setPointSize( pointS );
136 fm = QFontMetrics( nFont ); 136 fm = QFontMetrics( nFont );
137 if ( fm.ascent() < mCellHeight ) 137 if ( fm.ascent() < mCellHeight )
138 break; 138 break;
139 -- pointS; 139 -- pointS;
140 } 140 }
141 fm = QFontMetrics( nFont ); 141 fm = QFontMetrics( nFont );
142 timeHeight = fm.ascent(); 142 timeHeight = fm.ascent();
143 } 143 }
144 //timeHeight -= (timeHeight/4-2); 144 //timeHeight -= (timeHeight/4-2);
145 QFont sFont = nFont; 145 QFont sFont = nFont;
146 sFont.setPointSize( sFont.pointSize()/2 ); 146 sFont.setPointSize( sFont.pointSize()/2 );
147 QFontMetrics fmS( sFont ); 147 QFontMetrics fmS( sFont );
148 int sHei = fmS.ascent() ; 148 int sHei = fmS.ascent() ;
149 //sHei -= (sHei/4-2); 149 //sHei -= (sHei/4-2);
150 int startW = mMiniWidth - frameWidth()-2 ; 150 int startW = mMiniWidth - frameWidth()-2 ;
151 int tw2 = fmS.width(suffix); 151 int tw2 = fmS.width(suffix);
152 timeHeight = (timeHeight-1) /2 -1; 152 timeHeight = (timeHeight-1) /2 -1;
153 //testline 153 //testline
154 //p->drawLine(0,0,0,contentsHeight()); 154 //p->drawLine(0,0,0,contentsHeight());
155 while (y < cy + ch+mCellHeight) { 155 while (y < cy + ch+mCellHeight) {
156 p->drawLine(startW-tw2 ,y,cw+2,y); 156 p->drawLine(startW-tw2 ,y,cw+2,y);
157 hour.setNum(cell); 157 hour.setNum(cell);
158 // handle 24h and am/pm time formats 158 // handle 24h and am/pm time formats
159 if (KGlobal::locale()->use12Clock()) { 159 if (KGlobal::locale()->use12Clock()) {
160 if (cell == 12) suffix = "pm"; 160 if (cell == 12) suffix = "pm";
161 if (cell == 0) hour.setNum(12); 161 if (cell == 0) hour.setNum(12);
162 if (cell > 12) hour.setNum(cell - 12); 162 if (cell > 12) hour.setNum(cell - 12);
163 } 163 }
164 164
165 // center and draw the time label 165 // center and draw the time label
166 int timeWidth = fm.width(hour); 166 int timeWidth = fm.width(hour);
167 int offset = startW - timeWidth - tw2 -1 ; 167 int offset = startW - timeWidth - tw2 -1 ;
168 p->setFont( nFont ); 168 p->setFont( nFont );
169 p->drawText( offset, y+ timeHeight, hour); 169 p->drawText( offset, y+ timeHeight, hour);
170 p->setFont( sFont ); 170 p->setFont( sFont );
171 offset = startW - tw2; 171 offset = startW - tw2;
172 p->drawText( offset, y -1, suffix); 172 p->drawText( offset, y -1, suffix);
173 173
174 // increment indices 174 // increment indices
175 y += mCellHeight; 175 y += mCellHeight;
176 cell++; 176 cell++;
177 } 177 }
178 178
179 179
180 180
181 181
182} 182}
183 183
184/** 184/**
185 Calculates the minimum width. 185 Calculates the minimum width.
186*/ 186*/
187int TimeLabels::minimumWidth() const 187int TimeLabels::minimumWidth() const
188{ 188{
189 return mMiniWidth; 189 return mMiniWidth;
190} 190}
191 191
192/** updates widget's internal state */ 192/** updates widget's internal state */
193void TimeLabels::updateConfig() 193void TimeLabels::updateConfig()
194{ 194{
195 mRedrawNeeded = true; 195 mRedrawNeeded = true;
196 // set the font 196 // set the font
197 // config->setGroup("Fonts"); 197 // config->setGroup("Fonts");
198 // QFont font = config->readFontEntry("TimeBar Font"); 198 // QFont font = config->readFontEntry("TimeBar Font");
199 setFont(KOPrefs::instance()->mTimeBarFont); 199 setFont(KOPrefs::instance()->mTimeBarFont);
200 QString test = "20"; 200 QString test = "20";
201 if (KGlobal::locale()->use12Clock()) 201 if (KGlobal::locale()->use12Clock())
202 test = "12"; 202 test = "12";
203 mMiniWidth = fontMetrics().width(test); 203 mMiniWidth = fontMetrics().width(test);
204 if (KGlobal::locale()->use12Clock()) 204 if (KGlobal::locale()->use12Clock())
205 test = "pm"; 205 test = "pm";
206 else { 206 else {
207 test = "00"; 207 test = "00";
208 } 208 }
209 QFont sFont = font(); 209 QFont sFont = font();
210 sFont.setPointSize( sFont.pointSize()/2 ); 210 sFont.setPointSize( sFont.pointSize()/2 );
211 QFontMetrics fmS( sFont ); 211 QFontMetrics fmS( sFont );
212 mMiniWidth += fmS.width( test ) + frameWidth()*2+4 ; 212 mMiniWidth += fmS.width( test ) + frameWidth()*2+4 ;
213 qDebug("testwid %d %d", mMiniWidth ,fmS.width( test ));
214 // update geometry restrictions based on new settings 213 // update geometry restrictions based on new settings
215 setFixedWidth( mMiniWidth ); 214 setFixedWidth( mMiniWidth );
216 215
217 // update HourSize 216 // update HourSize
218 mCellHeight = KOPrefs::instance()->mHourSize*4; 217 mCellHeight = KOPrefs::instance()->mHourSize*4;
219 resizeContents(50,mRows * mCellHeight); 218 resizeContents(50,mRows * mCellHeight);
220} 219}
221 220
222/** update time label positions */ 221/** update time label positions */
223void TimeLabels::positionChanged() 222void TimeLabels::positionChanged()
224{ 223{
225 int adjustment = mAgenda->contentsY(); 224 int adjustment = mAgenda->contentsY();
226 setContentsPos(0, adjustment); 225 setContentsPos(0, adjustment);
227} 226}
228 227
229/** */ 228/** */
230void TimeLabels::setAgenda(KOAgenda* agenda) 229void TimeLabels::setAgenda(KOAgenda* agenda)
231{ 230{
232 mAgenda = agenda; 231 mAgenda = agenda;
233} 232}
234 233
235void TimeLabels::contentsMousePressEvent ( QMouseEvent * e) 234void TimeLabels::contentsMousePressEvent ( QMouseEvent * e)
236{ 235{
237 mMouseDownY = e->pos().y(); 236 mMouseDownY = e->pos().y();
238 mOrgCap = topLevelWidget()->caption(); 237 mOrgCap = topLevelWidget()->caption();
239} 238}
240 239
241void TimeLabels::contentsMouseMoveEvent ( QMouseEvent * e ) 240void TimeLabels::contentsMouseMoveEvent ( QMouseEvent * e )
242{ 241{
243 int diff = mMouseDownY - e->pos().y(); 242 int diff = mMouseDownY - e->pos().y();
244 if ( diff < 10 && diff > -10 ) 243 if ( diff < 10 && diff > -10 )
245 return; 244 return;
246 int tSize = KOPrefs::instance()->mHourSize + (diff/10) ; 245 int tSize = KOPrefs::instance()->mHourSize + (diff/10) ;
247 if ( tSize < 4 ) 246 if ( tSize < 4 )
248 tSize = 4; 247 tSize = 4;
249 if ( tSize > 22 ) 248 if ( tSize > 22 )
250 tSize = 22; 249 tSize = 22;
251 tSize = (tSize-2)/2; 250 tSize = (tSize-2)/2;
252 topLevelWidget()->setCaption(i18n("New Agendasize: %1").arg(tSize)); 251 topLevelWidget()->setCaption(i18n("New Agendasize: %1").arg(tSize));
253 252
254} 253}
255void TimeLabels::contentsMouseReleaseEvent ( QMouseEvent * e ) 254void TimeLabels::contentsMouseReleaseEvent ( QMouseEvent * e )
256{ 255{
257 topLevelWidget()->setCaption( mOrgCap ); 256 topLevelWidget()->setCaption( mOrgCap );
258 int diff = mMouseDownY - e->pos().y(); 257 int diff = mMouseDownY - e->pos().y();
259 if ( diff < 10 && diff > -10 ) 258 if ( diff < 10 && diff > -10 )
260 return; 259 return;
261 int tSize = KOPrefs::instance()->mHourSize + (diff/10); 260 int tSize = KOPrefs::instance()->mHourSize + (diff/10);
262 if ( tSize < 4 ) 261 if ( tSize < 4 )
263 tSize = 4; 262 tSize = 4;
264 if ( tSize > 22 ) 263 if ( tSize > 22 )
265 tSize = 22; 264 tSize = 22;
266 tSize = (tSize/2)*2; 265 tSize = (tSize/2)*2;
267 if ( tSize == KOPrefs::instance()->mHourSize ) 266 if ( tSize == KOPrefs::instance()->mHourSize )
268 return; 267 return;
269 KOPrefs::instance()->mHourSize = tSize; 268 KOPrefs::instance()->mHourSize = tSize;
270 emit scaleChanged(); 269 emit scaleChanged();
271} 270}
272 271
273/** This is called in response to repaint() */ 272/** This is called in response to repaint() */
274void TimeLabels::paintEvent(QPaintEvent*) 273void TimeLabels::paintEvent(QPaintEvent*)
275{ 274{
276 275
277 // kdDebug() << "paintevent..." << endl; 276 // kdDebug() << "paintevent..." << endl;
278 // this is another hack! 277 // this is another hack!
279 // QPainter painter(this); 278 // QPainter painter(this);
280 //QString c 279 //QString c
281 repaintContents(contentsX(), contentsY(), visibleWidth(), visibleHeight()); 280 repaintContents(contentsX(), contentsY(), visibleWidth(), visibleHeight());
282} 281}
283 282
284//////////////////////////////////////////////////////////////////////////// 283////////////////////////////////////////////////////////////////////////////
285 284
286EventIndicator::EventIndicator(Location loc,QWidget *parent,const char *name) 285EventIndicator::EventIndicator(Location loc,QWidget *parent,const char *name)
287 : QFrame(parent,name) 286 : QFrame(parent,name)
288{ 287{
289 mColumns = 1; 288 mColumns = 1;
290 mTopBox = 0; 289 mTopBox = 0;
291 mLocation = loc; 290 mLocation = loc;
292 mTopLayout = 0; 291 mTopLayout = 0;
293 mPaintWidget = 0; 292 mPaintWidget = 0;
294 mXOffset = 0; 293 mXOffset = 0;
295 if (mLocation == Top) mPixmap = SmallIcon("1uparrow"); 294 if (mLocation == Top) mPixmap = SmallIcon("1uparrow");
296 else mPixmap = SmallIcon("1downarrow"); 295 else mPixmap = SmallIcon("1downarrow");
297 mEnabled.resize(mColumns); 296 mEnabled.resize(mColumns);
298 mEnabled.fill( false ); 297 mEnabled.fill( false );
299 setMinimumHeight(mPixmap.height()); 298 setMinimumHeight(mPixmap.height());
300} 299}
301 300
302EventIndicator::~EventIndicator() 301EventIndicator::~EventIndicator()
303{ 302{
304} 303}
305 304
306void EventIndicator::drawContents(QPainter *p) 305void EventIndicator::drawContents(QPainter *p)
307{ 306{
308 307
309 // kdDebug() << "======== top: " << contentsRect().top() << " bottom " << // contentsRect().bottom() << " left " << contentsRect().left() << " right " << contentsRect().right() << endl; 308 // kdDebug() << "======== top: " << contentsRect().top() << " bottom " << // contentsRect().bottom() << " left " << contentsRect().left() << " right " << contentsRect().right() << endl;