summaryrefslogtreecommitdiffabout
path: root/korganizer
authorzautrix <zautrix>2005-06-09 16:17:14 (UTC)
committer zautrix <zautrix>2005-06-09 16:17:14 (UTC)
commit89c5159208fd982f527117e49d67ea1f90553dbe (patch) (unidiff)
treeb6b72ca9e0668e871a6969b25654945747015d0f /korganizer
parentad88eadf0bdb34cb4a93639b50a5566a06470c22 (diff)
downloadkdepimpi-89c5159208fd982f527117e49d67ea1f90553dbe.zip
kdepimpi-89c5159208fd982f527117e49d67ea1f90553dbe.tar.gz
kdepimpi-89c5159208fd982f527117e49d67ea1f90553dbe.tar.bz2
dialog fixes
Diffstat (limited to 'korganizer') (more/less context) (ignore whitespace changes)
-rw-r--r--korganizer/calendarview.cpp10
-rw-r--r--korganizer/calendarview.h1
-rw-r--r--korganizer/kodialogmanager.cpp28
-rw-r--r--korganizer/kodialogmanager.h1
-rw-r--r--korganizer/koprefsdialog.cpp28
-rw-r--r--korganizer/mainwindow.cpp9
6 files changed, 54 insertions, 23 deletions
diff --git a/korganizer/calendarview.cpp b/korganizer/calendarview.cpp
index 7c7466b..4794414 100644
--- a/korganizer/calendarview.cpp
+++ b/korganizer/calendarview.cpp
@@ -2139,789 +2139,791 @@ void CalendarView::readSettings()
2139 2139
2140 2140
2141void CalendarView::writeSettings() 2141void CalendarView::writeSettings()
2142{ 2142{
2143 // kdDebug() << "CalendarView::writeSettings" << endl; 2143 // kdDebug() << "CalendarView::writeSettings" << endl;
2144 2144
2145 KConfig *config = KOGlobals::config(); 2145 KConfig *config = KOGlobals::config();
2146 2146
2147 mViewManager->writeSettings( config ); 2147 mViewManager->writeSettings( config );
2148 mTodoList->saveLayout(config,QString("Todo Layout")); 2148 mTodoList->saveLayout(config,QString("Todo Layout"));
2149 mDialogManager->writeSettings( config ); 2149 mDialogManager->writeSettings( config );
2150 //KOPrefs::instance()->usrWriteConfig(); 2150 //KOPrefs::instance()->usrWriteConfig();
2151 KOPrefs::instance()->writeConfig(); 2151 KOPrefs::instance()->writeConfig();
2152 2152
2153 writeFilterSettings(config); 2153 writeFilterSettings(config);
2154 config->setGroup( "AppRun" ); 2154 config->setGroup( "AppRun" );
2155 QDateTime dt ( QDate (2005,1,1), QTime( 0,0,0 ) ); 2155 QDateTime dt ( QDate (2005,1,1), QTime( 0,0,0 ) );
2156 config->writeEntry( "LatestProgramStop", dt.secsTo( QDateTime::currentDateTime() ) ); 2156 config->writeEntry( "LatestProgramStop", dt.secsTo( QDateTime::currentDateTime() ) );
2157 config->setGroup( "Views" ); 2157 config->setGroup( "Views" );
2158 config->writeEntry( "ShownDatesCount", mNavigator->selectedDates().count() ); 2158 config->writeEntry( "ShownDatesCount", mNavigator->selectedDates().count() );
2159 2159
2160 QValueList<int> listINT = mLeftFrame->sizes(); 2160 QValueList<int> listINT = mLeftFrame->sizes();
2161 config->writeEntry("Left Splitter Frame",listINT); 2161 config->writeEntry("Left Splitter Frame",listINT);
2162 QValueList<int> listINT2 = mMainFrame->sizes(); 2162 QValueList<int> listINT2 = mMainFrame->sizes();
2163 config->writeEntry("Main Splitter Frame",listINT2); 2163 config->writeEntry("Main Splitter Frame",listINT2);
2164#ifdef DESKTOP_VERSION 2164#ifdef DESKTOP_VERSION
2165 config->setGroup("WidgetLayout"); 2165 config->setGroup("WidgetLayout");
2166 QStringList list ;//= config->readListEntry("MainLayout"); 2166 QStringList list ;//= config->readListEntry("MainLayout");
2167 int x,y,w,h; 2167 int x,y,w,h;
2168 QWidget* wid; 2168 QWidget* wid;
2169 wid = topLevelWidget(); 2169 wid = topLevelWidget();
2170 x = wid->geometry().x(); 2170 x = wid->geometry().x();
2171 y = wid->geometry().y(); 2171 y = wid->geometry().y();
2172 w = wid->width(); 2172 w = wid->width();
2173 h = wid->height(); 2173 h = wid->height();
2174 list.clear(); 2174 list.clear();
2175 list << QString::number( x ); 2175 list << QString::number( x );
2176 list << QString::number( y ); 2176 list << QString::number( y );
2177 list << QString::number( w ); 2177 list << QString::number( w );
2178 list << QString::number( h ); 2178 list << QString::number( h );
2179 config->writeEntry("MainLayout",list ); 2179 config->writeEntry("MainLayout",list );
2180 2180
2181 wid = mEventEditor; 2181 wid = mEventEditor;
2182 x = wid->geometry().x(); 2182 x = wid->geometry().x();
2183 y = wid->geometry().y(); 2183 y = wid->geometry().y();
2184 w = wid->width(); 2184 w = wid->width();
2185 h = wid->height(); 2185 h = wid->height();
2186 list.clear(); 2186 list.clear();
2187 list << QString::number( x ); 2187 list << QString::number( x );
2188 list << QString::number( y ); 2188 list << QString::number( y );
2189 list << QString::number( w ); 2189 list << QString::number( w );
2190 list << QString::number( h ); 2190 list << QString::number( h );
2191 config->writeEntry("EditEventLayout",list ); 2191 config->writeEntry("EditEventLayout",list );
2192 2192
2193 wid = mTodoEditor; 2193 wid = mTodoEditor;
2194 x = wid->geometry().x(); 2194 x = wid->geometry().x();
2195 y = wid->geometry().y(); 2195 y = wid->geometry().y();
2196 w = wid->width(); 2196 w = wid->width();
2197 h = wid->height(); 2197 h = wid->height();
2198 list.clear(); 2198 list.clear();
2199 list << QString::number( x ); 2199 list << QString::number( x );
2200 list << QString::number( y ); 2200 list << QString::number( y );
2201 list << QString::number( w ); 2201 list << QString::number( w );
2202 list << QString::number( h ); 2202 list << QString::number( h );
2203 config->writeEntry("EditTodoLayout",list ); 2203 config->writeEntry("EditTodoLayout",list );
2204 wid = getEventViewerDialog(); 2204 wid = getEventViewerDialog();
2205 x = wid->geometry().x(); 2205 x = wid->geometry().x();
2206 y = wid->geometry().y(); 2206 y = wid->geometry().y();
2207 w = wid->width(); 2207 w = wid->width();
2208 h = wid->height(); 2208 h = wid->height();
2209 list.clear(); 2209 list.clear();
2210 list << QString::number( x ); 2210 list << QString::number( x );
2211 list << QString::number( y ); 2211 list << QString::number( y );
2212 list << QString::number( w ); 2212 list << QString::number( w );
2213 list << QString::number( h ); 2213 list << QString::number( h );
2214 config->writeEntry("ViewerLayout",list ); 2214 config->writeEntry("ViewerLayout",list );
2215 wid = mDialogManager->getSearchDialog(); 2215 wid = mDialogManager->getSearchDialog();
2216 if ( wid ) { 2216 if ( wid ) {
2217 x = wid->geometry().x(); 2217 x = wid->geometry().x();
2218 y = wid->geometry().y(); 2218 y = wid->geometry().y();
2219 w = wid->width(); 2219 w = wid->width();
2220 h = wid->height(); 2220 h = wid->height();
2221 list.clear(); 2221 list.clear();
2222 list << QString::number( x ); 2222 list << QString::number( x );
2223 list << QString::number( y ); 2223 list << QString::number( y );
2224 list << QString::number( w ); 2224 list << QString::number( w );
2225 list << QString::number( h ); 2225 list << QString::number( h );
2226 config->writeEntry("SearchLayout",list ); 2226 config->writeEntry("SearchLayout",list );
2227 } 2227 }
2228#endif 2228#endif
2229 2229
2230 2230
2231 config->sync(); 2231 config->sync();
2232} 2232}
2233 2233
2234void CalendarView::readFilterSettings(KConfig *config) 2234void CalendarView::readFilterSettings(KConfig *config)
2235{ 2235{
2236 // kdDebug() << "CalendarView::readFilterSettings()" << endl; 2236 // kdDebug() << "CalendarView::readFilterSettings()" << endl;
2237 2237
2238 mFilters.clear(); 2238 mFilters.clear();
2239 2239
2240 config->setGroup("General"); 2240 config->setGroup("General");
2241 QStringList filterList = config->readListEntry("CalendarFilters"); 2241 QStringList filterList = config->readListEntry("CalendarFilters");
2242 2242
2243 QStringList::ConstIterator it = filterList.begin(); 2243 QStringList::ConstIterator it = filterList.begin();
2244 QStringList::ConstIterator end = filterList.end(); 2244 QStringList::ConstIterator end = filterList.end();
2245 while(it != end) { 2245 while(it != end) {
2246 // kdDebug() << " filter: " << (*it) << endl; 2246 // kdDebug() << " filter: " << (*it) << endl;
2247 2247
2248 CalFilter *filter; 2248 CalFilter *filter;
2249 filter = new CalFilter(*it); 2249 filter = new CalFilter(*it);
2250 config->setGroup("Filter_" + (*it).utf8()); 2250 config->setGroup("Filter_" + (*it).utf8());
2251 //qDebug("readFilterSettings %d ",config->readNumEntry("Criteria",0) ); 2251 //qDebug("readFilterSettings %d ",config->readNumEntry("Criteria",0) );
2252 filter->setCriteria(config->readNumEntry("Criteria",0)); 2252 filter->setCriteria(config->readNumEntry("Criteria",0));
2253 filter->setCategoryList(config->readListEntry("CategoryList")); 2253 filter->setCategoryList(config->readListEntry("CategoryList"));
2254 mFilters.append(filter); 2254 mFilters.append(filter);
2255 2255
2256 ++it; 2256 ++it;
2257 } 2257 }
2258 2258
2259 if (mFilters.count() == 0) { 2259 if (mFilters.count() == 0) {
2260 CalFilter *filter = new CalFilter(i18n("Default")); 2260 CalFilter *filter = new CalFilter(i18n("Default"));
2261 mFilters.append(filter); 2261 mFilters.append(filter);
2262 } 2262 }
2263 mFilterView->updateFilters(); 2263 mFilterView->updateFilters();
2264 config->setGroup("FilterView"); 2264 config->setGroup("FilterView");
2265 2265
2266 mFilterView->blockSignals(true); 2266 mFilterView->blockSignals(true);
2267 mFilterView->setFiltersEnabled(config->readBoolEntry("FilterEnabled")); 2267 mFilterView->setFiltersEnabled(config->readBoolEntry("FilterEnabled"));
2268 mFilterView->setSelectedFilter(config->readEntry("Current Filter")); 2268 mFilterView->setSelectedFilter(config->readEntry("Current Filter"));
2269 mFilterView->blockSignals(false); 2269 mFilterView->blockSignals(false);
2270 // We do it manually to avoid it being done twice by the above calls 2270 // We do it manually to avoid it being done twice by the above calls
2271 updateFilter(); 2271 updateFilter();
2272} 2272}
2273 2273
2274void CalendarView::writeFilterSettings(KConfig *config) 2274void CalendarView::writeFilterSettings(KConfig *config)
2275{ 2275{
2276 // kdDebug() << "CalendarView::writeFilterSettings()" << endl; 2276 // kdDebug() << "CalendarView::writeFilterSettings()" << endl;
2277 2277
2278 QStringList filterList; 2278 QStringList filterList;
2279 2279
2280 CalFilter *filter = mFilters.first(); 2280 CalFilter *filter = mFilters.first();
2281 while(filter) { 2281 while(filter) {
2282 // kdDebug() << " fn: " << filter->name() << endl; 2282 // kdDebug() << " fn: " << filter->name() << endl;
2283 filterList << filter->name(); 2283 filterList << filter->name();
2284 config->setGroup("Filter_" + filter->name().utf8()); 2284 config->setGroup("Filter_" + filter->name().utf8());
2285 config->writeEntry("Criteria",filter->criteria()); 2285 config->writeEntry("Criteria",filter->criteria());
2286 config->writeEntry("CategoryList",filter->categoryList()); 2286 config->writeEntry("CategoryList",filter->categoryList());
2287 filter = mFilters.next(); 2287 filter = mFilters.next();
2288 } 2288 }
2289 config->setGroup("General"); 2289 config->setGroup("General");
2290 config->writeEntry("CalendarFilters",filterList); 2290 config->writeEntry("CalendarFilters",filterList);
2291 2291
2292 config->setGroup("FilterView"); 2292 config->setGroup("FilterView");
2293 config->writeEntry("FilterEnabled",mFilterView->filtersEnabled()); 2293 config->writeEntry("FilterEnabled",mFilterView->filtersEnabled());
2294 config->writeEntry("Current Filter",mFilterView->selectedFilter()->name()); 2294 config->writeEntry("Current Filter",mFilterView->selectedFilter()->name());
2295} 2295}
2296 2296
2297 2297
2298void CalendarView::goToday() 2298void CalendarView::goToday()
2299{ 2299{
2300 if ( mViewManager->currentView()->isMonthView() ) 2300 if ( mViewManager->currentView()->isMonthView() )
2301 mNavigator->selectTodayMonth(); 2301 mNavigator->selectTodayMonth();
2302 else 2302 else
2303 mNavigator->selectToday(); 2303 mNavigator->selectToday();
2304} 2304}
2305 2305
2306void CalendarView::goNext() 2306void CalendarView::goNext()
2307{ 2307{
2308 mNavigator->selectNext(); 2308 mNavigator->selectNext();
2309} 2309}
2310 2310
2311void CalendarView::goPrevious() 2311void CalendarView::goPrevious()
2312{ 2312{
2313 mNavigator->selectPrevious(); 2313 mNavigator->selectPrevious();
2314} 2314}
2315void CalendarView::goNextMonth() 2315void CalendarView::goNextMonth()
2316{ 2316{
2317 mNavigator->selectNextMonth(); 2317 mNavigator->selectNextMonth();
2318} 2318}
2319 2319
2320void CalendarView::goPreviousMonth() 2320void CalendarView::goPreviousMonth()
2321{ 2321{
2322 mNavigator->selectPreviousMonth(); 2322 mNavigator->selectPreviousMonth();
2323} 2323}
2324void CalendarView::writeLocale() 2324void CalendarView::writeLocale()
2325{ 2325{
2326 //KPimGlobalPrefs::instance()->setGlobalConfig(); 2326 //KPimGlobalPrefs::instance()->setGlobalConfig();
2327#if 0 2327#if 0
2328 KGlobal::locale()->setHore24Format( !KOPrefs::instance()->mPreferredTime ); 2328 KGlobal::locale()->setHore24Format( !KOPrefs::instance()->mPreferredTime );
2329 KGlobal::locale()->setWeekStartMonday( !KOPrefs::instance()->mWeekStartsOnSunday ); 2329 KGlobal::locale()->setWeekStartMonday( !KOPrefs::instance()->mWeekStartsOnSunday );
2330 KGlobal::locale()->setIntDateFormat( (KLocale::IntDateFormat)KOPrefs::instance()->mPreferredDate ); 2330 KGlobal::locale()->setIntDateFormat( (KLocale::IntDateFormat)KOPrefs::instance()->mPreferredDate );
2331 KGlobal::locale()->setLanguage( KOPrefs::instance()->mPreferredLanguage ); 2331 KGlobal::locale()->setLanguage( KOPrefs::instance()->mPreferredLanguage );
2332 QString dummy = KOPrefs::instance()->mUserDateFormatLong; 2332 QString dummy = KOPrefs::instance()->mUserDateFormatLong;
2333 KGlobal::locale()->setDateFormat(dummy.replace( QRegExp("K"), QString(",") )); 2333 KGlobal::locale()->setDateFormat(dummy.replace( QRegExp("K"), QString(",") ));
2334 dummy = KOPrefs::instance()->mUserDateFormatShort; 2334 dummy = KOPrefs::instance()->mUserDateFormatShort;
2335 KGlobal::locale()->setDateFormatShort(dummy.replace( QRegExp("K"), QString(",") )); 2335 KGlobal::locale()->setDateFormatShort(dummy.replace( QRegExp("K"), QString(",") ));
2336 KGlobal::locale()->setDaylightSaving( KOPrefs::instance()->mUseDaylightsaving, 2336 KGlobal::locale()->setDaylightSaving( KOPrefs::instance()->mUseDaylightsaving,
2337 KOPrefs::instance()->mDaylightsavingStart, 2337 KOPrefs::instance()->mDaylightsavingStart,
2338 KOPrefs::instance()->mDaylightsavingEnd ); 2338 KOPrefs::instance()->mDaylightsavingEnd );
2339 KGlobal::locale()->setTimezone( KPimGlobalPrefs::instance()->mTimeZoneId ); 2339 KGlobal::locale()->setTimezone( KPimGlobalPrefs::instance()->mTimeZoneId );
2340#endif 2340#endif
2341} 2341}
2342void CalendarView::updateConfig() 2342void CalendarView::updateConfig()
2343{ 2343{
2344 writeLocale(); 2344 writeLocale();
2345 if ( KOPrefs::instance()->mUseAppColors ) 2345 if ( KOPrefs::instance()->mUseAppColors )
2346 QApplication::setPalette( QPalette (KOPrefs::instance()->mAppColor1, KOPrefs::instance()->mAppColor2), true ); 2346 QApplication::setPalette( QPalette (KOPrefs::instance()->mAppColor1, KOPrefs::instance()->mAppColor2), true );
2347 emit configChanged(); 2347 emit configChanged();
2348 mTodoList->updateConfig(); 2348 mTodoList->updateConfig();
2349 // mDateNavigator->setFont ( KOPrefs::instance()->mDateNavigatorFont); 2349 // mDateNavigator->setFont ( KOPrefs::instance()->mDateNavigatorFont);
2350 mCalendar->setTimeZoneId(KPimGlobalPrefs::instance()->mTimeZoneId); 2350 mCalendar->setTimeZoneId(KPimGlobalPrefs::instance()->mTimeZoneId);
2351 // To make the "fill window" configurations work 2351 // To make the "fill window" configurations work
2352 //mViewManager->raiseCurrentView(); 2352 //mViewManager->raiseCurrentView();
2353} 2353}
2354 2354
2355 2355
2356void CalendarView::eventChanged(Event *event) 2356void CalendarView::eventChanged(Event *event)
2357{ 2357{
2358 changeEventDisplay(event,KOGlobals::EVENTEDITED); 2358 changeEventDisplay(event,KOGlobals::EVENTEDITED);
2359 //updateUnmanagedViews(); 2359 //updateUnmanagedViews();
2360} 2360}
2361 2361
2362void CalendarView::eventAdded(Event *event) 2362void CalendarView::eventAdded(Event *event)
2363{ 2363{
2364 changeEventDisplay(event,KOGlobals::EVENTADDED); 2364 changeEventDisplay(event,KOGlobals::EVENTADDED);
2365} 2365}
2366 2366
2367void CalendarView::eventToBeDeleted(Event *) 2367void CalendarView::eventToBeDeleted(Event *)
2368{ 2368{
2369 kdDebug() << "CalendarView::eventToBeDeleted(): to be implemented" << endl; 2369 kdDebug() << "CalendarView::eventToBeDeleted(): to be implemented" << endl;
2370} 2370}
2371 2371
2372void CalendarView::eventDeleted() 2372void CalendarView::eventDeleted()
2373{ 2373{
2374 changeEventDisplay(0,KOGlobals::EVENTDELETED); 2374 changeEventDisplay(0,KOGlobals::EVENTDELETED);
2375} 2375}
2376void CalendarView::changeTodoDisplay(Todo *which, int action) 2376void CalendarView::changeTodoDisplay(Todo *which, int action)
2377{ 2377{
2378 changeIncidenceDisplay((Incidence *)which, action); 2378 changeIncidenceDisplay((Incidence *)which, action);
2379 mDateNavigator->updateView(); //LR 2379 mDateNavigator->updateView(); //LR
2380 //mDialogManager->updateSearchDialog(); 2380 //mDialogManager->updateSearchDialog();
2381 2381
2382 if (which) { 2382 if (which) {
2383 mViewManager->updateWNview(); 2383 mViewManager->updateWNview();
2384 //mTodoList->updateView(); 2384 //mTodoList->updateView();
2385 } 2385 }
2386 2386
2387} 2387}
2388 2388
2389void CalendarView::changeIncidenceDisplay(Incidence *which, int action) 2389void CalendarView::changeIncidenceDisplay(Incidence *which, int action)
2390{ 2390{
2391 updateUnmanagedViews(); 2391 updateUnmanagedViews();
2392 //qDebug(" CalendarView::changeIncidenceDisplay++++++++++++++++++++++++++ %d %d ",which, action ); 2392 //qDebug(" CalendarView::changeIncidenceDisplay++++++++++++++++++++++++++ %d %d ",which, action );
2393 if ( action == KOGlobals::EVENTDELETED ) { //delete 2393 if ( action == KOGlobals::EVENTDELETED ) { //delete
2394 mCalendar->checkAlarmForIncidence( 0, true ); 2394 mCalendar->checkAlarmForIncidence( 0, true );
2395 if ( mEventViewerDialog ) 2395 if ( mEventViewerDialog )
2396 mEventViewerDialog->hide(); 2396 mEventViewerDialog->hide();
2397 } 2397 }
2398 else 2398 else
2399 mCalendar->checkAlarmForIncidence( which , false ); 2399 mCalendar->checkAlarmForIncidence( which , false );
2400} 2400}
2401 2401
2402// most of the changeEventDisplays() right now just call the view's 2402// most of the changeEventDisplays() right now just call the view's
2403// total update mode, but they SHOULD be recoded to be more refresh-efficient. 2403// total update mode, but they SHOULD be recoded to be more refresh-efficient.
2404void CalendarView::changeEventDisplay(Event *which, int action) 2404void CalendarView::changeEventDisplay(Event *which, int action)
2405{ 2405{
2406 // kdDebug() << "CalendarView::changeEventDisplay" << endl; 2406 // kdDebug() << "CalendarView::changeEventDisplay" << endl;
2407 changeIncidenceDisplay((Incidence *)which, action); 2407 changeIncidenceDisplay((Incidence *)which, action);
2408 mDateNavigator->updateView(); 2408 mDateNavigator->updateView();
2409 //mDialogManager->updateSearchDialog(); 2409 //mDialogManager->updateSearchDialog();
2410 2410
2411 if (which) { 2411 if (which) {
2412 // If there is an event view visible update the display 2412 // If there is an event view visible update the display
2413 mViewManager->currentView()->changeEventDisplay(which,action); 2413 mViewManager->currentView()->changeEventDisplay(which,action);
2414 // TODO: check, if update needed 2414 // TODO: check, if update needed
2415 // if (which->getTodoStatus()) { 2415 // if (which->getTodoStatus()) {
2416 mTodoList->updateView(); 2416 mTodoList->updateView();
2417 // } 2417 // }
2418 } else { 2418 } else {
2419 mViewManager->currentView()->updateView(); 2419 mViewManager->currentView()->updateView();
2420 } 2420 }
2421} 2421}
2422 2422
2423 2423
2424void CalendarView::updateTodoViews() 2424void CalendarView::updateTodoViews()
2425{ 2425{
2426 mTodoList->updateView(); 2426 mTodoList->updateView();
2427 mViewManager->currentView()->updateView(); 2427 mViewManager->currentView()->updateView();
2428 2428
2429} 2429}
2430 2430
2431 2431
2432void CalendarView::updateView(const QDate &start, const QDate &end) 2432void CalendarView::updateView(const QDate &start, const QDate &end)
2433{ 2433{
2434 mTodoList->updateView(); 2434 mTodoList->updateView();
2435 mViewManager->updateView(start, end); 2435 mViewManager->updateView(start, end);
2436 //mDateNavigator->updateView(); 2436 //mDateNavigator->updateView();
2437} 2437}
2438 2438
2439void CalendarView::clearAllViews() 2439void CalendarView::clearAllViews()
2440{ 2440{
2441 mTodoList->clearList(); 2441 mTodoList->clearList();
2442 mViewManager->clearAllViews(); 2442 mViewManager->clearAllViews();
2443 SearchDialog * sd = mDialogManager->getSearchDialog(); 2443 SearchDialog * sd = mDialogManager->getSearchDialog();
2444 if ( sd ) { 2444 if ( sd ) {
2445 KOListView* kol = sd->listview(); 2445 KOListView* kol = sd->listview();
2446 if ( kol ) 2446 if ( kol )
2447 kol->clearList(); 2447 kol->clearList();
2448 } 2448 }
2449} 2449}
2450void CalendarView::updateView() 2450void CalendarView::updateView()
2451{ 2451{
2452 DateList tmpList = mNavigator->selectedDates(); 2452 DateList tmpList = mNavigator->selectedDates();
2453 2453
2454 if ( KOPrefs::instance()->mHideNonStartedTodos ) 2454 if ( KOPrefs::instance()->mHideNonStartedTodos )
2455 mTodoList->updateView(); 2455 mTodoList->updateView();
2456 // We assume that the navigator only selects consecutive days. 2456 // We assume that the navigator only selects consecutive days.
2457 updateView( tmpList.first(), tmpList.last() ); 2457 updateView( tmpList.first(), tmpList.last() );
2458} 2458}
2459 2459
2460void CalendarView::updateUnmanagedViews() 2460void CalendarView::updateUnmanagedViews()
2461{ 2461{
2462 mDateNavigator->updateDayMatrix(); 2462 mDateNavigator->updateDayMatrix();
2463} 2463}
2464 2464
2465int CalendarView::msgItemDelete(const QString name) 2465int CalendarView::msgItemDelete(const QString name)
2466{ 2466{
2467 return KMessageBox::warningContinueCancel(this,name +"\n\n"+ 2467 return KMessageBox::warningContinueCancel(this,name +"\n\n"+
2468 i18n("This item will be\npermanently deleted."), 2468 i18n("This item will be\npermanently deleted."),
2469 i18n("KO/Pi Confirmation"),i18n("Delete")); 2469 i18n("KO/Pi Confirmation"),i18n("Delete"));
2470} 2470}
2471 2471
2472 2472
2473void CalendarView::edit_cut() 2473void CalendarView::edit_cut()
2474{ 2474{
2475 Event *anEvent=0; 2475 Event *anEvent=0;
2476 2476
2477 Incidence *incidence = mViewManager->currentView()->selectedIncidences().first(); 2477 Incidence *incidence = mViewManager->currentView()->selectedIncidences().first();
2478 2478
2479 if (mViewManager->currentView()->isEventView()) { 2479 if (mViewManager->currentView()->isEventView()) {
2480 if ( incidence && incidence->typeID() == eventID ) { 2480 if ( incidence && incidence->typeID() == eventID ) {
2481 anEvent = static_cast<Event *>(incidence); 2481 anEvent = static_cast<Event *>(incidence);
2482 } 2482 }
2483 } 2483 }
2484 2484
2485 if (!anEvent) { 2485 if (!anEvent) {
2486 KNotifyClient::beep(); 2486 KNotifyClient::beep();
2487 return; 2487 return;
2488 } 2488 }
2489 DndFactory factory( mCalendar ); 2489 DndFactory factory( mCalendar );
2490 factory.cutIncidence(anEvent); 2490 factory.cutIncidence(anEvent);
2491 changeEventDisplay(anEvent, KOGlobals::EVENTDELETED); 2491 changeEventDisplay(anEvent, KOGlobals::EVENTDELETED);
2492} 2492}
2493 2493
2494void CalendarView::edit_copy() 2494void CalendarView::edit_copy()
2495{ 2495{
2496 Event *anEvent=0; 2496 Event *anEvent=0;
2497 2497
2498 Incidence *incidence = mViewManager->currentView()->selectedIncidences().first(); 2498 Incidence *incidence = mViewManager->currentView()->selectedIncidences().first();
2499 2499
2500 if (mViewManager->currentView()->isEventView()) { 2500 if (mViewManager->currentView()->isEventView()) {
2501 if ( incidence && incidence->typeID() == eventID ) { 2501 if ( incidence && incidence->typeID() == eventID ) {
2502 anEvent = static_cast<Event *>(incidence); 2502 anEvent = static_cast<Event *>(incidence);
2503 } 2503 }
2504 } 2504 }
2505 2505
2506 if (!anEvent) { 2506 if (!anEvent) {
2507 KNotifyClient::beep(); 2507 KNotifyClient::beep();
2508 return; 2508 return;
2509 } 2509 }
2510 DndFactory factory( mCalendar ); 2510 DndFactory factory( mCalendar );
2511 factory.copyIncidence(anEvent); 2511 factory.copyIncidence(anEvent);
2512} 2512}
2513 2513
2514void CalendarView::edit_paste() 2514void CalendarView::edit_paste()
2515{ 2515{
2516 QDate date = mNavigator->selectedDates().first(); 2516 QDate date = mNavigator->selectedDates().first();
2517 2517
2518 DndFactory factory( mCalendar ); 2518 DndFactory factory( mCalendar );
2519 Event *pastedEvent = (Event *)factory.pasteIncidence( date ); 2519 Event *pastedEvent = (Event *)factory.pasteIncidence( date );
2520 2520
2521 changeEventDisplay( pastedEvent, KOGlobals::EVENTADDED ); 2521 changeEventDisplay( pastedEvent, KOGlobals::EVENTADDED );
2522} 2522}
2523 2523void CalendarView::edit_global_options()
2524void CalendarView::edit_options()
2525{ 2524{
2526 QString tz = KPimGlobalPrefs::instance()->mTimeZoneId; 2525 QString tz = KPimGlobalPrefs::instance()->mTimeZoneId;
2527 emit save(); 2526 emit save();
2528 emit saveStopTimer(); 2527 emit saveStopTimer();
2529 mDialogManager->showOptionsDialog(); 2528 mDialogManager->showGlobalOptionsDialog();
2530 if ( tz != KPimGlobalPrefs::instance()->mTimeZoneId) { 2529 if ( tz != KPimGlobalPrefs::instance()->mTimeZoneId) {
2531 emit saveStopTimer(); 2530 emit saveStopTimer();
2532 if ( KMessageBox::Cancel == KMessageBox::warningContinueCancel(this, i18n("The timezone has changed!\nShould the calendar be reloaded\nto apply timezone changes?\nPlease read Menu: Help->FAQ:\n\"How do I change the timezone?\"\nas well!"), 2531 if ( KMessageBox::Cancel == KMessageBox::warningContinueCancel(this, i18n("The timezone has changed!\nShould the calendar be reloaded\nto apply timezone changes?\nPlease read Menu: Help->FAQ:\n\"How do I change the timezone?\"\nas well!"),
2533 i18n("Timezone settings"),i18n("Reload"))) { 2532 i18n("Timezone settings"),i18n("Reload"))) {
2534 qDebug("KO: TZ reload cancelled "); 2533 qDebug("KO: TZ reload cancelled ");
2535 return; 2534 return;
2536 } 2535 }
2537 qDebug("KO: Timezone change "); 2536 qDebug("KO: Timezone change ");
2538 openCalendar( MainWindow::defaultFileName() ); 2537 openCalendar( MainWindow::defaultFileName() );
2539 setModified(true); 2538 setModified(true);
2540 } 2539 }
2541 else 2540 else
2542 qDebug("KO: No tz change "); 2541 qDebug("KO: No tz change ");
2543 2542}
2543void CalendarView::edit_options()
2544{
2545 mDialogManager->showOptionsDialog();
2544} 2546}
2545 2547
2546 2548
2547void CalendarView::slotSelectPickerDate( QDate d) 2549void CalendarView::slotSelectPickerDate( QDate d)
2548{ 2550{
2549 mDateFrame->hide(); 2551 mDateFrame->hide();
2550 if ( mDatePickerMode == 1 ) { 2552 if ( mDatePickerMode == 1 ) {
2551 mNavigator->slotDaySelect( d ); 2553 mNavigator->slotDaySelect( d );
2552 } else if ( mDatePickerMode == 2 ) { 2554 } else if ( mDatePickerMode == 2 ) {
2553 if ( mMoveIncidence->typeID() == todoID ) { 2555 if ( mMoveIncidence->typeID() == todoID ) {
2554 Todo * to = (Todo *) mMoveIncidence; 2556 Todo * to = (Todo *) mMoveIncidence;
2555 QTime tim; 2557 QTime tim;
2556 int len = 0; 2558 int len = 0;
2557 if ( to->hasStartDate() && to->hasDueDate() ) 2559 if ( to->hasStartDate() && to->hasDueDate() )
2558 len = to->dtStart().secsTo( to->dtDue()); 2560 len = to->dtStart().secsTo( to->dtDue());
2559 if ( to->hasDueDate() ) 2561 if ( to->hasDueDate() )
2560 tim = to->dtDue().time(); 2562 tim = to->dtDue().time();
2561 else { 2563 else {
2562 tim = QTime ( 0,0,0 ); 2564 tim = QTime ( 0,0,0 );
2563 to->setFloats( true ); 2565 to->setFloats( true );
2564 to->setHasDueDate( true ); 2566 to->setHasDueDate( true );
2565 } 2567 }
2566 QDateTime dt ( d,tim ); 2568 QDateTime dt ( d,tim );
2567 to->setDtDue( dt ); 2569 to->setDtDue( dt );
2568 2570
2569 if ( to->hasStartDate() ) { 2571 if ( to->hasStartDate() ) {
2570 if ( len>0 ) 2572 if ( len>0 )
2571 to->setDtStart(to->dtDue().addSecs( -len )); 2573 to->setDtStart(to->dtDue().addSecs( -len ));
2572 else 2574 else
2573 if (to->dtStart() > to->dtDue() ) 2575 if (to->dtStart() > to->dtDue() )
2574 to->setDtStart(to->dtDue().addDays( -3 )); 2576 to->setDtStart(to->dtDue().addDays( -3 ));
2575 } 2577 }
2576 2578
2577 todoChanged( to ); 2579 todoChanged( to );
2578 } else { 2580 } else {
2579 if ( mMoveIncidence->doesRecur() ) { 2581 if ( mMoveIncidence->doesRecur() ) {
2580#if 0 2582#if 0
2581 // PENDING implement this 2583 // PENDING implement this
2582 Incidence* newInc = mMoveIncidence->recreateCloneException( mMoveIncidenceOldDate ); 2584 Incidence* newInc = mMoveIncidence->recreateCloneException( mMoveIncidenceOldDate );
2583 mCalendar()->addIncidence( newInc ); 2585 mCalendar()->addIncidence( newInc );
2584 if ( mMoveIncidence->typeID() == todoID ) 2586 if ( mMoveIncidence->typeID() == todoID )
2585 emit todoMoved((Todo*)mMoveIncidence, KOGlobals::EVENTEDITED ); 2587 emit todoMoved((Todo*)mMoveIncidence, KOGlobals::EVENTEDITED );
2586 else 2588 else
2587 emit incidenceChanged(mMoveIncidence, KOGlobals::EVENTEDITED); 2589 emit incidenceChanged(mMoveIncidence, KOGlobals::EVENTEDITED);
2588 mMoveIncidence = newInc; 2590 mMoveIncidence = newInc;
2589 2591
2590#endif 2592#endif
2591 } 2593 }
2592 QTime tim = mMoveIncidence->dtStart().time(); 2594 QTime tim = mMoveIncidence->dtStart().time();
2593 int secs = mMoveIncidence->dtStart().secsTo( mMoveIncidence->dtEnd()); 2595 int secs = mMoveIncidence->dtStart().secsTo( mMoveIncidence->dtEnd());
2594 QDateTime dt ( d,tim ); 2596 QDateTime dt ( d,tim );
2595 mMoveIncidence->setDtStart( dt ); 2597 mMoveIncidence->setDtStart( dt );
2596 ((Event*)mMoveIncidence)->setDtEnd( dt.addSecs( secs ) ); 2598 ((Event*)mMoveIncidence)->setDtEnd( dt.addSecs( secs ) );
2597 changeEventDisplay((Event*)mMoveIncidence, KOGlobals::EVENTEDITED); 2599 changeEventDisplay((Event*)mMoveIncidence, KOGlobals::EVENTEDITED);
2598 } 2600 }
2599 2601
2600 mMoveIncidence->setRevision( mMoveIncidence->revision()+1 ); 2602 mMoveIncidence->setRevision( mMoveIncidence->revision()+1 );
2601 } 2603 }
2602} 2604}
2603 2605
2604void CalendarView::removeCategories() 2606void CalendarView::removeCategories()
2605{ 2607{
2606 QPtrList<Incidence> incList = mCalendar->rawIncidences(); 2608 QPtrList<Incidence> incList = mCalendar->rawIncidences();
2607 QStringList catList = KOPrefs::instance()->mCustomCategories; 2609 QStringList catList = KOPrefs::instance()->mCustomCategories;
2608 QStringList catIncList; 2610 QStringList catIncList;
2609 QStringList newCatList; 2611 QStringList newCatList;
2610 Incidence* inc = incList.first(); 2612 Incidence* inc = incList.first();
2611 int i; 2613 int i;
2612 int count = 0; 2614 int count = 0;
2613 while ( inc ) { 2615 while ( inc ) {
2614 newCatList.clear(); 2616 newCatList.clear();
2615 catIncList = inc->categories() ; 2617 catIncList = inc->categories() ;
2616 for( i = 0; i< catIncList.count(); ++i ) { 2618 for( i = 0; i< catIncList.count(); ++i ) {
2617 if ( catList.contains (catIncList[i])) 2619 if ( catList.contains (catIncList[i]))
2618 newCatList.append( catIncList[i] ); 2620 newCatList.append( catIncList[i] );
2619 } 2621 }
2620 newCatList.sort(); 2622 newCatList.sort();
2621 inc->setCategories( newCatList.join(",") ); 2623 inc->setCategories( newCatList.join(",") );
2622 inc = incList.next(); 2624 inc = incList.next();
2623 } 2625 }
2624} 2626}
2625 2627
2626int CalendarView::addCategories() 2628int CalendarView::addCategories()
2627{ 2629{
2628 QPtrList<Incidence> incList = mCalendar->rawIncidences(); 2630 QPtrList<Incidence> incList = mCalendar->rawIncidences();
2629 QStringList catList = KOPrefs::instance()->mCustomCategories; 2631 QStringList catList = KOPrefs::instance()->mCustomCategories;
2630 QStringList catIncList; 2632 QStringList catIncList;
2631 Incidence* inc = incList.first(); 2633 Incidence* inc = incList.first();
2632 int i; 2634 int i;
2633 int count = 0; 2635 int count = 0;
2634 while ( inc ) { 2636 while ( inc ) {
2635 catIncList = inc->categories() ; 2637 catIncList = inc->categories() ;
2636 for( i = 0; i< catIncList.count(); ++i ) { 2638 for( i = 0; i< catIncList.count(); ++i ) {
2637 if ( !catList.contains (catIncList[i])) { 2639 if ( !catList.contains (catIncList[i])) {
2638 catList.append( catIncList[i] ); 2640 catList.append( catIncList[i] );
2639 //qDebug("add cat %s ", catIncList[i].latin1()); 2641 //qDebug("add cat %s ", catIncList[i].latin1());
2640 ++count; 2642 ++count;
2641 } 2643 }
2642 } 2644 }
2643 inc = incList.next(); 2645 inc = incList.next();
2644 } 2646 }
2645 catList.sort(); 2647 catList.sort();
2646 KOPrefs::instance()->mCustomCategories = catList; 2648 KOPrefs::instance()->mCustomCategories = catList;
2647 return count; 2649 return count;
2648} 2650}
2649 2651
2650void CalendarView::manageCategories() 2652void CalendarView::manageCategories()
2651{ 2653{
2652 KOCatPrefs* cp = new KOCatPrefs(); 2654 KOCatPrefs* cp = new KOCatPrefs();
2653 cp->show(); 2655 cp->show();
2654 int w =cp->sizeHint().width() ; 2656 int w =cp->sizeHint().width() ;
2655 int h = cp->sizeHint().height() ; 2657 int h = cp->sizeHint().height() ;
2656 int dw = QApplication::desktop()->width(); 2658 int dw = QApplication::desktop()->width();
2657 int dh = QApplication::desktop()->height(); 2659 int dh = QApplication::desktop()->height();
2658 cp->setGeometry( (dw-w)/2, (dh - h )/2 ,w,h ); 2660 cp->setGeometry( (dw-w)/2, (dh - h )/2 ,w,h );
2659 if ( !cp->exec() ) { 2661 if ( !cp->exec() ) {
2660 delete cp; 2662 delete cp;
2661 return; 2663 return;
2662 } 2664 }
2663 int count = 0; 2665 int count = 0;
2664 if ( cp->addCat() ) { 2666 if ( cp->addCat() ) {
2665 count = addCategories(); 2667 count = addCategories();
2666 if ( count ) { 2668 if ( count ) {
2667 topLevelWidget()->setCaption(QString::number( count )+ i18n(" Categories added to list! ")); 2669 topLevelWidget()->setCaption(QString::number( count )+ i18n(" Categories added to list! "));
2668 writeSettings(); 2670 writeSettings();
2669 } else 2671 } else
2670 topLevelWidget()->setCaption(QString::number( 0 )+ i18n(" Categories added to list! ")); 2672 topLevelWidget()->setCaption(QString::number( 0 )+ i18n(" Categories added to list! "));
2671 } else { 2673 } else {
2672 removeCategories(); 2674 removeCategories();
2673 updateView(); 2675 updateView();
2674 } 2676 }
2675 delete cp; 2677 delete cp;
2676} 2678}
2677 2679
2678void CalendarView::beamIncidence(Incidence * Inc) 2680void CalendarView::beamIncidence(Incidence * Inc)
2679{ 2681{
2680 QPtrList<Incidence> delSel ; 2682 QPtrList<Incidence> delSel ;
2681 delSel.append(Inc); 2683 delSel.append(Inc);
2682 beamIncidenceList( delSel ); 2684 beamIncidenceList( delSel );
2683} 2685}
2684void CalendarView::beamCalendar() 2686void CalendarView::beamCalendar()
2685{ 2687{
2686 QPtrList<Incidence> delSel = mCalendar->rawIncidences(); 2688 QPtrList<Incidence> delSel = mCalendar->rawIncidences();
2687 //qDebug("beamCalendar() "); 2689 //qDebug("beamCalendar() ");
2688 beamIncidenceList( delSel ); 2690 beamIncidenceList( delSel );
2689} 2691}
2690void CalendarView::beamFilteredCalendar() 2692void CalendarView::beamFilteredCalendar()
2691{ 2693{
2692 QPtrList<Incidence> delSel = mCalendar->incidences(); 2694 QPtrList<Incidence> delSel = mCalendar->incidences();
2693 //qDebug("beamFilteredCalendar() "); 2695 //qDebug("beamFilteredCalendar() ");
2694 beamIncidenceList( delSel ); 2696 beamIncidenceList( delSel );
2695} 2697}
2696void CalendarView::beamIncidenceList(QPtrList<Incidence> delSel ) 2698void CalendarView::beamIncidenceList(QPtrList<Incidence> delSel )
2697{ 2699{
2698 if ( beamDialog->exec () == QDialog::Rejected ) 2700 if ( beamDialog->exec () == QDialog::Rejected )
2699 return; 2701 return;
2700#ifdef DESKTOP_VERSION 2702#ifdef DESKTOP_VERSION
2701 QString fn = locateLocal( "tmp", "kopibeamfile" ); 2703 QString fn = locateLocal( "tmp", "kopibeamfile" );
2702#else 2704#else
2703 QString fn = "/tmp/kopibeamfile"; 2705 QString fn = "/tmp/kopibeamfile";
2704#endif 2706#endif
2705 QString mes; 2707 QString mes;
2706 bool createbup = true; 2708 bool createbup = true;
2707 if ( createbup ) { 2709 if ( createbup ) {
2708 QString description = "\n"; 2710 QString description = "\n";
2709 CalendarLocal* cal = new CalendarLocal(); 2711 CalendarLocal* cal = new CalendarLocal();
2710 if ( beamDialog->beamLocal() ) 2712 if ( beamDialog->beamLocal() )
2711 cal->setLocalTime(); 2713 cal->setLocalTime();
2712 else 2714 else
2713 cal->setTimeZoneId(KPimGlobalPrefs::instance()->mTimeZoneId); 2715 cal->setTimeZoneId(KPimGlobalPrefs::instance()->mTimeZoneId);
2714 Incidence *incidence = delSel.first(); 2716 Incidence *incidence = delSel.first();
2715 bool addText = false; 2717 bool addText = false;
2716 if ( delSel.count() < 10 ) 2718 if ( delSel.count() < 10 )
2717 addText = true; 2719 addText = true;
2718 else { 2720 else {
2719 description.sprintf(i18n(" %d items?"),delSel.count() ); 2721 description.sprintf(i18n(" %d items?"),delSel.count() );
2720 } 2722 }
2721 while ( incidence ) { 2723 while ( incidence ) {
2722 Incidence *in = incidence->clone(); 2724 Incidence *in = incidence->clone();
2723 if ( ! in->summary().isEmpty() ) { 2725 if ( ! in->summary().isEmpty() ) {
2724 in->setDescription(""); 2726 in->setDescription("");
2725 } else { 2727 } else {
2726 in->setSummary( in->description().left(20)); 2728 in->setSummary( in->description().left(20));
2727 in->setDescription(""); 2729 in->setDescription("");
2728 } 2730 }
2729 if ( addText ) 2731 if ( addText )
2730 description += in->summary() + "\n"; 2732 description += in->summary() + "\n";
2731 cal->addIncidence( in ); 2733 cal->addIncidence( in );
2732 incidence = delSel.next(); 2734 incidence = delSel.next();
2733 } 2735 }
2734 if ( beamDialog->beamVcal() ) { 2736 if ( beamDialog->beamVcal() ) {
2735 fn += ".vcs"; 2737 fn += ".vcs";
2736 FileStorage storage( cal, fn, new VCalFormat ); 2738 FileStorage storage( cal, fn, new VCalFormat );
2737 storage.save(); 2739 storage.save();
2738 } else { 2740 } else {
2739 fn += ".ics"; 2741 fn += ".ics";
2740 FileStorage storage( cal, fn, new ICalFormat( ) ); 2742 FileStorage storage( cal, fn, new ICalFormat( ) );
2741 storage.save(); 2743 storage.save();
2742 } 2744 }
2743 delete cal; 2745 delete cal;
2744 mes = i18n("KO/Pi: Ready for beaming"); 2746 mes = i18n("KO/Pi: Ready for beaming");
2745 topLevelWidget()->setCaption(mes); 2747 topLevelWidget()->setCaption(mes);
2746 KApplication::convert2latin1( fn ); 2748 KApplication::convert2latin1( fn );
2747#ifndef DESKTOP_VERSION 2749#ifndef DESKTOP_VERSION
2748 Ir *ir = new Ir( this ); 2750 Ir *ir = new Ir( this );
2749 connect( ir, SIGNAL( done( Ir * ) ), this, SLOT( beamDone( Ir * ) ) ); 2751 connect( ir, SIGNAL( done( Ir * ) ), this, SLOT( beamDone( Ir * ) ) );
2750 ir->send( fn, description, "text/x-vCalendar" ); 2752 ir->send( fn, description, "text/x-vCalendar" );
2751#endif 2753#endif
2752 } 2754 }
2753} 2755}
2754void CalendarView::beamDone( Ir *ir ) 2756void CalendarView::beamDone( Ir *ir )
2755{ 2757{
2756#ifndef DESKTOP_VERSION 2758#ifndef DESKTOP_VERSION
2757 delete ir; 2759 delete ir;
2758#endif 2760#endif
2759 topLevelWidget()->setCaption( i18n("KO/Pi: Beaming done.") ); 2761 topLevelWidget()->setCaption( i18n("KO/Pi: Beaming done.") );
2760 topLevelWidget()->raise(); 2762 topLevelWidget()->raise();
2761} 2763}
2762 2764
2763void CalendarView::moveIncidence(Incidence * inc ) 2765void CalendarView::moveIncidence(Incidence * inc )
2764{ 2766{
2765 if ( !inc ) return; 2767 if ( !inc ) return;
2766 showDatePickerPopup(); 2768 showDatePickerPopup();
2767 mDatePickerMode = 2; 2769 mDatePickerMode = 2;
2768 mMoveIncidence = inc ; 2770 mMoveIncidence = inc ;
2769 QDate da; 2771 QDate da;
2770 if ( mMoveIncidence->typeID() == todoID ) { 2772 if ( mMoveIncidence->typeID() == todoID ) {
2771 Todo * to = (Todo *) mMoveIncidence; 2773 Todo * to = (Todo *) mMoveIncidence;
2772 if ( to->hasDueDate() ) 2774 if ( to->hasDueDate() )
2773 da = to->dtDue().date(); 2775 da = to->dtDue().date();
2774 else 2776 else
2775 da = QDate::currentDate(); 2777 da = QDate::currentDate();
2776 } else { 2778 } else {
2777 da = mMoveIncidence->dtStart().date(); 2779 da = mMoveIncidence->dtStart().date();
2778 } 2780 }
2779 //PENDING set date for recurring incidence to date of recurrence 2781 //PENDING set date for recurring incidence to date of recurrence
2780 //mMoveIncidenceOldDate; 2782 //mMoveIncidenceOldDate;
2781 mDatePicker->setDate( da ); 2783 mDatePicker->setDate( da );
2782} 2784}
2783void CalendarView::showDatePickerPopup() 2785void CalendarView::showDatePickerPopup()
2784{ 2786{
2785 if ( mDateFrame->isVisible() ) 2787 if ( mDateFrame->isVisible() )
2786 mDateFrame->hide(); 2788 mDateFrame->hide();
2787 else { 2789 else {
2788 int offX = 0, offY = 0; 2790 int offX = 0, offY = 0;
2789#ifdef DESKTOP_VERSION 2791#ifdef DESKTOP_VERSION
2790 int w =mDatePicker->sizeHint().width() ; 2792 int w =mDatePicker->sizeHint().width() ;
2791 int h = mDatePicker->sizeHint().height() ; 2793 int h = mDatePicker->sizeHint().height() ;
2792 int dw = topLevelWidget()->width(); 2794 int dw = topLevelWidget()->width();
2793 int dh = topLevelWidget()->height(); 2795 int dh = topLevelWidget()->height();
2794 offX = topLevelWidget()->x(); 2796 offX = topLevelWidget()->x();
2795 offY = topLevelWidget()->y(); 2797 offY = topLevelWidget()->y();
2796#else 2798#else
2797 int w =mDatePicker->sizeHint().width() ; 2799 int w =mDatePicker->sizeHint().width() ;
2798 int h = mDatePicker->sizeHint().height() ; 2800 int h = mDatePicker->sizeHint().height() ;
2799 int dw = QApplication::desktop()->width(); 2801 int dw = QApplication::desktop()->width();
2800 int dh = QApplication::desktop()->height(); 2802 int dh = QApplication::desktop()->height();
2801#endif 2803#endif
2802 mDateFrame->setGeometry( (dw-w)/2+offX, (dh - h )/2+offY ,w,h ); 2804 mDateFrame->setGeometry( (dw-w)/2+offX, (dh - h )/2+offY ,w,h );
2803 mDateFrame->show(); 2805 mDateFrame->show();
2804 } 2806 }
2805} 2807}
2806void CalendarView::showDatePicker( ) 2808void CalendarView::showDatePicker( )
2807{ 2809{
2808 showDatePickerPopup(); 2810 showDatePickerPopup();
2809 mDatePickerMode = 1; 2811 mDatePickerMode = 1;
2810 mDatePicker->setDate( mNavigator->selectedDates().first() ); 2812 mDatePicker->setDate( mNavigator->selectedDates().first() );
2811} 2813}
2812 2814
2813void CalendarView::showEventEditor() 2815void CalendarView::showEventEditor()
2814{ 2816{
2815#ifdef DESKTOP_VERSION 2817#ifdef DESKTOP_VERSION
2816 int x,y,w,h; 2818 int x,y,w,h;
2817 x = mEventEditor->geometry().x(); 2819 x = mEventEditor->geometry().x();
2818 y = mEventEditor->geometry().y(); 2820 y = mEventEditor->geometry().y();
2819 w = mEventEditor->width(); 2821 w = mEventEditor->width();
2820 h = mEventEditor->height(); 2822 h = mEventEditor->height();
2821 mEventEditor->show(); 2823 mEventEditor->show();
2822 mEventEditor->setGeometry(x,y,w,h); 2824 mEventEditor->setGeometry(x,y,w,h);
2823#else 2825#else
2824 if ( mEventEditor->width() < QApplication::desktop()->width() -60 || mEventEditor->width() > QApplication::desktop()->width() ) { 2826 if ( mEventEditor->width() < QApplication::desktop()->width() -60 || mEventEditor->width() > QApplication::desktop()->width() ) {
2825 topLevelWidget()->setCaption( i18n("Recreating edit dialog. Please wait...") ); 2827 topLevelWidget()->setCaption( i18n("Recreating edit dialog. Please wait...") );
2826 qDebug("KO: CalendarView: recreate mEventEditor %d %d", mEventEditor->width(), QApplication::desktop()->width() ); 2828 qDebug("KO: CalendarView: recreate mEventEditor %d %d", mEventEditor->width(), QApplication::desktop()->width() );
2827 qApp->processEvents(); 2829 qApp->processEvents();
2828 delete mEventEditor; 2830 delete mEventEditor;
2829 mEventEditor = mDialogManager->getEventEditor(); 2831 mEventEditor = mDialogManager->getEventEditor();
2830 topLevelWidget()->setCaption( i18n("") ); 2832 topLevelWidget()->setCaption( i18n("") );
2831 } 2833 }
2832 mEventEditor->showMaximized(); 2834 mEventEditor->showMaximized();
2833#endif 2835#endif
2834} 2836}
2835void CalendarView::showTodoEditor() 2837void CalendarView::showTodoEditor()
2836{ 2838{
2837#ifdef DESKTOP_VERSION 2839#ifdef DESKTOP_VERSION
2838 int x,y,w,h; 2840 int x,y,w,h;
2839 x = mTodoEditor->geometry().x(); 2841 x = mTodoEditor->geometry().x();
2840 y = mTodoEditor->geometry().y(); 2842 y = mTodoEditor->geometry().y();
2841 w = mTodoEditor->width(); 2843 w = mTodoEditor->width();
2842 h = mTodoEditor->height(); 2844 h = mTodoEditor->height();
2843 mTodoEditor->show(); 2845 mTodoEditor->show();
2844 mTodoEditor->setGeometry(x,y,w,h); 2846 mTodoEditor->setGeometry(x,y,w,h);
2845#else 2847#else
2846 if ( mTodoEditor->width() < QApplication::desktop()->width() -60|| mTodoEditor->width() > QApplication::desktop()->width() ) { 2848 if ( mTodoEditor->width() < QApplication::desktop()->width() -60|| mTodoEditor->width() > QApplication::desktop()->width() ) {
2847 topLevelWidget()->setCaption( i18n("Recreating edit dialog. Please wait...") ); 2849 topLevelWidget()->setCaption( i18n("Recreating edit dialog. Please wait...") );
2848 qDebug("KO: CalendarView: recreate mTodoEditor %d %d ", mTodoEditor->width() ,QApplication::desktop()->width() ); 2850 qDebug("KO: CalendarView: recreate mTodoEditor %d %d ", mTodoEditor->width() ,QApplication::desktop()->width() );
2849 qApp->processEvents(); 2851 qApp->processEvents();
2850 delete mTodoEditor; 2852 delete mTodoEditor;
2851 mTodoEditor = mDialogManager->getTodoEditor(); 2853 mTodoEditor = mDialogManager->getTodoEditor();
2852 topLevelWidget()->setCaption( i18n("") ); 2854 topLevelWidget()->setCaption( i18n("") );
2853 } 2855 }
2854 mTodoEditor->showMaximized(); 2856 mTodoEditor->showMaximized();
2855#endif 2857#endif
2856} 2858}
2857 2859
2858void CalendarView::cloneIncidence() 2860void CalendarView::cloneIncidence()
2859{ 2861{
2860 Incidence *incidence = currentSelection(); 2862 Incidence *incidence = currentSelection();
2861 if ( !incidence ) incidence = mTodoList->selectedIncidences().first(); 2863 if ( !incidence ) incidence = mTodoList->selectedIncidences().first();
2862 if ( incidence ) { 2864 if ( incidence ) {
2863 cloneIncidence(incidence); 2865 cloneIncidence(incidence);
2864 } 2866 }
2865} 2867}
2866void CalendarView::moveIncidence() 2868void CalendarView::moveIncidence()
2867{ 2869{
2868 Incidence *incidence = currentSelection(); 2870 Incidence *incidence = currentSelection();
2869 if ( !incidence ) incidence = mTodoList->selectedIncidences().first(); 2871 if ( !incidence ) incidence = mTodoList->selectedIncidences().first();
2870 if ( incidence ) { 2872 if ( incidence ) {
2871 moveIncidence(incidence); 2873 moveIncidence(incidence);
2872 } 2874 }
2873} 2875}
2874void CalendarView::beamIncidence() 2876void CalendarView::beamIncidence()
2875{ 2877{
2876 Incidence *incidence = currentSelection(); 2878 Incidence *incidence = currentSelection();
2877 if ( !incidence ) incidence = mTodoList->selectedIncidences().first(); 2879 if ( !incidence ) incidence = mTodoList->selectedIncidences().first();
2878 if ( incidence ) { 2880 if ( incidence ) {
2879 beamIncidence(incidence); 2881 beamIncidence(incidence);
2880 } 2882 }
2881} 2883}
2882void CalendarView::toggleCancelIncidence() 2884void CalendarView::toggleCancelIncidence()
2883{ 2885{
2884 Incidence *incidence = currentSelection(); 2886 Incidence *incidence = currentSelection();
2885 if ( !incidence ) incidence = mTodoList->selectedIncidences().first(); 2887 if ( !incidence ) incidence = mTodoList->selectedIncidences().first();
2886 if ( incidence ) { 2888 if ( incidence ) {
2887 cancelIncidence(incidence); 2889 cancelIncidence(incidence);
2888 } 2890 }
2889} 2891}
2890 2892
2891 2893
2892void CalendarView::cancelIncidence(Incidence * inc ) 2894void CalendarView::cancelIncidence(Incidence * inc )
2893{ 2895{
2894 inc->setCancelled( ! inc->cancelled() ); 2896 inc->setCancelled( ! inc->cancelled() );
2895 changeIncidenceDisplay( inc,KOGlobals::EVENTEDITED ); 2897 changeIncidenceDisplay( inc,KOGlobals::EVENTEDITED );
2896 updateView(); 2898 updateView();
2897} 2899}
2898void CalendarView::cloneIncidence(Incidence * orgInc ) 2900void CalendarView::cloneIncidence(Incidence * orgInc )
2899{ 2901{
2900 Incidence * newInc = orgInc->clone(); 2902 Incidence * newInc = orgInc->clone();
2901 newInc->recreate(); 2903 newInc->recreate();
2902 2904
2903 if ( newInc->typeID() == todoID ) { 2905 if ( newInc->typeID() == todoID ) {
2904 Todo* t = (Todo*) newInc; 2906 Todo* t = (Todo*) newInc;
2905 bool cloneSub = false; 2907 bool cloneSub = false;
2906 if ( orgInc->relations().count() ) { 2908 if ( orgInc->relations().count() ) {
2907 int result = KMessageBox::warningYesNoCancel(this, 2909 int result = KMessageBox::warningYesNoCancel(this,
2908 i18n("The todo\n%1\nwill be cloned!\nIt has subtodos!\nDo you want to clone\nall subtodos as well?").arg( newInc->summary().left ( 25 ) ), 2910 i18n("The todo\n%1\nwill be cloned!\nIt has subtodos!\nDo you want to clone\nall subtodos as well?").arg( newInc->summary().left ( 25 ) ),
2909 i18n("Todo has subtodos"), 2911 i18n("Todo has subtodos"),
2910 i18n("Yes"), 2912 i18n("Yes"),
2911 i18n("No")); 2913 i18n("No"));
2912 2914
2913 if ( result == KMessageBox::Cancel ) { 2915 if ( result == KMessageBox::Cancel ) {
2914 delete t; 2916 delete t;
2915 return; 2917 return;
2916 } 2918 }
2917 if (result == KMessageBox::Yes) cloneSub = true; 2919 if (result == KMessageBox::Yes) cloneSub = true;
2918 } 2920 }
2919 showTodoEditor(); 2921 showTodoEditor();
2920 mTodoEditor->editTodo( t ); 2922 mTodoEditor->editTodo( t );
2921 if ( mTodoEditor->exec() ) { 2923 if ( mTodoEditor->exec() ) {
2922 if ( cloneSub ) { 2924 if ( cloneSub ) {
2923 orgInc->cloneRelations( t ); 2925 orgInc->cloneRelations( t );
2924 mCalendar->addIncidenceBranch( t ); 2926 mCalendar->addIncidenceBranch( t );
2925 updateView(); 2927 updateView();
2926 2928
2927 } else { 2929 } else {
diff --git a/korganizer/calendarview.h b/korganizer/calendarview.h
index 4600090..1215a99 100644
--- a/korganizer/calendarview.h
+++ b/korganizer/calendarview.h
@@ -1,642 +1,643 @@
1/* 1/*
2 This file is part of KOrganizer. 2 This file is part of KOrganizer.
3 Copyright (c) 2000, 2001 3 Copyright (c) 2000, 2001
4 Cornelius Schumacher <schumacher@kde.org> 4 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#ifndef CALENDARVIEW_H 24#ifndef CALENDARVIEW_H
25#define CALENDARVIEW_H 25#define CALENDARVIEW_H
26 26
27#include <qframe.h> 27#include <qframe.h>
28#include <qlayout.h> 28#include <qlayout.h>
29#include <qwidget.h> 29#include <qwidget.h>
30#include <qptrlist.h> 30#include <qptrlist.h>
31#include <qvbox.h> 31#include <qvbox.h>
32#include <qmap.h> 32#include <qmap.h>
33#ifndef DESKTOP_VERSION 33#ifndef DESKTOP_VERSION
34#include <qtopia/ir.h> 34#include <qtopia/ir.h>
35#else 35#else
36#define Ir char 36#define Ir char
37#endif 37#endif
38#include <libkcal/calendar.h> 38#include <libkcal/calendar.h>
39#include <libkcal/scheduler.h> 39#include <libkcal/scheduler.h>
40#include <libkcal/calendarresources.h> 40#include <libkcal/calendarresources.h>
41#include <libkcal/resourcecalendar.h> 41#include <libkcal/resourcecalendar.h>
42#include <KDGanttMinimizeSplitter.h> 42#include <KDGanttMinimizeSplitter.h>
43 43
44#include <korganizer/calendarviewbase.h> 44#include <korganizer/calendarviewbase.h>
45 45
46#include <ksyncmanager.h> 46#include <ksyncmanager.h>
47 47
48class QWidgetStack; 48class QWidgetStack;
49class QSplitter; 49class QSplitter;
50 50
51class CalPrinter; 51class CalPrinter;
52class KOFilterView; 52class KOFilterView;
53class KOViewManager; 53class KOViewManager;
54class KODialogManager; 54class KODialogManager;
55class KOTodoView; 55class KOTodoView;
56class KDateNavigator; 56class KDateNavigator;
57class DateNavigatorContainer; 57class DateNavigatorContainer;
58class DateNavigator; 58class DateNavigator;
59class KOIncidenceEditor; 59class KOIncidenceEditor;
60class KDatePicker; 60class KDatePicker;
61class ResourceView; 61class ResourceView;
62class KOEventEditor; 62class KOEventEditor;
63class KOTodoEditor ; 63class KOTodoEditor ;
64class KOEventViewerDialog; 64class KOEventViewerDialog;
65class KOBeamPrefs; 65class KOBeamPrefs;
66class KSyncProfile; 66class KSyncProfile;
67class AlarmDialog; 67class AlarmDialog;
68class KCal::Attendee; 68class KCal::Attendee;
69 69
70namespace KCal { class FileStorage; } 70namespace KCal { class FileStorage; }
71 71
72using namespace KCal; 72using namespace KCal;
73 73
74/** 74/**
75 This is the main calendar widget. It provides the different vies on t he 75 This is the main calendar widget. It provides the different vies on t he
76 calendar data as well as the date navigator. It also handles synchronisation 76 calendar data as well as the date navigator. It also handles synchronisation
77 of the different views and controls the different dialogs like preferences, 77 of the different views and controls the different dialogs like preferences,
78 event editor, search dialog etc. 78 event editor, search dialog etc.
79 79
80 @short main calendar view widget 80 @short main calendar view widget
81 @author Cornelius Schumacher 81 @author Cornelius Schumacher
82*/ 82*/
83 83
84#include <qtextbrowser.h> 84#include <qtextbrowser.h>
85#include <qtextcodec.h> 85#include <qtextcodec.h>
86 86
87class MissedAlarmTextBrowser : public QTextBrowser { 87class MissedAlarmTextBrowser : public QTextBrowser {
88 Q_OBJECT 88 Q_OBJECT
89 public: 89 public:
90 MissedAlarmTextBrowser(QWidget *parent, QPtrList<Incidence> alarms ,QDateTime start); 90 MissedAlarmTextBrowser(QWidget *parent, QPtrList<Incidence> alarms ,QDateTime start);
91 ~MissedAlarmTextBrowser(); 91 ~MissedAlarmTextBrowser();
92 void setSource(const QString & n); 92 void setSource(const QString & n);
93 93
94 private: 94 private:
95 Incidence * getNextInc(QDateTime start ); 95 Incidence * getNextInc(QDateTime start );
96 QPtrList<Incidence> mAlarms; 96 QPtrList<Incidence> mAlarms;
97 signals: 97 signals:
98 void showIncidence( QString uid); 98 void showIncidence( QString uid);
99}; 99};
100 100
101 101
102class CalendarView : public KOrg::CalendarViewBase, public KCal::Calendar::Observer, public KSyncInterface 102class CalendarView : public KOrg::CalendarViewBase, public KCal::Calendar::Observer, public KSyncInterface
103{ 103{
104 Q_OBJECT 104 Q_OBJECT
105 public: 105 public:
106 /** 106 /**
107 Constructs a new calendar view widget. 107 Constructs a new calendar view widget.
108 108
109 @param calendar calendar document 109 @param calendar calendar document
110 @param parent parent window 110 @param parent parent window
111 @param name Qt internal widget object name 111 @param name Qt internal widget object name
112 */ 112 */
113 CalendarView( CalendarResources *calendar, QWidget *parent = 0, 113 CalendarView( CalendarResources *calendar, QWidget *parent = 0,
114 const char *name = 0 ); 114 const char *name = 0 );
115 CalendarView( Calendar *calendar, QWidget *parent = 0, 115 CalendarView( Calendar *calendar, QWidget *parent = 0,
116 const char *name = 0 ); 116 const char *name = 0 );
117 virtual ~CalendarView(); 117 virtual ~CalendarView();
118 118
119 Calendar *calendar() { return mCalendar; } 119 Calendar *calendar() { return mCalendar; }
120 120
121 KOViewManager *viewManager(); 121 KOViewManager *viewManager();
122 KODialogManager *dialogManager(); 122 KODialogManager *dialogManager();
123 123
124 QDate startDate(); 124 QDate startDate();
125 QDate endDate(); 125 QDate endDate();
126 126
127 QWidgetStack *viewStack(); 127 QWidgetStack *viewStack();
128 QWidget *leftFrame(); 128 QWidget *leftFrame();
129 129
130 DateNavigator *dateNavigator(); 130 DateNavigator *dateNavigator();
131 KDateNavigator *dateNavigatorWidget(); 131 KDateNavigator *dateNavigatorWidget();
132 132
133 void addView(KOrg::BaseView *); 133 void addView(KOrg::BaseView *);
134 void showView(KOrg::BaseView *); 134 void showView(KOrg::BaseView *);
135 KOEventViewerDialog* getEventViewerDialog(); 135 KOEventViewerDialog* getEventViewerDialog();
136 Incidence *currentSelection(); 136 Incidence *currentSelection();
137 137
138 signals: 138 signals:
139 void save (); 139 void save ();
140 void saveStopTimer (); 140 void saveStopTimer ();
141 void tempDisableBR(bool); 141 void tempDisableBR(bool);
142 /** This todo has been modified */ 142 /** This todo has been modified */
143 void todoModified(Todo *, int); 143 void todoModified(Todo *, int);
144 144
145 /** when change is made to options dialog, the topwidget will catch this 145 /** when change is made to options dialog, the topwidget will catch this
146 * and emit this signal which notifies all widgets which have registered 146 * and emit this signal which notifies all widgets which have registered
147 * for notification to update their settings. */ 147 * for notification to update their settings. */
148 void configChanged(); 148 void configChanged();
149 /** emitted when the topwidget is closing down, so that any attached 149 /** emitted when the topwidget is closing down, so that any attached
150 child windows can also close. */ 150 child windows can also close. */
151 void closingDown(); 151 void closingDown();
152 /** emitted right before we die */ 152 /** emitted right before we die */
153 void closed(QWidget *); 153 void closed(QWidget *);
154 154
155 /** Emitted when state of modified flag changes */ 155 /** Emitted when state of modified flag changes */
156 void modifiedChanged(bool); 156 void modifiedChanged(bool);
157 void signalmodified(); 157 void signalmodified();
158 158
159 /** Emitted when state of read-only flag changes */ 159 /** Emitted when state of read-only flag changes */
160 void readOnlyChanged(bool); 160 void readOnlyChanged(bool);
161 161
162 /** Emitted when the unit of navigation changes */ 162 /** Emitted when the unit of navigation changes */
163 void changeNavStringPrev(const QString &); 163 void changeNavStringPrev(const QString &);
164 void changeNavStringNext(const QString &); 164 void changeNavStringNext(const QString &);
165 165
166 /** Emitted when state of events selection has changed and user is organizer*/ 166 /** Emitted when state of events selection has changed and user is organizer*/
167 void organizerEventsSelected(bool); 167 void organizerEventsSelected(bool);
168 /** Emitted when state of events selection has changed and user is attendee*/ 168 /** Emitted when state of events selection has changed and user is attendee*/
169 void groupEventsSelected(bool); 169 void groupEventsSelected(bool);
170 /** 170 /**
171 Emitted when an incidence gets selected. If the selection is cleared the 171 Emitted when an incidence gets selected. If the selection is cleared the
172 signal is emitted with 0 as argument. 172 signal is emitted with 0 as argument.
173 */ 173 */
174 void incidenceSelected( Incidence * ); 174 void incidenceSelected( Incidence * );
175 /** Emitted, when a todoitem is selected or deselected. */ 175 /** Emitted, when a todoitem is selected or deselected. */
176 void todoSelected( bool ); 176 void todoSelected( bool );
177 177
178 /** 178 /**
179 Emitted, when clipboard content changes. Parameter indicates if paste 179 Emitted, when clipboard content changes. Parameter indicates if paste
180 is possible or not. 180 is possible or not.
181 */ 181 */
182 void pasteEnabled(bool); 182 void pasteEnabled(bool);
183 183
184 /** Emitted, when the number of incoming messages has changed. */ 184 /** Emitted, when the number of incoming messages has changed. */
185 void numIncomingChanged(int); 185 void numIncomingChanged(int);
186 186
187 /** Emitted, when the number of outgoing messages has changed. */ 187 /** Emitted, when the number of outgoing messages has changed. */
188 void numOutgoingChanged(int); 188 void numOutgoingChanged(int);
189 189
190 /** Send status message, which can e.g. be displayed in the status bar. */ 190 /** Send status message, which can e.g. be displayed in the status bar. */
191 void statusMessage(const QString &); 191 void statusMessage(const QString &);
192 192
193 void calendarViewExpanded( bool ); 193 void calendarViewExpanded( bool );
194 void updateSearchDialog(); 194 void updateSearchDialog();
195 195
196 196
197 public slots: 197 public slots:
198 void checkAlarms(); 198 void checkAlarms();
199 void slotprintSelInc(); 199 void slotprintSelInc();
200 void showNextAlarms(); 200 void showNextAlarms();
201 void showOpenError(); 201 void showOpenError();
202 void watchSavedFile(); 202 void watchSavedFile();
203 void recheckTimerAlarm(); 203 void recheckTimerAlarm();
204 void checkNextTimerAlarm(); 204 void checkNextTimerAlarm();
205 void addAlarm(const QDateTime &qdt, const QString &noti ); 205 void addAlarm(const QDateTime &qdt, const QString &noti );
206 void addSuspendAlarm(const QDateTime &qdt, const QString &noti ); 206 void addSuspendAlarm(const QDateTime &qdt, const QString &noti );
207 void removeAlarm(const QDateTime &qdt, const QString &noti ); 207 void removeAlarm(const QDateTime &qdt, const QString &noti );
208 208
209 /** options dialog made a changed to the configuration. we catch this 209 /** options dialog made a changed to the configuration. we catch this
210 * and notify all widgets which need to update their configuration. */ 210 * and notify all widgets which need to update their configuration. */
211 void updateConfig(); 211 void updateConfig();
212 212
213 void insertBirthdays(const QString& uid, const QStringList& birthdayList, 213 void insertBirthdays(const QString& uid, const QStringList& birthdayList,
214 const QStringList& anniversaryList, const QStringList& realNameList, 214 const QStringList& anniversaryList, const QStringList& realNameList,
215 const QStringList& emailList, const QStringList& assembledNameList, 215 const QStringList& emailList, const QStringList& assembledNameList,
216 const QStringList& uidList); 216 const QStringList& uidList);
217 217
218 /** 218 /**
219 Load calendar from file \a filename. If \a merge is true, load 219 Load calendar from file \a filename. If \a merge is true, load
220 calendar into existing one, if it is false, clear calendar, before 220 calendar into existing one, if it is false, clear calendar, before
221 loading. Return true, if calendar could be successfully loaded. 221 loading. Return true, if calendar could be successfully loaded.
222 */ 222 */
223 bool openCalendar(QString filename, bool merge=false); 223 bool openCalendar(QString filename, bool merge=false);
224 bool syncCalendar(QString filename,int mode = 0 ); 224 bool syncCalendar(QString filename,int mode = 0 );
225 225
226 /** 226 /**
227 Save calendar data to file. Return true if calendar could be 227 Save calendar data to file. Return true if calendar could be
228 successfully saved. 228 successfully saved.
229 */ 229 */
230 bool saveCalendar(QString filename); 230 bool saveCalendar(QString filename);
231 231
232 /** 232 /**
233 Close calendar. Clear calendar data and reset views to display an empty 233 Close calendar. Clear calendar data and reset views to display an empty
234 calendar. 234 calendar.
235 */ 235 */
236 void closeCalendar(); 236 void closeCalendar();
237 237
238 /** Archive old events of calendar */ 238 /** Archive old events of calendar */
239 void archiveCalendar(); 239 void archiveCalendar();
240 240
241 void showIncidence(); 241 void showIncidence();
242 void editIncidence(); 242 void editIncidence();
243 void editIncidenceDescription(); 243 void editIncidenceDescription();
244 void deleteIncidence(); 244 void deleteIncidence();
245 void cloneIncidence(); 245 void cloneIncidence();
246 void moveIncidence(); 246 void moveIncidence();
247 void beamIncidence(); 247 void beamIncidence();
248 void toggleCancelIncidence(); 248 void toggleCancelIncidence();
249 249
250 /** create an editeventwin with supplied date/time, and if bool is true, 250 /** create an editeventwin with supplied date/time, and if bool is true,
251 * make the event take all day. */ 251 * make the event take all day. */
252 void newEvent(QDateTime, QDateTime, bool allDay ); 252 void newEvent(QDateTime, QDateTime, bool allDay );
253 void newEvent(QDateTime, QDateTime); 253 void newEvent(QDateTime, QDateTime);
254 void newEvent(QDateTime fh); 254 void newEvent(QDateTime fh);
255 void newEvent(QDate dt); 255 void newEvent(QDate dt);
256 /** create new event without having a date hint. Takes current date as 256 /** create new event without having a date hint. Takes current date as
257 default hint. */ 257 default hint. */
258 void newEvent(); 258 void newEvent();
259 void newFloatingEvent(); 259 void newFloatingEvent();
260 260
261 /** Create a read-only viewer dialog for the supplied incidence. It calls the correct showXXX method*/ 261 /** Create a read-only viewer dialog for the supplied incidence. It calls the correct showXXX method*/
262 void showIncidence(Incidence *); 262 void showIncidence(Incidence *);
263 void showIncidence(QString uid); 263 void showIncidence(QString uid);
264 /** Create an editor for the supplied incidence. It calls the correct editXXX method*/ 264 /** Create an editor for the supplied incidence. It calls the correct editXXX method*/
265 void editIncidence(Incidence *); 265 void editIncidence(Incidence *);
266 /** Delete the supplied incidence. It calls the correct deleteXXX method*/ 266 /** Delete the supplied incidence. It calls the correct deleteXXX method*/
267 void deleteIncidence(Incidence *); 267 void deleteIncidence(Incidence *);
268 void cloneIncidence(Incidence *); 268 void cloneIncidence(Incidence *);
269 void cancelIncidence(Incidence *); 269 void cancelIncidence(Incidence *);
270 /** Create an editor for the supplied event. */ 270 /** Create an editor for the supplied event. */
271 void editEvent(Event *); 271 void editEvent(Event *);
272 /** Delete the supplied event. */ 272 /** Delete the supplied event. */
273 void deleteEvent(Event *); 273 void deleteEvent(Event *);
274 /** Delete the event with the given unique ID. Returns false, if event wasn't 274 /** Delete the event with the given unique ID. Returns false, if event wasn't
275 found. */ 275 found. */
276 bool deleteEvent(const QString &uid); 276 bool deleteEvent(const QString &uid);
277 /** Create a read-only viewer dialog for the supplied event. */ 277 /** Create a read-only viewer dialog for the supplied event. */
278 void showEvent(Event *); 278 void showEvent(Event *);
279 279
280 void editJournal(Journal *); 280 void editJournal(Journal *);
281 void showJournal(Journal *); 281 void showJournal(Journal *);
282 void deleteJournal(Journal *); 282 void deleteJournal(Journal *);
283 /** Create an editor dialog for a todo */ 283 /** Create an editor dialog for a todo */
284 void editTodo(Todo *); 284 void editTodo(Todo *);
285 /** Create a read-only viewer dialog for the supplied todo */ 285 /** Create a read-only viewer dialog for the supplied todo */
286 void showTodo(Todo *); 286 void showTodo(Todo *);
287 /** create new todo */ 287 /** create new todo */
288 void newTodo(); 288 void newTodo();
289 void newTodoDateTime(QDateTime, bool allday); 289 void newTodoDateTime(QDateTime, bool allday);
290 /** create new todo with a parent todo */ 290 /** create new todo with a parent todo */
291 void newSubTodo(); 291 void newSubTodo();
292 /** create new todo with a parent todo */ 292 /** create new todo with a parent todo */
293 void newSubTodo(Todo *); 293 void newSubTodo(Todo *);
294 /** Delete todo */ 294 /** Delete todo */
295 void deleteTodo(Todo *); 295 void deleteTodo(Todo *);
296 296
297 297
298 /** Check if clipboard contains vCalendar event. The signal pasteEnabled() is 298 /** Check if clipboard contains vCalendar event. The signal pasteEnabled() is
299 * emitted as result. */ 299 * emitted as result. */
300 void checkClipboard(); 300 void checkClipboard();
301 301
302 /** using the KConfig associated with the kapp variable, read in the 302 /** using the KConfig associated with the kapp variable, read in the
303 * settings from the config file. 303 * settings from the config file.
304 */ 304 */
305 void readSettings(); 305 void readSettings();
306 306
307 /** write current state to config file. */ 307 /** write current state to config file. */
308 void writeSettings(); 308 void writeSettings();
309 309
310 /** read settings for calendar filters */ 310 /** read settings for calendar filters */
311 void readFilterSettings(KConfig *config); 311 void readFilterSettings(KConfig *config);
312 312
313 /** write settings for calendar filters */ 313 /** write settings for calendar filters */
314 void writeFilterSettings(KConfig *config); 314 void writeFilterSettings(KConfig *config);
315 315
316 /** passes on the message that an event has changed to the currently 316 /** passes on the message that an event has changed to the currently
317 * activated view so that it can make appropriate display changes. */ 317 * activated view so that it can make appropriate display changes. */
318 void changeEventDisplay(Event *, int); 318 void changeEventDisplay(Event *, int);
319 void changeIncidenceDisplay(Incidence *, int); 319 void changeIncidenceDisplay(Incidence *, int);
320 void changeTodoDisplay(Todo *, int); 320 void changeTodoDisplay(Todo *, int);
321 321
322 void eventAdded(Event *); 322 void eventAdded(Event *);
323 void eventChanged(Event *); 323 void eventChanged(Event *);
324 void eventToBeDeleted(Event *); 324 void eventToBeDeleted(Event *);
325 void eventDeleted(); 325 void eventDeleted();
326 326
327 void todoAdded(Todo *); 327 void todoAdded(Todo *);
328 void todoChanged(Todo *); 328 void todoChanged(Todo *);
329 void todoToBeDeleted(Todo *); 329 void todoToBeDeleted(Todo *);
330 void todoDeleted(); 330 void todoDeleted();
331 331
332 void updateView(const QDate &start, const QDate &end); 332 void updateView(const QDate &start, const QDate &end);
333 void updateView(); 333 void updateView();
334 void clearAllViews(); 334 void clearAllViews();
335 335
336 /** Full update of visible todo views */ 336 /** Full update of visible todo views */
337 void updateTodoViews(); 337 void updateTodoViews();
338 338
339 void updateUnmanagedViews(); 339 void updateUnmanagedViews();
340 340
341 /** cut the current appointment to the clipboard */ 341 /** cut the current appointment to the clipboard */
342 void edit_cut(); 342 void edit_cut();
343 343
344 /** copy the current appointment(s) to the clipboard */ 344 /** copy the current appointment(s) to the clipboard */
345 void edit_copy(); 345 void edit_copy();
346 346
347 /** paste the current vobject(s) in the clipboard buffer into calendar */ 347 /** paste the current vobject(s) in the clipboard buffer into calendar */
348 void edit_paste(); 348 void edit_paste();
349 349
350 /** edit viewing and configuration options. */ 350 /** edit viewing and configuration options. */
351 void edit_options(); 351 void edit_options();
352 void edit_global_options();
352 /** 353 /**
353 Functions for printing, previewing a print, and setting up printing 354 Functions for printing, previewing a print, and setting up printing
354 parameters. 355 parameters.
355 */ 356 */
356 void print(); 357 void print();
357 void printSetup(); 358 void printSetup();
358 void printPreview(); 359 void printPreview();
359 360
360 /** Export as iCalendar file */ 361 /** Export as iCalendar file */
361 void exportICalendar(); 362 void exportICalendar();
362 363
363 /** Export as vCalendar file */ 364 /** Export as vCalendar file */
364 bool exportVCalendar( QString fn); 365 bool exportVCalendar( QString fn);
365 366
366 /** pop up a dialog to show an existing appointment. */ 367 /** pop up a dialog to show an existing appointment. */
367 void appointment_show(); 368 void appointment_show();
368 /** 369 /**
369 * pop up an Appointment Dialog to edit an existing appointment.Get 370 * pop up an Appointment Dialog to edit an existing appointment.Get
370 * information on the appointment from the list of unique IDs that is 371 * information on the appointment from the list of unique IDs that is
371 * currently in the View, called currIds. 372 * currently in the View, called currIds.
372 */ 373 */
373 void appointment_edit(); 374 void appointment_edit();
374 /** 375 /**
375 * pop up dialog confirming deletion of currently selected event in the 376 * pop up dialog confirming deletion of currently selected event in the
376 * View. 377 * View.
377 */ 378 */
378 void appointment_delete(); 379 void appointment_delete();
379 380
380 /** mails the currently selected event to a particular user as a vCalendar 381 /** mails the currently selected event to a particular user as a vCalendar
381 attachment. */ 382 attachment. */
382 void action_mail(); 383 void action_mail();
383 384
384 /* frees a subtodo from it's relation */ 385 /* frees a subtodo from it's relation */
385 void todo_unsub( Todo * ); 386 void todo_unsub( Todo * );
386 void todo_resub( Todo * parent, Todo * sub ); 387 void todo_resub( Todo * parent, Todo * sub );
387 388
388 /** Take ownership of selected event. */ 389 /** Take ownership of selected event. */
389 void takeOverEvent(); 390 void takeOverEvent();
390 391
391 /** Take ownership of all events in calendar. */ 392 /** Take ownership of all events in calendar. */
392 void takeOverCalendar(); 393 void takeOverCalendar();
393 394
394 /** query whether or not the calendar is "dirty". */ 395 /** query whether or not the calendar is "dirty". */
395 bool isModified(); 396 bool isModified();
396 /** set the state of calendar. Modified means "dirty", i.e. needing a save. */ 397 /** set the state of calendar. Modified means "dirty", i.e. needing a save. */
397 void setModified(bool modified=true); 398 void setModified(bool modified=true);
398 399
399 /** query if the calendar is read-only. */ 400 /** query if the calendar is read-only. */
400 bool isReadOnly(); 401 bool isReadOnly();
401 /** set state of calendar to read-only */ 402 /** set state of calendar to read-only */
402 void setReadOnly(bool readOnly=true); 403 void setReadOnly(bool readOnly=true);
403 404
404 void eventUpdated(Incidence *); 405 void eventUpdated(Incidence *);
405 406
406 /* iTIP scheduling actions */ 407 /* iTIP scheduling actions */
407 void schedule_publish(Incidence *incidence = 0); 408 void schedule_publish(Incidence *incidence = 0);
408 void schedule_request(Incidence *incidence = 0); 409 void schedule_request(Incidence *incidence = 0);
409 void schedule_refresh(Incidence *incidence = 0); 410 void schedule_refresh(Incidence *incidence = 0);
410 void schedule_cancel(Incidence *incidence = 0); 411 void schedule_cancel(Incidence *incidence = 0);
411 void schedule_add(Incidence *incidence = 0); 412 void schedule_add(Incidence *incidence = 0);
412 void schedule_reply(Incidence *incidence = 0); 413 void schedule_reply(Incidence *incidence = 0);
413 void schedule_counter(Incidence *incidence = 0); 414 void schedule_counter(Incidence *incidence = 0);
414 void schedule_declinecounter(Incidence *incidence = 0); 415 void schedule_declinecounter(Incidence *incidence = 0);
415 void schedule_publish_freebusy(int daysToPublish = 30); 416 void schedule_publish_freebusy(int daysToPublish = 30);
416 417
417 void openAddressbook(); 418 void openAddressbook();
418 419
419 void editFilters(); 420 void editFilters();
420 void toggleFilerEnabled(); 421 void toggleFilerEnabled();
421 QPtrList<CalFilter> filters(); 422 QPtrList<CalFilter> filters();
422 void toggleFilter(); 423 void toggleFilter();
423 void showFilter(bool visible); 424 void showFilter(bool visible);
424 void updateFilter(); 425 void updateFilter();
425 void filterEdited(); 426 void filterEdited();
426 void selectFilter( int ); 427 void selectFilter( int );
427 KOFilterView *filterView(); 428 KOFilterView *filterView();
428 429
429 void showIntro(); 430 void showIntro();
430 431
431 /** Move the curdatepient view date to today */ 432 /** Move the curdatepient view date to today */
432 void goToday(); 433 void goToday();
433 434
434 /** Move to the next date(s) in the current view */ 435 /** Move to the next date(s) in the current view */
435 void goNext(); 436 void goNext();
436 437
437 /** Move to the previous date(s) in the current view */ 438 /** Move to the previous date(s) in the current view */
438 void goPrevious(); 439 void goPrevious();
439 /** Move to the next date(s) in the current view */ 440 /** Move to the next date(s) in the current view */
440 void goNextMonth(); 441 void goNextMonth();
441 442
442 /** Move to the previous date(s) in the current view */ 443 /** Move to the previous date(s) in the current view */
443 void goPreviousMonth(); 444 void goPreviousMonth();
444 445
445 void toggleExpand(); 446 void toggleExpand();
446 void toggleDateNavigatorWidget(); 447 void toggleDateNavigatorWidget();
447 void toggleAllDaySize(); 448 void toggleAllDaySize();
448 void dialogClosing(Incidence *); 449 void dialogClosing(Incidence *);
449 450
450 /** Look for new messages in the inbox */ 451 /** Look for new messages in the inbox */
451 void lookForIncomingMessages(); 452 void lookForIncomingMessages();
452 /** Look for new messages in the outbox */ 453 /** Look for new messages in the outbox */
453 void lookForOutgoingMessages(); 454 void lookForOutgoingMessages();
454 455
455 void processMainViewSelection( Incidence * ); 456 void processMainViewSelection( Incidence * );
456 void processTodoListSelection( Incidence * ); 457 void processTodoListSelection( Incidence * );
457 458
458 void processIncidenceSelection( Incidence * ); 459 void processIncidenceSelection( Incidence * );
459 460
460 void purgeCompleted(); 461 void purgeCompleted();
461 bool removeCompletedSubTodos( Todo* ); 462 bool removeCompletedSubTodos( Todo* );
462 void slotCalendarChanged(); 463 void slotCalendarChanged();
463 bool importBday(); 464 bool importBday();
464 bool addAnniversary( QDate data, QString name, KCal::Attendee* a , bool birthday ); 465 bool addAnniversary( QDate data, QString name, KCal::Attendee* a , bool birthday );
465 bool importQtopia( const QString &categoriesFile, 466 bool importQtopia( const QString &categoriesFile,
466 const QString &datebookFile, 467 const QString &datebookFile,
467 const QString &tasklistFile ); 468 const QString &tasklistFile );
468 void syncExternal( int mode ); 469 void syncExternal( int mode );
469 void slotSelectPickerDate( QDate ) ; 470 void slotSelectPickerDate( QDate ) ;
470 void showDatePicker() ; 471 void showDatePicker() ;
471 void showDatePickerPopup() ; 472 void showDatePickerPopup() ;
472 void moveIncidence(Incidence *) ; 473 void moveIncidence(Incidence *) ;
473 void beamIncidence(Incidence *) ; 474 void beamIncidence(Incidence *) ;
474 void beamCalendar() ; 475 void beamCalendar() ;
475 void beamFilteredCalendar() ; 476 void beamFilteredCalendar() ;
476 void beamIncidenceList(QPtrList<Incidence>) ; 477 void beamIncidenceList(QPtrList<Incidence>) ;
477 void manageCategories(); 478 void manageCategories();
478 int addCategories(); 479 int addCategories();
479 void removeCategories(); 480 void removeCategories();
480 void setSyncDevice( QString ); 481 void setSyncDevice( QString );
481 void setSyncName( QString ); 482 void setSyncName( QString );
482 void showDay( QDate ); 483 void showDay( QDate );
483 void undo_delete(); 484 void undo_delete();
484 protected slots: 485 protected slots:
485 void resetFocus(); 486 void resetFocus();
486 void slotViewerClosed(); 487 void slotViewerClosed();
487 void timerAlarm(); 488 void timerAlarm();
488 void suspendAlarm(); 489 void suspendAlarm();
489 void beamDone( Ir *ir ); 490 void beamDone( Ir *ir );
490 /** Select a view or adapt the current view to display the specified dates. */ 491 /** Select a view or adapt the current view to display the specified dates. */
491 void showDates( const KCal::DateList & ); 492 void showDates( const KCal::DateList & );
492 void selectWeekNum ( int ); 493 void selectWeekNum ( int );
493 494
494 public: 495 public:
495 // show a standard warning 496 // show a standard warning
496 // returns KMsgBox::yesNoCancel() 497 // returns KMsgBox::yesNoCancel()
497 int msgCalModified(); 498 int msgCalModified();
498 virtual bool sync(KSyncManager* manager, QString filename, int mode); 499 virtual bool sync(KSyncManager* manager, QString filename, int mode);
499 500
500 virtual bool syncExternal(KSyncManager* manager, QString resource); 501 virtual bool syncExternal(KSyncManager* manager, QString resource);
501 virtual void removeSyncInfo( QString syncProfile); 502 virtual void removeSyncInfo( QString syncProfile);
502 void setSyncManager(KSyncManager* manager); 503 void setSyncManager(KSyncManager* manager);
503 void setLoadedFileVersion(QDateTime); 504 void setLoadedFileVersion(QDateTime);
504 bool checkFileVersion(QString fn); 505 bool checkFileVersion(QString fn);
505 bool checkFileChanged(QString fn); 506 bool checkFileChanged(QString fn);
506 Event* getLastSyncEvent(); 507 Event* getLastSyncEvent();
507 /** Adapt navigation units correpsonding to step size of navigation of the 508 /** Adapt navigation units correpsonding to step size of navigation of the
508 * current view. 509 * current view.
509 */ 510 */
510 void adaptNavigationUnits(); 511 void adaptNavigationUnits();
511 bool synchronizeCalendar( Calendar* local, Calendar* remote, int mode ); 512 bool synchronizeCalendar( Calendar* local, Calendar* remote, int mode );
512 int takeEvent( Incidence* local, Incidence* remote, int mode, bool full = false ); 513 int takeEvent( Incidence* local, Incidence* remote, int mode, bool full = false );
513 //Attendee* getYourAttendee(Event *event); 514 //Attendee* getYourAttendee(Event *event);
514 void setBlockShowDates( bool b ) { mBlockShowDates = b ;} 515 void setBlockShowDates( bool b ) { mBlockShowDates = b ;}
515 protected: 516 protected:
516 void schedule(Scheduler::Method, Incidence *incidence = 0); 517 void schedule(Scheduler::Method, Incidence *incidence = 0);
517 518
518 // returns KMsgBox::OKCandel() 519 // returns KMsgBox::OKCandel()
519 int msgItemDelete(const QString name); 520 int msgItemDelete(const QString name);
520 void showEventEditor(); 521 void showEventEditor();
521 void showTodoEditor(); 522 void showTodoEditor();
522 void writeLocale(); 523 void writeLocale();
523 Todo *selectedTodo(); 524 Todo *selectedTodo();
524 525
525 private: 526 private:
526 QDateTime mNextAlarmDateTime; 527 QDateTime mNextAlarmDateTime;
527 bool mViewerCallerIsSearchDialog; 528 bool mViewerCallerIsSearchDialog;
528 bool mBlockShowDates; 529 bool mBlockShowDates;
529 KSyncManager* mSyncManager; 530 KSyncManager* mSyncManager;
530 AlarmDialog * mAlarmDialog; 531 AlarmDialog * mAlarmDialog;
531 QString mAlarmNotification; 532 QString mAlarmNotification;
532 QString mSuspendAlarmNotification; 533 QString mSuspendAlarmNotification;
533 QTimer* mSuspendTimer; 534 QTimer* mSuspendTimer;
534 QTimer* mAlarmTimer; 535 QTimer* mAlarmTimer;
535 QTimer* mRecheckAlarmTimer; 536 QTimer* mRecheckAlarmTimer;
536 void computeAlarm( QString ); 537 void computeAlarm( QString );
537 void startAlarm( QString, QString ); 538 void startAlarm( QString, QString );
538 void setSyncEventsReadOnly(); 539 void setSyncEventsReadOnly();
539 540
540 QDateTime loadedFileVersion; 541 QDateTime loadedFileVersion;
541 void checkExternSyncEvent( QPtrList<Event> lastSync , Incidence* toDelete ); 542 void checkExternSyncEvent( QPtrList<Event> lastSync , Incidence* toDelete );
542 void checkExternalId( Incidence * inc ); 543 void checkExternalId( Incidence * inc );
543 int mGlobalSyncMode; 544 int mGlobalSyncMode;
544 QString mCurrentSyncDevice; 545 QString mCurrentSyncDevice;
545 QString mCurrentSyncName; 546 QString mCurrentSyncName;
546 KOBeamPrefs* beamDialog; 547 KOBeamPrefs* beamDialog;
547 void init(); 548 void init();
548 int mDatePickerMode; 549 int mDatePickerMode;
549 bool mFlagEditDescription; 550 bool mFlagEditDescription;
550 QDateTime mLastCalendarSync; 551 QDateTime mLastCalendarSync;
551 void createPrinter(); 552 void createPrinter();
552 553
553 void calendarModified( bool, Calendar * ); 554 void calendarModified( bool, Calendar * );
554 555
555 CalPrinter *mCalPrinter; 556 CalPrinter *mCalPrinter;
556 557
557 QSplitter *mPanner; 558 QSplitter *mPanner;
558 QSplitter *mLeftSplitter; 559 QSplitter *mLeftSplitter;
559 KDGanttMinimizeSplitter *mLeftFrame, *mMainFrame; 560 KDGanttMinimizeSplitter *mLeftFrame, *mMainFrame;
560 QWidgetStack *mRightFrame; 561 QWidgetStack *mRightFrame;
561 562
562 KDatePicker* mDatePicker; 563 KDatePicker* mDatePicker;
563 QVBox* mDateFrame; 564 QVBox* mDateFrame;
564 565
565 DateNavigatorContainer *mDateNavigator; // widget showing small month view. 566 DateNavigatorContainer *mDateNavigator; // widget showing small month view.
566 567
567 KOFilterView *mFilterView; 568 KOFilterView *mFilterView;
568 569
569 ResourceView *mResourceView; 570 ResourceView *mResourceView;
570 571
571 // calendar object for this viewing instance 572 // calendar object for this viewing instance
572 Calendar *mCalendar; 573 Calendar *mCalendar;
573 574
574 CalendarResourceManager *mResourceManager; 575 CalendarResourceManager *mResourceManager;
575 576
576 FileStorage *mStorage; 577 FileStorage *mStorage;
577 578
578 DateNavigator *mNavigator; 579 DateNavigator *mNavigator;
579 580
580 KOViewManager *mViewManager; 581 KOViewManager *mViewManager;
581 KODialogManager *mDialogManager; 582 KODialogManager *mDialogManager;
582 583
583 // Calendar filters 584 // Calendar filters
584 QPtrList<CalFilter> mFilters; 585 QPtrList<CalFilter> mFilters;
585 586
586 // various housekeeping variables. 587 // various housekeeping variables.
587 bool mModified; // flag indicating if calendar is modified 588 bool mModified; // flag indicating if calendar is modified
588 bool mReadOnly; // flag indicating if calendar is read-only 589 bool mReadOnly; // flag indicating if calendar is read-only
589 QDate mSaveSingleDate; 590 QDate mSaveSingleDate;
590 591
591 Incidence *mSelectedIncidence; 592 Incidence *mSelectedIncidence;
592 Incidence *mMoveIncidence; 593 Incidence *mMoveIncidence;
593 QDate mMoveIncidenceOldDate; 594 QDate mMoveIncidenceOldDate;
594 KOTodoView *mTodoList; 595 KOTodoView *mTodoList;
595 KOEventEditor * mEventEditor; 596 KOEventEditor * mEventEditor;
596 KOTodoEditor * mTodoEditor; 597 KOTodoEditor * mTodoEditor;
597 KOEventViewerDialog * mEventViewerDialog; 598 KOEventViewerDialog * mEventViewerDialog;
598 void keyPressEvent ( QKeyEvent *e) ; 599 void keyPressEvent ( QKeyEvent *e) ;
599 //QMap<Incidence*,KOIncidenceEditor*> mDialogList; 600 //QMap<Incidence*,KOIncidenceEditor*> mDialogList;
600}; 601};
601 602
602 603
603class CalendarViewVisitor : public Incidence::Visitor 604class CalendarViewVisitor : public Incidence::Visitor
604{ 605{
605 public: 606 public:
606 CalendarViewVisitor() : mView( 0 ) {} 607 CalendarViewVisitor() : mView( 0 ) {}
607 608
608 bool act( Incidence *incidence, CalendarView *view ) 609 bool act( Incidence *incidence, CalendarView *view )
609 { 610 {
610 mView = view; 611 mView = view;
611 return incidence->accept( *this ); 612 return incidence->accept( *this );
612 } 613 }
613 614
614 protected: 615 protected:
615 CalendarView *mView; 616 CalendarView *mView;
616}; 617};
617 618
618class ShowIncidenceVisitor : public CalendarViewVisitor 619class ShowIncidenceVisitor : public CalendarViewVisitor
619{ 620{
620 protected: 621 protected:
621 bool visit( Event *event ) { mView->showEvent( event ); return true; } 622 bool visit( Event *event ) { mView->showEvent( event ); return true; }
622 bool visit( Todo *todo ) { mView->showTodo( todo ); return true; } 623 bool visit( Todo *todo ) { mView->showTodo( todo ); return true; }
623 bool visit( Journal * j ) { mView->showJournal( j );return true; } 624 bool visit( Journal * j ) { mView->showJournal( j );return true; }
624}; 625};
625 626
626class EditIncidenceVisitor : public CalendarViewVisitor 627class EditIncidenceVisitor : public CalendarViewVisitor
627{ 628{
628 protected: 629 protected:
629 bool visit( Event *event ) { mView->editEvent( event ); return true; } 630 bool visit( Event *event ) { mView->editEvent( event ); return true; }
630 bool visit( Todo *todo ) { mView->editTodo( todo ); return true; } 631 bool visit( Todo *todo ) { mView->editTodo( todo ); return true; }
631 bool visit( Journal *j ) { mView->editJournal( j); return true; } 632 bool visit( Journal *j ) { mView->editJournal( j); return true; }
632}; 633};
633 634
634class DeleteIncidenceVisitor : public CalendarViewVisitor 635class DeleteIncidenceVisitor : public CalendarViewVisitor
635{ 636{
636 protected: 637 protected:
637 bool visit( Event *event ) { mView->deleteEvent( event ); return true; } 638 bool visit( Event *event ) { mView->deleteEvent( event ); return true; }
638 bool visit( Todo *todo ) { mView->deleteTodo( todo ); return true; } 639 bool visit( Todo *todo ) { mView->deleteTodo( todo ); return true; }
639 bool visit( Journal * j) {mView->deleteJournal( j ); return true; } 640 bool visit( Journal * j) {mView->deleteJournal( j ); return true; }
640}; 641};
641 642
642#endif 643#endif
diff --git a/korganizer/kodialogmanager.cpp b/korganizer/kodialogmanager.cpp
index c927b37..aa30c52 100644
--- a/korganizer/kodialogmanager.cpp
+++ b/korganizer/kodialogmanager.cpp
@@ -1,352 +1,368 @@
1/* 1/*
2 This file is part of KOrganizer. 2 This file is part of KOrganizer.
3 3
4 Copyright (c) 2001 4 Copyright (c) 2001
5 Cornelius Schumacher <schumacher@kde.org> 5 Cornelius Schumacher <schumacher@kde.org>
6 6
7 This program is free software; you can redistribute it and/or modify 7 This program is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by 8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation; either version 2 of the License, or 9 the Free Software Foundation; either version 2 of the License, or
10 (at your option) any later version. 10 (at your option) any later version.
11 11
12 This program is distributed in the hope that it will be useful, 12 This program is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of 13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.See the 14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.See the
15 GNU General Public License for more details. 15 GNU General Public License for more details.
16 16
17 You should have received a copy of the GNU General Public License 17 You should have received a copy of the GNU General Public License
18 along with this program; if not, write to the Free Software 18 along with this program; if not, write to the Free Software
19 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 19 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
20*/ 20*/
21 21
22#include <libkdepim/categoryeditdialog.h> 22#include <libkdepim/categoryeditdialog.h>
23 23
24#include "calendarview.h" 24#include "calendarview.h"
25#include "incomingdialog.h" 25#include "incomingdialog.h"
26#include "outgoingdialog.h" 26#include "outgoingdialog.h"
27#include "koprefsdialog.h" 27#include "koprefsdialog.h"
28#include "koeventeditor.h" 28#include "koeventeditor.h"
29#include "koprefs.h" 29#include "koprefs.h"
30#include "datenavigator.h" 30#include "datenavigator.h"
31#include "kotodoeditor.h" 31#include "kotodoeditor.h"
32#include "searchdialog.h" 32#include "searchdialog.h"
33#include "filtereditdialog.h" 33#include "filtereditdialog.h"
34#ifndef KORG_NOPLUGINS 34#ifndef KORG_NOPLUGINS
35#include "plugindialog.h" 35#include "plugindialog.h"
36#endif 36#endif
37#ifndef KORG_NOARCHIVE 37#ifndef KORG_NOARCHIVE
38#include "archivedialog.h" 38#include "archivedialog.h"
39#endif 39#endif
40 40
41#include "kconfig.h" 41#include "kconfig.h"
42#include "kodialogmanager.h" 42#include "kodialogmanager.h"
43#include <kapplication.h> 43#include <kapplication.h>
44 44
45KODialogManager::KODialogManager( CalendarView *mainView ) : 45KODialogManager::KODialogManager( CalendarView *mainView ) :
46 QObject(), mMainView( mainView ) 46 QObject(), mMainView( mainView )
47{ 47{
48 mOutgoingDialog = 0; 48 mOutgoingDialog = 0;
49 mIncomingDialog = 0; 49 mIncomingDialog = 0;
50 mOptionsDialog = 0; 50 mOptionsDialog = 0;
51 mSearchDialog = 0; 51 mSearchDialog = 0;
52 mArchiveDialog = 0; 52 mArchiveDialog = 0;
53 mFilterEditDialog = 0; 53 mFilterEditDialog = 0;
54 mPluginDialog = 0; 54 mPluginDialog = 0;
55 55
56 // mCategoryEditDialog = new KPIM::CategoryEditDialog(KOPrefs::instance(),mMainView); 56 // mCategoryEditDialog = new KPIM::CategoryEditDialog(KOPrefs::instance(),mMainView);
57 //KOGlobals::fitDialogToScreen( mCategoryEditDialog ); 57 //KOGlobals::fitDialogToScreen( mCategoryEditDialog );
58} 58}
59 59
60KODialogManager::~KODialogManager() 60KODialogManager::~KODialogManager()
61{ 61{
62 delete mOutgoingDialog; 62 delete mOutgoingDialog;
63 delete mIncomingDialog; 63 delete mIncomingDialog;
64 delete mOptionsDialog; 64 delete mOptionsDialog;
65 delete mSearchDialog; 65 delete mSearchDialog;
66#ifndef KORG_NOARCHIVE 66#ifndef KORG_NOARCHIVE
67 delete mArchiveDialog; 67 delete mArchiveDialog;
68#endif 68#endif
69 delete mFilterEditDialog; 69 delete mFilterEditDialog;
70#ifndef KORG_NOPLUGINS 70#ifndef KORG_NOPLUGINS
71 delete mPluginDialog; 71 delete mPluginDialog;
72#endif 72#endif
73} 73}
74 74
75OutgoingDialog *KODialogManager::outgoingDialog() 75OutgoingDialog *KODialogManager::outgoingDialog()
76{ 76{
77 createOutgoingDialog(); 77 createOutgoingDialog();
78 return mOutgoingDialog; 78 return mOutgoingDialog;
79} 79}
80 80
81void KODialogManager::createOutgoingDialog() 81void KODialogManager::createOutgoingDialog()
82{ 82{
83 if (!mOutgoingDialog) { 83 if (!mOutgoingDialog) {
84 mOutgoingDialog = new OutgoingDialog(mMainView->calendar(),mMainView); 84 mOutgoingDialog = new OutgoingDialog(mMainView->calendar(),mMainView);
85 if (mIncomingDialog) mIncomingDialog->setOutgoingDialog(mOutgoingDialog); 85 if (mIncomingDialog) mIncomingDialog->setOutgoingDialog(mOutgoingDialog);
86 connect(mOutgoingDialog,SIGNAL(numMessagesChanged(int)), 86 connect(mOutgoingDialog,SIGNAL(numMessagesChanged(int)),
87 mMainView,SIGNAL(numOutgoingChanged(int))); 87 mMainView,SIGNAL(numOutgoingChanged(int)));
88 } 88 }
89} 89}
90 90
91void KODialogManager::showGlobalOptionsDialog( bool showSync )
92{
93 if (!mOptionsDialog) {
94 mOptionsDialog = new KOPrefsDialog(0);
95 connect(mOptionsDialog,SIGNAL(configChanged()),
96 mMainView,SLOT(updateConfig()));
97 }
98 mOptionsDialog->readConfig();
99#ifndef DESKTOP_VERSION
100 mOptionsDialog->showMaximized();
101#else
102 mOptionsDialog->show();
103#endif
104 if ( showSync )
105 mOptionsDialog->showSyncPage();
106 mOptionsDialog->exec();
107 delete mOptionsDialog;
108 mOptionsDialog = 0;
109}
91void KODialogManager::showOptionsDialog( bool showSync ) 110void KODialogManager::showOptionsDialog( bool showSync )
92{ 111{
93 112
94 if (!mOptionsDialog) { 113 if (!mOptionsDialog) {
95 mOptionsDialog = new KOPrefsDialog(mMainView); 114 mOptionsDialog = new KOPrefsDialog(mMainView);
96 //mOptionsDialog->readConfig();
97 connect(mOptionsDialog,SIGNAL(configChanged()), 115 connect(mOptionsDialog,SIGNAL(configChanged()),
98 mMainView,SLOT(updateConfig())); 116 mMainView,SLOT(updateConfig()));
99 //connect(mCategoryEditDialog,SIGNAL(categoryConfigChanged()),
100 // mOptionsDialog,SLOT(updateCategories()));
101
102 } 117 }
103 mOptionsDialog->readConfig(); 118 mOptionsDialog->readConfig();
104#ifndef DESKTOP_VERSION 119#ifndef DESKTOP_VERSION
105 mOptionsDialog->showMaximized(); 120 mOptionsDialog->showMaximized();
106#else 121#else
107 mOptionsDialog->show(); 122 mOptionsDialog->show();
108#endif 123#endif
109 if ( showSync ) 124 if ( showSync )
110 mOptionsDialog->showSyncPage(); 125 mOptionsDialog->showSyncPage();
111 mOptionsDialog->exec(); 126 mOptionsDialog->exec();
112 127 delete mOptionsDialog;
128 mOptionsDialog = 0;
113} 129}
114void KODialogManager::showSyncOptions() 130void KODialogManager::showSyncOptions()
115{ 131{
116 showOptionsDialog( true ); 132 showGlobalOptionsDialog( true );
117 133
118} 134}
119void KODialogManager::showOutgoingDialog() 135void KODialogManager::showOutgoingDialog()
120{ 136{
121 createOutgoingDialog(); 137 createOutgoingDialog();
122 mOutgoingDialog->show(); 138 mOutgoingDialog->show();
123 mOutgoingDialog->raise(); 139 mOutgoingDialog->raise();
124} 140}
125 141
126IncomingDialog *KODialogManager::incomingDialog() 142IncomingDialog *KODialogManager::incomingDialog()
127{ 143{
128 createOutgoingDialog(); 144 createOutgoingDialog();
129 if (!mIncomingDialog) { 145 if (!mIncomingDialog) {
130 mIncomingDialog = new IncomingDialog(mMainView->calendar(),mOutgoingDialog,mMainView); 146 mIncomingDialog = new IncomingDialog(mMainView->calendar(),mOutgoingDialog,mMainView);
131 connect(mIncomingDialog,SIGNAL(numMessagesChanged(int)), 147 connect(mIncomingDialog,SIGNAL(numMessagesChanged(int)),
132 mMainView,SIGNAL(numIncomingChanged(int))); 148 mMainView,SIGNAL(numIncomingChanged(int)));
133 connect(mIncomingDialog,SIGNAL(calendarUpdated()), 149 connect(mIncomingDialog,SIGNAL(calendarUpdated()),
134 mMainView,SLOT(updateView())); 150 mMainView,SLOT(updateView()));
135 } 151 }
136 return mIncomingDialog; 152 return mIncomingDialog;
137} 153}
138 154
139void KODialogManager::createIncomingDialog() 155void KODialogManager::createIncomingDialog()
140{ 156{
141 createOutgoingDialog(); 157 createOutgoingDialog();
142 if (!mIncomingDialog) { 158 if (!mIncomingDialog) {
143 mIncomingDialog = new IncomingDialog(mMainView->calendar(),mOutgoingDialog,mMainView); 159 mIncomingDialog = new IncomingDialog(mMainView->calendar(),mOutgoingDialog,mMainView);
144 connect(mIncomingDialog,SIGNAL(numMessagesChanged(int)), 160 connect(mIncomingDialog,SIGNAL(numMessagesChanged(int)),
145 mMainView,SIGNAL(numIncomingChanged(int))); 161 mMainView,SIGNAL(numIncomingChanged(int)));
146 connect(mIncomingDialog,SIGNAL(calendarUpdated()), 162 connect(mIncomingDialog,SIGNAL(calendarUpdated()),
147 mMainView,SLOT(updateView())); 163 mMainView,SLOT(updateView()));
148 } 164 }
149} 165}
150 166
151void KODialogManager::showIncomingDialog() 167void KODialogManager::showIncomingDialog()
152{ 168{
153 createIncomingDialog(); 169 createIncomingDialog();
154 mIncomingDialog->show(); 170 mIncomingDialog->show();
155 mIncomingDialog->raise(); 171 mIncomingDialog->raise();
156} 172}
157/* 173/*
158void KODialogManager::showCategoryEditDialog() 174void KODialogManager::showCategoryEditDialog()
159{ 175{
160 mCategoryEditDialog->show(); 176 mCategoryEditDialog->show();
161} 177}
162*/ 178*/
163void KODialogManager::hideSearchDialog() 179void KODialogManager::hideSearchDialog()
164{ 180{
165 if (mSearchDialog) 181 if (mSearchDialog)
166 mSearchDialog->hide(); 182 mSearchDialog->hide();
167} 183}
168 184
169void KODialogManager::showSearchDialog() 185void KODialogManager::showSearchDialog()
170{ 186{
171 if (!mSearchDialog) { 187 if (!mSearchDialog) {
172 mSearchDialog = new SearchDialog(mMainView->calendar(),mMainView); 188 mSearchDialog = new SearchDialog(mMainView->calendar(),mMainView);
173 KOListView * lview = mSearchDialog->listview(); 189 KOListView * lview = mSearchDialog->listview();
174 190
175 connect(lview, SIGNAL(showIncidenceSignal(Incidence *)), 191 connect(lview, SIGNAL(showIncidenceSignal(Incidence *)),
176 mMainView, SLOT(showIncidence(Incidence *))); 192 mMainView, SLOT(showIncidence(Incidence *)));
177 connect(lview, SIGNAL(editIncidenceSignal(Incidence *)), 193 connect(lview, SIGNAL(editIncidenceSignal(Incidence *)),
178 mMainView, SLOT(editIncidence(Incidence *))); 194 mMainView, SLOT(editIncidence(Incidence *)));
179 connect(lview, SIGNAL(deleteIncidenceSignal(Incidence *)), 195 connect(lview, SIGNAL(deleteIncidenceSignal(Incidence *)),
180 mMainView, SLOT(deleteIncidence(Incidence *))); 196 mMainView, SLOT(deleteIncidence(Incidence *)));
181 connect(lview, SIGNAL(cloneIncidenceSignal(Incidence *)), 197 connect(lview, SIGNAL(cloneIncidenceSignal(Incidence *)),
182 mMainView, SLOT(cloneIncidence(Incidence *))); 198 mMainView, SLOT(cloneIncidence(Incidence *)));
183 connect(lview, SIGNAL(beamIncidenceSignal(Incidence *)), 199 connect(lview, SIGNAL(beamIncidenceSignal(Incidence *)),
184 mMainView, SLOT(beamIncidence(Incidence *))); 200 mMainView, SLOT(beamIncidence(Incidence *)));
185 connect(lview, SIGNAL(moveIncidenceSignal(Incidence *)), 201 connect(lview, SIGNAL(moveIncidenceSignal(Incidence *)),
186 mMainView, SLOT(moveIncidence(Incidence *))); 202 mMainView, SLOT(moveIncidence(Incidence *)));
187 connect(lview, SIGNAL(beamIncidenceList(QPtrList<Incidence> )), 203 connect(lview, SIGNAL(beamIncidenceList(QPtrList<Incidence> )),
188 mMainView, SLOT(beamIncidenceList(QPtrList<Incidence> ))); 204 mMainView, SLOT(beamIncidenceList(QPtrList<Incidence> )));
189 205
190 connect(mMainView, SIGNAL(configChanged()), mSearchDialog, SLOT(updateConfig())); 206 connect(mMainView, SIGNAL(configChanged()), mSearchDialog, SLOT(updateConfig()));
191 connect(mMainView, SIGNAL(updateSearchDialog()), mSearchDialog, SLOT(updateList())); 207 connect(mMainView, SIGNAL(updateSearchDialog()), mSearchDialog, SLOT(updateList()));
192 // connect( lview, SIGNAL( incidenceSelected( Incidence * ) ), 208 // connect( lview, SIGNAL( incidenceSelected( Incidence * ) ),
193 // mMainView, SLOT( processMainViewSelection( Incidence * ) ) ); 209 // mMainView, SLOT( processMainViewSelection( Incidence * ) ) );
194#ifndef DESKTOP_VERSION 210#ifndef DESKTOP_VERSION
195 mSearchDialog->setMaximumSize( QApplication::desktop()->size()); 211 mSearchDialog->setMaximumSize( QApplication::desktop()->size());
196 mSearchDialog->showMaximized(); 212 mSearchDialog->showMaximized();
197#else 213#else
198 KConfig *config = KOGlobals::config(); 214 KConfig *config = KOGlobals::config();
199 config->setGroup("WidgetLayout"); 215 config->setGroup("WidgetLayout");
200 QStringList list; 216 QStringList list;
201 list = config->readListEntry("SearchLayout"); 217 list = config->readListEntry("SearchLayout");
202 int x,y,w,h; 218 int x,y,w,h;
203 if ( ! list.isEmpty() ) { 219 if ( ! list.isEmpty() ) {
204 x = list[0].toInt(); 220 x = list[0].toInt();
205 y = list[1].toInt(); 221 y = list[1].toInt();
206 w = list[2].toInt(); 222 w = list[2].toInt();
207 h = list[3].toInt(); 223 h = list[3].toInt();
208 KApplication::testCoords( &x,&y,&w,&h ); 224 KApplication::testCoords( &x,&y,&w,&h );
209 mSearchDialog->setGeometry(x,y,w,h); 225 mSearchDialog->setGeometry(x,y,w,h);
210 226
211 } 227 }
212 228
213#endif 229#endif
214 } 230 }
215 // make sure the widget is on top again 231 // make sure the widget is on top again
216#ifdef DESKTOP_VERSION 232#ifdef DESKTOP_VERSION
217 mSearchDialog->show(); 233 mSearchDialog->show();
218#else 234#else
219 mSearchDialog->setMaximumSize( QApplication::desktop()->size()); 235 mSearchDialog->setMaximumSize( QApplication::desktop()->size());
220 mSearchDialog->showMaximized(); 236 mSearchDialog->showMaximized();
221#endif 237#endif
222 mSearchDialog->raiseAndSelect(); 238 mSearchDialog->raiseAndSelect();
223} 239}
224 240
225SearchDialog * KODialogManager::getSearchDialog() 241SearchDialog * KODialogManager::getSearchDialog()
226{ 242{
227 return mSearchDialog; 243 return mSearchDialog;
228} 244}
229void KODialogManager::showArchiveDialog() 245void KODialogManager::showArchiveDialog()
230{ 246{
231#ifndef KORG_NOARCHIVE 247#ifndef KORG_NOARCHIVE
232 if (!mArchiveDialog) { 248 if (!mArchiveDialog) {
233 mArchiveDialog = new ArchiveDialog(mMainView->calendar(),mMainView); 249 mArchiveDialog = new ArchiveDialog(mMainView->calendar(),mMainView);
234 connect(mArchiveDialog,SIGNAL(eventsDeleted()), 250 connect(mArchiveDialog,SIGNAL(eventsDeleted()),
235 mMainView,SLOT(updateView())); 251 mMainView,SLOT(updateView()));
236 } 252 }
237 mArchiveDialog->show(); 253 mArchiveDialog->show();
238 mArchiveDialog->raise(); 254 mArchiveDialog->raise();
239 255
240 // Workaround. 256 // Workaround.
241 QApplication::restoreOverrideCursor(); 257 QApplication::restoreOverrideCursor();
242#endif 258#endif
243} 259}
244 260
245void KODialogManager::showFilterEditDialog(QPtrList<CalFilter> *filters) 261void KODialogManager::showFilterEditDialog(QPtrList<CalFilter> *filters)
246{ 262{
247 if (!mFilterEditDialog) { 263 if (!mFilterEditDialog) {
248 mFilterEditDialog = new FilterEditDialog(filters,mMainView); 264 mFilterEditDialog = new FilterEditDialog(filters,mMainView);
249 connect(mFilterEditDialog,SIGNAL(filterChanged()), 265 connect(mFilterEditDialog,SIGNAL(filterChanged()),
250 mMainView,SLOT(filterEdited())); 266 mMainView,SLOT(filterEdited()));
251 267
252 } 268 }
253 269
254#ifndef DESKTOP_VERSION 270#ifndef DESKTOP_VERSION
255 mFilterEditDialog->showMaximized(); 271 mFilterEditDialog->showMaximized();
256#else 272#else
257 mFilterEditDialog->show(); 273 mFilterEditDialog->show();
258#endif 274#endif
259 mFilterEditDialog->raise(); 275 mFilterEditDialog->raise();
260} 276}
261 277
262void KODialogManager::showPluginDialog() 278void KODialogManager::showPluginDialog()
263{ 279{
264#ifndef KORG_NOPLUGINS 280#ifndef KORG_NOPLUGINS
265 if (!mPluginDialog) { 281 if (!mPluginDialog) {
266 mPluginDialog = new PluginDialog(mMainView); 282 mPluginDialog = new PluginDialog(mMainView);
267 connect(mPluginDialog,SIGNAL(configChanged()), 283 connect(mPluginDialog,SIGNAL(configChanged()),
268 mMainView,SLOT(updateConfig())); 284 mMainView,SLOT(updateConfig()));
269 } 285 }
270 mPluginDialog->show(); 286 mPluginDialog->show();
271 mPluginDialog->raise(); 287 mPluginDialog->raise();
272#endif 288#endif
273} 289}
274 290
275KOEventEditor *KODialogManager::getEventEditor() 291KOEventEditor *KODialogManager::getEventEditor()
276{ 292{
277 KOEventEditor *eventEditor = new KOEventEditor( mMainView->calendar(), 293 KOEventEditor *eventEditor = new KOEventEditor( mMainView->calendar(),
278 mMainView ); 294 mMainView );
279 295
280 connect(eventEditor,SIGNAL(eventAdded(Event *)), 296 connect(eventEditor,SIGNAL(eventAdded(Event *)),
281 mMainView,SLOT(eventAdded(Event *))); 297 mMainView,SLOT(eventAdded(Event *)));
282 connect(eventEditor,SIGNAL(eventChanged(Event *)), 298 connect(eventEditor,SIGNAL(eventChanged(Event *)),
283 mMainView,SLOT(eventChanged(Event *))); 299 mMainView,SLOT(eventChanged(Event *)));
284 connect(eventEditor,SIGNAL(eventDeleted()), 300 connect(eventEditor,SIGNAL(eventDeleted()),
285 mMainView,SLOT(eventDeleted())); 301 mMainView,SLOT(eventDeleted()));
286 connect(eventEditor,SIGNAL(deleteAttendee(Incidence *)), 302 connect(eventEditor,SIGNAL(deleteAttendee(Incidence *)),
287 mMainView,SLOT(schedule_cancel(Incidence *))); 303 mMainView,SLOT(schedule_cancel(Incidence *)));
288 connect( eventEditor, SIGNAL(jumpToTime( const QDate &)), 304 connect( eventEditor, SIGNAL(jumpToTime( const QDate &)),
289 mMainView->dateNavigator(), SLOT( selectWeek( const QDate & ) ) ); 305 mMainView->dateNavigator(), SLOT( selectWeek( const QDate & ) ) );
290 connect( eventEditor, SIGNAL( showAgendaView( bool)), 306 connect( eventEditor, SIGNAL( showAgendaView( bool)),
291 mMainView->viewManager(), SLOT( showAgendaView( bool) ) ); 307 mMainView->viewManager(), SLOT( showAgendaView( bool) ) );
292 308
293 // connect(mCategoryEditDialog,SIGNAL(categoryConfigChanged()), 309 // connect(mCategoryEditDialog,SIGNAL(categoryConfigChanged()),
294 // eventEditor,SLOT(updateCategoryConfig())); 310 // eventEditor,SLOT(updateCategoryConfig()));
295 // connect(eventEditor,SIGNAL(editCategories()), 311 // connect(eventEditor,SIGNAL(editCategories()),
296 // mCategoryEditDialog,SLOT(show())); 312 // mCategoryEditDialog,SLOT(show()));
297 connect(eventEditor,SIGNAL(dialogClose(Incidence*)), 313 connect(eventEditor,SIGNAL(dialogClose(Incidence*)),
298 mMainView,SLOT(dialogClosing(Incidence*))); 314 mMainView,SLOT(dialogClosing(Incidence*)));
299 315
300 //connect(mMainView,SIGNAL(closingDown()),eventEditor,SLOT(reject())); 316 //connect(mMainView,SIGNAL(closingDown()),eventEditor,SLOT(reject()));
301 317
302#ifndef DESKTOP_VERSION 318#ifndef DESKTOP_VERSION
303 eventEditor->resize( QApplication::desktop()->width() -20, 100 ); 319 eventEditor->resize( QApplication::desktop()->width() -20, 100 );
304#endif 320#endif
305 return eventEditor; 321 return eventEditor;
306} 322}
307 323
308KOTodoEditor *KODialogManager::getTodoEditor() 324KOTodoEditor *KODialogManager::getTodoEditor()
309{ 325{
310 KOTodoEditor *todoEditor = new KOTodoEditor( mMainView->calendar(), 326 KOTodoEditor *todoEditor = new KOTodoEditor( mMainView->calendar(),
311 mMainView ); 327 mMainView );
312 328
313 // connect(mCategoryEditDialog,SIGNAL(categoryConfigChanged()), 329 // connect(mCategoryEditDialog,SIGNAL(categoryConfigChanged()),
314 // todoEditor,SLOT(updateCategoryConfig())); 330 // todoEditor,SLOT(updateCategoryConfig()));
315 // connect(todoEditor,SIGNAL(editCategories()),mCategoryEditDialog,SLOT(show())); 331 // connect(todoEditor,SIGNAL(editCategories()),mCategoryEditDialog,SLOT(show()));
316 332
317 connect(todoEditor,SIGNAL(todoAdded(Todo *)), 333 connect(todoEditor,SIGNAL(todoAdded(Todo *)),
318 mMainView,SLOT(todoAdded(Todo *))); 334 mMainView,SLOT(todoAdded(Todo *)));
319 connect(todoEditor,SIGNAL(todoChanged(Todo *)), 335 connect(todoEditor,SIGNAL(todoChanged(Todo *)),
320 mMainView,SLOT(todoChanged(Todo *))); 336 mMainView,SLOT(todoChanged(Todo *)));
321 connect(todoEditor,SIGNAL(todoDeleted()), 337 connect(todoEditor,SIGNAL(todoDeleted()),
322 mMainView,SLOT(todoDeleted())); 338 mMainView,SLOT(todoDeleted()));
323 connect(todoEditor,SIGNAL(dialogClose(Incidence*)), 339 connect(todoEditor,SIGNAL(dialogClose(Incidence*)),
324 mMainView,SLOT(dialogClosing(Incidence*))); 340 mMainView,SLOT(dialogClosing(Incidence*)));
325 connect( todoEditor, SIGNAL(jumpToTime( const QDate &)), 341 connect( todoEditor, SIGNAL(jumpToTime( const QDate &)),
326 mMainView->dateNavigator(), SLOT( selectWeek( const QDate & ) ) ); 342 mMainView->dateNavigator(), SLOT( selectWeek( const QDate & ) ) );
327 connect( todoEditor, SIGNAL( showAgendaView( bool)), 343 connect( todoEditor, SIGNAL( showAgendaView( bool)),
328 mMainView->viewManager(), SLOT( showAgendaView( bool) ) ); 344 mMainView->viewManager(), SLOT( showAgendaView( bool) ) );
329 // connect(todoEditor,SIGNAL(deleteAttendee(Incidence *)), 345 // connect(todoEditor,SIGNAL(deleteAttendee(Incidence *)),
330 // mMainView,SLOT(schedule_cancel(Incidence *))); 346 // mMainView,SLOT(schedule_cancel(Incidence *)));
331 //connect(mMainView,SIGNAL(closingDown()),todoEditor,SLOT(reject())); 347 //connect(mMainView,SIGNAL(closingDown()),todoEditor,SLOT(reject()));
332#ifndef DESKTOP_VERSION 348#ifndef DESKTOP_VERSION
333 todoEditor->resize( QApplication::desktop()->width() -20, 100 ); 349 todoEditor->resize( QApplication::desktop()->width() -20, 100 );
334#endif 350#endif
335 return todoEditor; 351 return todoEditor;
336} 352}
337 353
338void KODialogManager::updateSearchDialog() 354void KODialogManager::updateSearchDialog()
339{ 355{
340 if (mSearchDialog) mSearchDialog->updateView(); 356 if (mSearchDialog) mSearchDialog->updateView();
341} 357}
342 358
343void KODialogManager::setDocumentId( const QString &id ) 359void KODialogManager::setDocumentId( const QString &id )
344{ 360{
345 if (mOutgoingDialog) mOutgoingDialog->setDocumentId( id ); 361 if (mOutgoingDialog) mOutgoingDialog->setDocumentId( id );
346} 362}
347 363
348void KODialogManager::writeSettings( KConfig *config ) 364void KODialogManager::writeSettings( KConfig *config )
349{ 365{
350 if (mSearchDialog) 366 if (mSearchDialog)
351 mSearchDialog->listview()->writeSettings(config,"SearchListView Layout"); 367 mSearchDialog->listview()->writeSettings(config,"SearchListView Layout");
352} 368}
diff --git a/korganizer/kodialogmanager.h b/korganizer/kodialogmanager.h
index a6cc621..b68ddc2 100644
--- a/korganizer/kodialogmanager.h
+++ b/korganizer/kodialogmanager.h
@@ -1,100 +1,101 @@
1/* 1/*
2 This file is part of KOrganizer. 2 This file is part of KOrganizer.
3 Copyright (c) 2001 3 Copyright (c) 2001
4 Cornelius Schumacher <schumacher@kde.org> 4 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#ifndef KODIALOGMANAGER_H 24#ifndef KODIALOGMANAGER_H
25#define KODIALOGMANAGER_H 25#define KODIALOGMANAGER_H
26 26
27#include <qobject.h> 27#include <qobject.h>
28#include <qptrlist.h> 28#include <qptrlist.h>
29 29
30#include <libkcal/calfilter.h> 30#include <libkcal/calfilter.h>
31 31
32class CalendarView; 32class CalendarView;
33class OutgoingDialog; 33class OutgoingDialog;
34class IncomingDialog; 34class IncomingDialog;
35class KOPrefsDialog; 35class KOPrefsDialog;
36//namespace KPIM { class CategoryEditDialog; } 36//namespace KPIM { class CategoryEditDialog; }
37class KOEventEditor; 37class KOEventEditor;
38class KOTodoEditor; 38class KOTodoEditor;
39class SearchDialog; 39class SearchDialog;
40class ArchiveDialog; 40class ArchiveDialog;
41class PluginDialog; 41class PluginDialog;
42class KConfig; 42class KConfig;
43class FilterEditDialog; 43class FilterEditDialog;
44 44
45using namespace KCal; 45using namespace KCal;
46 46
47/** 47/**
48 This class manages the dialogs used by the calendar view. It owns the objects 48 This class manages the dialogs used by the calendar view. It owns the objects
49 and handles creation and selection. 49 and handles creation and selection.
50*/ 50*/
51class KODialogManager : public QObject 51class KODialogManager : public QObject
52{ 52{
53 Q_OBJECT 53 Q_OBJECT
54 public: 54 public:
55 KODialogManager( CalendarView * ); 55 KODialogManager( CalendarView * );
56 virtual ~KODialogManager(); 56 virtual ~KODialogManager();
57 57
58 /** Get an editor dialog for an Event. */ 58 /** Get an editor dialog for an Event. */
59 KOEventEditor *getEventEditor(); 59 KOEventEditor *getEventEditor();
60 60
61 /** Get an editor dialog for a Todo. */ 61 /** Get an editor dialog for a Todo. */
62 KOTodoEditor *getTodoEditor(); 62 KOTodoEditor *getTodoEditor();
63 63
64 OutgoingDialog *outgoingDialog(); 64 OutgoingDialog *outgoingDialog();
65 65
66 IncomingDialog *incomingDialog(); 66 IncomingDialog *incomingDialog();
67 void writeSettings( KConfig *config); 67 void writeSettings( KConfig *config);
68 void updateSearchDialog(); 68 void updateSearchDialog();
69 SearchDialog * getSearchDialog(); 69 SearchDialog * getSearchDialog();
70 void setDocumentId( const QString &id ); 70 void setDocumentId( const QString &id );
71 71
72 public slots: 72 public slots:
73 void showOptionsDialog( bool showSync = false); 73 void showOptionsDialog( bool showSync = false);
74 void showGlobalOptionsDialog(bool showSync = false);
74 void showSyncOptions(); 75 void showSyncOptions();
75 void showIncomingDialog(); 76 void showIncomingDialog();
76 void showOutgoingDialog(); 77 void showOutgoingDialog();
77 // void showCategoryEditDialog(); 78 // void showCategoryEditDialog();
78 void showSearchDialog(); 79 void showSearchDialog();
79 void showArchiveDialog(); 80 void showArchiveDialog();
80 void showFilterEditDialog(QPtrList<CalFilter> *filters); 81 void showFilterEditDialog(QPtrList<CalFilter> *filters);
81 void showPluginDialog(); 82 void showPluginDialog();
82 void hideSearchDialog(); 83 void hideSearchDialog();
83 84
84 private: 85 private:
85 void createOutgoingDialog(); 86 void createOutgoingDialog();
86 void createIncomingDialog(); 87 void createIncomingDialog();
87 88
88 CalendarView *mMainView; 89 CalendarView *mMainView;
89 90
90 OutgoingDialog *mOutgoingDialog; 91 OutgoingDialog *mOutgoingDialog;
91 IncomingDialog *mIncomingDialog; 92 IncomingDialog *mIncomingDialog;
92 KOPrefsDialog *mOptionsDialog; 93 KOPrefsDialog *mOptionsDialog;
93 // KPIM::CategoryEditDialog *mCategoryEditDialog; 94 // KPIM::CategoryEditDialog *mCategoryEditDialog;
94 SearchDialog *mSearchDialog; 95 SearchDialog *mSearchDialog;
95 ArchiveDialog *mArchiveDialog; 96 ArchiveDialog *mArchiveDialog;
96 FilterEditDialog *mFilterEditDialog; 97 FilterEditDialog *mFilterEditDialog;
97 PluginDialog *mPluginDialog; 98 PluginDialog *mPluginDialog;
98}; 99};
99 100
100#endif 101#endif
diff --git a/korganizer/koprefsdialog.cpp b/korganizer/koprefsdialog.cpp
index c9477e3..4b5b66a 100644
--- a/korganizer/koprefsdialog.cpp
+++ b/korganizer/koprefsdialog.cpp
@@ -1,627 +1,629 @@
1/* 1/*
2 This file is part of KOrganizer. 2 This file is part of KOrganizer.
3 Copyright (c) 2000,2001 Cornelius Schumacher <schumacher@kde.org> 3 Copyright (c) 2000,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 <qlayout.h> 24#include <qlayout.h>
25#include <qlabel.h> 25#include <qlabel.h>
26#include <qgroupbox.h> 26#include <qgroupbox.h>
27#include <qbuttongroup.h> 27#include <qbuttongroup.h>
28#include <qlineedit.h> 28#include <qlineedit.h>
29#include <qfont.h> 29#include <qfont.h>
30#include <qslider.h> 30#include <qslider.h>
31#include <qfile.h> 31#include <qfile.h>
32#include <qtextstream.h> 32#include <qtextstream.h>
33#include <qcombobox.h> 33#include <qcombobox.h>
34#include <qvbox.h> 34#include <qvbox.h>
35#include <qhbox.h> 35#include <qhbox.h>
36#include <qregexp.h> 36#include <qregexp.h>
37#include <qspinbox.h> 37#include <qspinbox.h>
38#include <qdatetime.h> 38#include <qdatetime.h>
39#include <qcheckbox.h> 39#include <qcheckbox.h>
40#include <qradiobutton.h> 40#include <qradiobutton.h>
41#include <qpushbutton.h> 41#include <qpushbutton.h>
42#include <qstrlist.h> 42#include <qstrlist.h>
43#include <qapplication.h> 43#include <qapplication.h>
44 44
45#include <kcolorbutton.h> 45#include <kcolorbutton.h>
46#include <kdebug.h> 46#include <kdebug.h>
47#include <klocale.h> 47#include <klocale.h>
48#include <kglobal.h> 48#include <kglobal.h>
49#include <kfontdialog.h> 49#include <kfontdialog.h>
50#include <kfiledialog.h> 50#include <kfiledialog.h>
51#include <kmessagebox.h> 51#include <kmessagebox.h>
52#include <kcolordialog.h> 52#include <kcolordialog.h>
53#include <kiconloader.h> 53#include <kiconloader.h>
54#include <kemailsettings.h> 54#include <kemailsettings.h>
55#include <kstandarddirs.h> 55#include <kstandarddirs.h>
56#include <kglobalsettings.h> 56#include <kglobalsettings.h>
57 57
58#include <kurlrequester.h> 58#include <kurlrequester.h>
59#include <klineedit.h> 59#include <klineedit.h>
60 60
61#if defined(USE_SOLARIS) 61#if defined(USE_SOLARIS)
62#include <sys/param.h> 62#include <sys/param.h>
63 63
64#define ZONEINFODIR "/usr/share/lib/zoneinfo" 64#define ZONEINFODIR "/usr/share/lib/zoneinfo"
65#define INITFILE "/etc/default/init" 65#define INITFILE "/etc/default/init"
66#endif 66#endif
67 67
68#include "koprefs.h" 68#include "koprefs.h"
69 69
70#include "koprefsdialog.h" 70#include "koprefsdialog.h"
71#include "kpimglobalprefs.h" 71#include "kpimglobalprefs.h"
72 72
73 73
74KOPrefsDialog::KOPrefsDialog(QWidget *parent, char *name, bool modal) : 74KOPrefsDialog::KOPrefsDialog(QWidget *parent, char *name, bool modal) :
75 KPrefsDialog(KOPrefs::instance(),parent,name,true) 75 KPrefsDialog(KOPrefs::instance(),parent,name,true)
76{ 76{
77 77
78 setFont( KGlobalSettings::generalMaxFont() ); 78 setFont( KGlobalSettings::generalMaxFont() );
79 setCaption( i18n("Preferences - some settings need a restart (nr)")); 79 setCaption( i18n("Preferences - some settings need a restart (nr)"));
80 mCategoryDict.setAutoDelete(true); 80 mCategoryDict.setAutoDelete(true);
81 81
82 KGlobal::locale()->insertCatalogue("timezones"); 82 KGlobal::locale()->insertCatalogue("timezones");
83 mSpacingHint = spacingHintSmall(); 83 mSpacingHint = spacingHintSmall();
84 mMarginHint = marginHintSmall(); 84 mMarginHint = marginHintSmall();
85#ifndef DESKTOP_VERSION 85#ifndef DESKTOP_VERSION
86 if ( QApplication::desktop()->height() == 480 ) 86 if ( QApplication::desktop()->height() == 480 )
87 hideButtons(); 87 hideButtons();
88#endif 88#endif
89 89 kdelibcfg = 0;
90 if ( !parent )
90 setupGlobalTab(); 91 setupGlobalTab();
92 else {
91 setupMainTab(); 93 setupMainTab();
92 // setupLocaleTab(); 94 // setupLocaleTab();
93 //setupTimeZoneTab(); 95 //setupTimeZoneTab();
94 setupTimeTab(); 96 setupTimeTab();
95 //setupLocaleDateTab(); 97 //setupLocaleDateTab();
96 setupFontsTab(); 98 setupFontsTab();
97 setupColorsTab(); 99 setupColorsTab();
98 setupViewsTab(); 100 setupViewsTab();
99 //setupSyncTab(); 101 //setupSyncTab();
100 //setupSyncAlgTab(); 102 //setupSyncAlgTab();
101 //setupPrinterTab(); 103 //setupPrinterTab();
102 //setupGroupSchedulingTab(); 104 //setupGroupSchedulingTab();
103 //setupGroupAutomationTab(); 105 //setupGroupAutomationTab();
104 106 }
105 107
106} 108}
107 109
108 110
109KOPrefsDialog::~KOPrefsDialog() 111KOPrefsDialog::~KOPrefsDialog()
110{ 112{
111} 113}
112void KOPrefsDialog::setupGlobalTab() 114void KOPrefsDialog::setupGlobalTab()
113{ 115{
114 QFrame *topFrame = addPage(i18n("Global"),0,0); 116 //QFrame *topFrame = addPage(i18n("Global"),0,0);
115 kdelibcfg = new KDEPIMConfigWidget( KPimGlobalPrefs::instance(), topFrame, "KCMKdeLibConfig" ); 117 kdelibcfg = new KDEPIMConfigWidget( KPimGlobalPrefs::instance(), this, "KCMKdeLibConfig" );
116 QVBoxLayout *topLayout = new QVBoxLayout(topFrame); 118 setMainWidget( kdelibcfg );
117 topLayout->addWidget( kdelibcfg ); 119 setCaption( i18n("KDE-Pim Global Settings"));
118 120
119 121
120} 122}
121void KOPrefsDialog::setupLocaleDateTab() 123void KOPrefsDialog::setupLocaleDateTab()
122{ 124{
123#if 0 125#if 0
124QFrame *topFrame = addPage(i18n("Date Format"),0,0); 126QFrame *topFrame = addPage(i18n("Date Format"),0,0);
125 QGridLayout *topLayout = new QGridLayout(topFrame,3,2); 127 QGridLayout *topLayout = new QGridLayout(topFrame,3,2);
126 topLayout->setSpacing(mSpacingHint); 128 topLayout->setSpacing(mSpacingHint);
127 topLayout->setMargin(mMarginHint); 129 topLayout->setMargin(mMarginHint);
128 int iii = 0; 130 int iii = 0;
129 131
130 132
131 KPrefsDialogWidRadios *syncPrefsGroup = 133 KPrefsDialogWidRadios *syncPrefsGroup =
132 addWidRadios(i18n("Date Format:"),&(KOPrefs::instance()->mPreferredDate),topFrame); 134 addWidRadios(i18n("Date Format:"),&(KOPrefs::instance()->mPreferredDate),topFrame);
133 QString format; 135 QString format;
134 if ( QApplication::desktop()->width() < 480 ) 136 if ( QApplication::desktop()->width() < 480 )
135 format = "(%d.%m.%Y)"; 137 format = "(%d.%m.%Y)";
136 else 138 else
137 format = "(%d.%m.%Y|%A %d %B %Y)"; 139 format = "(%d.%m.%Y|%A %d %B %Y)";
138 syncPrefsGroup->addRadio(i18n("24.03.2004 "+format)); 140 syncPrefsGroup->addRadio(i18n("24.03.2004 "+format));
139 if ( QApplication::desktop()->width() < 480 ) 141 if ( QApplication::desktop()->width() < 480 )
140 format = "(%m.%d.%Y)"; 142 format = "(%m.%d.%Y)";
141 else 143 else
142 format = "(%m.%d.%Y|%A %B %d %Y)"; 144 format = "(%m.%d.%Y|%A %B %d %Y)";
143 syncPrefsGroup->addRadio(i18n("03.24.2004 "+format)); 145 syncPrefsGroup->addRadio(i18n("03.24.2004 "+format));
144 if ( QApplication::desktop()->width() < 480 ) 146 if ( QApplication::desktop()->width() < 480 )
145 format = "(%Y-%m-%d)"; 147 format = "(%Y-%m-%d)";
146 else 148 else
147 format = "(%Y-%m-%d|%A %Y %B %d)"; 149 format = "(%Y-%m-%d|%A %Y %B %d)";
148 syncPrefsGroup->addRadio(i18n("2004-03-24 "+format)); 150 syncPrefsGroup->addRadio(i18n("2004-03-24 "+format));
149 syncPrefsGroup->addRadio(i18n("User defined")); 151 syncPrefsGroup->addRadio(i18n("User defined"));
150 topLayout->addMultiCellWidget( syncPrefsGroup->groupBox(),iii,iii,0,1); 152 topLayout->addMultiCellWidget( syncPrefsGroup->groupBox(),iii,iii,0,1);
151 ++iii; 153 ++iii;
152 ++iii; 154 ++iii;
153 QLabel * lab; 155 QLabel * lab;
154 mUserDateFormatLong = new QLineEdit(topFrame); 156 mUserDateFormatLong = new QLineEdit(topFrame);
155 lab = new QLabel(mUserDateFormatLong, i18n("User long date:"), topFrame); 157 lab = new QLabel(mUserDateFormatLong, i18n("User long date:"), topFrame);
156 topLayout->addWidget(lab ,iii,0); 158 topLayout->addWidget(lab ,iii,0);
157 topLayout->addWidget(mUserDateFormatLong,iii,1); 159 topLayout->addWidget(mUserDateFormatLong,iii,1);
158 ++iii; 160 ++iii;
159 mUserDateFormatShort = new QLineEdit(topFrame); 161 mUserDateFormatShort = new QLineEdit(topFrame);
160 lab = new QLabel(mUserDateFormatShort, i18n("User short date:"), topFrame); 162 lab = new QLabel(mUserDateFormatShort, i18n("User short date:"), topFrame);
161 topLayout->addWidget(lab ,iii,0); 163 topLayout->addWidget(lab ,iii,0);
162 topLayout->addWidget(mUserDateFormatShort,iii,1); 164 topLayout->addWidget(mUserDateFormatShort,iii,1);
163 ++iii; 165 ++iii;
164 lab = new QLabel( i18n("Monday 19 April 2004: %A %d %B %Y"), topFrame); 166 lab = new QLabel( i18n("Monday 19 April 2004: %A %d %B %Y"), topFrame);
165 topLayout->addMultiCellWidget(lab ,iii,iii,0,1); 167 topLayout->addMultiCellWidget(lab ,iii,iii,0,1);
166 ++iii; 168 ++iii;
167 lab = new QLabel( i18n("Mon 19.04.04: %a %d.%m.%y"), topFrame); 169 lab = new QLabel( i18n("Mon 19.04.04: %a %d.%m.%y"), topFrame);
168 topLayout->addMultiCellWidget(lab ,iii,iii,0,1); 170 topLayout->addMultiCellWidget(lab ,iii,iii,0,1);
169 ++iii; 171 ++iii;
170 lab = new QLabel( i18n("Mon, 19.Apr.04: %a, %d.%b.%y"), topFrame); 172 lab = new QLabel( i18n("Mon, 19.Apr.04: %a, %d.%b.%y"), topFrame);
171 topLayout->addMultiCellWidget(lab ,iii,iii,0,1); 173 topLayout->addMultiCellWidget(lab ,iii,iii,0,1);
172 ++iii; 174 ++iii;
173#endif 175#endif
174 176
175} 177}
176 178
177void KOPrefsDialog::setupLocaleTab() 179void KOPrefsDialog::setupLocaleTab()
178{ 180{
179#if 0 181#if 0
180 QFrame *topFrame = addPage(i18n("Locale"),0,0); 182 QFrame *topFrame = addPage(i18n("Locale"),0,0);
181 QGridLayout *topLayout = new QGridLayout(topFrame,4,2); 183 QGridLayout *topLayout = new QGridLayout(topFrame,4,2);
182 topLayout->setSpacing(mSpacingHint); 184 topLayout->setSpacing(mSpacingHint);
183 topLayout->setMargin(mMarginHint); 185 topLayout->setMargin(mMarginHint);
184 int iii = 0; 186 int iii = 0;
185 KPrefsDialogWidRadios *syncPrefsGroup = 187 KPrefsDialogWidRadios *syncPrefsGroup =
186 addWidRadios(i18n("Language:(needs restart)"),&(KOPrefs::instance()->mPreferredLanguage),topFrame); 188 addWidRadios(i18n("Language:(needs restart)"),&(KOPrefs::instance()->mPreferredLanguage),topFrame);
187 syncPrefsGroup->addRadio(i18n("English")); 189 syncPrefsGroup->addRadio(i18n("English"));
188 syncPrefsGroup->addRadio(i18n("German")); 190 syncPrefsGroup->addRadio(i18n("German"));
189 syncPrefsGroup->addRadio(i18n("French")); 191 syncPrefsGroup->addRadio(i18n("French"));
190 syncPrefsGroup->addRadio(i18n("User defined (usertranslation.txt)")); 192 syncPrefsGroup->addRadio(i18n("User defined (usertranslation.txt)"));
191 if ( QApplication::desktop()->width() < 300 ) 193 if ( QApplication::desktop()->width() < 300 )
192 ;// syncPrefsGroup->groupBox()-> setOrientation (Qt::Vertical); 194 ;// syncPrefsGroup->groupBox()-> setOrientation (Qt::Vertical);
193 topLayout->addMultiCellWidget( syncPrefsGroup->groupBox(),iii,iii,0,1); 195 topLayout->addMultiCellWidget( syncPrefsGroup->groupBox(),iii,iii,0,1);
194 ++iii; 196 ++iii;
195 197
196 syncPrefsGroup = 198 syncPrefsGroup =
197 addWidRadios(i18n("Time Format(nr):"),&(KOPrefs::instance()->mPreferredTime),topFrame); 199 addWidRadios(i18n("Time Format(nr):"),&(KOPrefs::instance()->mPreferredTime),topFrame);
198 if ( QApplication::desktop()->width() > 300 ) 200 if ( QApplication::desktop()->width() > 300 )
199 syncPrefsGroup->groupBox()-> setOrientation (Qt::Vertical); 201 syncPrefsGroup->groupBox()-> setOrientation (Qt::Vertical);
200 syncPrefsGroup->addRadio(i18n("24:00")); 202 syncPrefsGroup->addRadio(i18n("24:00"));
201 syncPrefsGroup->addRadio(i18n("12:00am")); 203 syncPrefsGroup->addRadio(i18n("12:00am"));
202 syncPrefsGroup->groupBox()-> setOrientation (Qt::Vertical); 204 syncPrefsGroup->groupBox()-> setOrientation (Qt::Vertical);
203 topLayout->addMultiCellWidget( syncPrefsGroup->groupBox(),iii,iii,0,1); 205 topLayout->addMultiCellWidget( syncPrefsGroup->groupBox(),iii,iii,0,1);
204 ++iii; 206 ++iii;
205 KPrefsDialogWidBool *sb; 207 KPrefsDialogWidBool *sb;
206 if ( QApplication::desktop()->width() < 300 ) { 208 if ( QApplication::desktop()->width() < 300 ) {
207 sb = 209 sb =
208 addWidBool(i18n("Week starts on Sunday"), 210 addWidBool(i18n("Week starts on Sunday"),
209 &(KOPrefs::instance()->mWeekStartsOnSunday),topFrame); 211 &(KOPrefs::instance()->mWeekStartsOnSunday),topFrame);
210 topLayout->addMultiCellWidget(sb->checkBox(), iii,iii,0,1); 212 topLayout->addMultiCellWidget(sb->checkBox(), iii,iii,0,1);
211 ++iii; 213 ++iii;
212 sb = 214 sb =
213 addWidBool(i18n("Use short date in (WN/E) view"), 215 addWidBool(i18n("Use short date in (WN/E) view"),
214 &(KOPrefs::instance()->mShortDateInViewer),topFrame); 216 &(KOPrefs::instance()->mShortDateInViewer),topFrame);
215 topLayout->addMultiCellWidget(sb->checkBox(), iii,iii,0,1); 217 topLayout->addMultiCellWidget(sb->checkBox(), iii,iii,0,1);
216 } 218 }
217 else { 219 else {
218 QWidget * hb = new QWidget( topFrame ); 220 QWidget * hb = new QWidget( topFrame );
219 QHBoxLayout *hbLayout = new QHBoxLayout(hb); 221 QHBoxLayout *hbLayout = new QHBoxLayout(hb);
220 sb = 222 sb =
221 addWidBool(i18n("Week starts on Sunday"), 223 addWidBool(i18n("Week starts on Sunday"),
222 &(KOPrefs::instance()->mWeekStartsOnSunday),hb); 224 &(KOPrefs::instance()->mWeekStartsOnSunday),hb);
223 hbLayout->addWidget(sb->checkBox() ); 225 hbLayout->addWidget(sb->checkBox() );
224 sb = 226 sb =
225 addWidBool(i18n("Use short date in (WN/E) view"), 227 addWidBool(i18n("Use short date in (WN/E) view"),
226 &(KOPrefs::instance()->mShortDateInViewer),hb); 228 &(KOPrefs::instance()->mShortDateInViewer),hb);
227 hbLayout->addWidget(sb->checkBox() ); 229 hbLayout->addWidget(sb->checkBox() );
228 topLayout->addMultiCellWidget(hb, iii,iii,0,1); 230 topLayout->addMultiCellWidget(hb, iii,iii,0,1);
229 231
230 } 232 }
231 // KPrefsDialogWidBool *sb; //#ifndef DESKTOP_VERSION 233 // KPrefsDialogWidBool *sb; //#ifndef DESKTOP_VERSION
232#if 0 234#if 0
233 ++iii; 235 ++iii;
234 sb = 236 sb =
235 addWidBool(i18n("Quick load/save (w/o Unicode)"), 237 addWidBool(i18n("Quick load/save (w/o Unicode)"),
236 &(KOPrefs::instance()->mUseQuicksave),topFrame); 238 &(KOPrefs::instance()->mUseQuicksave),topFrame);
237 topLayout->addMultiCellWidget(sb->checkBox(), iii,iii,0,1); 239 topLayout->addMultiCellWidget(sb->checkBox(), iii,iii,0,1);
238#endif 240#endif
239#endif 241#endif
240} 242}
241void KOPrefsDialog::showSyncPage() 243void KOPrefsDialog::showSyncPage()
242{ 244{
243 showPage ( 0 ) ; 245 // showPage ( 0 ) ;
244 kdelibcfg->showTimeZoneTab() ; 246 kdelibcfg->showTimeZoneTab() ;
245 247
246} 248}
247void KOPrefsDialog::setupSyncAlgTab() 249void KOPrefsDialog::setupSyncAlgTab()
248{ 250{
249#if 0 251#if 0
250 QLabel * lab; 252 QLabel * lab;
251 QFrame *topFrame = addPage(i18n("Sync Prefs"),0,0); 253 QFrame *topFrame = addPage(i18n("Sync Prefs"),0,0);
252 mSetupSyncAlgTab = topFrame; 254 mSetupSyncAlgTab = topFrame;
253 QGridLayout *topLayout = new QGridLayout(topFrame,6,2); 255 QGridLayout *topLayout = new QGridLayout(topFrame,6,2);
254 topLayout->setSpacing(mSpacingHint); 256 topLayout->setSpacing(mSpacingHint);
255 topLayout->setMargin(mMarginHint); 257 topLayout->setMargin(mMarginHint);
256 int iii = 0; 258 int iii = 0;
257 259
258 KPrefsDialogWidBool *sb = 260 KPrefsDialogWidBool *sb =
259 addWidBool(i18n("Ask for preferences before syncing"), 261 addWidBool(i18n("Ask for preferences before syncing"),
260 &(KOPrefs::instance()->mAskForPreferences),topFrame); 262 &(KOPrefs::instance()->mAskForPreferences),topFrame);
261 topLayout->addMultiCellWidget(sb->checkBox(), iii,iii,0,1); 263 topLayout->addMultiCellWidget(sb->checkBox(), iii,iii,0,1);
262 264
263 ++iii; 265 ++iii;
264 266
265 KPrefsDialogWidRadios *syncPrefsGroup = 267 KPrefsDialogWidRadios *syncPrefsGroup =
266 addWidRadios(i18n("Sync preferences:"),&(KOPrefs::instance()->mSyncAlgoPrefs), 268 addWidRadios(i18n("Sync preferences:"),&(KOPrefs::instance()->mSyncAlgoPrefs),
267 topFrame); 269 topFrame);
268 syncPrefsGroup->addRadio(i18n("Take local entry on conflict")); 270 syncPrefsGroup->addRadio(i18n("Take local entry on conflict"));
269 syncPrefsGroup->addRadio(i18n("Take remote entry on conflict")); 271 syncPrefsGroup->addRadio(i18n("Take remote entry on conflict"));
270 syncPrefsGroup->addRadio(i18n("Take newest entry on conflict")); 272 syncPrefsGroup->addRadio(i18n("Take newest entry on conflict"));
271 syncPrefsGroup->addRadio(i18n("Ask for every entry on conflict")); 273 syncPrefsGroup->addRadio(i18n("Ask for every entry on conflict"));
272 syncPrefsGroup->addRadio(i18n("Force take local entry always")); 274 syncPrefsGroup->addRadio(i18n("Force take local entry always"));
273 syncPrefsGroup->addRadio(i18n("Force take remote entry always")); 275 syncPrefsGroup->addRadio(i18n("Force take remote entry always"));
274 topLayout->addMultiCellWidget( syncPrefsGroup->groupBox(),iii,iii,0,1); 276 topLayout->addMultiCellWidget( syncPrefsGroup->groupBox(),iii,iii,0,1);
275 ++iii; 277 ++iii;
276 sb = 278 sb =
277 addWidBool(i18n("Show summary after syncing"), 279 addWidBool(i18n("Show summary after syncing"),
278 &(KOPrefs::instance()->mShowSyncSummary),topFrame); 280 &(KOPrefs::instance()->mShowSyncSummary),topFrame);
279 topLayout->addMultiCellWidget(sb->checkBox(), iii,iii,0,1); 281 topLayout->addMultiCellWidget(sb->checkBox(), iii,iii,0,1);
280 282
281 ++iii; 283 ++iii;
282#endif 284#endif
283 285
284 286
285 287
286} 288}
287 289
288 290
289void KOPrefsDialog::setupSyncTab() 291void KOPrefsDialog::setupSyncTab()
290{ 292{
291#if 0 293#if 0
292 QLabel * lab; 294 QLabel * lab;
293 QFrame *topFrame = addPage(i18n("Sync Network"),0,0); 295 QFrame *topFrame = addPage(i18n("Sync Network"),0,0);
294 QGridLayout *topLayout = new QGridLayout(topFrame,6,2); 296 QGridLayout *topLayout = new QGridLayout(topFrame,6,2);
295 topLayout->setSpacing(mSpacingHint); 297 topLayout->setSpacing(mSpacingHint);
296 topLayout->setMargin(mMarginHint); 298 topLayout->setMargin(mMarginHint);
297 lab = new QLabel(i18n("Remote syncing (via ssh/scp)\nnetwork settings "), topFrame); 299 lab = new QLabel(i18n("Remote syncing (via ssh/scp)\nnetwork settings "), topFrame);
298 int iii = 0; 300 int iii = 0;
299 topLayout->addMultiCellWidget(lab , iii,iii,0,1); 301 topLayout->addMultiCellWidget(lab , iii,iii,0,1);
300 ++iii; 302 ++iii;
301 303
302 mRemoteIPEdit = new QLineEdit(topFrame); 304 mRemoteIPEdit = new QLineEdit(topFrame);
303 lab = new QLabel(mRemoteIPEdit, i18n("Remote IP:"), topFrame); 305 lab = new QLabel(mRemoteIPEdit, i18n("Remote IP:"), topFrame);
304 topLayout->addWidget(lab ,iii,0); 306 topLayout->addWidget(lab ,iii,0);
305 topLayout->addWidget(mRemoteIPEdit,iii,1); 307 topLayout->addWidget(mRemoteIPEdit,iii,1);
306 ++iii; 308 ++iii;
307 mRemoteUser = new QLineEdit(topFrame); 309 mRemoteUser = new QLineEdit(topFrame);
308 lab = new QLabel(mRemoteUser, i18n("Remote user:"), topFrame); 310 lab = new QLabel(mRemoteUser, i18n("Remote user:"), topFrame);
309 topLayout->addWidget(lab ,iii,0); 311 topLayout->addWidget(lab ,iii,0);
310 topLayout->addWidget(mRemoteUser, iii,1); 312 topLayout->addWidget(mRemoteUser, iii,1);
311 ++iii; 313 ++iii;
312 314
313 mRemoteFile = new QLineEdit(topFrame); 315 mRemoteFile = new QLineEdit(topFrame);
314 lab = new QLabel(mRemoteFile, i18n("Remote file:"), topFrame); 316 lab = new QLabel(mRemoteFile, i18n("Remote file:"), topFrame);
315 topLayout->addWidget(lab ,iii,0); 317 topLayout->addWidget(lab ,iii,0);
316 topLayout->addWidget(mRemoteFile,iii,1); 318 topLayout->addWidget(mRemoteFile,iii,1);
317 ++iii; 319 ++iii;
318 320
319 mLocalTempFile = new QLineEdit(topFrame); 321 mLocalTempFile = new QLineEdit(topFrame);
320 lab = new QLabel(mLocalTempFile, i18n("Local temp file:"), topFrame); 322 lab = new QLabel(mLocalTempFile, i18n("Local temp file:"), topFrame);
321 topLayout->addWidget(lab ,iii,0); 323 topLayout->addWidget(lab ,iii,0);
322 topLayout->addWidget(mLocalTempFile,iii,1); 324 topLayout->addWidget(mLocalTempFile,iii,1);
323 ++iii; 325 ++iii;
324 326
325 KPrefsDialogWidBool *wb = 327 KPrefsDialogWidBool *wb =
326 addWidBool(i18n("Write back synced file"), 328 addWidBool(i18n("Write back synced file"),
327 &(KOPrefs::instance()->mWriteBackFile),topFrame); 329 &(KOPrefs::instance()->mWriteBackFile),topFrame);
328 topLayout->addMultiCellWidget(wb->checkBox(), iii,iii,0,1); 330 topLayout->addMultiCellWidget(wb->checkBox(), iii,iii,0,1);
329 ++iii; 331 ++iii;
330 wb = 332 wb =
331 addWidBool(i18n("Write back existing entries only"), 333 addWidBool(i18n("Write back existing entries only"),
332 &(KOPrefs::instance()->mWriteBackExistingOnly),topFrame); 334 &(KOPrefs::instance()->mWriteBackExistingOnly),topFrame);
333 topLayout->addMultiCellWidget(wb->checkBox(), iii,iii,0,1); 335 topLayout->addMultiCellWidget(wb->checkBox(), iii,iii,0,1);
334 ++iii; 336 ++iii;
335 337
336#endif 338#endif
337} 339}
338 340
339void KOPrefsDialog::setupMainTab() 341void KOPrefsDialog::setupMainTab()
340{ 342{
341 QFrame *topFrame = addPage(i18n("General"),0,0); 343 QFrame *topFrame = addPage(i18n("General"),0,0);
342 // DesktopIcon("identity",KIcon::SizeMedium)); 344 // DesktopIcon("identity",KIcon::SizeMedium));
343 345
344 QGridLayout *topLayout = new QGridLayout(topFrame,5,2); 346 QGridLayout *topLayout = new QGridLayout(topFrame,5,2);
345 topLayout->setSpacing(mSpacingHint); 347 topLayout->setSpacing(mSpacingHint);
346 topLayout->setMargin(mMarginHint); 348 topLayout->setMargin(mMarginHint);
347 349
348 // KPrefsDialogWidBool *emailControlCenter = 350 // KPrefsDialogWidBool *emailControlCenter =
349// addWidBool(i18n("&Use email settings from Control Center"), 351// addWidBool(i18n("&Use email settings from Control Center"),
350// &(KOPrefs::instance()->mEmailControlCenter),topFrame); 352// &(KOPrefs::instance()->mEmailControlCenter),topFrame);
351// topLayout->addMultiCellWidget(emailControlCenter->checkBox(),0,0,0,1); 353// topLayout->addMultiCellWidget(emailControlCenter->checkBox(),0,0,0,1);
352 // connect(emailControlCenter->checkBox(),SIGNAL(toggled(bool)), 354 // connect(emailControlCenter->checkBox(),SIGNAL(toggled(bool)),
353 // SLOT(toggleEmailSettings(bool))); 355 // SLOT(toggleEmailSettings(bool)));
354 356
355 mNameEdit = new QLineEdit(topFrame); 357 mNameEdit = new QLineEdit(topFrame);
356 mNameLabel = new QLabel(mNameEdit, i18n("Full &name:"), topFrame); 358 mNameLabel = new QLabel(mNameEdit, i18n("Full &name:"), topFrame);
357 topLayout->addWidget(mNameLabel,0,0); 359 topLayout->addWidget(mNameLabel,0,0);
358 topLayout->addWidget(mNameEdit,0,1); 360 topLayout->addWidget(mNameEdit,0,1);
359 361
360 mEmailEdit = new QLineEdit(topFrame); 362 mEmailEdit = new QLineEdit(topFrame);
361 mEmailLabel = new QLabel(mEmailEdit, i18n("E&mail address:"),topFrame); 363 mEmailLabel = new QLabel(mEmailEdit, i18n("E&mail address:"),topFrame);
362 topLayout->addWidget(mEmailLabel,1,0); 364 topLayout->addWidget(mEmailLabel,1,0);
363 topLayout->addWidget(mEmailEdit,1,1); 365 topLayout->addWidget(mEmailEdit,1,1);
364 KPrefsDialogWidBool *wb; 366 KPrefsDialogWidBool *wb;
365 367
366 368
367 369
368 KPrefsDialogWidBool *widbool = addWidBool(i18n("Full menu bar(nr)"), 370 KPrefsDialogWidBool *widbool = addWidBool(i18n("Full menu bar(nr)"),
369 &(KOPrefs::instance()->mShowFullMenu),topFrame); 371 &(KOPrefs::instance()->mShowFullMenu),topFrame);
370 topLayout->addMultiCellWidget( widbool->checkBox(), 2,2,0,1); 372 topLayout->addMultiCellWidget( widbool->checkBox(), 2,2,0,1);
371 373
372 374
373 widbool = addWidBool(i18n("Mini icons in toolbar(nr)"), 375 widbool = addWidBool(i18n("Mini icons in toolbar(nr)"),
374 &(KOPrefs::instance()->mToolBarMiniIcons),topFrame); 376 &(KOPrefs::instance()->mToolBarMiniIcons),topFrame);
375 topLayout->addMultiCellWidget( widbool->checkBox(), 3,3,0,1); 377 topLayout->addMultiCellWidget( widbool->checkBox(), 3,3,0,1);
376 378
377 379
378 KPrefsDialogWidBool *verticalScreen = 380 KPrefsDialogWidBool *verticalScreen =
379 addWidBool(i18n("Show vertical screen (Needs restart)"), 381 addWidBool(i18n("Show vertical screen (Needs restart)"),
380 &(KOPrefs::instance()->mVerticalScreen),topFrame); 382 &(KOPrefs::instance()->mVerticalScreen),topFrame);
381 //topLayout->addWidget(verticalScreen->checkBox(),ii++,0); 383 //topLayout->addWidget(verticalScreen->checkBox(),ii++,0);
382 topLayout->addMultiCellWidget(verticalScreen->checkBox(),4,4,0,1); 384 topLayout->addMultiCellWidget(verticalScreen->checkBox(),4,4,0,1);
383 385
384 386
385 int iii = 5; 387 int iii = 5;
386 widbool = addWidBool(i18n("Block popup until mouse button release"), 388 widbool = addWidBool(i18n("Block popup until mouse button release"),
387 &(KOPrefs::instance()->mBlockPopupMenu),topFrame); 389 &(KOPrefs::instance()->mBlockPopupMenu),topFrame);
388 topLayout->addMultiCellWidget( widbool->checkBox(), iii,iii,0,1); 390 topLayout->addMultiCellWidget( widbool->checkBox(), iii,iii,0,1);
389 ++iii; 391 ++iii;
390 QHBox *dummy = new QHBox(topFrame); 392 QHBox *dummy = new QHBox(topFrame);
391 new QLabel(i18n("Days in Next-X-Days:"),dummy); 393 new QLabel(i18n("Days in Next-X-Days:"),dummy);
392 mNextXDaysSpin = new QSpinBox(2,14,1,dummy); 394 mNextXDaysSpin = new QSpinBox(2,14,1,dummy);
393 395
394 topLayout->addMultiCellWidget(dummy,iii,iii,0,1); 396 topLayout->addMultiCellWidget(dummy,iii,iii,0,1);
395 397
396 ++iii; 398 ++iii;
397 399
398 400
399 // KPrefsDialogWidBool *bcc = 401 // KPrefsDialogWidBool *bcc =
400// addWidBool(i18n("Send copy to owner when mailing events"), 402// addWidBool(i18n("Send copy to owner when mailing events"),
401// &(KOPrefs::instance()->mBcc),topFrame); 403// &(KOPrefs::instance()->mBcc),topFrame);
402// topLayout->addMultiCellWidget(bcc->checkBox(),4,4,0,1); 404// topLayout->addMultiCellWidget(bcc->checkBox(),4,4,0,1);
403 405
404 406
405 // QGroupBox *autoSaveGroup = new QGroupBox(1,Horizontal,i18n("Auto-Save"), topFrame); 407 // QGroupBox *autoSaveGroup = new QGroupBox(1,Horizontal,i18n("Auto-Save"), topFrame);
406 //topLayout->addMultiCellWidget(autoSaveGroup,6,6,0,1); 408 //topLayout->addMultiCellWidget(autoSaveGroup,6,6,0,1);
407 409
408 // addWidBool(i18n("Enable automatic saving of calendar"), 410 // addWidBool(i18n("Enable automatic saving of calendar"),
409 // &(KOPrefs::instance()->mAutoSave),autoSaveGroup); 411 // &(KOPrefs::instance()->mAutoSave),autoSaveGroup);
410 412
411 QHBox *intervalBox = new QHBox(topFrame); 413 QHBox *intervalBox = new QHBox(topFrame);
412 // intervalBox->setSpacing(mSpacingHint); 414 // intervalBox->setSpacing(mSpacingHint);
413 topLayout->addMultiCellWidget(intervalBox,iii,iii,0,1); 415 topLayout->addMultiCellWidget(intervalBox,iii,iii,0,1);
414 ++iii; 416 ++iii;
415 QLabel *autoSaveIntervalLabel = new QLabel(i18n("Auto save delay in minutes:"),intervalBox); 417 QLabel *autoSaveIntervalLabel = new QLabel(i18n("Auto save delay in minutes:"),intervalBox);
416 mAutoSaveIntervalSpin = new QSpinBox(0,500,1,intervalBox); 418 mAutoSaveIntervalSpin = new QSpinBox(0,500,1,intervalBox);
417 autoSaveIntervalLabel->setBuddy(mAutoSaveIntervalSpin); 419 autoSaveIntervalLabel->setBuddy(mAutoSaveIntervalSpin);
418 /* 420 /*
419 QHBox * agendasize = new QHBox ( topFrame ); 421 QHBox * agendasize = new QHBox ( topFrame );
420 422
421 new QLabel (i18n("AllDayAgenda Height:"), agendasize ); 423 new QLabel (i18n("AllDayAgenda Height:"), agendasize );
422 424
423 425
424 mHourSizeSlider = new QSlider(24,47,1,24,Horizontal,agendasize); 426 mHourSizeSlider = new QSlider(24,47,1,24,Horizontal,agendasize);
425 topLayout->addMultiCellWidget(agendasize,7,7,0,1); 427 topLayout->addMultiCellWidget(agendasize,7,7,0,1);
426 */ 428 */
427 429
428 430
429 KPrefsDialogWidBool *ask = 431 KPrefsDialogWidBool *ask =
430 addWidBool(i18n("Ask for quit when closing KO/Pi"), 432 addWidBool(i18n("Ask for quit when closing KO/Pi"),
431 &(KOPrefs::instance()->mAskForQuit),topFrame); 433 &(KOPrefs::instance()->mAskForQuit),topFrame);
432 topLayout->addMultiCellWidget(ask->checkBox(),iii,iii,0,1); 434 topLayout->addMultiCellWidget(ask->checkBox(),iii,iii,0,1);
433 ++iii; 435 ++iii;
434 436
435 437
436 /* 438 /*
437 KPrefsDialogWidBool *confirmCheck = 439 KPrefsDialogWidBool *confirmCheck =
438 addWidBool(i18n("Confirm &deletes"),&(KOPrefs::instance()->mConfirm), 440 addWidBool(i18n("Confirm &deletes"),&(KOPrefs::instance()->mConfirm),
439 topFrame); 441 topFrame);
440 topLayout->addMultiCellWidget(confirmCheck->checkBox(),7,7,0,1); 442 topLayout->addMultiCellWidget(confirmCheck->checkBox(),7,7,0,1);
441 443
442 444
443 mEnableGroupScheduling = 445 mEnableGroupScheduling =
444 addWidBool(i18n("Enable group scheduling"), 446 addWidBool(i18n("Enable group scheduling"),
445 &(KOPrefs::instance()->mEnableGroupScheduling),topFrame); 447 &(KOPrefs::instance()->mEnableGroupScheduling),topFrame);
446 topLayout->addWidget(mEnableGroupScheduling->checkBox(),8,0); 448 topLayout->addWidget(mEnableGroupScheduling->checkBox(),8,0);
447 connect(mEnableGroupScheduling->checkBox(),SIGNAL(clicked()), 449 connect(mEnableGroupScheduling->checkBox(),SIGNAL(clicked()),
448 SLOT(warningGroupScheduling())); 450 SLOT(warningGroupScheduling()));
449 451
450 mEnableProjectView = 452 mEnableProjectView =
451 addWidBool(i18n("Enable project view"), 453 addWidBool(i18n("Enable project view"),
452 &(KOPrefs::instance()->mEnableProjectView),topFrame); 454 &(KOPrefs::instance()->mEnableProjectView),topFrame);
453 topLayout->addWidget(mEnableProjectView->checkBox(),9,0); 455 topLayout->addWidget(mEnableProjectView->checkBox(),9,0);
454 connect(mEnableProjectView->checkBox(),SIGNAL(clicked()), 456 connect(mEnableProjectView->checkBox(),SIGNAL(clicked()),
455 SLOT(warningProjectView())); 457 SLOT(warningProjectView()));
456 458
457 // Can't be disabled anymore 459 // Can't be disabled anymore
458 mEnableGroupScheduling->checkBox()->hide(); 460 mEnableGroupScheduling->checkBox()->hide();
459 461
460 // Disable setting, because this feature now becomes stable 462 // Disable setting, because this feature now becomes stable
461 mEnableProjectView->checkBox()->hide(); 463 mEnableProjectView->checkBox()->hide();
462 464
463 KPrefsDialogWidRadios *defaultFormatGroup = 465 KPrefsDialogWidRadios *defaultFormatGroup =
464 addWidRadios(i18n("Default Calendar Format"), 466 addWidRadios(i18n("Default Calendar Format"),
465 &(KOPrefs::instance()->mDefaultFormat),topFrame); 467 &(KOPrefs::instance()->mDefaultFormat),topFrame);
466 defaultFormatGroup->addRadio(i18n("vCalendar")); 468 defaultFormatGroup->addRadio(i18n("vCalendar"));
467 defaultFormatGroup->addRadio(i18n("iCalendar")); 469 defaultFormatGroup->addRadio(i18n("iCalendar"));
468 470
469 topLayout->addMultiCellWidget(defaultFormatGroup->groupBox(),10,10,0,1); 471 topLayout->addMultiCellWidget(defaultFormatGroup->groupBox(),10,10,0,1);
470 472
471 // Default format unconditionally is iCalendar 473 // Default format unconditionally is iCalendar
472 defaultFormatGroup->groupBox()->hide(); 474 defaultFormatGroup->groupBox()->hide();
473 475
474 KPrefsDialogWidRadios *mailClientGroup = 476 KPrefsDialogWidRadios *mailClientGroup =
475 addWidRadios(i18n("Mail Client"),&(KOPrefs::instance()->mMailClient), 477 addWidRadios(i18n("Mail Client"),&(KOPrefs::instance()->mMailClient),
476 topFrame); 478 topFrame);
477 mailClientGroup->addRadio(i18n("KMail")); 479 mailClientGroup->addRadio(i18n("KMail"));
478 mailClientGroup->addRadio(i18n("Sendmail")); 480 mailClientGroup->addRadio(i18n("Sendmail"));
479 topLayout->addMultiCellWidget(mailClientGroup->groupBox(),11,11,0,1); 481 topLayout->addMultiCellWidget(mailClientGroup->groupBox(),11,11,0,1);
480 482
481 KPrefsDialogWidBool *htmlsave = 483 KPrefsDialogWidBool *htmlsave =
482 addWidBool(i18n("Export to HTML with every save"),&(KOPrefs::instance()->mHtmlWithSave), 484 addWidBool(i18n("Export to HTML with every save"),&(KOPrefs::instance()->mHtmlWithSave),
483 topFrame); 485 topFrame);
484 topLayout->addMultiCellWidget(htmlsave->checkBox(),12,12,0,1); 486 topLayout->addMultiCellWidget(htmlsave->checkBox(),12,12,0,1);
485 487
486 KPrefsDialogWidRadios *destinationGroup = 488 KPrefsDialogWidRadios *destinationGroup =
487 addWidRadios(i18n("New Events/Todos should"),&(KOPrefs::instance()->mDestination), 489 addWidRadios(i18n("New Events/Todos should"),&(KOPrefs::instance()->mDestination),
488 topFrame); 490 topFrame);
489 destinationGroup->addRadio(i18n("be added to the standard resource")); 491 destinationGroup->addRadio(i18n("be added to the standard resource"));
490 destinationGroup->addRadio(i18n("be asked which resource to use")); 492 destinationGroup->addRadio(i18n("be asked which resource to use"));
491 topLayout->addMultiCellWidget(destinationGroup->groupBox(),13,13,0,1); 493 topLayout->addMultiCellWidget(destinationGroup->groupBox(),13,13,0,1);
492 494
493 topLayout->setRowStretch(14,1); 495 topLayout->setRowStretch(14,1);
494 */ 496 */
495} 497}
496 498
497 499
498void KOPrefsDialog::setupTimeTab() 500void KOPrefsDialog::setupTimeTab()
499{ 501{
500 QFrame *topFrame = addPage(i18n("Time"),0,0); 502 QFrame *topFrame = addPage(i18n("Time"),0,0);
501 // DesktopIcon("clock",KIcon::SizeMedium)); 503 // DesktopIcon("clock",KIcon::SizeMedium));
502 504
503 QGridLayout *topLayout = new QGridLayout(topFrame,4,2); 505 QGridLayout *topLayout = new QGridLayout(topFrame,4,2);
504 topLayout->setSpacing(mSpacingHint); 506 topLayout->setSpacing(mSpacingHint);
505 topLayout->setMargin(mMarginHint); 507 topLayout->setMargin(mMarginHint);
506 508
507 QHBox *dummy = new QHBox(topFrame); 509 QHBox *dummy = new QHBox(topFrame);
508 KPrefsDialogWidTime *dayBegins = 510 KPrefsDialogWidTime *dayBegins =
509 addWidTime(i18n("Day begins at:"),&(KOPrefs::instance()->mDayBegins), 511 addWidTime(i18n("Day begins at:"),&(KOPrefs::instance()->mDayBegins),
510 dummy); 512 dummy);
511 //topLayout->addWidget(dayBegins->label(),2,0); 513 //topLayout->addWidget(dayBegins->label(),2,0);
512 514
513 //topLayout->addWidget(dayBegins->spinBox(),2,1); 515 //topLayout->addWidget(dayBegins->spinBox(),2,1);
514 topLayout->addMultiCellWidget(dummy,0,0,0,1); 516 topLayout->addMultiCellWidget(dummy,0,0,0,1);
515 517
516 topLayout->addWidget(new QLabel(i18n("Default appointment time:"), 518 topLayout->addWidget(new QLabel(i18n("Default appointment time:"),
517 topFrame),1,0); 519 topFrame),1,0);
518 mStartTimeSpin = new QSpinBox(0,23,1,topFrame); 520 mStartTimeSpin = new QSpinBox(0,23,1,topFrame);
519 mStartTimeSpin->setSuffix(":00"); 521 mStartTimeSpin->setSuffix(":00");
520 topLayout->addWidget(mStartTimeSpin,1,1); 522 topLayout->addWidget(mStartTimeSpin,1,1);
521 523
522 topLayout->addWidget(new QLabel(i18n("Def. duration of new app.:"), 524 topLayout->addWidget(new QLabel(i18n("Def. duration of new app.:"),
523 topFrame),2,0); 525 topFrame),2,0);
524 mDefaultDurationSpin = new QSpinBox(0,23,1,topFrame); 526 mDefaultDurationSpin = new QSpinBox(0,23,1,topFrame);
525 mDefaultDurationSpin->setSuffix(":00"); 527 mDefaultDurationSpin->setSuffix(":00");
526 topLayout->addWidget(mDefaultDurationSpin,2,1); 528 topLayout->addWidget(mDefaultDurationSpin,2,1);
527 529
528 QStringList alarmList; 530 QStringList alarmList;
529 alarmList << i18n("1 minute") << i18n("5 minutes") << i18n("10 minutes") 531 alarmList << i18n("1 minute") << i18n("5 minutes") << i18n("10 minutes")
530 << i18n("15 minutes") << i18n("30 minutes")<< i18n("1 hour")<< i18n("3 hours") << i18n("24 hours") ; 532 << i18n("15 minutes") << i18n("30 minutes")<< i18n("1 hour")<< i18n("3 hours") << i18n("24 hours") ;
531 topLayout->addWidget(new QLabel(i18n("Default alarm time:"),topFrame), 533 topLayout->addWidget(new QLabel(i18n("Default alarm time:"),topFrame),
532 3,0); 534 3,0);
533 mAlarmTimeCombo = new QComboBox(topFrame); 535 mAlarmTimeCombo = new QComboBox(topFrame);
534 mAlarmTimeCombo->insertStringList(alarmList); 536 mAlarmTimeCombo->insertStringList(alarmList);
535 topLayout->addWidget(mAlarmTimeCombo,3,1); 537 topLayout->addWidget(mAlarmTimeCombo,3,1);
536 538
537 539
538 QGroupBox *workingHoursGroup = new QGroupBox(1,Horizontal, 540 QGroupBox *workingHoursGroup = new QGroupBox(1,Horizontal,
539 i18n("Working Hours"), 541 i18n("Working Hours"),
540 topFrame); 542 topFrame);
541 topLayout->addMultiCellWidget(workingHoursGroup,4,4,0,1); 543 topLayout->addMultiCellWidget(workingHoursGroup,4,4,0,1);
542 workingHoursGroup->layout()->setSpacing( 0 ); 544 workingHoursGroup->layout()->setSpacing( 0 );
543 workingHoursGroup->layout()->setMargin( 4 ); 545 workingHoursGroup->layout()->setMargin( 4 );
544 QHBox *workStartBox = new QHBox(workingHoursGroup); 546 QHBox *workStartBox = new QHBox(workingHoursGroup);
545 // workStartBox->setMargin( 0 ); 547 // workStartBox->setMargin( 0 );
546 addWidTime(i18n("Daily starting hour:"), 548 addWidTime(i18n("Daily starting hour:"),
547 &(KOPrefs::instance()->mWorkingHoursStart),workStartBox); 549 &(KOPrefs::instance()->mWorkingHoursStart),workStartBox);
548 550
549 QHBox *workEndBox = new QHBox(workingHoursGroup); 551 QHBox *workEndBox = new QHBox(workingHoursGroup);
550 //workEndBox->setMargin( 0 ); 552 //workEndBox->setMargin( 0 );
551 addWidTime(i18n("Daily ending hour:"), 553 addWidTime(i18n("Daily ending hour:"),
552 &(KOPrefs::instance()->mWorkingHoursEnd),workEndBox); 554 &(KOPrefs::instance()->mWorkingHoursEnd),workEndBox);
553 QVBox *excludeBox = new QVBox(workingHoursGroup); 555 QVBox *excludeBox = new QVBox(workingHoursGroup);
554 //excludeBox->setMargin( 0 ); 556 //excludeBox->setMargin( 0 );
555 addWidBool(i18n("Exclude holidays"), 557 addWidBool(i18n("Exclude holidays"),
556 &(KOPrefs::instance()->mExcludeHolidays),excludeBox); 558 &(KOPrefs::instance()->mExcludeHolidays),excludeBox);
557 559
558 addWidBool(i18n("Exclude Saturdays"), 560 addWidBool(i18n("Exclude Saturdays"),
559 &(KOPrefs::instance()->mExcludeSaturdays),excludeBox); 561 &(KOPrefs::instance()->mExcludeSaturdays),excludeBox);
560 562
561// KPrefsDialogWidBool *marcusBainsShowSeconds = addWidBool(i18n("Show seconds on Marcus Bains line"), 563// KPrefsDialogWidBool *marcusBainsShowSeconds = addWidBool(i18n("Show seconds on Marcus Bains line"),
562 // &(KOPrefs::instance()->mMarcusBainsShowSeconds), 564 // &(KOPrefs::instance()->mMarcusBainsShowSeconds),
563 // topFrame); 565 // topFrame);
564// topLayout->addWidget(marcusBainsShowSeconds->checkBox(),5,0); 566// topLayout->addWidget(marcusBainsShowSeconds->checkBox(),5,0);
565 567
566 // topLayout->setRowStretch(6,1); 568 // topLayout->setRowStretch(6,1);
567} 569}
568 570
569 571
570void KOPrefsDialog::setupViewsTab() 572void KOPrefsDialog::setupViewsTab()
571{ 573{
572 574
573 QFrame *topFrame = addPage(i18n("Views"),0,0); 575 QFrame *topFrame = addPage(i18n("Views"),0,0);
574 // DesktopIcon("viewmag",KIcon::SizeMedium)); 576 // DesktopIcon("viewmag",KIcon::SizeMedium));
575 577
576 QGridLayout *topLayout = new QGridLayout(topFrame,6,1); 578 QGridLayout *topLayout = new QGridLayout(topFrame,6,1);
577 topLayout->setSpacing(mSpacingHint); 579 topLayout->setSpacing(mSpacingHint);
578 topLayout->setMargin(mMarginHint); 580 topLayout->setMargin(mMarginHint);
579 581
580// QBoxLayout *dayBeginsLayout = new QHBoxLayout; 582// QBoxLayout *dayBeginsLayout = new QHBoxLayout;
581// topLayout->addLayout(dayBeginsLayout,0,0); 583// topLayout->addLayout(dayBeginsLayout,0,0);
582 584
583// KPrefsDialogWidTime *dayBegins = 585// KPrefsDialogWidTime *dayBegins =
584// addWidTime(i18n("Day begins at:"),&(KOPrefs::instance()->mDayBegins), 586// addWidTime(i18n("Day begins at:"),&(KOPrefs::instance()->mDayBegins),
585// topFrame); 587// topFrame);
586// dayBeginsLayout->addWidget(dayBegins->label()); 588// dayBeginsLayout->addWidget(dayBegins->label());
587// dayBeginsLayout->addStretch(1); 589// dayBeginsLayout->addStretch(1);
588// dayBeginsLayout->addWidget(dayBegins->spinBox()); 590// dayBeginsLayout->addWidget(dayBegins->spinBox());
589 591
590// QBoxLayout *nextDaysLayout = new QHBoxLayout; 592// QBoxLayout *nextDaysLayout = new QHBoxLayout;
591// topLayout->addLayout(nextDaysLayout,1,0); 593// topLayout->addLayout(nextDaysLayout,1,0);
592// nextDaysLayout->addWidget(new QLabel(i18n("Days to show in Next-X-Days view:"),topFrame)); 594// nextDaysLayout->addWidget(new QLabel(i18n("Days to show in Next-X-Days view:"),topFrame));
593// mNextXDaysSpin = new QSpinBox(2,14,1,topFrame); 595// mNextXDaysSpin = new QSpinBox(2,14,1,topFrame);
594// nextDaysLayout->addStretch(1); 596// nextDaysLayout->addStretch(1);
595// nextDaysLayout->addWidget(mNextXDaysSpin); 597// nextDaysLayout->addWidget(mNextXDaysSpin);
596 598
597 599
598 int ii = 0; 600 int ii = 0;
599 KPrefsDialogWidBool *dummy = 601 KPrefsDialogWidBool *dummy =
600 addWidBool(i18n("Edit item on doubleclick (if not, show)"), 602 addWidBool(i18n("Edit item on doubleclick (if not, show)"),
601 &(KOPrefs::instance()->mEditOnDoubleClick),topFrame); 603 &(KOPrefs::instance()->mEditOnDoubleClick),topFrame);
602 topLayout->addWidget(dummy->checkBox(),ii++,0); 604 topLayout->addWidget(dummy->checkBox(),ii++,0);
603 605
604 606
605 607
606 608
607 609
608 610
609 // topLayout->addWidget(hourSizeGroup,ii++,0); 611 // topLayout->addWidget(hourSizeGroup,ii++,0);
610 // topLayout->addMultiCellWidget(hourSizeGroup,ii,ii,0,0); 612 // topLayout->addMultiCellWidget(hourSizeGroup,ii,ii,0,0);
611 //topLayout->setRowStretch(11,1); 613 //topLayout->setRowStretch(11,1);
612 614
613 615
614 616
615 617
616#if 0 618#if 0
617 619
618 topFrame = addPage(i18n("ViewChange"),0,0); 620 topFrame = addPage(i18n("ViewChange"),0,0);
619 // DesktopIcon("viewmag",KIcon::SizeMedium)); 621 // DesktopIcon("viewmag",KIcon::SizeMedium));
620 622
621 topLayout = new QGridLayout(topFrame,6,1); 623 topLayout = new QGridLayout(topFrame,6,1);
622 topLayout->setSpacing(mSpacingHint); 624 topLayout->setSpacing(mSpacingHint);
623 topLayout->setMargin(mMarginHint); 625 topLayout->setMargin(mMarginHint);
624 ii = 0; 626 ii = 0;
625 627
626#endif 628#endif
627 629
@@ -1077,673 +1079,677 @@ void KOPrefsDialog::setupFontsTab()
1077 1079
1078 QFrame *topFrame = addPage(i18n("Fonts"),0,0); 1080 QFrame *topFrame = addPage(i18n("Fonts"),0,0);
1079 // DesktopIcon("fonts",KIcon::SizeMedium)); 1081 // DesktopIcon("fonts",KIcon::SizeMedium));
1080 1082
1081 QGridLayout *topLayout = new QGridLayout(topFrame,7,3); 1083 QGridLayout *topLayout = new QGridLayout(topFrame,7,3);
1082 topLayout->setSpacing(1); 1084 topLayout->setSpacing(1);
1083 topLayout->setMargin(3); 1085 topLayout->setMargin(3);
1084 KPrefsDialogWidFont * tVFont; 1086 KPrefsDialogWidFont * tVFont;
1085 int i = 0; 1087 int i = 0;
1086 KPrefsDialogWidFont *timeLabelsFont = 1088 KPrefsDialogWidFont *timeLabelsFont =
1087 addWidFont(i18n("23"),i18n("DateNavigator:(nr)"), 1089 addWidFont(i18n("23"),i18n("DateNavigator:(nr)"),
1088 &(KOPrefs::instance()->mDateNavigatorFont),topFrame); 1090 &(KOPrefs::instance()->mDateNavigatorFont),topFrame);
1089 topLayout->addWidget(timeLabelsFont->label(),i,0); 1091 topLayout->addWidget(timeLabelsFont->label(),i,0);
1090 topLayout->addWidget(timeLabelsFont->preview(),i,1); 1092 topLayout->addWidget(timeLabelsFont->preview(),i,1);
1091 topLayout->addWidget(timeLabelsFont->button(),i,2); 1093 topLayout->addWidget(timeLabelsFont->button(),i,2);
1092 ++i; 1094 ++i;
1093 1095
1094 1096
1095 timeLabelsFont = 1097 timeLabelsFont =
1096 addWidFont(i18n("Mon 15"),i18n("Date Labels:"), 1098 addWidFont(i18n("Mon 15"),i18n("Date Labels:"),
1097 &(KOPrefs::instance()->mTimeLabelsFont),topFrame); 1099 &(KOPrefs::instance()->mTimeLabelsFont),topFrame);
1098 topLayout->addWidget(timeLabelsFont->label(),i,0); 1100 topLayout->addWidget(timeLabelsFont->label(),i,0);
1099 topLayout->addWidget(timeLabelsFont->preview(),i,1); 1101 topLayout->addWidget(timeLabelsFont->preview(),i,1);
1100 topLayout->addWidget(timeLabelsFont->button(),i,2); 1102 topLayout->addWidget(timeLabelsFont->button(),i,2);
1101 ++i; 1103 ++i;
1102 1104
1103 KPrefsDialogWidFont *timeBarFont = 1105 KPrefsDialogWidFont *timeBarFont =
1104 addWidFont(KGlobal::locale()->formatTime(QTime(12,34)),i18n("Time bar:"), 1106 addWidFont(KGlobal::locale()->formatTime(QTime(12,34)),i18n("Time bar:"),
1105 &(KOPrefs::instance()->mTimeBarFont),topFrame); 1107 &(KOPrefs::instance()->mTimeBarFont),topFrame);
1106 topLayout->addWidget(timeBarFont->label(),i,0); 1108 topLayout->addWidget(timeBarFont->label(),i,0);
1107 topLayout->addWidget(timeBarFont->preview(),i,1); 1109 topLayout->addWidget(timeBarFont->preview(),i,1);
1108 topLayout->addWidget(timeBarFont->button(),i,2); 1110 topLayout->addWidget(timeBarFont->button(),i,2);
1109 ++i; 1111 ++i;
1110 1112
1111 1113
1112 KPrefsDialogWidFont *marcusBainsFont = 1114 KPrefsDialogWidFont *marcusBainsFont =
1113 addWidFont(KGlobal::locale()->formatTime(QTime(12,34,23)),i18n("M. Bains line:"), 1115 addWidFont(KGlobal::locale()->formatTime(QTime(12,34,23)),i18n("M. Bains line:"),
1114 &(KOPrefs::instance()->mMarcusBainsFont),topFrame); 1116 &(KOPrefs::instance()->mMarcusBainsFont),topFrame);
1115 topLayout->addWidget(marcusBainsFont->label(),i,0); 1117 topLayout->addWidget(marcusBainsFont->label(),i,0);
1116 topLayout->addWidget(marcusBainsFont->preview(),i,1); 1118 topLayout->addWidget(marcusBainsFont->preview(),i,1);
1117 topLayout->addWidget(marcusBainsFont->button(),i,2); 1119 topLayout->addWidget(marcusBainsFont->button(),i,2);
1118 ++i; 1120 ++i;
1119 1121
1120 tVFont = 1122 tVFont =
1121 addWidFont(i18n("Summary"),i18n("Event Viewer:"), 1123 addWidFont(i18n("Summary"),i18n("Event Viewer:"),
1122 &(KOPrefs::instance()->mEventViewFont),topFrame); 1124 &(KOPrefs::instance()->mEventViewFont),topFrame);
1123 topLayout->addWidget(tVFont->label(),i,0); 1125 topLayout->addWidget(tVFont->label(),i,0);
1124 topLayout->addWidget(tVFont->preview(),i,1); 1126 topLayout->addWidget(tVFont->preview(),i,1);
1125 topLayout->addWidget(tVFont->button(),i,2); 1127 topLayout->addWidget(tVFont->button(),i,2);
1126 ++i; 1128 ++i;
1127 1129
1128 1130
1129 1131
1130 tVFont = 1132 tVFont =
1131 addWidFont(i18n("Details"),i18n("EditorBox:"), 1133 addWidFont(i18n("Details"),i18n("EditorBox:"),
1132 &(KOPrefs::instance()->mEditBoxFont),topFrame); 1134 &(KOPrefs::instance()->mEditBoxFont),topFrame);
1133 topLayout->addWidget(tVFont->label(),i,0); 1135 topLayout->addWidget(tVFont->label(),i,0);
1134 topLayout->addWidget(tVFont->preview(),i,1); 1136 topLayout->addWidget(tVFont->preview(),i,1);
1135 topLayout->addWidget(tVFont->button(),i,2); 1137 topLayout->addWidget(tVFont->button(),i,2);
1136 ++i; 1138 ++i;
1137 1139
1138 1140
1139 1141
1140 topLayout->setColStretch(1,1); 1142 topLayout->setColStretch(1,1);
1141 topLayout->setRowStretch(4,1); 1143 topLayout->setRowStretch(4,1);
1142 1144
1143 1145
1144 i = 0; 1146 i = 0;
1145 topFrame = addPage(i18n("View Fonts"),0, 1147 topFrame = addPage(i18n("View Fonts"),0,
1146 DesktopIcon("fonts",KIcon::SizeMedium)); 1148 DesktopIcon("fonts",KIcon::SizeMedium));
1147 1149
1148 topLayout = new QGridLayout(topFrame,7,3); 1150 topLayout = new QGridLayout(topFrame,7,3);
1149 topLayout->setSpacing(1); 1151 topLayout->setSpacing(1);
1150 topLayout->setMargin(3); 1152 topLayout->setMargin(3);
1151 1153
1152 tVFont = 1154 tVFont =
1153 addWidFont(i18n("Configure KO"),i18n("What's Next View:"), 1155 addWidFont(i18n("Configure KO"),i18n("What's Next View:"),
1154 &(KOPrefs::instance()->mWhatsNextFont),topFrame); 1156 &(KOPrefs::instance()->mWhatsNextFont),topFrame);
1155 topLayout->addWidget(tVFont->label(),i,0); 1157 topLayout->addWidget(tVFont->label(),i,0);
1156 topLayout->addWidget(tVFont->preview(),i,1); 1158 topLayout->addWidget(tVFont->preview(),i,1);
1157 topLayout->addWidget(tVFont->button(),i,2); 1159 topLayout->addWidget(tVFont->button(),i,2);
1158 ++i; 1160 ++i;
1159 KPrefsDialogWidFont *agendaViewFont = 1161 KPrefsDialogWidFont *agendaViewFont =
1160 addWidFont(i18n("Event text"),i18n("Agenda view:"), 1162 addWidFont(i18n("Event text"),i18n("Agenda view:"),
1161 &(KOPrefs::instance()->mAgendaViewFont),topFrame); 1163 &(KOPrefs::instance()->mAgendaViewFont),topFrame);
1162 topLayout->addWidget(agendaViewFont->label(),i,0); 1164 topLayout->addWidget(agendaViewFont->label(),i,0);
1163 topLayout->addWidget(agendaViewFont->preview(),i,1); 1165 topLayout->addWidget(agendaViewFont->preview(),i,1);
1164 topLayout->addWidget(agendaViewFont->button(),i,2); 1166 topLayout->addWidget(agendaViewFont->button(),i,2);
1165 ++i; 1167 ++i;
1166 1168
1167 1169
1168 KPrefsDialogWidFont *monthViewFont = 1170 KPrefsDialogWidFont *monthViewFont =
1169 addWidFont(KGlobal::locale()->formatTime(QTime(12,34)) + " " + i18n("Event"), 1171 addWidFont(KGlobal::locale()->formatTime(QTime(12,34)) + " " + i18n("Event"),
1170 i18n("Month view:"),&(KOPrefs::instance()->mMonthViewFont),topFrame); 1172 i18n("Month view:"),&(KOPrefs::instance()->mMonthViewFont),topFrame);
1171 topLayout->addWidget(monthViewFont->label(),i,0); 1173 topLayout->addWidget(monthViewFont->label(),i,0);
1172 topLayout->addWidget(monthViewFont->preview(),i,1); 1174 topLayout->addWidget(monthViewFont->preview(),i,1);
1173 topLayout->addWidget(monthViewFont->button(),i,2); 1175 topLayout->addWidget(monthViewFont->button(),i,2);
1174 ++i; 1176 ++i;
1175 1177
1176 1178
1177 KPrefsDialogWidFont *lVFont = 1179 KPrefsDialogWidFont *lVFont =
1178 addWidFont(i18n("Event"),i18n("List View:"), 1180 addWidFont(i18n("Event"),i18n("List View:"),
1179 &(KOPrefs::instance()->mListViewFont),topFrame); 1181 &(KOPrefs::instance()->mListViewFont),topFrame);
1180 topLayout->addWidget(lVFont->label(),i,0); 1182 topLayout->addWidget(lVFont->label(),i,0);
1181 topLayout->addWidget(lVFont->preview(),i,1); 1183 topLayout->addWidget(lVFont->preview(),i,1);
1182 topLayout->addWidget(lVFont->button(),i,2); 1184 topLayout->addWidget(lVFont->button(),i,2);
1183 ++i; 1185 ++i;
1184 1186
1185 1187
1186 tVFont = 1188 tVFont =
1187 addWidFont(i18n("ToDo"),i18n("ToDoView:"), 1189 addWidFont(i18n("ToDo"),i18n("ToDoView:"),
1188 &(KOPrefs::instance()->mTodoViewFont),topFrame); 1190 &(KOPrefs::instance()->mTodoViewFont),topFrame);
1189 topLayout->addWidget(tVFont->label(),i,0); 1191 topLayout->addWidget(tVFont->label(),i,0);
1190 topLayout->addWidget(tVFont->preview(),i,1); 1192 topLayout->addWidget(tVFont->preview(),i,1);
1191 topLayout->addWidget(tVFont->button(),i,2); 1193 topLayout->addWidget(tVFont->button(),i,2);
1192 ++i; 1194 ++i;
1193 1195
1194 1196
1195 tVFont = 1197 tVFont =
1196 addWidFont(i18n("Today"),i18n("JournalView:"), 1198 addWidFont(i18n("Today"),i18n("JournalView:"),
1197 &(KOPrefs::instance()->mJornalViewFont),topFrame); 1199 &(KOPrefs::instance()->mJornalViewFont),topFrame);
1198 topLayout->addWidget(tVFont->label(),i,0); 1200 topLayout->addWidget(tVFont->label(),i,0);
1199 topLayout->addWidget(tVFont->preview(),i,1); 1201 topLayout->addWidget(tVFont->preview(),i,1);
1200 topLayout->addWidget(tVFont->button(),i,2); 1202 topLayout->addWidget(tVFont->button(),i,2);
1201 ++i; 1203 ++i;
1202 1204
1203 1205
1204 1206
1205 1207
1206 topLayout->setColStretch(1,1); 1208 topLayout->setColStretch(1,1);
1207 topLayout->setRowStretch(4,1); 1209 topLayout->setRowStretch(4,1);
1208 1210
1209 1211
1210 1212
1211 1213
1212} 1214}
1213 1215
1214void KOPrefsDialog::setupColorsTab() 1216void KOPrefsDialog::setupColorsTab()
1215{ 1217{
1216 QFrame *topFrame = addPage(i18n("Colors"),0,0); 1218 QFrame *topFrame = addPage(i18n("Colors"),0,0);
1217 // DesktopIcon("colorize",KIcon::SizeMedium)); 1219 // DesktopIcon("colorize",KIcon::SizeMedium));
1218 1220
1219 QGridLayout *topLayout = new QGridLayout(topFrame,5,2); 1221 QGridLayout *topLayout = new QGridLayout(topFrame,5,2);
1220 // topLayout->setSpacing(mSpacingHint); 1222 // topLayout->setSpacing(mSpacingHint);
1221 // topLayout->setMargin(mMarginHint); 1223 // topLayout->setMargin(mMarginHint);
1222 1224
1223 topLayout->setSpacing(2); 1225 topLayout->setSpacing(2);
1224 topLayout->setMargin(3); 1226 topLayout->setMargin(3);
1225 1227
1226 int ii = 1; 1228 int ii = 1;
1227 QGroupBox *categoryGroup ; 1229 QGroupBox *categoryGroup ;
1228 1230
1229 categoryGroup = new QGroupBox(1,Vertical,i18n("Categories"), 1231 categoryGroup = new QGroupBox(1,Vertical,i18n("Categories"),
1230 topFrame); 1232 topFrame);
1231 topLayout->addMultiCellWidget(categoryGroup,0,0,0,1); 1233 topLayout->addMultiCellWidget(categoryGroup,0,0,0,1);
1232 1234
1233 mCategoryCombo = new QComboBox(categoryGroup); 1235 mCategoryCombo = new QComboBox(categoryGroup);
1234 mCategoryCombo->insertStringList(KOPrefs::instance()->mCustomCategories); 1236 mCategoryCombo->insertStringList(KOPrefs::instance()->mCustomCategories);
1235 connect(mCategoryCombo,SIGNAL(activated(int)),SLOT(updateCategoryColor())); 1237 connect(mCategoryCombo,SIGNAL(activated(int)),SLOT(updateCategoryColor()));
1236 1238
1237 mCategoryButton = new KColorButton(categoryGroup); 1239 mCategoryButton = new KColorButton(categoryGroup);
1238 connect(mCategoryButton,SIGNAL(changed(const QColor &)),SLOT(setCategoryColor())); 1240 connect(mCategoryButton,SIGNAL(changed(const QColor &)),SLOT(setCategoryColor()));
1239 updateCategoryColor(); 1241 updateCategoryColor();
1240 1242
1241 1243
1242 // Holiday Color 1244 // Holiday Color
1243 1245
1244 KPrefsDialogWidColor *holidayColor = 1246 KPrefsDialogWidColor *holidayColor =
1245 addWidColor(i18n("Holiday color:"), 1247 addWidColor(i18n("Holiday color:"),
1246 &(KOPrefs::instance()->mHolidayColor),topFrame); 1248 &(KOPrefs::instance()->mHolidayColor),topFrame);
1247 topLayout->addWidget(holidayColor->label(),ii,0); 1249 topLayout->addWidget(holidayColor->label(),ii,0);
1248 topLayout->addWidget(holidayColor->button(),ii++,1); 1250 topLayout->addWidget(holidayColor->button(),ii++,1);
1249 1251
1250 // Highlight Color 1252 // Highlight Color
1251 KPrefsDialogWidColor *highlightColor = 1253 KPrefsDialogWidColor *highlightColor =
1252 addWidColor(i18n("Highlight color:"), 1254 addWidColor(i18n("Highlight color:"),
1253 &(KOPrefs::instance()->mHighlightColor),topFrame); 1255 &(KOPrefs::instance()->mHighlightColor),topFrame);
1254 topLayout->addWidget(highlightColor->label(),ii,0); 1256 topLayout->addWidget(highlightColor->label(),ii,0);
1255 topLayout->addWidget(highlightColor->button(),ii++,1); 1257 topLayout->addWidget(highlightColor->button(),ii++,1);
1256 1258
1257 // Event color 1259 // Event color
1258 KPrefsDialogWidColor *eventColor = 1260 KPrefsDialogWidColor *eventColor =
1259 addWidColor(i18n("Default event color:"), 1261 addWidColor(i18n("Default event color:"),
1260 &(KOPrefs::instance()->mEventColor),topFrame); 1262 &(KOPrefs::instance()->mEventColor),topFrame);
1261 topLayout->addWidget(eventColor->label(),ii,0); 1263 topLayout->addWidget(eventColor->label(),ii,0);
1262 topLayout->addWidget(eventColor->button(),ii++,1); 1264 topLayout->addWidget(eventColor->button(),ii++,1);
1263 eventColor = 1265 eventColor =
1264 addWidColor(i18n("Default todo done color:"), 1266 addWidColor(i18n("Default todo done color:"),
1265 &(KOPrefs::instance()->mTodoDoneColor),topFrame); 1267 &(KOPrefs::instance()->mTodoDoneColor),topFrame);
1266 topLayout->addWidget(eventColor->label(),ii,0); 1268 topLayout->addWidget(eventColor->label(),ii,0);
1267 topLayout->addWidget(eventColor->button(),ii++,1); 1269 topLayout->addWidget(eventColor->button(),ii++,1);
1268 1270
1269 1271
1270 // agenda view background color 1272 // agenda view background color
1271 KPrefsDialogWidColor *agendaBgColor = 1273 KPrefsDialogWidColor *agendaBgColor =
1272 addWidColor(i18n("Agenda view background color:"), 1274 addWidColor(i18n("Agenda view background color:"),
1273 &(KOPrefs::instance()->mAgendaBgColor),topFrame); 1275 &(KOPrefs::instance()->mAgendaBgColor),topFrame);
1274 topLayout->addWidget(agendaBgColor->label(),ii,0); 1276 topLayout->addWidget(agendaBgColor->label(),ii,0);
1275 topLayout->addWidget(agendaBgColor->button(),ii++,1); 1277 topLayout->addWidget(agendaBgColor->button(),ii++,1);
1276 1278
1277 // working hours color 1279 // working hours color
1278 KPrefsDialogWidColor *workingHoursColor = 1280 KPrefsDialogWidColor *workingHoursColor =
1279 addWidColor(i18n("Working hours color:"), 1281 addWidColor(i18n("Working hours color:"),
1280 &(KOPrefs::instance()->mWorkingHoursColor),topFrame); 1282 &(KOPrefs::instance()->mWorkingHoursColor),topFrame);
1281 topLayout->addWidget(workingHoursColor->label(),ii,0); 1283 topLayout->addWidget(workingHoursColor->label(),ii,0);
1282 topLayout->addWidget(workingHoursColor->button(),ii++,1); 1284 topLayout->addWidget(workingHoursColor->button(),ii++,1);
1283 1285
1284 KPrefsDialogWidBool *sb = 1286 KPrefsDialogWidBool *sb =
1285 addWidBool(i18n("Use colors for application:"), 1287 addWidBool(i18n("Use colors for application:"),
1286 &(KOPrefs::instance()->mUseAppColors),topFrame); 1288 &(KOPrefs::instance()->mUseAppColors),topFrame);
1287 topLayout->addMultiCellWidget(sb->checkBox(), ii, ii, 0,1 ); 1289 topLayout->addMultiCellWidget(sb->checkBox(), ii, ii, 0,1 );
1288 1290
1289 ii++; 1291 ii++;
1290 KPrefsDialogWidColor * workingHoursColor1 = 1292 KPrefsDialogWidColor * workingHoursColor1 =
1291 addWidColor(i18n("Buttons, menus, etc.:"), 1293 addWidColor(i18n("Buttons, menus, etc.:"),
1292 &(KOPrefs::instance()->mAppColor1),topFrame); 1294 &(KOPrefs::instance()->mAppColor1),topFrame);
1293 topLayout->addWidget(workingHoursColor1->label(),ii,0); 1295 topLayout->addWidget(workingHoursColor1->label(),ii,0);
1294 topLayout->addWidget(workingHoursColor1->button(),ii++,1); 1296 topLayout->addWidget(workingHoursColor1->button(),ii++,1);
1295 1297
1296 KPrefsDialogWidColor * workingHoursColor2 = 1298 KPrefsDialogWidColor * workingHoursColor2 =
1297 addWidColor(i18n("Frames, labels, etc.:"), 1299 addWidColor(i18n("Frames, labels, etc.:"),
1298 &(KOPrefs::instance()->mAppColor2),topFrame); 1300 &(KOPrefs::instance()->mAppColor2),topFrame);
1299 topLayout->addWidget(workingHoursColor2->label(),ii,0); 1301 topLayout->addWidget(workingHoursColor2->label(),ii,0);
1300 topLayout->addWidget(workingHoursColor2->button(),ii++,1); 1302 topLayout->addWidget(workingHoursColor2->button(),ii++,1);
1301 1303
1302 1304
1303 1305
1304} 1306}
1305 1307
1306void KOPrefsDialog::setCategoryColor() 1308void KOPrefsDialog::setCategoryColor()
1307{ 1309{
1308 mCategoryDict.replace(mCategoryCombo->currentText(), new QColor(mCategoryButton->color())); 1310 mCategoryDict.replace(mCategoryCombo->currentText(), new QColor(mCategoryButton->color()));
1309} 1311}
1310 1312
1311void KOPrefsDialog::updateCategoryColor() 1313void KOPrefsDialog::updateCategoryColor()
1312{ 1314{
1313 QString cat = mCategoryCombo->currentText(); 1315 QString cat = mCategoryCombo->currentText();
1314 QColor *color = mCategoryDict.find(cat); 1316 QColor *color = mCategoryDict.find(cat);
1315 if (!color) { 1317 if (!color) {
1316 color = KOPrefs::instance()->categoryColor(cat); 1318 color = KOPrefs::instance()->categoryColor(cat);
1317 } 1319 }
1318 if (color) { 1320 if (color) {
1319 mCategoryButton->setColor(*color); 1321 mCategoryButton->setColor(*color);
1320 } 1322 }
1321} 1323}
1322 1324
1323void KOPrefsDialog::setupPrinterTab() 1325void KOPrefsDialog::setupPrinterTab()
1324{ 1326{
1325 mPrinterTab = addPage(i18n("Printing"),0, 1327 mPrinterTab = addPage(i18n("Printing"),0,
1326 DesktopIcon("fileprint",KIcon::SizeMedium)); 1328 DesktopIcon("fileprint",KIcon::SizeMedium));
1327 1329
1328 QGridLayout *topLayout = new QGridLayout(mPrinterTab,5,2); 1330 QGridLayout *topLayout = new QGridLayout(mPrinterTab,5,2);
1329 topLayout->setSpacing(mSpacingHint); 1331 topLayout->setSpacing(mSpacingHint);
1330 topLayout->setMargin(mMarginHint); 1332 topLayout->setMargin(mMarginHint);
1331 1333
1332 topLayout->setRowStretch(4,1); 1334 topLayout->setRowStretch(4,1);
1333} 1335}
1334 1336
1335void KOPrefsDialog::setupGroupSchedulingTab() 1337void KOPrefsDialog::setupGroupSchedulingTab()
1336{ 1338{
1337#if 0 1339#if 0
1338 QFrame *topFrame = addPage(i18n("Group Scheduling"),0, 1340 QFrame *topFrame = addPage(i18n("Group Scheduling"),0,
1339 DesktopIcon("personal",KIcon::SizeMedium)); 1341 DesktopIcon("personal",KIcon::SizeMedium));
1340 1342
1341 QGridLayout *topLayout = new QGridLayout(topFrame,6,2); 1343 QGridLayout *topLayout = new QGridLayout(topFrame,6,2);
1342 topLayout->setSpacing(mSpacingHint); 1344 topLayout->setSpacing(mSpacingHint);
1343 topLayout->setMargin(mMarginHint); 1345 topLayout->setMargin(mMarginHint);
1344 1346
1345#if 0 1347#if 0
1346 KPrefsDialogWidRadios *schedulerGroup = 1348 KPrefsDialogWidRadios *schedulerGroup =
1347 addWidRadios(i18n("Scheduler Mail Client"),&(KOPrefs::instance()->mIMIPScheduler), 1349 addWidRadios(i18n("Scheduler Mail Client"),&(KOPrefs::instance()->mIMIPScheduler),
1348 topFrame); 1350 topFrame);
1349 schedulerGroup->addRadio("Dummy"); // Only for debugging 1351 schedulerGroup->addRadio("Dummy"); // Only for debugging
1350 schedulerGroup->addRadio(i18n("Mail client")); 1352 schedulerGroup->addRadio(i18n("Mail client"));
1351 1353
1352 topLayout->addMultiCellWidget(schedulerGroup->groupBox(),0,0,0,1); 1354 topLayout->addMultiCellWidget(schedulerGroup->groupBox(),0,0,0,1);
1353#endif 1355#endif
1354 1356
1355 KPrefsDialogWidRadios *sendGroup = 1357 KPrefsDialogWidRadios *sendGroup =
1356 addWidRadios(i18n("Scheduler Mails Should Be"),&(KOPrefs::instance()->mIMIPSend), 1358 addWidRadios(i18n("Scheduler Mails Should Be"),&(KOPrefs::instance()->mIMIPSend),
1357 topFrame); 1359 topFrame);
1358 sendGroup->addRadio(i18n("Send to outbox")); 1360 sendGroup->addRadio(i18n("Send to outbox"));
1359 sendGroup->addRadio(i18n("Send directly")); 1361 sendGroup->addRadio(i18n("Send directly"));
1360 1362
1361 topLayout->addMultiCellWidget(sendGroup->groupBox(),1,1,0,1); 1363 topLayout->addMultiCellWidget(sendGroup->groupBox(),1,1,0,1);
1362 1364
1363 topLayout->addMultiCellWidget(new QLabel(i18n("Additional email addresses:"),topFrame),2,2,0,1); 1365 topLayout->addMultiCellWidget(new QLabel(i18n("Additional email addresses:"),topFrame),2,2,0,1);
1364 mAMails = new QListView(topFrame); 1366 mAMails = new QListView(topFrame);
1365 mAMails->addColumn(i18n("Email"),300); 1367 mAMails->addColumn(i18n("Email"),300);
1366 topLayout->addMultiCellWidget(mAMails,3,3,0,1); 1368 topLayout->addMultiCellWidget(mAMails,3,3,0,1);
1367 1369
1368 topLayout->addWidget(new QLabel(i18n("Additional email address:"),topFrame),4,0); 1370 topLayout->addWidget(new QLabel(i18n("Additional email address:"),topFrame),4,0);
1369 aEmailsEdit = new QLineEdit(topFrame); 1371 aEmailsEdit = new QLineEdit(topFrame);
1370 aEmailsEdit->setEnabled(false); 1372 aEmailsEdit->setEnabled(false);
1371 topLayout->addWidget(aEmailsEdit,4,1); 1373 topLayout->addWidget(aEmailsEdit,4,1);
1372 1374
1373 QPushButton *add = new QPushButton(i18n("New"),topFrame,"new"); 1375 QPushButton *add = new QPushButton(i18n("New"),topFrame,"new");
1374 topLayout->addWidget(add,5,0); 1376 topLayout->addWidget(add,5,0);
1375 QPushButton *del = new QPushButton(i18n("Remove"),topFrame,"remove"); 1377 QPushButton *del = new QPushButton(i18n("Remove"),topFrame,"remove");
1376 topLayout->addWidget(del,5,1); 1378 topLayout->addWidget(del,5,1);
1377 1379
1378 //topLayout->setRowStretch(2,1); 1380 //topLayout->setRowStretch(2,1);
1379 connect(add, SIGNAL( clicked() ), this, SLOT(addItem()) ); 1381 connect(add, SIGNAL( clicked() ), this, SLOT(addItem()) );
1380 connect(del, SIGNAL( clicked() ), this, SLOT(removeItem()) ); 1382 connect(del, SIGNAL( clicked() ), this, SLOT(removeItem()) );
1381 connect(aEmailsEdit,SIGNAL( textChanged(const QString&) ), this,SLOT(updateItem())); 1383 connect(aEmailsEdit,SIGNAL( textChanged(const QString&) ), this,SLOT(updateItem()));
1382 connect(mAMails,SIGNAL(selectionChanged(QListViewItem *)),SLOT(updateInput())); 1384 connect(mAMails,SIGNAL(selectionChanged(QListViewItem *)),SLOT(updateInput()));
1383#endif 1385#endif
1384} 1386}
1385 1387
1386void KOPrefsDialog::setupGroupAutomationTab() 1388void KOPrefsDialog::setupGroupAutomationTab()
1387{ 1389{
1388 return; 1390 return;
1389 QFrame *topFrame = addPage(i18n("Group Automation"),0, 1391 QFrame *topFrame = addPage(i18n("Group Automation"),0,
1390 DesktopIcon("personal",KIcon::SizeMedium)); 1392 DesktopIcon("personal",KIcon::SizeMedium));
1391 1393
1392 QGridLayout *topLayout = new QGridLayout(topFrame,5,1); 1394 QGridLayout *topLayout = new QGridLayout(topFrame,5,1);
1393 topLayout->setSpacing(mSpacingHint); 1395 topLayout->setSpacing(mSpacingHint);
1394 topLayout->setMargin(mMarginHint); 1396 topLayout->setMargin(mMarginHint);
1395 1397
1396 KPrefsDialogWidRadios *autoRefreshGroup = 1398 KPrefsDialogWidRadios *autoRefreshGroup =
1397 addWidRadios(i18n("Auto Send Refresh"), 1399 addWidRadios(i18n("Auto Send Refresh"),
1398 &(KOPrefs::instance()->mIMIPAutoRefresh),topFrame); 1400 &(KOPrefs::instance()->mIMIPAutoRefresh),topFrame);
1399 autoRefreshGroup->addRadio(i18n("Never")); 1401 autoRefreshGroup->addRadio(i18n("Never"));
1400 autoRefreshGroup->addRadio(i18n("If attendee is in addressbook")); 1402 autoRefreshGroup->addRadio(i18n("If attendee is in addressbook"));
1401 //autoRefreshGroup->addRadio(i18n("selected emails")); 1403 //autoRefreshGroup->addRadio(i18n("selected emails"));
1402 topLayout->addMultiCellWidget(autoRefreshGroup->groupBox(),0,0,0,0); 1404 topLayout->addMultiCellWidget(autoRefreshGroup->groupBox(),0,0,0,0);
1403 1405
1404 KPrefsDialogWidRadios *autoInsertGroup = 1406 KPrefsDialogWidRadios *autoInsertGroup =
1405 addWidRadios(i18n("Auto Insert IMIP Replies"), 1407 addWidRadios(i18n("Auto Insert IMIP Replies"),
1406 &(KOPrefs::instance()->mIMIPAutoInsertReply),topFrame); 1408 &(KOPrefs::instance()->mIMIPAutoInsertReply),topFrame);
1407 autoInsertGroup->addRadio(i18n("Never")); 1409 autoInsertGroup->addRadio(i18n("Never"));
1408 autoInsertGroup->addRadio(i18n("If attendee is in addressbook")); 1410 autoInsertGroup->addRadio(i18n("If attendee is in addressbook"));
1409 //autoInsertGroup->addRadio(i18n("selected emails")); 1411 //autoInsertGroup->addRadio(i18n("selected emails"));
1410 topLayout->addMultiCellWidget(autoInsertGroup->groupBox(),1,1,0,0); 1412 topLayout->addMultiCellWidget(autoInsertGroup->groupBox(),1,1,0,0);
1411 1413
1412 KPrefsDialogWidRadios *autoRequestGroup = 1414 KPrefsDialogWidRadios *autoRequestGroup =
1413 addWidRadios(i18n("Auto Insert IMIP Requests"), 1415 addWidRadios(i18n("Auto Insert IMIP Requests"),
1414 &(KOPrefs::instance()->mIMIPAutoInsertRequest),topFrame); 1416 &(KOPrefs::instance()->mIMIPAutoInsertRequest),topFrame);
1415 autoRequestGroup->addRadio(i18n("Never")); 1417 autoRequestGroup->addRadio(i18n("Never"));
1416 autoRequestGroup->addRadio(i18n("If organizer is in addressbook")); 1418 autoRequestGroup->addRadio(i18n("If organizer is in addressbook"));
1417 //autoInsertGroup->addRadio(i18n("selected emails")); 1419 //autoInsertGroup->addRadio(i18n("selected emails"));
1418 topLayout->addMultiCellWidget(autoRequestGroup->groupBox(),2,2,0,0); 1420 topLayout->addMultiCellWidget(autoRequestGroup->groupBox(),2,2,0,0);
1419 1421
1420 KPrefsDialogWidRadios *autoFreeBusyGroup = 1422 KPrefsDialogWidRadios *autoFreeBusyGroup =
1421 addWidRadios(i18n("Auto Send FreeBusy Information"), 1423 addWidRadios(i18n("Auto Send FreeBusy Information"),
1422 &(KOPrefs::instance()->mIMIPAutoFreeBusy),topFrame); 1424 &(KOPrefs::instance()->mIMIPAutoFreeBusy),topFrame);
1423 autoFreeBusyGroup->addRadio(i18n("Never")); 1425 autoFreeBusyGroup->addRadio(i18n("Never"));
1424 autoFreeBusyGroup->addRadio(i18n("If requested from an email in addressbook")); 1426 autoFreeBusyGroup->addRadio(i18n("If requested from an email in addressbook"));
1425 //autoFreeBusyGroup->addRadio(i18n("selected emails")); 1427 //autoFreeBusyGroup->addRadio(i18n("selected emails"));
1426 topLayout->addMultiCellWidget(autoFreeBusyGroup->groupBox(),3,3,0,0); 1428 topLayout->addMultiCellWidget(autoFreeBusyGroup->groupBox(),3,3,0,0);
1427 1429
1428 KPrefsDialogWidRadios *autoFreeBusyReplyGroup = 1430 KPrefsDialogWidRadios *autoFreeBusyReplyGroup =
1429 addWidRadios(i18n("Auto Save FreeBusy Replies"), 1431 addWidRadios(i18n("Auto Save FreeBusy Replies"),
1430 &(KOPrefs::instance()->mIMIPAutoFreeBusyReply),topFrame); 1432 &(KOPrefs::instance()->mIMIPAutoFreeBusyReply),topFrame);
1431 autoFreeBusyReplyGroup->addRadio(i18n("Never")); 1433 autoFreeBusyReplyGroup->addRadio(i18n("Never"));
1432 autoFreeBusyReplyGroup->addRadio(i18n("If attendee is in addressbook")); 1434 autoFreeBusyReplyGroup->addRadio(i18n("If attendee is in addressbook"));
1433 //autoFreeBusyGroup->addRadio(i18n("selected emails")); 1435 //autoFreeBusyGroup->addRadio(i18n("selected emails"));
1434 topLayout->addMultiCellWidget(autoFreeBusyReplyGroup->groupBox(),4,4,0,0); 1436 topLayout->addMultiCellWidget(autoFreeBusyReplyGroup->groupBox(),4,4,0,0);
1435} 1437}
1436 1438
1437void KOPrefsDialog::showPrinterTab() 1439void KOPrefsDialog::showPrinterTab()
1438{ 1440{
1439 showPage(pageIndex(mPrinterTab)); 1441 showPage(pageIndex(mPrinterTab));
1440} 1442}
1441 1443
1442 1444
1443void KOPrefsDialog::setCombo(QComboBox *combo, const QString & text, 1445void KOPrefsDialog::setCombo(QComboBox *combo, const QString & text,
1444 const QStringList *tags) 1446 const QStringList *tags)
1445{ 1447{
1446 if (tags) { 1448 if (tags) {
1447 int i = tags->findIndex(text); 1449 int i = tags->findIndex(text);
1448 if (i > 0) combo->setCurrentItem(i); 1450 if (i > 0) combo->setCurrentItem(i);
1449 } else { 1451 } else {
1450 for(int i=0;i<combo->count();++i) { 1452 for(int i=0;i<combo->count();++i) {
1451 if (combo->text(i) == text) { 1453 if (combo->text(i) == text) {
1452 combo->setCurrentItem(i); 1454 combo->setCurrentItem(i);
1453 break; 1455 break;
1454 } 1456 }
1455 } 1457 }
1456 } 1458 }
1457} 1459}
1458 1460
1459void KOPrefsDialog::usrReadConfig() 1461void KOPrefsDialog::usrReadConfig()
1460{ 1462{
1461 kdelibcfg->readConfig(); 1463 if ( kdelibcfg )
1464 kdelibcfg->readConfig();
1465 else {
1462 mNameEdit->setText(KOPrefs::instance()->fullName()); 1466 mNameEdit->setText(KOPrefs::instance()->fullName());
1463 mEmailEdit->setText(KOPrefs::instance()->email()); 1467 mEmailEdit->setText(KOPrefs::instance()->email());
1464 1468
1465 mAutoSaveIntervalSpin->setValue(KOPrefs::instance()->mAutoSaveInterval); 1469 mAutoSaveIntervalSpin->setValue(KOPrefs::instance()->mAutoSaveInterval);
1466 // QDate current ( 2001, 1,1); 1470 // QDate current ( 2001, 1,1);
1467 //mStartDateSavingEdit->setDate(current.addDays(KOPrefs::instance()->mDaylightsavingStart-1)); 1471 //mStartDateSavingEdit->setDate(current.addDays(KOPrefs::instance()->mDaylightsavingStart-1));
1468 //mEndDateSavingEdit->setDate(current.addDays(KOPrefs::instance()->mDaylightsavingEnd-1)); 1472 //mEndDateSavingEdit->setDate(current.addDays(KOPrefs::instance()->mDaylightsavingEnd-1));
1469 //setCombo(mTimeZoneCombo,i18n(KOPrefs::instance()->mTimeZoneId)); 1473 //setCombo(mTimeZoneCombo,i18n(KOPrefs::instance()->mTimeZoneId));
1470 //mTimezoneOffsetSpin->setValue( KOPrefs::instance()->mTimeZoneOffset); 1474 //mTimezoneOffsetSpin->setValue( KOPrefs::instance()->mTimeZoneOffset);
1471 mStartTimeSpin->setValue(KOPrefs::instance()->mStartTime); 1475 mStartTimeSpin->setValue(KOPrefs::instance()->mStartTime);
1472 mDefaultDurationSpin->setValue(KOPrefs::instance()->mDefaultDuration); 1476 mDefaultDurationSpin->setValue(KOPrefs::instance()->mDefaultDuration);
1473 mAlarmTimeCombo->setCurrentItem(KOPrefs::instance()->mAlarmTime); 1477 mAlarmTimeCombo->setCurrentItem(KOPrefs::instance()->mAlarmTime);
1474 // if (KOPrefs::instance()->mAllDaySize > 47 ) 1478 // if (KOPrefs::instance()->mAllDaySize > 47 )
1475 // KOPrefs::instance()->mAllDaySize = KOPrefs::instance()->mAllDaySize/2; 1479 // KOPrefs::instance()->mAllDaySize = KOPrefs::instance()->mAllDaySize/2;
1476 //mHourSizeSlider->setValue(KOPrefs::instance()->mAllDaySize); 1480 //mHourSizeSlider->setValue(KOPrefs::instance()->mAllDaySize);
1477 1481
1478 mNextXDaysSpin->setValue(KOPrefs::instance()->mNextXDays); 1482 mNextXDaysSpin->setValue(KOPrefs::instance()->mNextXDays);
1479 mWhatsNextSpin->setValue(KOPrefs::instance()->mWhatsNextDays); 1483 mWhatsNextSpin->setValue(KOPrefs::instance()->mWhatsNextDays);
1480 mPrioSpin->setValue(KOPrefs::instance()->mWhatsNextPrios); 1484 mPrioSpin->setValue(KOPrefs::instance()->mWhatsNextPrios);
1481 // mAMails->clear(); 1485 // mAMails->clear();
1482 // for ( QStringList::Iterator it = KOPrefs::instance()->mAdditionalMails.begin(); 1486 // for ( QStringList::Iterator it = KOPrefs::instance()->mAdditionalMails.begin();
1483// it != KOPrefs::instance()->mAdditionalMails.end(); ++it ) { 1487// it != KOPrefs::instance()->mAdditionalMails.end(); ++it ) {
1484// QListViewItem *item = new QListViewItem(mAMails); 1488// QListViewItem *item = new QListViewItem(mAMails);
1485// item->setText(0,*it); 1489// item->setText(0,*it);
1486// mAMails->insertItem(item); 1490// mAMails->insertItem(item);
1487// } 1491// }
1488 1492
1489 // mRemoteIPEdit->setText(KOPrefs::instance()->mRemoteIP); 1493 // mRemoteIPEdit->setText(KOPrefs::instance()->mRemoteIP);
1490 //mRemoteUser->setText(KOPrefs::instance()->mRemoteUser); 1494 //mRemoteUser->setText(KOPrefs::instance()->mRemoteUser);
1491 //mRemotePassWd->setText(KOPrefs::instance()->mRemotePassWd); 1495 //mRemotePassWd->setText(KOPrefs::instance()->mRemotePassWd);
1492 //mRemoteFile->setText(KOPrefs::instance()->mRemoteFile); 1496 //mRemoteFile->setText(KOPrefs::instance()->mRemoteFile);
1493 1497
1494 //that soundmLocalTempFile->setText(KOPrefs::instance()->mLocalTempFile); 1498 //that soundmLocalTempFile->setText(KOPrefs::instance()->mLocalTempFile);
1495 mDefaultAlarmFile->setText(KOPrefs::instance()->mDefaultAlarmFile); 1499 mDefaultAlarmFile->setText(KOPrefs::instance()->mDefaultAlarmFile);
1496 //QString dummy = KOPrefs::instance()->mUserDateFormatLong; 1500 //QString dummy = KOPrefs::instance()->mUserDateFormatLong;
1497 //mUserDateFormatLong->setText(dummy.replace( QRegExp("K"), QString(",") )); 1501 //mUserDateFormatLong->setText(dummy.replace( QRegExp("K"), QString(",") ));
1498 //dummy = KOPrefs::instance()->mUserDateFormatShort; 1502 //dummy = KOPrefs::instance()->mUserDateFormatShort;
1499 //mUserDateFormatShort->setText(dummy.replace( QRegExp("K"), QString(",") )); 1503 //mUserDateFormatShort->setText(dummy.replace( QRegExp("K"), QString(",") ));
1500 updateCategories(); 1504 updateCategories();
1501 mAlarmPlayBeeps->setValue(KOPrefs::instance()->mAlarmPlayBeeps ); 1505 mAlarmPlayBeeps->setValue(KOPrefs::instance()->mAlarmPlayBeeps );
1502 mAlarmSuspendTime->setValue(KOPrefs::instance()->mAlarmSuspendTime ); 1506 mAlarmSuspendTime->setValue(KOPrefs::instance()->mAlarmSuspendTime );
1503 mAlarmSuspendCount->setValue(KOPrefs::instance()->mAlarmSuspendCount ); 1507 mAlarmSuspendCount->setValue(KOPrefs::instance()->mAlarmSuspendCount );
1504 mAlarmBeepInterval->setValue(KOPrefs::instance()->mAlarmBeepInterval ); 1508 mAlarmBeepInterval->setValue(KOPrefs::instance()->mAlarmBeepInterval );
1509 }
1505} 1510}
1506 1511
1507 1512
1508void KOPrefsDialog::usrWriteConfig() 1513void KOPrefsDialog::usrWriteConfig()
1509{ 1514{
1510 1515 if ( kdelibcfg )
1511 kdelibcfg->writeConfig(); 1516 kdelibcfg->writeConfig();
1517 else {
1512 // KOPrefs::instance()->mRemoteIP = mRemoteIPEdit->text(); 1518 // KOPrefs::instance()->mRemoteIP = mRemoteIPEdit->text();
1513 //KOPrefs::instance()->mRemoteUser = mRemoteUser->text(); 1519 //KOPrefs::instance()->mRemoteUser = mRemoteUser->text();
1514 //KOPrefs::instance()->mRemotePassWd = mRemotePassWd->text(); 1520 //KOPrefs::instance()->mRemotePassWd = mRemotePassWd->text();
1515 //KOPrefs::instance()->mRemoteFile= mRemoteFile->text(); 1521 //KOPrefs::instance()->mRemoteFile= mRemoteFile->text();
1516 //KOPrefs::instance()->mLocalTempFile =mLocalTempFile->text(); 1522 //KOPrefs::instance()->mLocalTempFile =mLocalTempFile->text();
1517 KOPrefs::instance()->mDefaultAlarmFile =mDefaultAlarmFile->text(); 1523 KOPrefs::instance()->mDefaultAlarmFile =mDefaultAlarmFile->text();
1518 1524
1519 //KOPrefs::instance()->mUserDateFormatShort = mUserDateFormatShort->text().replace( QRegExp(","), QString("K") ); 1525 //KOPrefs::instance()->mUserDateFormatShort = mUserDateFormatShort->text().replace( QRegExp(","), QString("K") );
1520 //KOPrefs::instance()->mUserDateFormatLong = mUserDateFormatLong->text().replace( QRegExp(","), QString("K") ); 1526 //KOPrefs::instance()->mUserDateFormatLong = mUserDateFormatLong->text().replace( QRegExp(","), QString("K") );
1521 KOPrefs::instance()->setFullName(mNameEdit->text()); 1527 KOPrefs::instance()->setFullName(mNameEdit->text());
1522 KOPrefs::instance()->setEmail(mEmailEdit->text()); 1528 KOPrefs::instance()->setEmail(mEmailEdit->text());
1523 1529
1524 KOPrefs::instance()->mAutoSaveInterval = mAutoSaveIntervalSpin->value(); 1530 KOPrefs::instance()->mAutoSaveInterval = mAutoSaveIntervalSpin->value();
1525 1531
1526 // KOPrefs::instance()->mTimeZoneId = mTimeZoneCombo->currentText(); 1532 // KOPrefs::instance()->mTimeZoneId = mTimeZoneCombo->currentText();
1527 //QDate date; 1533 //QDate date;
1528 //date = mStartDateSavingEdit->date(); 1534 //date = mStartDateSavingEdit->date();
1529 //int sub = 0; 1535 //int sub = 0;
1530 //if ( QDate::leapYear( date.year() ) && date.dayOfYear() > 59 ) 1536 //if ( QDate::leapYear( date.year() ) && date.dayOfYear() > 59 )
1531 // sub = 1; 1537 // sub = 1;
1532// KOPrefs::instance()->mDaylightsavingStart = date.dayOfYear()-sub; 1538// KOPrefs::instance()->mDaylightsavingStart = date.dayOfYear()-sub;
1533// date = mEndDateSavingEdit->date(); 1539// date = mEndDateSavingEdit->date();
1534// if ( QDate::leapYear( date.year() ) && date.dayOfYear() > 59 ) 1540// if ( QDate::leapYear( date.year() ) && date.dayOfYear() > 59 )
1535// sub = 1; 1541// sub = 1;
1536// else 1542// else
1537// sub = 0; 1543// sub = 0;
1538// KOPrefs::instance()->mDaylightsavingEnd = date.dayOfYear()-sub; 1544// KOPrefs::instance()->mDaylightsavingEnd = date.dayOfYear()-sub;
1539// // KOPrefs::instance()->mTimeZoneOffset = mTimezoneOffsetSpin->value(); 1545// // KOPrefs::instance()->mTimeZoneOffset = mTimezoneOffsetSpin->value();
1540 1546
1541 KOPrefs::instance()->mStartTime = mStartTimeSpin->value(); 1547 KOPrefs::instance()->mStartTime = mStartTimeSpin->value();
1542 KOPrefs::instance()->mDefaultDuration = mDefaultDurationSpin->value(); 1548 KOPrefs::instance()->mDefaultDuration = mDefaultDurationSpin->value();
1543 KOPrefs::instance()->mAlarmTime = mAlarmTimeCombo->currentItem(); 1549 KOPrefs::instance()->mAlarmTime = mAlarmTimeCombo->currentItem();
1544 1550
1545 //KOPrefs::instance()->mAllDaySize = mHourSizeSlider->value(); 1551 //KOPrefs::instance()->mAllDaySize = mHourSizeSlider->value();
1546 1552
1547 QDictIterator<QColor> it(mCategoryDict); 1553 QDictIterator<QColor> it(mCategoryDict);
1548 while (it.current()) { 1554 while (it.current()) {
1549 KOPrefs::instance()->setCategoryColor(it.currentKey(),*it.current()); 1555 KOPrefs::instance()->setCategoryColor(it.currentKey(),*it.current());
1550 ++it; 1556 ++it;
1551 } 1557 }
1552 1558
1553 KOPrefs::instance()->mNextXDays = mNextXDaysSpin->value(); 1559 KOPrefs::instance()->mNextXDays = mNextXDaysSpin->value();
1554 KOPrefs::instance()->mWhatsNextDays = mWhatsNextSpin->value(); 1560 KOPrefs::instance()->mWhatsNextDays = mWhatsNextSpin->value();
1555 KOPrefs::instance()->mWhatsNextPrios = mPrioSpin->value(); 1561 KOPrefs::instance()->mWhatsNextPrios = mPrioSpin->value();
1556 1562
1557 KOPrefs::instance()->mAdditionalMails.clear(); 1563 KOPrefs::instance()->mAdditionalMails.clear();
1558 // QListViewItem *item; 1564 // QListViewItem *item;
1559 // item = mAMails->firstChild(); 1565 // item = mAMails->firstChild();
1560 // while (item) 1566 // while (item)
1561 // { 1567 // {
1562 // KOPrefs::instance()->mAdditionalMails.append( item->text(0) ); 1568 // KOPrefs::instance()->mAdditionalMails.append( item->text(0) );
1563 // item = item->nextSibling(); 1569 // item = item->nextSibling();
1564 // } 1570 // }
1565 KOPrefs::instance()->mAlarmPlayBeeps = mAlarmPlayBeeps->value(); 1571 KOPrefs::instance()->mAlarmPlayBeeps = mAlarmPlayBeeps->value();
1566 KOPrefs::instance()->mAlarmSuspendTime = mAlarmSuspendTime->value() ; 1572 KOPrefs::instance()->mAlarmSuspendTime = mAlarmSuspendTime->value() ;
1567 KOPrefs::instance()->mAlarmSuspendCount= mAlarmSuspendCount->value() ; 1573 KOPrefs::instance()->mAlarmSuspendCount= mAlarmSuspendCount->value() ;
1568 KOPrefs::instance()->mAlarmBeepInterval= mAlarmBeepInterval->value() ; 1574 KOPrefs::instance()->mAlarmBeepInterval= mAlarmBeepInterval->value() ;
1569 1575 }
1570} 1576}
1571 1577
1572void KOPrefsDialog::updateCategories() 1578void KOPrefsDialog::updateCategories()
1573{ 1579{
1574 mCategoryCombo->clear(); 1580 mCategoryCombo->clear();
1575 mCategoryDict.clear(); 1581 mCategoryDict.clear();
1576 mCategoryCombo->insertStringList(KOPrefs::instance()->mCustomCategories); 1582 mCategoryCombo->insertStringList(KOPrefs::instance()->mCustomCategories);
1577 updateCategoryColor(); 1583 updateCategoryColor();
1578} 1584}
1579 1585
1580void KOPrefsDialog::warningGroupScheduling() 1586void KOPrefsDialog::warningGroupScheduling()
1581{ 1587{
1582 warningExperimental(mEnableGroupScheduling->checkBox()->isChecked()); 1588 warningExperimental(mEnableGroupScheduling->checkBox()->isChecked());
1583} 1589}
1584 1590
1585void KOPrefsDialog::warningProjectView() 1591void KOPrefsDialog::warningProjectView()
1586{ 1592{
1587 warningExperimental(mEnableProjectView->checkBox()->isChecked()); 1593 warningExperimental(mEnableProjectView->checkBox()->isChecked());
1588} 1594}
1589 1595
1590void KOPrefsDialog::warningExperimental(bool on) 1596void KOPrefsDialog::warningExperimental(bool on)
1591{ 1597{
1592 if (on) { 1598 if (on) {
1593 KMessageBox::information(this,i18n("This is an experimental feature. " 1599 KMessageBox::information(this,i18n("This is an experimental feature. "
1594 "It may not work, it may do nothing useful and it may cause data loss. " 1600 "It may not work, it may do nothing useful and it may cause data loss. "
1595 "Use with care.\n" 1601 "Use with care.\n"
1596 "You have to restart KOrganizer for this setting to take effect.")); 1602 "You have to restart KOrganizer for this setting to take effect."));
1597 } else { 1603 } else {
1598 KMessageBox::information(this, 1604 KMessageBox::information(this,
1599 i18n("You have to restart KOrganizer for this setting to take effect.")); 1605 i18n("You have to restart KOrganizer for this setting to take effect."));
1600 } 1606 }
1601} 1607}
1602 1608
1603void KOPrefsDialog::toggleEmailSettings(bool on) 1609void KOPrefsDialog::toggleEmailSettings(bool on)
1604{ 1610{
1605 if (on) { 1611 if (on) {
1606 mEmailEdit->setEnabled(false); 1612 mEmailEdit->setEnabled(false);
1607 mNameEdit->setEnabled(false); 1613 mNameEdit->setEnabled(false);
1608 mEmailLabel->setEnabled(false); 1614 mEmailLabel->setEnabled(false);
1609 mNameLabel->setEnabled(false); 1615 mNameLabel->setEnabled(false);
1610 1616
1611 KEMailSettings settings; 1617 KEMailSettings settings;
1612 mNameEdit->setText(settings.getSetting(KEMailSettings::RealName)); 1618 mNameEdit->setText(settings.getSetting(KEMailSettings::RealName));
1613 mEmailEdit->setText(settings.getSetting(KEMailSettings::EmailAddress)); 1619 mEmailEdit->setText(settings.getSetting(KEMailSettings::EmailAddress));
1614 } else { 1620 } else {
1615 mEmailEdit->setEnabled(true); 1621 mEmailEdit->setEnabled(true);
1616 mNameEdit->setEnabled(true); 1622 mNameEdit->setEnabled(true);
1617 mEmailLabel->setEnabled(true); 1623 mEmailLabel->setEnabled(true);
1618 mNameLabel->setEnabled(true); 1624 mNameLabel->setEnabled(true);
1619 } 1625 }
1620} 1626}
1621 1627
1622void KOPrefsDialog::addItem() 1628void KOPrefsDialog::addItem()
1623{ 1629{
1624 // aEmailsEdit->setEnabled(true); 1630 // aEmailsEdit->setEnabled(true);
1625// QListViewItem *item = new QListViewItem(mAMails); 1631// QListViewItem *item = new QListViewItem(mAMails);
1626// mAMails->insertItem(item); 1632// mAMails->insertItem(item);
1627// mAMails->setSelected(item,true); 1633// mAMails->setSelected(item,true);
1628// aEmailsEdit->setText(i18n("(EmptyEmail)")); 1634// aEmailsEdit->setText(i18n("(EmptyEmail)"));
1629} 1635}
1630 1636
1631void KOPrefsDialog::removeItem() 1637void KOPrefsDialog::removeItem()
1632{ 1638{
1633// QListViewItem *item; 1639// QListViewItem *item;
1634// item = mAMails->selectedItem(); 1640// item = mAMails->selectedItem();
1635// if (!item) return; 1641// if (!item) return;
1636// mAMails->takeItem(item); 1642// mAMails->takeItem(item);
1637// item = mAMails->selectedItem(); 1643// item = mAMails->selectedItem();
1638// if (!item) { 1644// if (!item) {
1639// aEmailsEdit->setText(""); 1645// aEmailsEdit->setText("");
1640// aEmailsEdit->setEnabled(false); 1646// aEmailsEdit->setEnabled(false);
1641// } 1647// }
1642// if (mAMails->childCount() == 0) { 1648// if (mAMails->childCount() == 0) {
1643// aEmailsEdit->setEnabled(false); 1649// aEmailsEdit->setEnabled(false);
1644// } 1650// }
1645} 1651}
1646 1652
1647void KOPrefsDialog::updateItem() 1653void KOPrefsDialog::updateItem()
1648{ 1654{
1649 // QListViewItem *item; 1655 // QListViewItem *item;
1650// item = mAMails->selectedItem(); 1656// item = mAMails->selectedItem();
1651// if (!item) return; 1657// if (!item) return;
1652// item->setText(0,aEmailsEdit->text()); 1658// item->setText(0,aEmailsEdit->text());
1653} 1659}
1654 1660
1655void KOPrefsDialog::updateInput() 1661void KOPrefsDialog::updateInput()
1656{ 1662{
1657// QListViewItem *item; 1663// QListViewItem *item;
1658// item = mAMails->selectedItem(); 1664// item = mAMails->selectedItem();
1659// if (!item) return; 1665// if (!item) return;
1660// aEmailsEdit->setEnabled(true); 1666// aEmailsEdit->setEnabled(true);
1661// aEmailsEdit->setText(item->text(0)); 1667// aEmailsEdit->setText(item->text(0));
1662} 1668}
1663void KOPrefsDialog::updateTimezoneOffset( int index ) 1669void KOPrefsDialog::updateTimezoneOffset( int index )
1664{ 1670{
1665 /* 1671 /*
1666 qDebug("updateTimezoneOffset %d ", index); 1672 qDebug("updateTimezoneOffset %d ", index);
1667 if ( index < 24 ) { 1673 if ( index < 24 ) {
1668 mTimezoneOffsetSpin->setEnabled ( false ); 1674 mTimezoneOffsetSpin->setEnabled ( false );
1669 mTimezoneOffsetSpin->setValue( ( index-11 ) * 60 ); 1675 mTimezoneOffsetSpin->setValue( ( index-11 ) * 60 );
1670 1676
1671 1677
1672 } else { 1678 } else {
1673 if ( index == 24 ) { 1679 if ( index == 24 ) {
1674 mTimezoneOffsetSpin->setEnabled ( true ); 1680 mTimezoneOffsetSpin->setEnabled ( true );
1675 mTimezoneOffsetSpin->setValue( KOPrefs::instance()->mTimeZoneOffset); 1681 mTimezoneOffsetSpin->setValue( KOPrefs::instance()->mTimeZoneOffset);
1676 1682
1677 } else { 1683 } else {
1678 mTimezoneOffsetSpin->setEnabled ( false ); 1684 mTimezoneOffsetSpin->setEnabled ( false );
1679 mTimezoneOffsetSpin->setValue( 0 ); 1685 mTimezoneOffsetSpin->setValue( 0 );
1680 } 1686 }
1681 } 1687 }
1682 */ 1688 */
1683} 1689}
1684 1690
1685void KOPrefsDialog::setupTimeZoneTab() 1691void KOPrefsDialog::setupTimeZoneTab()
1686{ 1692{
1687#if 0 1693#if 0
1688 QFrame *topFrame = addPage(i18n("Time Zone"),0,0); 1694 QFrame *topFrame = addPage(i18n("Time Zone"),0,0);
1689 // DesktopIcon("clock",KIcon::SizeMedium)); 1695 // DesktopIcon("clock",KIcon::SizeMedium));
1690 1696
1691 QGridLayout *topLayout = new QGridLayout(topFrame,5,2); 1697 QGridLayout *topLayout = new QGridLayout(topFrame,5,2);
1692 topLayout->setSpacing(mSpacingHint); 1698 topLayout->setSpacing(mSpacingHint);
1693 topLayout->setMargin(mMarginHint); 1699 topLayout->setMargin(mMarginHint);
1694 1700
1695 QHBox *timeZoneBox = new QHBox( topFrame ); 1701 QHBox *timeZoneBox = new QHBox( topFrame );
1696 topLayout->addMultiCellWidget( timeZoneBox, 0, 0, 0, 1 ); 1702 topLayout->addMultiCellWidget( timeZoneBox, 0, 0, 0, 1 );
1697 1703
1698 new QLabel( i18n("Timezone:"), timeZoneBox ); 1704 new QLabel( i18n("Timezone:"), timeZoneBox );
1699 mTimeZoneCombo = new QComboBox( timeZoneBox ); 1705 mTimeZoneCombo = new QComboBox( timeZoneBox );
1700 if ( QApplication::desktop()->width() < 300 ) { 1706 if ( QApplication::desktop()->width() < 300 ) {
1701 mTimeZoneCombo->setMaximumWidth(150); 1707 mTimeZoneCombo->setMaximumWidth(150);
1702 } 1708 }
1703 1709
1704 QStringList list; 1710 QStringList list;
1705 list = KGlobal::locale()->timeZoneList(); 1711 list = KGlobal::locale()->timeZoneList();
1706 mTimeZoneCombo->insertStringList(list); 1712 mTimeZoneCombo->insertStringList(list);
1707 1713
1708 // find the currently set time zone and select it 1714 // find the currently set time zone and select it
1709 QString sCurrentlySet = KOPrefs::instance()->mTimeZoneId; 1715 QString sCurrentlySet = KOPrefs::instance()->mTimeZoneId;
1710 int nCurrentlySet = 11; 1716 int nCurrentlySet = 11;
1711 for (int i = 0; i < mTimeZoneCombo->count(); i++) 1717 for (int i = 0; i < mTimeZoneCombo->count(); i++)
1712 { 1718 {
1713 if (mTimeZoneCombo->text(i) == sCurrentlySet) 1719 if (mTimeZoneCombo->text(i) == sCurrentlySet)
1714 { 1720 {
1715 nCurrentlySet = i; 1721 nCurrentlySet = i;
1716 break; 1722 break;
1717 } 1723 }
1718 } 1724 }
1719 mTimeZoneCombo->setCurrentItem(nCurrentlySet); 1725 mTimeZoneCombo->setCurrentItem(nCurrentlySet);
1720 int iii = 1; 1726 int iii = 1;
1721 KPrefsDialogWidBool *sb = 1727 KPrefsDialogWidBool *sb =
1722 addWidBool(i18n("Timezone has daylight saving"), 1728 addWidBool(i18n("Timezone has daylight saving"),
1723 &(KOPrefs::instance()->mUseDaylightsaving),topFrame); 1729 &(KOPrefs::instance()->mUseDaylightsaving),topFrame);
1724 topLayout->addMultiCellWidget(sb->checkBox(), iii,iii,0,1); 1730 topLayout->addMultiCellWidget(sb->checkBox(), iii,iii,0,1);
1725 ++iii; 1731 ++iii;
1726 QLabel* lab = new QLabel( i18n("Actual start and end is the\nsunday before this date."), topFrame ); 1732 QLabel* lab = new QLabel( i18n("Actual start and end is the\nsunday before this date."), topFrame );
1727 topLayout->addMultiCellWidget(lab, iii,iii,0,1); 1733 topLayout->addMultiCellWidget(lab, iii,iii,0,1);
1728 ++iii; 1734 ++iii;
1729 lab = new QLabel( i18n("The year in the date is ignored."), topFrame ); 1735 lab = new QLabel( i18n("The year in the date is ignored."), topFrame );
1730 topLayout->addMultiCellWidget(lab, iii,iii,0,1); 1736 topLayout->addMultiCellWidget(lab, iii,iii,0,1);
1731 ++iii; 1737 ++iii;
1732 lab = new QLabel( i18n("Daylight start:"), topFrame ); 1738 lab = new QLabel( i18n("Daylight start:"), topFrame );
1733 topLayout->addWidget(lab, iii,0); 1739 topLayout->addWidget(lab, iii,0);
1734 mStartDateSavingEdit = new KDateEdit(topFrame); 1740 mStartDateSavingEdit = new KDateEdit(topFrame);
1735 topLayout->addWidget(mStartDateSavingEdit, iii,1); 1741 topLayout->addWidget(mStartDateSavingEdit, iii,1);
1736 ++iii; 1742 ++iii;
1737 1743
1738 lab = new QLabel( i18n("Daylight end:"), topFrame ); 1744 lab = new QLabel( i18n("Daylight end:"), topFrame );
1739 topLayout->addWidget(lab, iii,0); 1745 topLayout->addWidget(lab, iii,0);
1740 mEndDateSavingEdit = new KDateEdit(topFrame); 1746 mEndDateSavingEdit = new KDateEdit(topFrame);
1741 topLayout->addWidget(mEndDateSavingEdit, iii,1); 1747 topLayout->addWidget(mEndDateSavingEdit, iii,1);
1742 ++iii; 1748 ++iii;
1743 QDate current ( 2001, 1,1); 1749 QDate current ( 2001, 1,1);
1744 mStartDateSavingEdit->setDate(current.addDays(KOPrefs::instance()->mDaylightsavingStart-1)); 1750 mStartDateSavingEdit->setDate(current.addDays(KOPrefs::instance()->mDaylightsavingStart-1));
1745 mEndDateSavingEdit->setDate(current.addDays(KOPrefs::instance()->mDaylightsavingEnd-1)); 1751 mEndDateSavingEdit->setDate(current.addDays(KOPrefs::instance()->mDaylightsavingEnd-1));
1746#endif 1752#endif
1747 1753
1748} 1754}
1749 1755
diff --git a/korganizer/mainwindow.cpp b/korganizer/mainwindow.cpp
index 25e76ee..2c04852 100644
--- a/korganizer/mainwindow.cpp
+++ b/korganizer/mainwindow.cpp
@@ -343,772 +343,777 @@ MainWindow::MainWindow( QWidget *parent, const char *name, QString msg) :
343 connect(mSyncManager , SIGNAL( save() ), this, SLOT( save() ) ); 343 connect(mSyncManager , SIGNAL( save() ), this, SLOT( save() ) );
344 connect(mView , SIGNAL( save() ), this, SLOT( save() ) ); 344 connect(mView , SIGNAL( save() ), this, SLOT( save() ) );
345 connect(mView , SIGNAL( saveStopTimer() ), this, SLOT( saveStopTimer() ) ); 345 connect(mView , SIGNAL( saveStopTimer() ), this, SLOT( saveStopTimer() ) );
346 connect(mSyncManager , SIGNAL( request_file() ), this, SLOT( syncFileRequest() ) ); 346 connect(mSyncManager , SIGNAL( request_file() ), this, SLOT( syncFileRequest() ) );
347 connect(mSyncManager , SIGNAL( getFile( bool )), this, SLOT(getFile( bool ) ) ); 347 connect(mSyncManager , SIGNAL( getFile( bool )), this, SLOT(getFile( bool ) ) );
348 mSyncManager->setDefaultFileName( sentSyncFile()); 348 mSyncManager->setDefaultFileName( sentSyncFile());
349 connect ( syncMenu, SIGNAL( activated ( int ) ), mSyncManager, SLOT (slotSyncMenu( int ) ) ); 349 connect ( syncMenu, SIGNAL( activated ( int ) ), mSyncManager, SLOT (slotSyncMenu( int ) ) );
350 mSyncManager->fillSyncMenu(); 350 mSyncManager->fillSyncMenu();
351 351
352 352
353 353
354 mView->viewManager()->agendaView()->setStartHour( KOPrefs::instance()->mDayBegins ); 354 mView->viewManager()->agendaView()->setStartHour( KOPrefs::instance()->mDayBegins );
355 if ( showWarning ) { 355 if ( showWarning ) {
356 KMessageBox::information( this, 356 KMessageBox::information( this,
357 "You are starting KO/Pi for the first time.\nPlease read menu: Help-What's New,\nif you did an update!\nPlease choose your timezone in the \nConfigure Dialog TAB Time Zone!\nPlease choose your language\nin the TAB Locale!\nYou get the Configure Dialog\nvia Menu: Actions - Configure....\nClick OK to show the Configure Dialog!\n", "KO/Pi information"); 357 "You are starting KO/Pi for the first time.\nPlease read menu: Help-What's New,\nif you did an update!\nPlease choose your timezone in the \nConfigure Dialog TAB Time Zone!\nPlease choose your language\nin the TAB Locale!\nYou get the Configure Dialog\nvia Menu: Actions - Configure....\nClick OK to show the Configure Dialog!\n", "KO/Pi information");
358 qApp->processEvents(); 358 qApp->processEvents();
359 mView->dialogManager()->showSyncOptions(); 359 mView->dialogManager()->showSyncOptions();
360 } 360 }
361 361
362 //US listen for result adressed from Ka/Pi 362 //US listen for result adressed from Ka/Pi
363#ifndef DESKTOP_VERSION 363#ifndef DESKTOP_VERSION
364 connect(qApp, SIGNAL (appMessage ( const QCString &, const QByteArray & )), ExternalAppHandler::instance(), SLOT (appMessage ( const QCString &, const QByteArray & ))); 364 connect(qApp, SIGNAL (appMessage ( const QCString &, const QByteArray & )), ExternalAppHandler::instance(), SLOT (appMessage ( const QCString &, const QByteArray & )));
365#endif 365#endif
366#ifndef DESKTOP_VERSION 366#ifndef DESKTOP_VERSION
367 infrared = 0; 367 infrared = 0;
368#endif 368#endif
369 updateFilterToolbar(); 369 updateFilterToolbar();
370 updateWeek( mView->startDate() ); 370 updateWeek( mView->startDate() );
371 connect( mView->dateNavigator(), SIGNAL( datesSelected( const KCal::DateList & ) ), 371 connect( mView->dateNavigator(), SIGNAL( datesSelected( const KCal::DateList & ) ),
372 SLOT( updateWeekNum( const KCal::DateList & ) ) ); 372 SLOT( updateWeekNum( const KCal::DateList & ) ) );
373 mBRdisabled = false; 373 mBRdisabled = false;
374 //toggleBeamReceive(); 374 //toggleBeamReceive();
375 int tiint= 3000; 375 int tiint= 3000;
376#ifndef DESKTOP_VERSION 376#ifndef DESKTOP_VERSION
377 tiint = 5000; 377 tiint = 5000;
378#endif 378#endif
379 QTimer::singleShot( tiint, mView, SLOT ( checkAlarms() )); 379 QTimer::singleShot( tiint, mView, SLOT ( checkAlarms() ));
380} 380}
381MainWindow::~MainWindow() 381MainWindow::~MainWindow()
382{ 382{
383 //qDebug("MainWindow::~MainWindow() "); 383 //qDebug("MainWindow::~MainWindow() ");
384 //save toolbar location 384 //save toolbar location
385 delete mCalendar; 385 delete mCalendar;
386 delete mSyncManager; 386 delete mSyncManager;
387#ifndef DESKTOP_VERSION 387#ifndef DESKTOP_VERSION
388 if ( infrared ) 388 if ( infrared )
389 delete infrared; 389 delete infrared;
390#endif 390#endif
391 391
392 392
393} 393}
394 394
395void MainWindow::disableBR(bool b) 395void MainWindow::disableBR(bool b)
396{ 396{
397#ifndef DESKTOP_VERSION 397#ifndef DESKTOP_VERSION
398 if ( b ) { 398 if ( b ) {
399 if ( infrared ) { 399 if ( infrared ) {
400 toggleBeamReceive(); 400 toggleBeamReceive();
401 mBRdisabled = true; 401 mBRdisabled = true;
402 } 402 }
403 mBRdisabled = true; 403 mBRdisabled = true;
404 } else { 404 } else {
405 if ( mBRdisabled ) { 405 if ( mBRdisabled ) {
406 mBRdisabled = false; 406 mBRdisabled = false;
407 //makes no sense,because other cal ap is probably running 407 //makes no sense,because other cal ap is probably running
408 // toggleBeamReceive(); 408 // toggleBeamReceive();
409 } 409 }
410 } 410 }
411#endif 411#endif
412 412
413} 413}
414bool MainWindow::beamReceiveEnabled() 414bool MainWindow::beamReceiveEnabled()
415{ 415{
416#ifndef DESKTOP_VERSION 416#ifndef DESKTOP_VERSION
417 return ( infrared != 0 ); 417 return ( infrared != 0 );
418#endif 418#endif
419 return false; 419 return false;
420} 420}
421 421
422void MainWindow::toggleBeamReceive() 422void MainWindow::toggleBeamReceive()
423{ 423{
424 if ( mBRdisabled ) 424 if ( mBRdisabled )
425 return; 425 return;
426#ifndef DESKTOP_VERSION 426#ifndef DESKTOP_VERSION
427 if ( infrared ) { 427 if ( infrared ) {
428 qDebug("KO: Disable BeamReceive "); 428 qDebug("KO: Disable BeamReceive ");
429 delete infrared; 429 delete infrared;
430 infrared = 0; 430 infrared = 0;
431 brAction->setOn(false); 431 brAction->setOn(false);
432 return; 432 return;
433 } 433 }
434 qDebug("KO: Enable BeamReceive "); 434 qDebug("KO: Enable BeamReceive ");
435 brAction->setOn(true); 435 brAction->setOn(true);
436 infrared = new QCopChannel("QPE/Application/datebook",this, "channel" ) ; 436 infrared = new QCopChannel("QPE/Application/datebook",this, "channel" ) ;
437 QObject::connect( infrared, SIGNAL (received ( const QCString &, const QByteArray & )),this, SLOT(recieve( const QCString&, const QByteArray& ))); 437 QObject::connect( infrared, SIGNAL (received ( const QCString &, const QByteArray & )),this, SLOT(recieve( const QCString&, const QByteArray& )));
438#endif 438#endif
439} 439}
440void MainWindow::showMaximized () 440void MainWindow::showMaximized ()
441{ 441{
442#ifndef DESKTOP_VERSION 442#ifndef DESKTOP_VERSION
443 if ( ! globalFlagBlockStartup ) 443 if ( ! globalFlagBlockStartup )
444 if ( mClosed ) 444 if ( mClosed )
445 mView->goToday(); 445 mView->goToday();
446#endif 446#endif
447 QWidget::showMaximized () ; 447 QWidget::showMaximized () ;
448 mClosed = false; 448 mClosed = false;
449} 449}
450void MainWindow::closeEvent( QCloseEvent* ce ) 450void MainWindow::closeEvent( QCloseEvent* ce )
451{ 451{
452 452
453 453
454 454
455 if ( ! KOPrefs::instance()->mAskForQuit ) { 455 if ( ! KOPrefs::instance()->mAskForQuit ) {
456 saveOnClose(); 456 saveOnClose();
457 mClosed = true; 457 mClosed = true;
458 ce->accept(); 458 ce->accept();
459 return; 459 return;
460 460
461 } 461 }
462 462
463 switch( QMessageBox::information( this, "KO/Pi", 463 switch( QMessageBox::information( this, "KO/Pi",
464 i18n("Do you really want\nto close KO/Pi?"), 464 i18n("Do you really want\nto close KO/Pi?"),
465 i18n("Close"), i18n("No"), 465 i18n("Close"), i18n("No"),
466 0, 0 ) ) { 466 0, 0 ) ) {
467 case 0: 467 case 0:
468 saveOnClose(); 468 saveOnClose();
469 mClosed = true; 469 mClosed = true;
470 ce->accept(); 470 ce->accept();
471 break; 471 break;
472 case 1: 472 case 1:
473 ce->ignore(); 473 ce->ignore();
474 break; 474 break;
475 case 2: 475 case 2:
476 476
477 default: 477 default:
478 break; 478 break;
479 } 479 }
480 480
481 481
482} 482}
483 483
484void MainWindow::recieve( const QCString& cmsg, const QByteArray& data ) 484void MainWindow::recieve( const QCString& cmsg, const QByteArray& data )
485{ 485{
486 QDataStream stream( data, IO_ReadOnly ); 486 QDataStream stream( data, IO_ReadOnly );
487 // QMessageBox::about( this, "About KOrganizer/Pi", "*" +msg +"*" ); 487 // QMessageBox::about( this, "About KOrganizer/Pi", "*" +msg +"*" );
488 //QString datamess; 488 //QString datamess;
489 //qDebug("message "); 489 //qDebug("message ");
490 qDebug("KO: QCOP message received: %s ", cmsg.data() ); 490 qDebug("KO: QCOP message received: %s ", cmsg.data() );
491 491
492 if ( cmsg == "setDocument(QString)" ) { 492 if ( cmsg == "setDocument(QString)" ) {
493 QDataStream stream( data, IO_ReadOnly ); 493 QDataStream stream( data, IO_ReadOnly );
494 QString fileName; 494 QString fileName;
495 stream >> fileName; 495 stream >> fileName;
496 //qDebug("filename %s ", fileName.latin1()); 496 //qDebug("filename %s ", fileName.latin1());
497 showMaximized(); 497 showMaximized();
498 raise(); 498 raise();
499 KOPrefs::instance()->mLastSyncedLocalFile = fileName ; 499 KOPrefs::instance()->mLastSyncedLocalFile = fileName ;
500 mSyncManager->slotSyncMenu( 1002 ); 500 mSyncManager->slotSyncMenu( 1002 );
501 return; 501 return;
502 } 502 }
503 503
504 if ( cmsg == "-writeFile" ) { 504 if ( cmsg == "-writeFile" ) {
505 // I made from the "-writeFile" an "-writeAlarm" 505 // I made from the "-writeFile" an "-writeAlarm"
506 mView->viewManager()->showWhatsNextView(); 506 mView->viewManager()->showWhatsNextView();
507 mCalendar->checkAlarmForIncidence( 0, true); 507 mCalendar->checkAlarmForIncidence( 0, true);
508 showMaximized(); 508 showMaximized();
509 raise(); 509 raise();
510 return; 510 return;
511 511
512 } 512 }
513 if ( cmsg == "-writeFileSilent" ) { 513 if ( cmsg == "-writeFileSilent" ) {
514 // I made from the "-writeFile" an "-writeAlarm" 514 // I made from the "-writeFile" an "-writeAlarm"
515 // mView->viewManager()->showWhatsNextView(); 515 // mView->viewManager()->showWhatsNextView();
516 mCalendar->checkAlarmForIncidence( 0, true); 516 mCalendar->checkAlarmForIncidence( 0, true);
517 //showMaximized(); 517 //showMaximized();
518 //raise(); 518 //raise();
519 hide(); 519 hide();
520 return; 520 return;
521 } 521 }
522 if ( cmsg == "-newCountdown" ) { 522 if ( cmsg == "-newCountdown" ) {
523 qDebug("newCountdown "); 523 qDebug("newCountdown ");
524 524
525 } 525 }
526 QString msg ; 526 QString msg ;
527 QString allmsg = cmsg; 527 QString allmsg = cmsg;
528 while ( allmsg.length() > 0 ) { 528 while ( allmsg.length() > 0 ) {
529 int nextC = allmsg.find( "-", 1 ); 529 int nextC = allmsg.find( "-", 1 );
530 if ( nextC == -1 ) { 530 if ( nextC == -1 ) {
531 msg = allmsg; 531 msg = allmsg;
532 allmsg = ""; 532 allmsg = "";
533 } else{ 533 } else{
534 msg = allmsg.left( nextC ); 534 msg = allmsg.left( nextC );
535 allmsg = allmsg.mid( nextC, allmsg.length()-nextC ); 535 allmsg = allmsg.mid( nextC, allmsg.length()-nextC );
536 } 536 }
537 //qDebug("msg: %s all: %s ", msg.latin1(), allmsg.latin1() ); 537 //qDebug("msg: %s all: %s ", msg.latin1(), allmsg.latin1() );
538 if ( msg == "-newEvent" ) { 538 if ( msg == "-newEvent" ) {
539 mView->newEvent(); 539 mView->newEvent();
540 } 540 }
541 if ( msg == "-newTodo" ) { 541 if ( msg == "-newTodo" ) {
542 mView->newTodo(); 542 mView->newTodo();
543 543
544 } 544 }
545 if ( msg == "-showWN" ) { 545 if ( msg == "-showWN" ) {
546 mView->viewManager()->showWhatsNextView(); 546 mView->viewManager()->showWhatsNextView();
547 } 547 }
548 if ( msg == "-showTodo" ) { 548 if ( msg == "-showTodo" ) {
549 mView->viewManager()->showTodoView(); 549 mView->viewManager()->showTodoView();
550 } 550 }
551 if ( msg == "-showList" ) { 551 if ( msg == "-showList" ) {
552 mView->viewManager()->showListView(); 552 mView->viewManager()->showListView();
553 } 553 }
554 else if ( msg == "-showDay" ) { 554 else if ( msg == "-showDay" ) {
555 mView->viewManager()->showDayView(); 555 mView->viewManager()->showDayView();
556 } 556 }
557 else if ( msg == "-showWWeek" ) { 557 else if ( msg == "-showWWeek" ) {
558 mView->viewManager()->showWorkWeekView(); 558 mView->viewManager()->showWorkWeekView();
559 } 559 }
560 else if ( msg == "-ringSync" ) { 560 else if ( msg == "-ringSync" ) {
561 mSyncManager->multiSync( false ); 561 mSyncManager->multiSync( false );
562 } 562 }
563 else if ( msg == "-showWeek" ) { 563 else if ( msg == "-showWeek" ) {
564 mView->viewManager()->showWeekView(); 564 mView->viewManager()->showWeekView();
565 } 565 }
566 else if ( msg == "-showTodo" ) { 566 else if ( msg == "-showTodo" ) {
567 mView->viewManager()->showTodoView(); 567 mView->viewManager()->showTodoView();
568 } 568 }
569 else if ( msg == "-showJournal" ) { 569 else if ( msg == "-showJournal" ) {
570 mView->dateNavigator()->selectDates( 1 ); 570 mView->dateNavigator()->selectDates( 1 );
571 mView->dateNavigator()->selectToday(); 571 mView->dateNavigator()->selectToday();
572 mView->viewManager()->showJournalView(); 572 mView->viewManager()->showJournalView();
573 } 573 }
574 else if ( msg == "-showKO" ) { 574 else if ( msg == "-showKO" ) {
575 mView->viewManager()->showNextXView(); 575 mView->viewManager()->showNextXView();
576 } 576 }
577 else if ( msg == "-showWNext" ) { 577 else if ( msg == "-showWNext" ) {
578 mView->viewManager()->showWhatsNextView(); 578 mView->viewManager()->showWhatsNextView();
579 } 579 }
580 else if ( msg == "nextView()" ) { 580 else if ( msg == "nextView()" ) {
581 mView->viewManager()->showNextView(); 581 mView->viewManager()->showNextView();
582 } 582 }
583 else if ( msg == "-showNextXView" ) { 583 else if ( msg == "-showNextXView" ) {
584 mView->viewManager()->showNextXView(); 584 mView->viewManager()->showNextXView();
585 } 585 }
586 586
587 587
588 } 588 }
589 589
590 showMaximized(); 590 showMaximized();
591 raise(); 591 raise();
592} 592}
593 593
594QPixmap MainWindow::loadPixmap( QString name ) 594QPixmap MainWindow::loadPixmap( QString name )
595{ 595{
596 return SmallIcon( name ); 596 return SmallIcon( name );
597 597
598} 598}
599void MainWindow::setUsesBigPixmaps ( bool b ) 599void MainWindow::setUsesBigPixmaps ( bool b )
600{ 600{
601 qDebug("KO: MainWindow::setUsesBigPixmaps %d called", b); 601 qDebug("KO: MainWindow::setUsesBigPixmaps %d called", b);
602 if ( b ) 602 if ( b )
603 qDebug("KO: BigPixmaps are not supported "); 603 qDebug("KO: BigPixmaps are not supported ");
604} 604}
605void MainWindow::initActions() 605void MainWindow::initActions()
606{ 606{
607 //KOPrefs::instance()->mShowFullMenu 607 //KOPrefs::instance()->mShowFullMenu
608 iconToolBar->clear(); 608 iconToolBar->clear();
609 KOPrefs *p = KOPrefs::instance(); 609 KOPrefs *p = KOPrefs::instance();
610 //QPEMenuBar *menuBar1;// = new QPEMenuBar( iconToolBar ); 610 //QPEMenuBar *menuBar1;// = new QPEMenuBar( iconToolBar );
611 611
612 QPopupMenu *viewMenu = new QPopupMenu( this ); 612 QPopupMenu *viewMenu = new QPopupMenu( this );
613 QPopupMenu *actionMenu = new QPopupMenu( this ); 613 QPopupMenu *actionMenu = new QPopupMenu( this );
614 QPopupMenu *importMenu = new QPopupMenu( this ); 614 QPopupMenu *importMenu = new QPopupMenu( this );
615 QPopupMenu *importMenu_X = new QPopupMenu( this ); 615 QPopupMenu *importMenu_X = new QPopupMenu( this );
616 QPopupMenu *exportMenu_X = new QPopupMenu( this ); 616 QPopupMenu *exportMenu_X = new QPopupMenu( this );
617 QPopupMenu *beamMenu_X = new QPopupMenu( this ); 617 QPopupMenu *beamMenu_X = new QPopupMenu( this );
618 selectFilterMenu = new QPopupMenu( this ); 618 selectFilterMenu = new QPopupMenu( this );
619 selectFilterMenu->setCheckable( true ); 619 selectFilterMenu->setCheckable( true );
620 syncMenu = new QPopupMenu( this ); 620 syncMenu = new QPopupMenu( this );
621 configureAgendaMenu = new QPopupMenu( this ); 621 configureAgendaMenu = new QPopupMenu( this );
622 configureToolBarMenu = new QPopupMenu( this ); 622 configureToolBarMenu = new QPopupMenu( this );
623 QPopupMenu *helpMenu = new QPopupMenu( this ); 623 QPopupMenu *helpMenu = new QPopupMenu( this );
624 QIconSet icon; 624 QIconSet icon;
625 int pixWid = 22, pixHei = 22; 625 int pixWid = 22, pixHei = 22;
626 QString pathString = ""; 626 QString pathString = "";
627 if ( !p->mToolBarMiniIcons ) { 627 if ( !p->mToolBarMiniIcons ) {
628 if ( QApplication::desktop()->width() < 480 ) { 628 if ( QApplication::desktop()->width() < 480 ) {
629 pathString += "icons16/"; 629 pathString += "icons16/";
630 pixWid = 18; pixHei = 16; 630 pixWid = 18; pixHei = 16;
631 } 631 }
632 } else { 632 } else {
633 pathString += "iconsmini/"; 633 pathString += "iconsmini/";
634 pixWid = 18; pixHei = 16; 634 pixWid = 18; pixHei = 16;
635 } 635 }
636 if ( KOPrefs::instance()->mShowFullMenu ) { 636 if ( KOPrefs::instance()->mShowFullMenu ) {
637 QMenuBar *menuBar1; 637 QMenuBar *menuBar1;
638 menuBar1 = menuBar(); 638 menuBar1 = menuBar();
639 menuBar1->insertItem( i18n("File"), importMenu ); 639 menuBar1->insertItem( i18n("File"), importMenu );
640 menuBar1->insertItem( i18n("View"), viewMenu ); 640 menuBar1->insertItem( i18n("View"), viewMenu );
641 menuBar1->insertItem( i18n("Actions"), actionMenu ); 641 menuBar1->insertItem( i18n("Actions"), actionMenu );
642#ifdef DESKTOP_VERSION 642#ifdef DESKTOP_VERSION
643 menuBar1->insertItem( i18n("Synchronize"), syncMenu ); 643 menuBar1->insertItem( i18n("Synchronize"), syncMenu );
644 menuBar1->insertItem( i18n("AgendaSize"),configureAgendaMenu ); 644 menuBar1->insertItem( i18n("AgendaSize"),configureAgendaMenu );
645#else 645#else
646 menuBar1->insertItem( i18n("Sync"), syncMenu ); 646 menuBar1->insertItem( i18n("Sync"), syncMenu );
647 menuBar1->insertItem( i18n("Agenda"),configureAgendaMenu ); 647 menuBar1->insertItem( i18n("Agenda"),configureAgendaMenu );
648#endif 648#endif
649 //menuBar1->insertItem( i18n("Toolbar"),configureToolBarMenu ); 649 //menuBar1->insertItem( i18n("Toolbar"),configureToolBarMenu );
650 menuBar1->insertItem( i18n("Filter"),selectFilterMenu ); 650 menuBar1->insertItem( i18n("Filter"),selectFilterMenu );
651 menuBar1->insertItem( i18n("Help"), helpMenu ); 651 menuBar1->insertItem( i18n("Help"), helpMenu );
652 } else { 652 } else {
653 QPEMenuBar *menuBar1; 653 QPEMenuBar *menuBar1;
654 menuBar1 = new QPEMenuBar( iconToolBar ); 654 menuBar1 = new QPEMenuBar( iconToolBar );
655 QPopupMenu *menuBar = new QPopupMenu( this ); 655 QPopupMenu *menuBar = new QPopupMenu( this );
656 icon = loadPixmap( pathString + "z_menu" ); 656 icon = loadPixmap( pathString + "z_menu" );
657 menuBar1->insertItem( icon.pixmap(), menuBar); 657 menuBar1->insertItem( icon.pixmap(), menuBar);
658 //menuBar1->insertItem( i18n("ME"), menuBar); 658 //menuBar1->insertItem( i18n("ME"), menuBar);
659 menuBar->insertItem( i18n("File"), importMenu ); 659 menuBar->insertItem( i18n("File"), importMenu );
660 menuBar->insertItem( i18n("View"), viewMenu ); 660 menuBar->insertItem( i18n("View"), viewMenu );
661 menuBar->insertItem( i18n("Actions"), actionMenu ); 661 menuBar->insertItem( i18n("Actions"), actionMenu );
662 menuBar->insertItem( i18n("Synchronize"), syncMenu ); 662 menuBar->insertItem( i18n("Synchronize"), syncMenu );
663 menuBar->insertItem( i18n("AgendaSize"),configureAgendaMenu ); 663 menuBar->insertItem( i18n("AgendaSize"),configureAgendaMenu );
664 menuBar->insertItem( i18n("Toolbar"),configureToolBarMenu ); 664 menuBar->insertItem( i18n("Toolbar"),configureToolBarMenu );
665 menuBar->insertItem( i18n("Filter"),selectFilterMenu ); 665 menuBar->insertItem( i18n("Filter"),selectFilterMenu );
666 menuBar->insertItem( i18n("Help"), helpMenu ); 666 menuBar->insertItem( i18n("Help"), helpMenu );
667 //menuBar1->setMaximumWidth( menuBar1->sizeHint().width() ); 667 //menuBar1->setMaximumWidth( menuBar1->sizeHint().width() );
668 menuBar1->setMaximumSize( menuBar1->sizeHint( )); 668 menuBar1->setMaximumSize( menuBar1->sizeHint( ));
669 } 669 }
670 connect ( selectFilterMenu, SIGNAL( activated ( int ) ), this, SLOT (selectFilter( int ) ) ); 670 connect ( selectFilterMenu, SIGNAL( activated ( int ) ), this, SLOT (selectFilter( int ) ) );
671 connect ( selectFilterMenu, SIGNAL( aboutToShow() ), this, SLOT (fillFilterMenu() ) ); 671 connect ( selectFilterMenu, SIGNAL( aboutToShow() ), this, SLOT (fillFilterMenu() ) );
672 672
673 673
674 mWeekBgColor = iconToolBar->backgroundColor(); 674 mWeekBgColor = iconToolBar->backgroundColor();
675 mWeekPixmap.resize( pixWid , pixHei ); 675 mWeekPixmap.resize( pixWid , pixHei );
676 mWeekPixmap.fill( mWeekBgColor ); 676 mWeekPixmap.fill( mWeekBgColor );
677 icon = mWeekPixmap; 677 icon = mWeekPixmap;
678 mWeekAction = new QAction( i18n("Select week number"),icon, i18n("Select week number"), 0, this ); 678 mWeekAction = new QAction( i18n("Select week number"),icon, i18n("Select week number"), 0, this );
679 if ( p-> mShowIconWeekNum ) 679 if ( p-> mShowIconWeekNum )
680 mWeekAction->addTo( iconToolBar ); 680 mWeekAction->addTo( iconToolBar );
681 mWeekFont = font(); 681 mWeekFont = font();
682 682
683 int fontPoint = mWeekFont.pointSize(); 683 int fontPoint = mWeekFont.pointSize();
684 QFontMetrics f( mWeekFont ); 684 QFontMetrics f( mWeekFont );
685 int fontWid = f.width( "30" ); 685 int fontWid = f.width( "30" );
686 while ( fontWid > pixWid ) { 686 while ( fontWid > pixWid ) {
687 --fontPoint; 687 --fontPoint;
688 mWeekFont.setPointSize( fontPoint ); 688 mWeekFont.setPointSize( fontPoint );
689 QFontMetrics f( mWeekFont ); 689 QFontMetrics f( mWeekFont );
690 fontWid = f.width( "30" ); 690 fontWid = f.width( "30" );
691 //qDebug("dec-- "); 691 //qDebug("dec-- ");
692 } 692 }
693 693
694 connect( mWeekAction, SIGNAL( activated() ), 694 connect( mWeekAction, SIGNAL( activated() ),
695 this, SLOT( weekAction() ) ); 695 this, SLOT( weekAction() ) );
696 696
697 connect( this, SIGNAL( selectWeek ( int ) ), mView->dateNavigator(), SLOT( selectWeek ( int ) ) ); 697 connect( this, SIGNAL( selectWeek ( int ) ), mView->dateNavigator(), SLOT( selectWeek ( int ) ) );
698 if ( p->mShowIconFilterview ) { 698 if ( p->mShowIconFilterview ) {
699 icon = loadPixmap( pathString + "filter" ); 699 icon = loadPixmap( pathString + "filter" );
700 actionFilterMenuTB = new QAction( i18n("Filter selector"), icon, i18n("Filter selector"), 0, this ); 700 actionFilterMenuTB = new QAction( i18n("Filter selector"), icon, i18n("Filter selector"), 0, this );
701 connect( actionFilterMenuTB, SIGNAL( activated() ), 701 connect( actionFilterMenuTB, SIGNAL( activated() ),
702 this, SLOT( fillFilterMenuTB() ) ); 702 this, SLOT( fillFilterMenuTB() ) );
703 actionFilterMenuTB->addTo( iconToolBar ); 703 actionFilterMenuTB->addTo( iconToolBar );
704 selectFilterMenuTB = new QPopupMenu( this ); 704 selectFilterMenuTB = new QPopupMenu( this );
705 selectFilterMenuTB->setCheckable( true ); 705 selectFilterMenuTB->setCheckable( true );
706 connect ( selectFilterMenuTB, SIGNAL( activated ( int ) ), this, SLOT (selectFilter( int ) ) ); 706 connect ( selectFilterMenuTB, SIGNAL( activated ( int ) ), this, SLOT (selectFilter( int ) ) );
707 } 707 }
708 708
709 //#endif 709 //#endif
710 // ****************** 710 // ******************
711 QAction *action; 711 QAction *action;
712 // QPopupMenu *configureMenu= new QPopupMenu( menuBar ); 712 // QPopupMenu *configureMenu= new QPopupMenu( menuBar );
713 configureToolBarMenu->setCheckable( true ); 713 configureToolBarMenu->setCheckable( true );
714 714
715 715
716 configureAgendaMenu->setCheckable( true ); 716 configureAgendaMenu->setCheckable( true );
717 int iii ; 717 int iii ;
718 for ( iii = 1;iii<= 10 ;++iii ){ 718 for ( iii = 1;iii<= 10 ;++iii ){
719 configureAgendaMenu->insertItem(i18n("Size %1").arg(iii), (iii+1)*2 ); 719 configureAgendaMenu->insertItem(i18n("Size %1").arg(iii), (iii+1)*2 );
720 } 720 }
721 //configureMenu->insertItem( "AgendaSize",configureAgendaMenu ); 721 //configureMenu->insertItem( "AgendaSize",configureAgendaMenu );
722 722
723 connect( configureAgendaMenu, SIGNAL( aboutToShow()), 723 connect( configureAgendaMenu, SIGNAL( aboutToShow()),
724 this, SLOT( showConfigureAgenda( ) ) ); 724 this, SLOT( showConfigureAgenda( ) ) );
725 725
726 icon = loadPixmap( pathString + "configure" ); 726 icon = loadPixmap( pathString + "configure" );
727 action = new QAction( i18n("Configure"),icon, i18n("Configure..."), 0, this ); 727 action = new QAction( i18n("Configure"),icon, i18n("Configure KO/Pi..."), 0, this );
728 action->addTo( actionMenu ); 728 action->addTo( actionMenu );
729 connect( action, SIGNAL( activated() ), 729 connect( action, SIGNAL( activated() ),
730 mView, SLOT( edit_options() ) ); 730 mView, SLOT( edit_options() ) );
731 icon = loadPixmap( pathString + "configure" );
732 action = new QAction( i18n("Configure"),icon, i18n("Global Settings..."), 0, this );
733 action->addTo( actionMenu );
734 connect( action, SIGNAL( activated() ),
735 mView, SLOT( edit_global_options() ) );
731 actionMenu->insertSeparator(); 736 actionMenu->insertSeparator();
732 737
733 action = new QAction( i18n("Undo Delete"), i18n("Undo Delete..."), 0, this ); 738 action = new QAction( i18n("Undo Delete"), i18n("Undo Delete..."), 0, this );
734 action->addTo( actionMenu ); 739 action->addTo( actionMenu );
735 connect( action, SIGNAL( activated() ), 740 connect( action, SIGNAL( activated() ),
736 mView, SLOT( undo_delete() ) ); 741 mView, SLOT( undo_delete() ) );
737 actionMenu->insertSeparator(); 742 actionMenu->insertSeparator();
738 743
739 icon = loadPixmap( pathString + "newevent" ); 744 icon = loadPixmap( pathString + "newevent" );
740 configureToolBarMenu->insertItem(i18n("Stretched TB"), 5 ); 745 configureToolBarMenu->insertItem(i18n("Stretched TB"), 5 );
741 configureToolBarMenu->insertItem(i18n("Only one toolbar"), 6 ); 746 configureToolBarMenu->insertItem(i18n("Only one toolbar"), 6 );
742 configureToolBarMenu->insertSeparator(); 747 configureToolBarMenu->insertSeparator();
743 configureToolBarMenu->insertItem(i18n("Filtermenu"), 7 ); 748 configureToolBarMenu->insertItem(i18n("Filtermenu"), 7 );
744 configureToolBarMenu->insertSeparator(); 749 configureToolBarMenu->insertSeparator();
745 configureToolBarMenu->insertItem(i18n("Week Number"), 400); 750 configureToolBarMenu->insertItem(i18n("Week Number"), 400);
746 configureToolBarMenu->insertItem(icon, i18n("New Event..."), 10 ); 751 configureToolBarMenu->insertItem(icon, i18n("New Event..."), 10 );
747 QAction* ne_action = new QAction( i18n("New Event..."), icon, i18n("New Event..."), 0, this ); 752 QAction* ne_action = new QAction( i18n("New Event..."), icon, i18n("New Event..."), 0, this );
748 ne_action->addTo( actionMenu ); 753 ne_action->addTo( actionMenu );
749 connect( ne_action, SIGNAL( activated() ), 754 connect( ne_action, SIGNAL( activated() ),
750 mView, SLOT( newEvent() ) ); 755 mView, SLOT( newEvent() ) );
751 icon = loadPixmap( pathString + "newtodo" ); 756 icon = loadPixmap( pathString + "newtodo" );
752 configureToolBarMenu->insertItem(icon, i18n("New Todo..."), 20 ); 757 configureToolBarMenu->insertItem(icon, i18n("New Todo..."), 20 );
753 QAction* nt_action = new QAction( i18n("New Todo..."), icon, i18n("New Todo..."), 0, this ); 758 QAction* nt_action = new QAction( i18n("New Todo..."), icon, i18n("New Todo..."), 0, this );
754 nt_action->addTo( actionMenu ); 759 nt_action->addTo( actionMenu );
755 connect( nt_action, SIGNAL( activated() ), 760 connect( nt_action, SIGNAL( activated() ),
756 mView, SLOT( newTodo() ) ); 761 mView, SLOT( newTodo() ) );
757 762
758 icon = loadPixmap( pathString + "today" ); 763 icon = loadPixmap( pathString + "today" );
759 QAction* today_action = new QAction( i18n("Go to Today"), icon, i18n("Go to Today"), 0, this ); 764 QAction* today_action = new QAction( i18n("Go to Today"), icon, i18n("Go to Today"), 0, this );
760 today_action->addTo( viewMenu ); 765 today_action->addTo( viewMenu );
761 connect( today_action, SIGNAL( activated() ), 766 connect( today_action, SIGNAL( activated() ),
762 mView, SLOT( goToday() ) ); 767 mView, SLOT( goToday() ) );
763 viewMenu->insertSeparator(); 768 viewMenu->insertSeparator();
764 769
765 // *********************** 770 // ***********************
766 if ( KOPrefs::instance()->mVerticalScreen ) { 771 if ( KOPrefs::instance()->mVerticalScreen ) {
767 icon = SmallIcon( "1updownarrow" ); 772 icon = SmallIcon( "1updownarrow" );
768 } else { 773 } else {
769 icon = SmallIcon("1leftrightarrow" ); 774 icon = SmallIcon("1leftrightarrow" );
770 } 775 }
771 configureToolBarMenu->insertItem(icon, i18n("Toggle Fullscreen"), 28 ); 776 configureToolBarMenu->insertItem(icon, i18n("Toggle Fullscreen"), 28 );
772 QAction* FSaction = new QAction( i18n("Toggle Fullscreen"), icon, i18n("Toggle Fullscreen"), 0, this ); 777 QAction* FSaction = new QAction( i18n("Toggle Fullscreen"), icon, i18n("Toggle Fullscreen"), 0, this );
773 FSaction->addTo( viewMenu ); 778 FSaction->addTo( viewMenu );
774 connect( FSaction, SIGNAL( activated() ), mView, SLOT( toggleExpand() )); 779 connect( FSaction, SIGNAL( activated() ), mView, SLOT( toggleExpand() ));
775 780
776 icon = loadPixmap( pathString + "navi" ); 781 icon = loadPixmap( pathString + "navi" );
777 configureToolBarMenu->insertItem(icon, i18n("Toggle DateNavigator"), 22 ); 782 configureToolBarMenu->insertItem(icon, i18n("Toggle DateNavigator"), 22 );
778 action = new QAction( i18n("Toggle DateNavigator"), icon, i18n("Toggle DateNavigator"), 0, this ); 783 action = new QAction( i18n("Toggle DateNavigator"), icon, i18n("Toggle DateNavigator"), 0, this );
779 action->addTo( viewMenu ); 784 action->addTo( viewMenu );
780 connect( action, SIGNAL( activated() ), 785 connect( action, SIGNAL( activated() ),
781 mView, SLOT( toggleDateNavigatorWidget() ) ); 786 mView, SLOT( toggleDateNavigatorWidget() ) );
782 mToggleNav = action ; 787 mToggleNav = action ;
783 icon = loadPixmap( pathString + "filter" ); 788 icon = loadPixmap( pathString + "filter" );
784 configureToolBarMenu->insertItem(icon, i18n("Filter menu icon"), 26 ); 789 configureToolBarMenu->insertItem(icon, i18n("Filter menu icon"), 26 );
785 action = new QAction( i18n("Toggle FilterView"), icon, i18n("Toggle FilterView"), 0, this ); 790 action = new QAction( i18n("Toggle FilterView"), icon, i18n("Toggle FilterView"), 0, this );
786 action->addTo( viewMenu ); 791 action->addTo( viewMenu );
787 connect( action, SIGNAL( activated() ), 792 connect( action, SIGNAL( activated() ),
788 mView, SLOT( toggleFilter() ) ); 793 mView, SLOT( toggleFilter() ) );
789 mToggleFilter = action; 794 mToggleFilter = action;
790 icon = loadPixmap( pathString + "allday" ); 795 icon = loadPixmap( pathString + "allday" );
791 configureToolBarMenu->insertItem(icon, i18n("Toggle Allday"), 24 ); 796 configureToolBarMenu->insertItem(icon, i18n("Toggle Allday"), 24 );
792 action = new QAction( i18n("Toggle Allday"), icon,i18n("Toggle Allday"), 0, this ); 797 action = new QAction( i18n("Toggle Allday"), icon,i18n("Toggle Allday"), 0, this );
793 action->addTo( viewMenu ); 798 action->addTo( viewMenu );
794 connect( action, SIGNAL( activated() ), 799 connect( action, SIGNAL( activated() ),
795 mView, SLOT( toggleAllDaySize() ) ); 800 mView, SLOT( toggleAllDaySize() ) );
796 mToggleAllday = action; 801 mToggleAllday = action;
797 802
798 803
799 connect( mView->viewManager(), SIGNAL( signalFullScreen( bool ) ), 804 connect( mView->viewManager(), SIGNAL( signalFullScreen( bool ) ),
800 mToggleNav, SLOT( setEnabled ( bool ) ) ); 805 mToggleNav, SLOT( setEnabled ( bool ) ) );
801 connect( mView->viewManager(), SIGNAL( signalFullScreen( bool ) ), 806 connect( mView->viewManager(), SIGNAL( signalFullScreen( bool ) ),
802 mToggleFilter, SLOT( setEnabled ( bool ) ) ); 807 mToggleFilter, SLOT( setEnabled ( bool ) ) );
803 connect( mView->viewManager(), SIGNAL( signalAgendaView( bool ) ), 808 connect( mView->viewManager(), SIGNAL( signalAgendaView( bool ) ),
804 mToggleAllday, SLOT( setEnabled ( bool ) ) ); 809 mToggleAllday, SLOT( setEnabled ( bool ) ) );
805 // connect( mView->viewManager(), SIGNAL( signalAgendaView( bool ) ), 810 // connect( mView->viewManager(), SIGNAL( signalAgendaView( bool ) ),
806 // configureAgendaMenu, SLOT( setEnabled ( bool ) ) ); 811 // configureAgendaMenu, SLOT( setEnabled ( bool ) ) );
807 812
808 viewMenu->insertSeparator(); 813 viewMenu->insertSeparator();
809 icon = loadPixmap( pathString + "picker" ); 814 icon = loadPixmap( pathString + "picker" );
810 action = new QAction( i18n("Date Picker"), icon, i18n("Date Picker"), 0, this ); 815 action = new QAction( i18n("Date Picker"), icon, i18n("Date Picker"), 0, this );
811 action->addTo( viewMenu ); 816 action->addTo( viewMenu );
812 connect( action, SIGNAL( activated() ), 817 connect( action, SIGNAL( activated() ),
813 mView, SLOT( showDatePicker() ) ); 818 mView, SLOT( showDatePicker() ) );
814 action->addTo( iconToolBar ); 819 action->addTo( iconToolBar );
815 viewMenu->insertSeparator(); 820 viewMenu->insertSeparator();
816 821
817 if ( p-> mShowIconToggleFull ) 822 if ( p-> mShowIconToggleFull )
818 FSaction->addTo( iconToolBar ); 823 FSaction->addTo( iconToolBar );
819 if ( p->mShowIconNavigator ) mToggleNav ->addTo( iconToolBar ); 824 if ( p->mShowIconNavigator ) mToggleNav ->addTo( iconToolBar );
820 825
821 //******************** 826 //********************
822 if ( p->mShowIconAllday ) mToggleAllday->addTo( iconToolBar ); 827 if ( p->mShowIconAllday ) mToggleAllday->addTo( iconToolBar );
823 828
824 829
825 icon = loadPixmap( pathString + "whatsnext" ); 830 icon = loadPixmap( pathString + "whatsnext" );
826 configureToolBarMenu->insertItem(icon, i18n("What's Next"), 110 ); 831 configureToolBarMenu->insertItem(icon, i18n("What's Next"), 110 );
827 QAction* whatsnext_action = new QAction( i18n("What's Next"), icon, i18n("What's Next"), 0, this ); 832 QAction* whatsnext_action = new QAction( i18n("What's Next"), icon, i18n("What's Next"), 0, this );
828 whatsnext_action->addTo( viewMenu ); 833 whatsnext_action->addTo( viewMenu );
829 connect( whatsnext_action, SIGNAL( activated() ), 834 connect( whatsnext_action, SIGNAL( activated() ),
830 mView->viewManager(), SLOT( showWhatsNextView() ) ); 835 mView->viewManager(), SLOT( showWhatsNextView() ) );
831 836
832 icon = loadPixmap( pathString + "xdays" ); 837 icon = loadPixmap( pathString + "xdays" );
833 configureToolBarMenu->insertItem(icon, i18n("Next days"), 100 ); 838 configureToolBarMenu->insertItem(icon, i18n("Next days"), 100 );
834 QAction* xdays_action = new QAction( i18n("Next days"), icon, i18n("Next days"), 0, this ); 839 QAction* xdays_action = new QAction( i18n("Next days"), icon, i18n("Next days"), 0, this );
835 xdays_action->addTo( viewMenu ); 840 xdays_action->addTo( viewMenu );
836 connect( xdays_action, SIGNAL( activated() ), 841 connect( xdays_action, SIGNAL( activated() ),
837 mView->viewManager(), SLOT( showNextXView() ) ); 842 mView->viewManager(), SLOT( showNextXView() ) );
838 843
839 844
840 icon = loadPixmap( pathString + "journal" ); 845 icon = loadPixmap( pathString + "journal" );
841 configureToolBarMenu->insertItem(icon, i18n("Journal"), 90 ); 846 configureToolBarMenu->insertItem(icon, i18n("Journal"), 90 );
842 QAction* viewjournal_action = new QAction( i18n("Journal"), icon, i18n("Journal"), 0, this ); 847 QAction* viewjournal_action = new QAction( i18n("Journal"), icon, i18n("Journal"), 0, this );
843 viewjournal_action->addTo( viewMenu ); 848 viewjournal_action->addTo( viewMenu );
844 connect( viewjournal_action, SIGNAL( activated() ), 849 connect( viewjournal_action, SIGNAL( activated() ),
845 mView->viewManager(), SLOT( showJournalView() ) ); 850 mView->viewManager(), SLOT( showJournalView() ) );
846 851
847 852
848 icon = loadPixmap( pathString + "day" ); 853 icon = loadPixmap( pathString + "day" );
849 configureToolBarMenu->insertItem(icon, i18n("Day View"), 40 ); 854 configureToolBarMenu->insertItem(icon, i18n("Day View"), 40 );
850 QAction* day1_action = new QAction( i18n("Day View"), icon, i18n("Day View"), 0, this ); 855 QAction* day1_action = new QAction( i18n("Day View"), icon, i18n("Day View"), 0, this );
851 day1_action->addTo( viewMenu ); 856 day1_action->addTo( viewMenu );
852 // action->addTo( toolBar ); 857 // action->addTo( toolBar );
853 connect( day1_action, SIGNAL( activated() ), 858 connect( day1_action, SIGNAL( activated() ),
854 mView->viewManager(), SLOT( showDayView() ) ); 859 mView->viewManager(), SLOT( showDayView() ) );
855 860
856 icon = loadPixmap( pathString + "workweek" ); 861 icon = loadPixmap( pathString + "workweek" );
857 configureToolBarMenu->insertItem(icon, i18n("Work Week"), 50 ); 862 configureToolBarMenu->insertItem(icon, i18n("Work Week"), 50 );
858 QAction* day5_action = new QAction( i18n("Work Week"), icon, i18n("Work Week"), 0, this ); 863 QAction* day5_action = new QAction( i18n("Work Week"), icon, i18n("Work Week"), 0, this );
859 day5_action->addTo( viewMenu ); 864 day5_action->addTo( viewMenu );
860 connect( day5_action, SIGNAL( activated() ), 865 connect( day5_action, SIGNAL( activated() ),
861 mView->viewManager(), SLOT( showWorkWeekView() ) ); 866 mView->viewManager(), SLOT( showWorkWeekView() ) );
862 867
863 icon = loadPixmap( pathString + "week" ); 868 icon = loadPixmap( pathString + "week" );
864 configureToolBarMenu->insertItem(icon, i18n("Week"), 60 ); 869 configureToolBarMenu->insertItem(icon, i18n("Week"), 60 );
865 QAction* day7_action = new QAction( i18n("Week"), icon, i18n("Week"), 0, this ); 870 QAction* day7_action = new QAction( i18n("Week"), icon, i18n("Week"), 0, this );
866 day7_action->addTo( viewMenu ); 871 day7_action->addTo( viewMenu );
867 connect( day7_action, SIGNAL( activated() ), 872 connect( day7_action, SIGNAL( activated() ),
868 mView->viewManager(), SLOT( showWeekView() ) ); 873 mView->viewManager(), SLOT( showWeekView() ) );
869 874
870 icon = loadPixmap( pathString + "workweek2" ); 875 icon = loadPixmap( pathString + "workweek2" );
871 configureToolBarMenu->insertItem(icon, i18n("List week view"), 75 ); 876 configureToolBarMenu->insertItem(icon, i18n("List week view"), 75 );
872 QAction* day6_action = new QAction( i18n("List week"), icon, i18n("List week"), 0, this ); 877 QAction* day6_action = new QAction( i18n("List week"), icon, i18n("List week"), 0, this );
873 day6_action->addTo( viewMenu ); 878 day6_action->addTo( viewMenu );
874 connect( day6_action, SIGNAL( activated() ), 879 connect( day6_action, SIGNAL( activated() ),
875 mView->viewManager(), SLOT( showMonthViewWeek() ) ); 880 mView->viewManager(), SLOT( showMonthViewWeek() ) );
876 881
877 icon = loadPixmap( pathString + "month" ); 882 icon = loadPixmap( pathString + "month" );
878 configureToolBarMenu->insertItem(icon, i18n("Month"), 70 ); 883 configureToolBarMenu->insertItem(icon, i18n("Month"), 70 );
879 QAction* month_action = new QAction( i18n("Month"), icon, i18n("Month"), 0, this ); 884 QAction* month_action = new QAction( i18n("Month"), icon, i18n("Month"), 0, this );
880 month_action->addTo( viewMenu ); 885 month_action->addTo( viewMenu );
881 connect( month_action, SIGNAL( activated() ), 886 connect( month_action, SIGNAL( activated() ),
882 mView->viewManager(), SLOT( showMonthView() ) ); 887 mView->viewManager(), SLOT( showMonthView() ) );
883 888
884 icon = loadPixmap( pathString + "list" ); 889 icon = loadPixmap( pathString + "list" );
885 configureToolBarMenu->insertItem(icon, i18n("List View"), 30 ); 890 configureToolBarMenu->insertItem(icon, i18n("List View"), 30 );
886 QAction* showlist_action = new QAction( i18n("List View"), icon, i18n("List View"), 0, this ); 891 QAction* showlist_action = new QAction( i18n("List View"), icon, i18n("List View"), 0, this );
887 showlist_action->addTo( viewMenu ); 892 showlist_action->addTo( viewMenu );
888 connect( showlist_action, SIGNAL( activated() ), 893 connect( showlist_action, SIGNAL( activated() ),
889 mView->viewManager(), SLOT( showListView() ) ); 894 mView->viewManager(), SLOT( showListView() ) );
890 895
891 icon = loadPixmap( pathString + "todo" ); 896 icon = loadPixmap( pathString + "todo" );
892 configureToolBarMenu->insertItem(icon, i18n("Todo View"), 80 ); 897 configureToolBarMenu->insertItem(icon, i18n("Todo View"), 80 );
893 QAction* todoview_action = new QAction( i18n("Todo View"), icon, i18n("Todo View"), 0, this ); 898 QAction* todoview_action = new QAction( i18n("Todo View"), icon, i18n("Todo View"), 0, this );
894 todoview_action->addTo( viewMenu ); 899 todoview_action->addTo( viewMenu );
895 connect( todoview_action, SIGNAL( activated() ), 900 connect( todoview_action, SIGNAL( activated() ),
896 mView->viewManager(), SLOT( showTodoView() ) ); 901 mView->viewManager(), SLOT( showTodoView() ) );
897 902
898 903
899 904
900#if 0 905#if 0
901 action = new QAction( "view_timespan", "Time Span", 0, this ); 906 action = new QAction( "view_timespan", "Time Span", 0, this );
902 action->addTo( viewMenu ); 907 action->addTo( viewMenu );
903 connect( action, SIGNAL( activated() ), 908 connect( action, SIGNAL( activated() ),
904 mView->viewManager(), SLOT( showTimeSpanView() ) ); 909 mView->viewManager(), SLOT( showTimeSpanView() ) );
905#endif 910#endif
906 911
907 mNewSubTodoAction = new QAction( "new_subtodo", i18n("New Sub-Todo..."), 0, 912 mNewSubTodoAction = new QAction( "new_subtodo", i18n("New Sub-Todo..."), 0,
908 this ); 913 this );
909 mNewSubTodoAction->addTo( actionMenu ); 914 mNewSubTodoAction->addTo( actionMenu );
910 connect( mNewSubTodoAction, SIGNAL( activated() ), 915 connect( mNewSubTodoAction, SIGNAL( activated() ),
911 mView, SLOT( newSubTodo() ) ); 916 mView, SLOT( newSubTodo() ) );
912 917
913 actionMenu->insertSeparator(); 918 actionMenu->insertSeparator();
914 919
915 mShowAction = new QAction( "show_incidence", i18n("Show..."), 0, this ); 920 mShowAction = new QAction( "show_incidence", i18n("Show..."), 0, this );
916 mShowAction->addTo( actionMenu ); 921 mShowAction->addTo( actionMenu );
917 connect( mShowAction, SIGNAL( activated() ), 922 connect( mShowAction, SIGNAL( activated() ),
918 mView, SLOT( showIncidence() ) ); 923 mView, SLOT( showIncidence() ) );
919 924
920 mEditAction = new QAction( "edit_incidence", i18n("Edit..."), 0, this ); 925 mEditAction = new QAction( "edit_incidence", i18n("Edit..."), 0, this );
921 mEditAction->addTo( actionMenu ); 926 mEditAction->addTo( actionMenu );
922 connect( mEditAction, SIGNAL( activated() ), 927 connect( mEditAction, SIGNAL( activated() ),
923 mView, SLOT( editIncidence() ) ); 928 mView, SLOT( editIncidence() ) );
924 929
925 mDeleteAction = new QAction( "delete_incidence", i18n("Delete..."), 0, this ); 930 mDeleteAction = new QAction( "delete_incidence", i18n("Delete..."), 0, this );
926 mDeleteAction->addTo( actionMenu ); 931 mDeleteAction->addTo( actionMenu );
927 connect( mDeleteAction, SIGNAL( activated() ), 932 connect( mDeleteAction, SIGNAL( activated() ),
928 mView, SLOT( deleteIncidence() ) ); 933 mView, SLOT( deleteIncidence() ) );
929 934
930 935
931 mCloneAction = new QAction( "clone_incidence", i18n("Clone..."), 0, this ); 936 mCloneAction = new QAction( "clone_incidence", i18n("Clone..."), 0, this );
932 mCloneAction->addTo( actionMenu ); 937 mCloneAction->addTo( actionMenu );
933 connect( mCloneAction, SIGNAL( activated() ), 938 connect( mCloneAction, SIGNAL( activated() ),
934 mView, SLOT( cloneIncidence() ) ); 939 mView, SLOT( cloneIncidence() ) );
935 mMoveAction = new QAction( "Move_incidence", i18n("Move..."), 0, this ); 940 mMoveAction = new QAction( "Move_incidence", i18n("Move..."), 0, this );
936 mMoveAction->addTo( actionMenu ); 941 mMoveAction->addTo( actionMenu );
937 connect( mMoveAction, SIGNAL( activated() ), 942 connect( mMoveAction, SIGNAL( activated() ),
938 mView, SLOT( moveIncidence() ) ); 943 mView, SLOT( moveIncidence() ) );
939 mBeamAction = new QAction( "Beam_incidence", i18n("Beam..."), 0, this ); 944 mBeamAction = new QAction( "Beam_incidence", i18n("Beam..."), 0, this );
940 mBeamAction->addTo( actionMenu ); 945 mBeamAction->addTo( actionMenu );
941 connect( mBeamAction, SIGNAL( activated() ), 946 connect( mBeamAction, SIGNAL( activated() ),
942 mView, SLOT( beamIncidence() ) ); 947 mView, SLOT( beamIncidence() ) );
943 mCancelAction = new QAction( "Cancel_incidence", i18n("Toggle Cancel"), 0, this ); 948 mCancelAction = new QAction( "Cancel_incidence", i18n("Toggle Cancel"), 0, this );
944 mCancelAction->addTo( actionMenu ); 949 mCancelAction->addTo( actionMenu );
945 connect( mCancelAction, SIGNAL( activated() ), 950 connect( mCancelAction, SIGNAL( activated() ),
946 mView, SLOT( toggleCancelIncidence() ) ); 951 mView, SLOT( toggleCancelIncidence() ) );
947 952
948 actionMenu->insertSeparator(); 953 actionMenu->insertSeparator();
949 954
950 action = new QAction( "purge_completed", i18n("Purge Completed"), 0, 955 action = new QAction( "purge_completed", i18n("Purge Completed"), 0,
951 this ); 956 this );
952 action->addTo( actionMenu ); 957 action->addTo( actionMenu );
953 connect( action, SIGNAL( activated() ), mView, SLOT( purgeCompleted() ) ); 958 connect( action, SIGNAL( activated() ), mView, SLOT( purgeCompleted() ) );
954 959
955 icon = loadPixmap( pathString + "search" ); 960 icon = loadPixmap( pathString + "search" );
956 QAction* search_action = new QAction( i18n("Search"), icon, i18n("Search..."), 0, this ); 961 QAction* search_action = new QAction( i18n("Search"), icon, i18n("Search..."), 0, this );
957 configureToolBarMenu->insertItem(icon, i18n("Search"), 120 , 5); 962 configureToolBarMenu->insertItem(icon, i18n("Search"), 120 , 5);
958 search_action->addTo( actionMenu ); 963 search_action->addTo( actionMenu );
959 connect( search_action, SIGNAL( activated() ), 964 connect( search_action, SIGNAL( activated() ),
960 mView->dialogManager(), SLOT( showSearchDialog() ) ); 965 mView->dialogManager(), SLOT( showSearchDialog() ) );
961 966
962 967
963 968
964 if ( KOPrefs::instance()->mShowFullMenu ) { 969 if ( KOPrefs::instance()->mShowFullMenu ) {
965 actionMenu->insertSeparator(); 970 actionMenu->insertSeparator();
966 actionMenu->insertItem( i18n("Configure Toolbar"),configureToolBarMenu ); 971 actionMenu->insertItem( i18n("Configure Toolbar"),configureToolBarMenu );
967 972
968 } 973 }
969 // actionMenu->insertSeparator(); 974 // actionMenu->insertSeparator();
970 action = new QAction( "import_qtopia", i18n("Import (*.ics/*.vcs) file"), 0, 975 action = new QAction( "import_qtopia", i18n("Import (*.ics/*.vcs) file"), 0,
971 this ); 976 this );
972 action->addTo( importMenu_X ); 977 action->addTo( importMenu_X );
973 connect( action, SIGNAL( activated() ), SLOT( importIcal() ) ); 978 connect( action, SIGNAL( activated() ), SLOT( importIcal() ) );
974 action = new QAction( "import_quick", i18n("Import last file"), 0, 979 action = new QAction( "import_quick", i18n("Import last file"), 0,
975 this ); 980 this );
976 action->addTo( importMenu_X ); 981 action->addTo( importMenu_X );
977 connect( action, SIGNAL( activated() ), SLOT( quickImportIcal() ) ); 982 connect( action, SIGNAL( activated() ), SLOT( quickImportIcal() ) );
978 importMenu_X->insertSeparator(); 983 importMenu_X->insertSeparator();
979 action = new QAction( "import_bday", i18n("Import Birthdays (KA/Pi)"), 0, 984 action = new QAction( "import_bday", i18n("Import Birthdays (KA/Pi)"), 0,
980 this ); 985 this );
981 action->addTo( importMenu_X ); 986 action->addTo( importMenu_X );
982 connect( action, SIGNAL( activated() ), SLOT( importBday() ) ); 987 connect( action, SIGNAL( activated() ), SLOT( importBday() ) );
983 //#ifndef DESKTOP_VERSION 988 //#ifndef DESKTOP_VERSION
984 importMenu_X->insertSeparator(); 989 importMenu_X->insertSeparator();
985 action = new QAction( "import_qtopia", i18n("Import Opie/Qtopia Cal."), 0, 990 action = new QAction( "import_qtopia", i18n("Import Opie/Qtopia Cal."), 0,
986 this ); 991 this );
987 action->addTo( importMenu_X ); 992 action->addTo( importMenu_X );
988 connect( action, SIGNAL( activated() ), SLOT( importQtopia() ) ); 993 connect( action, SIGNAL( activated() ), SLOT( importQtopia() ) );
989 //#else 994 //#else
990#ifdef _OL_IMPORT_ 995#ifdef _OL_IMPORT_
991 importMenu_X->insertSeparator(); 996 importMenu_X->insertSeparator();
992 action = new QAction( "import_ol", i18n("Import from OL"), 0, 997 action = new QAction( "import_ol", i18n("Import from OL"), 0,
993 this ); 998 this );
994 action->addTo( importMenu_X ); 999 action->addTo( importMenu_X );
995 connect( action, SIGNAL( activated() ), SLOT( importOL() ) ); 1000 connect( action, SIGNAL( activated() ), SLOT( importOL() ) );
996#endif 1001#endif
997 //#endif 1002 //#endif
998 1003
999 //importMenu->insertSeparator(); 1004 //importMenu->insertSeparator();
1000 action = new QAction( "load_cal", i18n("Load Calendar Backup"), 0, 1005 action = new QAction( "load_cal", i18n("Load Calendar Backup"), 0,
1001 this ); 1006 this );
1002 action->addTo( importMenu ); 1007 action->addTo( importMenu );
1003 connect( action, SIGNAL( activated() ), SLOT( loadCalendar() ) ); 1008 connect( action, SIGNAL( activated() ), SLOT( loadCalendar() ) );
1004 1009
1005 action = new QAction( "save_cal", i18n("Save Calendar Backup"), 0, 1010 action = new QAction( "save_cal", i18n("Save Calendar Backup"), 0,
1006 this ); 1011 this );
1007 action->addTo( importMenu ); 1012 action->addTo( importMenu );
1008 connect( action, SIGNAL( activated() ), SLOT( saveCalendar() ) ); 1013 connect( action, SIGNAL( activated() ), SLOT( saveCalendar() ) );
1009 importMenu->insertSeparator(); 1014 importMenu->insertSeparator();
1010 importMenu->insertItem( i18n("Import"), importMenu_X ); 1015 importMenu->insertItem( i18n("Import"), importMenu_X );
1011 //importMenu->insertSeparator(); 1016 //importMenu->insertSeparator();
1012 action = new QAction( "import_qtopia", i18n("Export VCalendar"), 0, 1017 action = new QAction( "import_qtopia", i18n("Export VCalendar"), 0,
1013 this ); 1018 this );
1014 action->addTo( exportMenu_X ); 1019 action->addTo( exportMenu_X );
1015 connect( action, SIGNAL( activated() ), SLOT( exportVCalendar() ) ); 1020 connect( action, SIGNAL( activated() ), SLOT( exportVCalendar() ) );
1016 1021
1017 1022
1018 //LR 1023 //LR
1019 QPopupMenu *ex2phone = new QPopupMenu( this ); 1024 QPopupMenu *ex2phone = new QPopupMenu( this );
1020 ex2phone->insertItem(i18n("Complete calendar..."), 1 ); 1025 ex2phone->insertItem(i18n("Complete calendar..."), 1 );
1021 ex2phone->insertItem(i18n("Filtered calendar..."), 2 ); 1026 ex2phone->insertItem(i18n("Filtered calendar..."), 2 );
1022 connect( ex2phone, SIGNAL( activated(int) ), this, SLOT( exportToPhone( int)) ); 1027 connect( ex2phone, SIGNAL( activated(int) ), this, SLOT( exportToPhone( int)) );
1023 exportMenu_X->insertItem( i18n("Export to phone"), ex2phone ); 1028 exportMenu_X->insertItem( i18n("Export to phone"), ex2phone );
1024 1029
1025 importMenu->insertItem( i18n("Export"), exportMenu_X ); 1030 importMenu->insertItem( i18n("Export"), exportMenu_X );
1026#ifndef DESKTOP_VERSION 1031#ifndef DESKTOP_VERSION
1027 //importMenu->insertSeparator(); 1032 //importMenu->insertSeparator();
1028 brAction = new QAction( "beam toggle", i18n("Beam receive enabled"), 0, 1033 brAction = new QAction( "beam toggle", i18n("Beam receive enabled"), 0,
1029 this ); 1034 this );
1030 brAction->addTo( beamMenu_X ); 1035 brAction->addTo( beamMenu_X );
1031 brAction->setToggleAction (true ) ; 1036 brAction->setToggleAction (true ) ;
1032 connect( brAction, SIGNAL( activated() ), this, SLOT( toggleBeamReceive() ) ); 1037 connect( brAction, SIGNAL( activated() ), this, SLOT( toggleBeamReceive() ) );
1033 1038
1034 action = new QAction( "beam all", i18n("Beam complete calendar..."), 0, 1039 action = new QAction( "beam all", i18n("Beam complete calendar..."), 0,
1035 this ); 1040 this );
1036 action->addTo( beamMenu_X ); 1041 action->addTo( beamMenu_X );
1037 connect( action, SIGNAL( activated() ), mView, SLOT( beamCalendar() ) ); 1042 connect( action, SIGNAL( activated() ), mView, SLOT( beamCalendar() ) );
1038 1043
1039 action = new QAction( "beam all", i18n("Beam filtered calendar..."), 0, 1044 action = new QAction( "beam all", i18n("Beam filtered calendar..."), 0,
1040 this ); 1045 this );
1041 action->addTo( beamMenu_X ); 1046 action->addTo( beamMenu_X );
1042 connect( action, SIGNAL( activated() ), mView, SLOT( beamFilteredCalendar()) ); 1047 connect( action, SIGNAL( activated() ), mView, SLOT( beamFilteredCalendar()) );
1043 importMenu->insertItem( i18n("Beam"), beamMenu_X ); 1048 importMenu->insertItem( i18n("Beam"), beamMenu_X );
1044#else 1049#else
1045 //importMenu->insertSeparator(); 1050 //importMenu->insertSeparator();
1046 icon = loadPixmap( pathString + "print" ); 1051 icon = loadPixmap( pathString + "print" );
1047 action = new QAction( i18n("Print calendar..."),icon,i18n("Print calendar..."), 0, this ); 1052 action = new QAction( i18n("Print calendar..."),icon,i18n("Print calendar..."), 0, this );
1048 action->addTo( beamMenu_X ); 1053 action->addTo( beamMenu_X );
1049 connect( action, SIGNAL( activated() ), 1054 connect( action, SIGNAL( activated() ),
1050 this, SLOT( printCal() ) ); 1055 this, SLOT( printCal() ) );
1051 1056
1052 icon = loadPixmap( pathString + "print" ); 1057 icon = loadPixmap( pathString + "print" );
1053 action = new QAction( i18n("Print agenda selection..."),icon,i18n("Print agenda selection..."), 0, this ); 1058 action = new QAction( i18n("Print agenda selection..."),icon,i18n("Print agenda selection..."), 0, this );
1054 action->addTo( beamMenu_X ); 1059 action->addTo( beamMenu_X );
1055 connect( action, SIGNAL( activated() ), 1060 connect( action, SIGNAL( activated() ),
1056 this, SLOT( printSel() ) ); 1061 this, SLOT( printSel() ) );
1057 action = new QAction( i18n("Print What's Next View..."),icon,i18n("Print What's Next View..."), 0, this ); 1062 action = new QAction( i18n("Print What's Next View..."),icon,i18n("Print What's Next View..."), 0, this );
1058 action->addTo( beamMenu_X ); 1063 action->addTo( beamMenu_X );
1059 connect( action, SIGNAL( activated() ), 1064 connect( action, SIGNAL( activated() ),
1060 mView->viewManager(), SLOT( slotprintWNV() ) ); 1065 mView->viewManager(), SLOT( slotprintWNV() ) );
1061 1066
1062 1067
1063 icon = loadPixmap( pathString + "print" ); 1068 icon = loadPixmap( pathString + "print" );
1064 action = new QAction( i18n("Print List View..."),icon,i18n("Print List View..."), 0, this ); 1069 action = new QAction( i18n("Print List View..."),icon,i18n("Print List View..."), 0, this );
1065 action->addTo( beamMenu_X ); 1070 action->addTo( beamMenu_X );
1066 connect( action, SIGNAL( activated() ), 1071 connect( action, SIGNAL( activated() ),
1067 this, SLOT( printListView() ) ); 1072 this, SLOT( printListView() ) );
1068 1073
1069 action = new QAction( i18n("Print selected event / todo..."),icon,i18n("Print selected event / todo..."), 0, this ); 1074 action = new QAction( i18n("Print selected event / todo..."),icon,i18n("Print selected event / todo..."), 0, this );
1070 action->addTo( beamMenu_X ); 1075 action->addTo( beamMenu_X );
1071 connect( action, SIGNAL( activated() ), 1076 connect( action, SIGNAL( activated() ),
1072 mView, SLOT( slotprintSelInc() ) ); 1077 mView, SLOT( slotprintSelInc() ) );
1073 1078
1074 importMenu->insertItem( i18n("Print"), beamMenu_X ); 1079 importMenu->insertItem( i18n("Print"), beamMenu_X );
1075#endif 1080#endif
1076 importMenu->insertSeparator(); 1081 importMenu->insertSeparator();
1077 action = new QAction( "manage cat", i18n("Manage new categories..."), 0, 1082 action = new QAction( "manage cat", i18n("Manage new categories..."), 0,
1078 this ); 1083 this );
1079 action->addTo( importMenu ); 1084 action->addTo( importMenu );
1080 connect( action, SIGNAL( activated() ), mView, SLOT( manageCategories() ) ); 1085 connect( action, SIGNAL( activated() ), mView, SLOT( manageCategories() ) );
1081 importMenu->insertSeparator(); 1086 importMenu->insertSeparator();
1082 action = new QAction( "beam all", i18n("Save"), 0, 1087 action = new QAction( "beam all", i18n("Save"), 0,
1083 this ); 1088 this );
1084 action->addTo( importMenu ); 1089 action->addTo( importMenu );
1085 connect( action, SIGNAL( activated() ), this, SLOT( save() ) ); 1090 connect( action, SIGNAL( activated() ), this, SLOT( save() ) );
1086 action = new QAction( "beam all", i18n("Exit (+save)"), 0, 1091 action = new QAction( "beam all", i18n("Exit (+save)"), 0,
1087 this ); 1092 this );
1088 action->addTo( importMenu ); 1093 action->addTo( importMenu );
1089 connect( action, SIGNAL( activated() ), this, SLOT( close() ) ); 1094 connect( action, SIGNAL( activated() ), this, SLOT( close() ) );
1090 1095
1091 //menuBar->insertItem( "Configure",configureMenu ); 1096 //menuBar->insertItem( "Configure",configureMenu );
1092 //configureMenu->insertItem( "Toolbar",configureToolBarMenu ); 1097 //configureMenu->insertItem( "Toolbar",configureToolBarMenu );
1093 icon = loadPixmap( "korganizer/korganizer" ); 1098 icon = loadPixmap( "korganizer/korganizer" );
1094 1099
1095 action = new QAction( "Whats New", i18n("What's new?"), 0,this ); 1100 action = new QAction( "Whats New", i18n("What's new?"), 0,this );
1096 action->addTo( helpMenu ); 1101 action->addTo( helpMenu );
1097 connect( action, SIGNAL( activated() ), 1102 connect( action, SIGNAL( activated() ),
1098 SLOT( whatsNew() ) ); 1103 SLOT( whatsNew() ) );
1099 action = new QAction( "featureHowto", i18n("Features + hints..."), 0,this ); 1104 action = new QAction( "featureHowto", i18n("Features + hints..."), 0,this );
1100 action->addTo( helpMenu ); 1105 action->addTo( helpMenu );
1101 connect( action, SIGNAL( activated() ), 1106 connect( action, SIGNAL( activated() ),
1102 SLOT( features() ) ); 1107 SLOT( features() ) );
1103 action = new QAction( "Keys + Colors", i18n("Keys + Colors..."), 0, this ); 1108 action = new QAction( "Keys + Colors", i18n("Keys + Colors..."), 0, this );
1104 action->addTo( helpMenu ); 1109 action->addTo( helpMenu );
1105 connect( action, SIGNAL( activated() ), 1110 connect( action, SIGNAL( activated() ),
1106 SLOT( keyBindings() ) ); 1111 SLOT( keyBindings() ) );
1107 action = new QAction( "Storage Howto", i18n("Storage HowTo..."), 0,this ); 1112 action = new QAction( "Storage Howto", i18n("Storage HowTo..."), 0,this );
1108 action->addTo( helpMenu ); 1113 action->addTo( helpMenu );
1109 connect( action, SIGNAL( activated() ), 1114 connect( action, SIGNAL( activated() ),
1110 SLOT( storagehowto() ) ); 1115 SLOT( storagehowto() ) );
1111 action = new QAction( "Timetracking Howto", i18n("Timetracking HowTo..."), 0,this ); 1116 action = new QAction( "Timetracking Howto", i18n("Timetracking HowTo..."), 0,this );
1112 action->addTo( helpMenu ); 1117 action->addTo( helpMenu );
1113 connect( action, SIGNAL( activated() ), 1118 connect( action, SIGNAL( activated() ),
1114 SLOT( timetrackinghowto() ) ); 1119 SLOT( timetrackinghowto() ) );