-rw-r--r-- | bin/kdepim/WhatsNew.txt | 1 | ||||
-rw-r--r-- | korganizer/koagenda.cpp | 5 |
2 files changed, 6 insertions, 0 deletions
diff --git a/bin/kdepim/WhatsNew.txt b/bin/kdepim/WhatsNew.txt index bfe87f0..1a8b885 100644 --- a/bin/kdepim/WhatsNew.txt +++ b/bin/kdepim/WhatsNew.txt | |||
@@ -1,105 +1,106 @@ | |||
1 | Info about the changes in new versions of KDE-Pim/Pi | 1 | Info about the changes in new versions of KDE-Pim/Pi |
2 | 2 | ||
3 | ********** VERSION 1.9.16 ************ | 3 | ********** VERSION 1.9.16 ************ |
4 | 4 | ||
5 | KO/Pi: | 5 | KO/Pi: |
6 | Fixed search dialog size on Z 6000 (480x640 display). | 6 | Fixed search dialog size on Z 6000 (480x640 display). |
7 | Added setting to hide/show time in agenda items. | 7 | Added setting to hide/show time in agenda items. |
8 | Added setting to hide not running todos in todo view. | 8 | Added setting to hide not running todos in todo view. |
9 | Added columns for start date/time in todo view. | 9 | Added columns for start date/time in todo view. |
10 | Replaced the solid half-hour lines in agenda view by dot lines. | ||
10 | 11 | ||
11 | ********** VERSION 1.9.15 ************ | 12 | ********** VERSION 1.9.15 ************ |
12 | 13 | ||
13 | Usebilty enhancements in KO/Pi: | 14 | Usebilty enhancements in KO/Pi: |
14 | When clicking on the date in a month view cell, the day view is shown. | 15 | When clicking on the date in a month view cell, the day view is shown. |
15 | Old behaviour was, that the "new event" dialog popped up. | 16 | Old behaviour was, that the "new event" dialog popped up. |
16 | 17 | ||
17 | Added a one step "undo delete" in KO/Pi (Accessable in the "Action" menu). | 18 | Added a one step "undo delete" in KO/Pi (Accessable in the "Action" menu). |
18 | That means, you can restore the latest | 19 | That means, you can restore the latest |
19 | event/todo/journal you have deleted. | 20 | event/todo/journal you have deleted. |
20 | A journal is deleted, if you clear all the text of the journal. | 21 | A journal is deleted, if you clear all the text of the journal. |
21 | 22 | ||
22 | Fixed the bug of the editor dialogs in KO/Pi of version 1.9.14. | 23 | Fixed the bug of the editor dialogs in KO/Pi of version 1.9.14. |
23 | 24 | ||
24 | KA/Pi starting in 480x640 resolution: | 25 | KA/Pi starting in 480x640 resolution: |
25 | Hide the filter action in toolbar | 26 | Hide the filter action in toolbar |
26 | and added icons for undo/delete/redo in toolbar. | 27 | and added icons for undo/delete/redo in toolbar. |
27 | 28 | ||
28 | Change in OM/Pi ViewMail dialog: | 29 | Change in OM/Pi ViewMail dialog: |
29 | When clicking on the "delete" icon the mail is deleted after confirmation as usual. But the edit dialog is not closed as before, now the next mail in the folder is shown automatically (if there is any). | 30 | When clicking on the "delete" icon the mail is deleted after confirmation as usual. But the edit dialog is not closed as before, now the next mail in the folder is shown automatically (if there is any). |
30 | 31 | ||
31 | Fixed a crash when deleting mail-accounts in OM/Pi. | 32 | Fixed a crash when deleting mail-accounts in OM/Pi. |
32 | 33 | ||
33 | 34 | ||
34 | ********** VERSION 1.9.14 ************ | 35 | ********** VERSION 1.9.14 ************ |
35 | 36 | ||
36 | Fixed some problems with the dialog sizes when switching | 37 | Fixed some problems with the dialog sizes when switching |
37 | portrait/landscape mode on 640x480 PDA display. | 38 | portrait/landscape mode on 640x480 PDA display. |
38 | 39 | ||
39 | Fixed some other small bugs in KA/Pi KO/Pi and OM/Pi and PwM/Pi. | 40 | Fixed some other small bugs in KA/Pi KO/Pi and OM/Pi and PwM/Pi. |
40 | 41 | ||
41 | Fixed an ugly bug in KOpieMail: | 42 | Fixed an ugly bug in KOpieMail: |
42 | KOpieMail was not able to write files (mails) to MSDOS file system, | 43 | KOpieMail was not able to write files (mails) to MSDOS file system, |
43 | like on an usual preformatted SD card. That should work now. | 44 | like on an usual preformatted SD card. That should work now. |
44 | To save your mail data on the Sd card do the following: | 45 | To save your mail data on the Sd card do the following: |
45 | Create a dir on the SD card: | 46 | Create a dir on the SD card: |
46 | mkdir /mnt/card/localmail | 47 | mkdir /mnt/card/localmail |
47 | Go to your home dir: | 48 | Go to your home dir: |
48 | cd | 49 | cd |
49 | Go to kopiemail data storage dir: | 50 | Go to kopiemail data storage dir: |
50 | cd kdepim/apps/kopiemail | 51 | cd kdepim/apps/kopiemail |
51 | Create a symlink to the SD card: | 52 | Create a symlink to the SD card: |
52 | ls -s /mnt/card/localmail | 53 | ls -s /mnt/card/localmail |
53 | Now KOpieMail will store all mails on the SD card. | 54 | Now KOpieMail will store all mails on the SD card. |
54 | 55 | ||
55 | KO/Pi Monthview: | 56 | KO/Pi Monthview: |
56 | Now "Go to Today" selects the current month from day 1-end, | 57 | Now "Go to Today" selects the current month from day 1-end, |
57 | not the current date + some days. | 58 | not the current date + some days. |
58 | I.e. "Go to Today" shows now always | 59 | I.e. "Go to Today" shows now always |
59 | the current month with first day of month in the first row. | 60 | the current month with first day of month in the first row. |
60 | 61 | ||
61 | Added missing German translation. | 62 | Added missing German translation. |
62 | 63 | ||
63 | Fixed icons of executeable on Wintendo. | 64 | Fixed icons of executeable on Wintendo. |
64 | 65 | ||
65 | Added a "Show next Mail" button to the OM/Pi | 66 | Added a "Show next Mail" button to the OM/Pi |
66 | mail viewer such that the mail below the current mail | 67 | mail viewer such that the mail below the current mail |
67 | in the mail list view of the current folder | 68 | in the mail list view of the current folder |
68 | can be read with a single click. | 69 | can be read with a single click. |
69 | 70 | ||
70 | 71 | ||
71 | ********** VERSION 1.9.13 ************ | 72 | ********** VERSION 1.9.13 ************ |
72 | 73 | ||
73 | Fixed nasty PwM/Pi file reading bug, when | 74 | Fixed nasty PwM/Pi file reading bug, when |
74 | the used hash algo of file is different then the global | 75 | the used hash algo of file is different then the global |
75 | hash algo. | 76 | hash algo. |
76 | 77 | ||
77 | Added KA/Pi support for opie mailit mailapplication. | 78 | Added KA/Pi support for opie mailit mailapplication. |
78 | 79 | ||
79 | Fixed some bugs in OM/Pi. | 80 | Fixed some bugs in OM/Pi. |
80 | Now character conversion tables are available for the Zaurus | 81 | Now character conversion tables are available for the Zaurus |
81 | to make OM/Pi working properly. | 82 | to make OM/Pi working properly. |
82 | To get the character conversion in OM/Pi working, please download | 83 | To get the character conversion in OM/Pi working, please download |
83 | at the sourceforge project site the package | 84 | at the sourceforge project site the package |
84 | sr-character-conversion_SharpROM_arm.ipk.zip | 85 | sr-character-conversion_SharpROM_arm.ipk.zip |
85 | (or oz-character-conversion_OZ-gcc3xx_arm.ipk.zip for OZ roms) | 86 | (or oz-character-conversion_OZ-gcc3xx_arm.ipk.zip for OZ roms) |
86 | from the section "general files for KDE/Pim" | 87 | from the section "general files for KDE/Pim" |
87 | Instructions how to install this package are in a ReadMe in this file. | 88 | Instructions how to install this package are in a ReadMe in this file. |
88 | 89 | ||
89 | 90 | ||
90 | Fixed the orientation change problem in KA/Pi when switching | 91 | Fixed the orientation change problem in KA/Pi when switching |
91 | portrait/landscape mode. | 92 | portrait/landscape mode. |
92 | 93 | ||
93 | French translation available for KA/Pi and OM/Pi. | 94 | French translation available for KA/Pi and OM/Pi. |
94 | 95 | ||
95 | Fixed some problems with categories in KO/Pi in DTM sync. | 96 | Fixed some problems with categories in KO/Pi in DTM sync. |
96 | 97 | ||
97 | Added selection dialog for export to phone in KA/Pi. | 98 | Added selection dialog for export to phone in KA/Pi. |
98 | 99 | ||
99 | If in KO/Pi is an attendee selected to add to a meeting and this | 100 | If in KO/Pi is an attendee selected to add to a meeting and this |
100 | attendee is already in the list of attendees, this person is not added | 101 | attendee is already in the list of attendees, this person is not added |
101 | again. | 102 | again. |
102 | 103 | ||
103 | Some menu cleanup in KA/Pi. | 104 | Some menu cleanup in KA/Pi. |
104 | 105 | ||
105 | ********** VERSION 1.9.12 ************ | 106 | ********** VERSION 1.9.12 ************ |
diff --git a/korganizer/koagenda.cpp b/korganizer/koagenda.cpp index 6532705..eb3791e 100644 --- a/korganizer/koagenda.cpp +++ b/korganizer/koagenda.cpp | |||
@@ -1146,195 +1146,200 @@ void KOAgenda::drawContentsToPainter( QPainter* paint, bool backgroundOnly )// i | |||
1146 | int y1 = 0; | 1146 | int y1 = 0; |
1147 | if (y1 < cy) y1 = cy; | 1147 | if (y1 < cy) y1 = cy; |
1148 | int x2 = cx+cw-1; | 1148 | int x2 = cx+cw-1; |
1149 | int y2 = contentsHeight(); | 1149 | int y2 = contentsHeight(); |
1150 | if (y2 > cy+ch-1) y2=cy+ch-1; | 1150 | if (y2 > cy+ch-1) y2=cy+ch-1; |
1151 | if (x2 >= x1 && y2 >= y1) { | 1151 | if (x2 >= x1 && y2 >= y1) { |
1152 | int gxStart = selDay; | 1152 | int gxStart = selDay; |
1153 | int gxEnd = gxStart ; | 1153 | int gxEnd = gxStart ; |
1154 | int xStart = KOGlobals::self()->reverseLayout() ? | 1154 | int xStart = KOGlobals::self()->reverseLayout() ? |
1155 | (mColumns - 1 - gxStart)*mGridSpacingX : | 1155 | (mColumns - 1 - gxStart)*mGridSpacingX : |
1156 | gxStart*mGridSpacingX; | 1156 | gxStart*mGridSpacingX; |
1157 | if (xStart < x1) xStart = x1; | 1157 | if (xStart < x1) xStart = x1; |
1158 | int xEnd = KOGlobals::self()->reverseLayout() ? | 1158 | int xEnd = KOGlobals::self()->reverseLayout() ? |
1159 | (mColumns - gxStart)*mGridSpacingX-1 : | 1159 | (mColumns - gxStart)*mGridSpacingX-1 : |
1160 | (gxStart+1)*mGridSpacingX-1; | 1160 | (gxStart+1)*mGridSpacingX-1; |
1161 | if (xEnd > x2) xEnd = x2; | 1161 | if (xEnd > x2) xEnd = x2; |
1162 | if ( KOPrefs::instance()->mUseHighlightLightColor ) | 1162 | if ( KOPrefs::instance()->mUseHighlightLightColor ) |
1163 | p->fillRect(xStart,y1,xEnd-xStart+1,y2-y1+1, | 1163 | p->fillRect(xStart,y1,xEnd-xStart+1,y2-y1+1, |
1164 | KOPrefs::instance()->mAgendaBgColor.light()); | 1164 | KOPrefs::instance()->mAgendaBgColor.light()); |
1165 | else | 1165 | else |
1166 | p->fillRect(xStart,y1,xEnd-xStart+1,y2-y1+1, | 1166 | p->fillRect(xStart,y1,xEnd-xStart+1,y2-y1+1, |
1167 | KOPrefs::instance()->mAgendaBgColor.dark()); | 1167 | KOPrefs::instance()->mAgendaBgColor.dark()); |
1168 | 1168 | ||
1169 | } | 1169 | } |
1170 | } | 1170 | } |
1171 | } | 1171 | } |
1172 | // Highlight working hours | 1172 | // Highlight working hours |
1173 | 1173 | ||
1174 | if ( !backgroundOnly ) | 1174 | if ( !backgroundOnly ) |
1175 | if (mWorkingHoursEnable) { | 1175 | if (mWorkingHoursEnable) { |
1176 | int x1 = cx; | 1176 | int x1 = cx; |
1177 | int y1 = mWorkingHoursYTop; | 1177 | int y1 = mWorkingHoursYTop; |
1178 | if (y1 < cy) y1 = cy; | 1178 | if (y1 < cy) y1 = cy; |
1179 | int x2 = cx+cw-1; | 1179 | int x2 = cx+cw-1; |
1180 | // int x2 = mGridSpacingX * 5 - 1; | 1180 | // int x2 = mGridSpacingX * 5 - 1; |
1181 | // if (x2 > cx+cw-1) x2 = cx + cw - 1; | 1181 | // if (x2 > cx+cw-1) x2 = cx + cw - 1; |
1182 | int y2 = mWorkingHoursYBottom; | 1182 | int y2 = mWorkingHoursYBottom; |
1183 | if (y2 > cy+ch-1) y2=cy+ch-1; | 1183 | if (y2 > cy+ch-1) y2=cy+ch-1; |
1184 | 1184 | ||
1185 | if (x2 >= x1 && y2 >= y1) { | 1185 | if (x2 >= x1 && y2 >= y1) { |
1186 | // qDebug("x1 %d mGridSpacingX %d ", x1, mGridSpacingX ); | 1186 | // qDebug("x1 %d mGridSpacingX %d ", x1, mGridSpacingX ); |
1187 | int gxStart = x1/mGridSpacingX; | 1187 | int gxStart = x1/mGridSpacingX; |
1188 | int gxEnd = x2/mGridSpacingX; | 1188 | int gxEnd = x2/mGridSpacingX; |
1189 | while(gxStart <= gxEnd) { | 1189 | while(gxStart <= gxEnd) { |
1190 | if (gxStart < int(mHolidayMask->count()) && | 1190 | if (gxStart < int(mHolidayMask->count()) && |
1191 | !mHolidayMask->at(gxStart)) { | 1191 | !mHolidayMask->at(gxStart)) { |
1192 | int xStart = KOGlobals::self()->reverseLayout() ? | 1192 | int xStart = KOGlobals::self()->reverseLayout() ? |
1193 | (mColumns - 1 - gxStart)*mGridSpacingX : | 1193 | (mColumns - 1 - gxStart)*mGridSpacingX : |
1194 | gxStart*mGridSpacingX; | 1194 | gxStart*mGridSpacingX; |
1195 | if (xStart < x1) xStart = x1; | 1195 | if (xStart < x1) xStart = x1; |
1196 | int xEnd = KOGlobals::self()->reverseLayout() ? | 1196 | int xEnd = KOGlobals::self()->reverseLayout() ? |
1197 | (mColumns - gxStart)*mGridSpacingX-1 : | 1197 | (mColumns - gxStart)*mGridSpacingX-1 : |
1198 | (gxStart+1)*mGridSpacingX-1; | 1198 | (gxStart+1)*mGridSpacingX-1; |
1199 | if (xEnd > x2) xEnd = x2; | 1199 | if (xEnd > x2) xEnd = x2; |
1200 | if ( mSelectedDates[gxStart] == QDateTime::currentDateTime ().date()&& KOPrefs::instance()->mHighlightCurrentDay ) { | 1200 | if ( mSelectedDates[gxStart] == QDateTime::currentDateTime ().date()&& KOPrefs::instance()->mHighlightCurrentDay ) { |
1201 | if ( KOPrefs::instance()->mUseHighlightLightColor ) | 1201 | if ( KOPrefs::instance()->mUseHighlightLightColor ) |
1202 | p->fillRect(xStart,y1,xEnd-xStart+1,y2-y1+1, | 1202 | p->fillRect(xStart,y1,xEnd-xStart+1,y2-y1+1, |
1203 | KOPrefs::instance()->mWorkingHoursColor.light()); | 1203 | KOPrefs::instance()->mWorkingHoursColor.light()); |
1204 | else | 1204 | else |
1205 | p->fillRect(xStart,y1,xEnd-xStart+1,y2-y1+1, | 1205 | p->fillRect(xStart,y1,xEnd-xStart+1,y2-y1+1, |
1206 | KOPrefs::instance()->mWorkingHoursColor.dark()); | 1206 | KOPrefs::instance()->mWorkingHoursColor.dark()); |
1207 | } else { | 1207 | } else { |
1208 | p->fillRect(xStart,y1,xEnd-xStart+1,y2-y1+1, | 1208 | p->fillRect(xStart,y1,xEnd-xStart+1,y2-y1+1, |
1209 | KOPrefs::instance()->mWorkingHoursColor); | 1209 | KOPrefs::instance()->mWorkingHoursColor); |
1210 | } | 1210 | } |
1211 | } | 1211 | } |
1212 | ++gxStart; | 1212 | ++gxStart; |
1213 | } | 1213 | } |
1214 | } | 1214 | } |
1215 | } | 1215 | } |
1216 | /* | 1216 | /* |
1217 | int selectionX = KOGlobals::self()->reverseLayout() ? | 1217 | int selectionX = KOGlobals::self()->reverseLayout() ? |
1218 | (mColumns - 1 - mSelectionCellX) * mGridSpacingX : | 1218 | (mColumns - 1 - mSelectionCellX) * mGridSpacingX : |
1219 | mSelectionCellX * mGridSpacingX; | 1219 | mSelectionCellX * mGridSpacingX; |
1220 | 1220 | ||
1221 | // Draw selection | 1221 | // Draw selection |
1222 | if ( ( cx + cw ) >= selectionX && cx <= ( selectionX + mGridSpacingX ) && | 1222 | if ( ( cx + cw ) >= selectionX && cx <= ( selectionX + mGridSpacingX ) && |
1223 | ( cy + ch ) >= mSelectionYTop && cy <= ( mSelectionYTop + mSelectionHeight ) ) { | 1223 | ( cy + ch ) >= mSelectionYTop && cy <= ( mSelectionYTop + mSelectionHeight ) ) { |
1224 | // TODO: paint only part within cx,cy,cw,ch | 1224 | // TODO: paint only part within cx,cy,cw,ch |
1225 | p->fillRect( selectionX, mSelectionYTop, mGridSpacingX, | 1225 | p->fillRect( selectionX, mSelectionYTop, mGridSpacingX, |
1226 | mSelectionHeight, KOPrefs::instance()->mHighlightColor ); | 1226 | mSelectionHeight, KOPrefs::instance()->mHighlightColor ); |
1227 | } | 1227 | } |
1228 | */ | 1228 | */ |
1229 | // Draw vertical lines of grid | 1229 | // Draw vertical lines of grid |
1230 | 1230 | ||
1231 | int x = ((int)(cx/mGridSpacingX))*mGridSpacingX; | 1231 | int x = ((int)(cx/mGridSpacingX))*mGridSpacingX; |
1232 | if ( mGridSpacingX > 0 ) { | 1232 | if ( mGridSpacingX > 0 ) { |
1233 | while (x < cx + cw) { | 1233 | while (x < cx + cw) { |
1234 | p->drawLine(x,cy,x,cy+ch); | 1234 | p->drawLine(x,cy,x,cy+ch); |
1235 | x+=mGridSpacingX; | 1235 | x+=mGridSpacingX; |
1236 | } | 1236 | } |
1237 | } | 1237 | } |
1238 | // Draw horizontal lines of grid | 1238 | // Draw horizontal lines of grid |
1239 | int y = ((int)(cy/lGridSpacingY))*lGridSpacingY; | 1239 | int y = ((int)(cy/lGridSpacingY))*lGridSpacingY; |
1240 | if ( lGridSpacingY > 0 ) { | 1240 | if ( lGridSpacingY > 0 ) { |
1241 | while (y < cy + ch) { | 1241 | while (y < cy + ch) { |
1242 | p->setPen( SolidLine ); | ||
1243 | p->drawLine(cx,y,cx+cw,y); | ||
1244 | y+=lGridSpacingY; | ||
1245 | p->setPen( DotLine ); | ||
1242 | p->drawLine(cx,y,cx+cw,y); | 1246 | p->drawLine(cx,y,cx+cw,y); |
1243 | y+=lGridSpacingY; | 1247 | y+=lGridSpacingY; |
1244 | } | 1248 | } |
1249 | p->setPen( SolidLine ); | ||
1245 | } | 1250 | } |
1246 | mPixPainter.end() ; | 1251 | mPixPainter.end() ; |
1247 | } | 1252 | } |
1248 | 1253 | ||
1249 | /* | 1254 | /* |
1250 | Convert srcollview contents coordinates to agenda grid coordinates. | 1255 | Convert srcollview contents coordinates to agenda grid coordinates. |
1251 | */ | 1256 | */ |
1252 | void KOAgenda::contentsToGrid (int x, int y, int& gx, int& gy) | 1257 | void KOAgenda::contentsToGrid (int x, int y, int& gx, int& gy) |
1253 | { | 1258 | { |
1254 | gx = KOGlobals::self()->reverseLayout() ? mColumns - 1 - x/mGridSpacingX : | 1259 | gx = KOGlobals::self()->reverseLayout() ? mColumns - 1 - x/mGridSpacingX : |
1255 | x/mGridSpacingX; | 1260 | x/mGridSpacingX; |
1256 | gy = y/mGridSpacingY; | 1261 | gy = y/mGridSpacingY; |
1257 | } | 1262 | } |
1258 | 1263 | ||
1259 | /* | 1264 | /* |
1260 | Convert agenda grid coordinates to scrollview contents coordinates. | 1265 | Convert agenda grid coordinates to scrollview contents coordinates. |
1261 | */ | 1266 | */ |
1262 | void KOAgenda::gridToContents (int gx, int gy, int& x, int& y) | 1267 | void KOAgenda::gridToContents (int gx, int gy, int& x, int& y) |
1263 | { | 1268 | { |
1264 | x = KOGlobals::self()->reverseLayout() ? (mColumns - 1 - gx)*mGridSpacingX: | 1269 | x = KOGlobals::self()->reverseLayout() ? (mColumns - 1 - gx)*mGridSpacingX: |
1265 | gx*mGridSpacingX; | 1270 | gx*mGridSpacingX; |
1266 | y = gy*mGridSpacingY; | 1271 | y = gy*mGridSpacingY; |
1267 | } | 1272 | } |
1268 | 1273 | ||
1269 | 1274 | ||
1270 | /* | 1275 | /* |
1271 | Return Y coordinate corresponding to time. Coordinates are rounded to fit into | 1276 | Return Y coordinate corresponding to time. Coordinates are rounded to fit into |
1272 | the grid. | 1277 | the grid. |
1273 | */ | 1278 | */ |
1274 | int KOAgenda::timeToY(const QTime &time) | 1279 | int KOAgenda::timeToY(const QTime &time) |
1275 | { | 1280 | { |
1276 | int minutesPerCell = 24 * 60 / mRows; | 1281 | int minutesPerCell = 24 * 60 / mRows; |
1277 | int timeMinutes = time.hour() * 60 + time.minute(); | 1282 | int timeMinutes = time.hour() * 60 + time.minute(); |
1278 | int Y = (timeMinutes + (minutesPerCell / 2)) / minutesPerCell; | 1283 | int Y = (timeMinutes + (minutesPerCell / 2)) / minutesPerCell; |
1279 | return Y; | 1284 | return Y; |
1280 | } | 1285 | } |
1281 | 1286 | ||
1282 | 1287 | ||
1283 | /* | 1288 | /* |
1284 | Return time corresponding to cell y coordinate. Coordinates are rounded to | 1289 | Return time corresponding to cell y coordinate. Coordinates are rounded to |
1285 | fit into the grid. | 1290 | fit into the grid. |
1286 | */ | 1291 | */ |
1287 | QTime KOAgenda::gyToTime(int gy) | 1292 | QTime KOAgenda::gyToTime(int gy) |
1288 | { | 1293 | { |
1289 | 1294 | ||
1290 | int secondsPerCell = 24 * 60 * 60/ mRows; | 1295 | int secondsPerCell = 24 * 60 * 60/ mRows; |
1291 | 1296 | ||
1292 | int timeSeconds = secondsPerCell * gy; | 1297 | int timeSeconds = secondsPerCell * gy; |
1293 | 1298 | ||
1294 | QTime time( 0, 0, 0 ); | 1299 | QTime time( 0, 0, 0 ); |
1295 | if ( timeSeconds < 24 * 60 * 60 ) { | 1300 | if ( timeSeconds < 24 * 60 * 60 ) { |
1296 | time = time.addSecs(timeSeconds); | 1301 | time = time.addSecs(timeSeconds); |
1297 | } else { | 1302 | } else { |
1298 | time.setHMS( 23, 59, 59 ); | 1303 | time.setHMS( 23, 59, 59 ); |
1299 | } | 1304 | } |
1300 | 1305 | ||
1301 | return time; | 1306 | return time; |
1302 | } | 1307 | } |
1303 | 1308 | ||
1304 | void KOAgenda::setStartHour(int startHour) | 1309 | void KOAgenda::setStartHour(int startHour) |
1305 | { | 1310 | { |
1306 | int startCell = startHour * mRows / 24; | 1311 | int startCell = startHour * mRows / 24; |
1307 | setContentsPos(0,startCell * gridSpacingY()); | 1312 | setContentsPos(0,startCell * gridSpacingY()); |
1308 | } | 1313 | } |
1309 | void KOAgenda::hideUnused() | 1314 | void KOAgenda::hideUnused() |
1310 | { | 1315 | { |
1311 | // experimental only | 1316 | // experimental only |
1312 | // return; | 1317 | // return; |
1313 | KOAgendaItem *item; | 1318 | KOAgendaItem *item; |
1314 | for ( item=mUnusedItems.first(); item != 0; item=mUnusedItems.next() ) { | 1319 | for ( item=mUnusedItems.first(); item != 0; item=mUnusedItems.next() ) { |
1315 | item->hide(); | 1320 | item->hide(); |
1316 | } | 1321 | } |
1317 | } | 1322 | } |
1318 | 1323 | ||
1319 | 1324 | ||
1320 | KOAgendaItem *KOAgenda::getNewItem(Incidence * event,QDate qd, QWidget* view) | 1325 | KOAgendaItem *KOAgenda::getNewItem(Incidence * event,QDate qd, QWidget* view) |
1321 | { | 1326 | { |
1322 | 1327 | ||
1323 | KOAgendaItem *fi; | 1328 | KOAgendaItem *fi; |
1324 | for ( fi=mUnusedItems.first(); fi != 0; fi=mUnusedItems.next() ) { | 1329 | for ( fi=mUnusedItems.first(); fi != 0; fi=mUnusedItems.next() ) { |
1325 | if ( fi->incidence() == event ) { | 1330 | if ( fi->incidence() == event ) { |
1326 | mUnusedItems.remove(); | 1331 | mUnusedItems.remove(); |
1327 | fi->init( event, qd ); | 1332 | fi->init( event, qd ); |
1328 | return fi; | 1333 | return fi; |
1329 | } | 1334 | } |
1330 | } | 1335 | } |
1331 | fi=mUnusedItems.first(); | 1336 | fi=mUnusedItems.first(); |
1332 | if ( fi ) { | 1337 | if ( fi ) { |
1333 | mUnusedItems.remove(); | 1338 | mUnusedItems.remove(); |
1334 | fi->init( event, qd ); | 1339 | fi->init( event, qd ); |
1335 | return fi; | 1340 | return fi; |
1336 | } | 1341 | } |
1337 | // qDebug("new KOAgendaItem "); | 1342 | // qDebug("new KOAgendaItem "); |
1338 | 1343 | ||
1339 | KOAgendaItem* agendaItem = new KOAgendaItem( event, qd, view, mAllDayMode ); | 1344 | KOAgendaItem* agendaItem = new KOAgendaItem( event, qd, view, mAllDayMode ); |
1340 | agendaItem->installEventFilter(this); | 1345 | agendaItem->installEventFilter(this); |