summaryrefslogtreecommitdiffabout
authorzautrix <zautrix>2005-03-20 20:53:07 (UTC)
committer zautrix <zautrix>2005-03-20 20:53:07 (UTC)
commite0351d382e7344191c3a7963eefe3396f816f7a0 (patch) (unidiff)
tree69d5e8fc038387ab16e17fe8e9a3550abc59e5fa
parentb32c8de5dcd6c4f8dce9415fb686970e2c991ebb (diff)
downloadkdepimpi-e0351d382e7344191c3a7963eefe3396f816f7a0.zip
kdepimpi-e0351d382e7344191c3a7963eefe3396f816f7a0.tar.gz
kdepimpi-e0351d382e7344191c3a7963eefe3396f816f7a0.tar.bz2
nf
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--korganizer/calendarview.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/korganizer/calendarview.cpp b/korganizer/calendarview.cpp
index ab59d00..96ced08 100644
--- a/korganizer/calendarview.cpp
+++ b/korganizer/calendarview.cpp
@@ -1608,616 +1608,616 @@ bool CalendarView::importQtopia( const QString &categories,
1608 updateView(); 1608 updateView();
1609 return syncOK; 1609 return syncOK;
1610 1610
1611 1611
1612#endif 1612#endif
1613 1613
1614} 1614}
1615 1615
1616void CalendarView::setSyncEventsReadOnly() 1616void CalendarView::setSyncEventsReadOnly()
1617{ 1617{
1618 Event * ev; 1618 Event * ev;
1619 QPtrList<Event> eL = mCalendar->rawEvents(); 1619 QPtrList<Event> eL = mCalendar->rawEvents();
1620 ev = eL.first(); 1620 ev = eL.first();
1621 while ( ev ) { 1621 while ( ev ) {
1622 if ( ev->uid().left(15) == QString("last-syncEvent-") ) 1622 if ( ev->uid().left(15) == QString("last-syncEvent-") )
1623 ev->setReadOnly( true ); 1623 ev->setReadOnly( true );
1624 ev = eL.next(); 1624 ev = eL.next();
1625 } 1625 }
1626} 1626}
1627bool CalendarView::openCalendar(QString filename, bool merge) 1627bool CalendarView::openCalendar(QString filename, bool merge)
1628{ 1628{
1629 1629
1630 if (filename.isEmpty()) { 1630 if (filename.isEmpty()) {
1631 return false; 1631 return false;
1632 } 1632 }
1633 1633
1634 if (!QFile::exists(filename)) { 1634 if (!QFile::exists(filename)) {
1635 KMessageBox::error(this,i18n("File does not exist:\n '%1'.").arg(filename)); 1635 KMessageBox::error(this,i18n("File does not exist:\n '%1'.").arg(filename));
1636 return false; 1636 return false;
1637 } 1637 }
1638 1638
1639 globalFlagBlockAgenda = 1; 1639 globalFlagBlockAgenda = 1;
1640 if (!merge) mCalendar->close(); 1640 if (!merge) mCalendar->close();
1641 1641
1642 mStorage->setFileName( filename ); 1642 mStorage->setFileName( filename );
1643 1643
1644 if ( mStorage->load() ) { 1644 if ( mStorage->load() ) {
1645 if ( merge ) ;//setModified( true ); 1645 if ( merge ) ;//setModified( true );
1646 else { 1646 else {
1647 //setModified( true ); 1647 //setModified( true );
1648 mViewManager->setDocumentId( filename ); 1648 mViewManager->setDocumentId( filename );
1649 mDialogManager->setDocumentId( filename ); 1649 mDialogManager->setDocumentId( filename );
1650 mTodoList->setDocumentId( filename ); 1650 mTodoList->setDocumentId( filename );
1651 } 1651 }
1652 globalFlagBlockAgenda = 2; 1652 globalFlagBlockAgenda = 2;
1653 // if ( getLastSyncEvent() ) 1653 // if ( getLastSyncEvent() )
1654 // getLastSyncEvent()->setReadOnly( true ); 1654 // getLastSyncEvent()->setReadOnly( true );
1655 mCalendar->reInitAlarmSettings(); 1655 mCalendar->reInitAlarmSettings();
1656 setSyncEventsReadOnly(); 1656 setSyncEventsReadOnly();
1657 updateUnmanagedViews(); 1657 updateUnmanagedViews();
1658 updateView(); 1658 updateView();
1659 if ( filename != MainWindow::defaultFileName() ) { 1659 if ( filename != MainWindow::defaultFileName() ) {
1660 saveCalendar( MainWindow::defaultFileName() ); 1660 saveCalendar( MainWindow::defaultFileName() );
1661 } else { 1661 } else {
1662 QFileInfo finf ( MainWindow::defaultFileName()); 1662 QFileInfo finf ( MainWindow::defaultFileName());
1663 if ( finf.exists() ) { 1663 if ( finf.exists() ) {
1664 setLoadedFileVersion( finf.lastModified () ); 1664 setLoadedFileVersion( finf.lastModified () );
1665 } 1665 }
1666 } 1666 }
1667 return true; 1667 return true;
1668 } else { 1668 } else {
1669 // while failing to load, the calendar object could 1669 // while failing to load, the calendar object could
1670 // have become partially populated. Clear it out. 1670 // have become partially populated. Clear it out.
1671 if ( !merge ) { 1671 if ( !merge ) {
1672 mCalendar->close(); 1672 mCalendar->close();
1673 mViewManager->setDocumentId( filename ); 1673 mViewManager->setDocumentId( filename );
1674 mDialogManager->setDocumentId( filename ); 1674 mDialogManager->setDocumentId( filename );
1675 mTodoList->setDocumentId( filename ); 1675 mTodoList->setDocumentId( filename );
1676 } 1676 }
1677 1677
1678 //KMessageBox::error(this,i18n("Couldn't load calendar\n '%1'.").arg(filename)); 1678 //KMessageBox::error(this,i18n("Couldn't load calendar\n '%1'.").arg(filename));
1679 1679
1680 QTimer::singleShot ( 1, this, SLOT ( showOpenError() ) ); 1680 QTimer::singleShot ( 1, this, SLOT ( showOpenError() ) );
1681 globalFlagBlockAgenda = 2; 1681 globalFlagBlockAgenda = 2;
1682 mCalendar->reInitAlarmSettings(); 1682 mCalendar->reInitAlarmSettings();
1683 setSyncEventsReadOnly(); 1683 setSyncEventsReadOnly();
1684 updateUnmanagedViews(); 1684 updateUnmanagedViews();
1685 updateView(); 1685 updateView();
1686 } 1686 }
1687 return false; 1687 return false;
1688} 1688}
1689void CalendarView::showOpenError() 1689void CalendarView::showOpenError()
1690{ 1690{
1691 KMessageBox::error(this,i18n("Couldn't load calendar\n.")); 1691 KMessageBox::error(this,i18n("Couldn't load calendar\n."));
1692} 1692}
1693void CalendarView::setLoadedFileVersion(QDateTime dt) 1693void CalendarView::setLoadedFileVersion(QDateTime dt)
1694{ 1694{
1695 loadedFileVersion = dt; 1695 loadedFileVersion = dt;
1696} 1696}
1697bool CalendarView::checkFileChanged(QString fn) 1697bool CalendarView::checkFileChanged(QString fn)
1698{ 1698{
1699 QFileInfo finf ( fn ); 1699 QFileInfo finf ( fn );
1700 if ( !finf.exists() ) 1700 if ( !finf.exists() )
1701 return true; 1701 return true;
1702 QDateTime dt = finf.lastModified (); 1702 QDateTime dt = finf.lastModified ();
1703 if ( dt <= loadedFileVersion ) 1703 if ( dt <= loadedFileVersion )
1704 return false; 1704 return false;
1705 return true; 1705 return true;
1706 1706
1707} 1707}
1708void CalendarView::watchSavedFile() 1708void CalendarView::watchSavedFile()
1709{ 1709{
1710 QFileInfo finf ( MainWindow::defaultFileName()); 1710 QFileInfo finf ( MainWindow::defaultFileName());
1711 if ( !finf.exists() ) 1711 if ( !finf.exists() )
1712 return; 1712 return;
1713 QDateTime dt = finf.lastModified (); 1713 QDateTime dt = finf.lastModified ();
1714 if ( dt < loadedFileVersion ) { 1714 if ( dt < loadedFileVersion ) {
1715 //qDebug("watch %s %s ", dt.toString().latin1(), loadedFileVersion.toString().latin1()); 1715 //qDebug("watch %s %s ", dt.toString().latin1(), loadedFileVersion.toString().latin1());
1716 QTimer::singleShot( 1000 , this, SLOT ( watchSavedFile() ) ); 1716 QTimer::singleShot( 1000 , this, SLOT ( watchSavedFile() ) );
1717 return; 1717 return;
1718 } 1718 }
1719 loadedFileVersion = dt; 1719 loadedFileVersion = dt;
1720} 1720}
1721 1721
1722bool CalendarView::checkFileVersion(QString fn) 1722bool CalendarView::checkFileVersion(QString fn)
1723{ 1723{
1724 QFileInfo finf ( fn ); 1724 QFileInfo finf ( fn );
1725 if ( !finf.exists() ) 1725 if ( !finf.exists() )
1726 return true; 1726 return true;
1727 QDateTime dt = finf.lastModified (); 1727 QDateTime dt = finf.lastModified ();
1728 //qDebug("loaded file version %s",loadedFileVersion.toString().latin1()); 1728 //qDebug("loaded file version %s",loadedFileVersion.toString().latin1());
1729 //qDebug("file on disk version %s",dt.toString().latin1()); 1729 //qDebug("file on disk version %s",dt.toString().latin1());
1730 if ( dt <= loadedFileVersion ) 1730 if ( dt <= loadedFileVersion )
1731 return true; 1731 return true;
1732 int km = KMessageBox::warningYesNoCancel(this, i18n("\nThe file on disk has changed!\nFile size: %1 bytes.\nLast modified: %2\nDo you want to:\n\n - Save and overwrite file?\n - Sync with file, then save?\n - Cancel without saving? \n").arg( QString::number( finf.size())).arg( KGlobal::locale()->formatDateTime(finf.lastModified (), true, true)) , 1732 int km = KMessageBox::warningYesNoCancel(this, i18n("\nThe file on disk has changed!\nFile size: %1 bytes.\nLast modified: %2\nDo you want to:\n\n - Save and overwrite file?\n - Sync with file, then save?\n - Cancel without saving? \n").arg( QString::number( finf.size())).arg( KGlobal::locale()->formatDateTime(finf.lastModified (), true, true)) ,
1733 i18n("KO/Pi Warning"),i18n("Overwrite"), 1733 i18n("KO/Pi Warning"),i18n("Overwrite"),
1734 i18n("Sync+save")); 1734 i18n("Sync+save"));
1735 1735
1736 if ( km == KMessageBox::Cancel ) 1736 if ( km == KMessageBox::Cancel )
1737 return false; 1737 return false;
1738 if ( km == KMessageBox::Yes ) 1738 if ( km == KMessageBox::Yes )
1739 return true; 1739 return true;
1740 1740
1741 setSyncDevice("deleteaftersync" ); 1741 setSyncDevice("deleteaftersync" );
1742 mSyncManager->mAskForPreferences = true; 1742 mSyncManager->mAskForPreferences = true;
1743 mSyncManager->mSyncAlgoPrefs = 3; 1743 mSyncManager->mSyncAlgoPrefs = 3;
1744 mSyncManager->mWriteBackFile = false; 1744 mSyncManager->mWriteBackFile = false;
1745 mSyncManager->mWriteBackExistingOnly = false; 1745 mSyncManager->mWriteBackExistingOnly = false;
1746 mSyncManager->mShowSyncSummary = false; 1746 mSyncManager->mShowSyncSummary = false;
1747 syncCalendar( fn, 3 ); 1747 syncCalendar( fn, 3 );
1748 Event * e = getLastSyncEvent(); 1748 Event * e = getLastSyncEvent();
1749 mCalendar->deleteEvent ( e ); 1749 mCalendar->deleteEvent ( e );
1750 updateView(); 1750 updateView();
1751 return true; 1751 return true;
1752} 1752}
1753 1753
1754bool CalendarView::saveCalendar( QString filename ) 1754bool CalendarView::saveCalendar( QString filename )
1755{ 1755{
1756 1756
1757 // Store back all unsaved data into calendar object 1757 // Store back all unsaved data into calendar object
1758 // qDebug("file %s %d ", filename.latin1() , mViewManager->currentView() ); 1758 // qDebug("file %s %d ", filename.latin1() , mViewManager->currentView() );
1759 if ( mViewManager->currentView() ) 1759 if ( mViewManager->currentView() )
1760 mViewManager->currentView()->flushView(); 1760 mViewManager->currentView()->flushView();
1761 1761
1762 1762
1763 QDateTime lfv = QDateTime::currentDateTime().addSecs( -2); 1763 QDateTime lfv = QDateTime::currentDateTime().addSecs( -2);
1764 mStorage->setSaveFormat( new ICalFormat() ); 1764 mStorage->setSaveFormat( new ICalFormat() );
1765 mStorage->setFileName( filename ); 1765 mStorage->setFileName( filename );
1766 bool success; 1766 bool success;
1767 success = mStorage->save(); 1767 success = mStorage->save();
1768 if ( !success ) { 1768 if ( !success ) {
1769 return false; 1769 return false;
1770 } 1770 }
1771 if ( filename == MainWindow::defaultFileName() ) { 1771 if ( filename == MainWindow::defaultFileName() ) {
1772 setLoadedFileVersion( lfv ); 1772 setLoadedFileVersion( lfv );
1773 watchSavedFile(); 1773 watchSavedFile();
1774 } 1774 }
1775 return true; 1775 return true;
1776} 1776}
1777 1777
1778void CalendarView::closeCalendar() 1778void CalendarView::closeCalendar()
1779{ 1779{
1780 1780
1781 // child windows no longer valid 1781 // child windows no longer valid
1782 emit closingDown(); 1782 emit closingDown();
1783 1783
1784 mCalendar->close(); 1784 mCalendar->close();
1785 setModified(false); 1785 setModified(false);
1786 updateView(); 1786 updateView();
1787} 1787}
1788 1788
1789void CalendarView::archiveCalendar() 1789void CalendarView::archiveCalendar()
1790{ 1790{
1791 mDialogManager->showArchiveDialog(); 1791 mDialogManager->showArchiveDialog();
1792} 1792}
1793 1793
1794 1794
1795void CalendarView::readSettings() 1795void CalendarView::readSettings()
1796{ 1796{
1797 1797
1798 1798
1799 // mViewManager->showAgendaView(); 1799 // mViewManager->showAgendaView();
1800 QString str; 1800 QString str;
1801 //qDebug("CalendarView::readSettings() "); 1801 //qDebug("CalendarView::readSettings() ");
1802 // read settings from the KConfig, supplying reasonable 1802 // read settings from the KConfig, supplying reasonable
1803 // defaults where none are to be found 1803 // defaults where none are to be found
1804 KConfig *config = KOGlobals::config(); 1804 KConfig *config = KOGlobals::config();
1805#ifndef KORG_NOSPLITTER 1805#ifndef KORG_NOSPLITTER
1806 config->setGroup("KOrganizer Geometry"); 1806 config->setGroup("KOrganizer Geometry");
1807 1807
1808 QValueList<int> sizes = config->readIntListEntry("Separator1"); 1808 QValueList<int> sizes = config->readIntListEntry("Separator1");
1809 if (sizes.count() != 2) { 1809 if (sizes.count() != 2) {
1810 sizes << mDateNavigator->minimumSizeHint().width(); 1810 sizes << mDateNavigator->minimumSizeHint().width();
1811 sizes << 300; 1811 sizes << 300;
1812 } 1812 }
1813 mPanner->setSizes(sizes); 1813 mPanner->setSizes(sizes);
1814 1814
1815 sizes = config->readIntListEntry("Separator2"); 1815 sizes = config->readIntListEntry("Separator2");
1816 if ( ( mResourceView && sizes.count() == 4 ) || 1816 if ( ( mResourceView && sizes.count() == 4 ) ||
1817 ( !mResourceView && sizes.count() == 3 ) ) { 1817 ( !mResourceView && sizes.count() == 3 ) ) {
1818 mLeftSplitter->setSizes(sizes); 1818 mLeftSplitter->setSizes(sizes);
1819 } 1819 }
1820#endif 1820#endif
1821 globalFlagBlockAgenda = 1; 1821 globalFlagBlockAgenda = 1;
1822 mViewManager->showAgendaView(); 1822 mViewManager->showAgendaView();
1823 //mViewManager->readSettings( config ); 1823 //mViewManager->readSettings( config );
1824 mTodoList->restoreLayout(config,QString("Todo Layout")); 1824 mTodoList->restoreLayout(config,QString("Todo Layout"));
1825 readFilterSettings(config); 1825 readFilterSettings(config);
1826 config->setGroup( "Views" ); 1826 config->setGroup( "Views" );
1827 int dateCount = config->readNumEntry( "ShownDatesCount", 7 ); 1827 int dateCount = config->readNumEntry( "ShownDatesCount", 7 );
1828 1828
1829 QValueList<int> sizes = config->readIntListEntry("Left Splitter Frame"); 1829 QValueList<int> sizes = config->readIntListEntry("Left Splitter Frame");
1830 1830
1831 int resetval = 0; 1831 int resetval = 0;
1832 int maxVal = 0; 1832 int maxVal = 0;
1833 if (sizes.count() != 3) { 1833 if (sizes.count() != 3) {
1834 if ( KOPrefs::instance()->mVerticalScreen ) { 1834 if ( KOPrefs::instance()->mVerticalScreen ) {
1835 resetval = mDateNavigator->sizeHint().width()+2; 1835 resetval = mDateNavigator->sizeHint().width()+2;
1836 } else { 1836 } else {
1837 resetval = mDateNavigator->sizeHint().height()+2; 1837 resetval = mDateNavigator->sizeHint().height()+2;
1838 } 1838 }
1839 } 1839 }
1840 if ( !resetval ){// i.e. sizes.count() == 3 1840 if ( !resetval ){// i.e. sizes.count() == 3
1841 if ( KOPrefs::instance()->mVerticalScreen ) { 1841 if ( KOPrefs::instance()->mVerticalScreen ) {
1842 if ( sizes[0] < mDateNavigator->sizeHint().width()+1 ) 1842 if ( sizes[0] < mDateNavigator->sizeHint().width()+1 )
1843 resetval = mDateNavigator->sizeHint().width()+2; 1843 resetval = mDateNavigator->sizeHint().width()+2;
1844 } else { 1844 } else {
1845 if ( sizes[0] < mDateNavigator->sizeHint().height()+1 ) 1845 if ( sizes[0] < mDateNavigator->sizeHint().height()+1 )
1846 resetval = mDateNavigator->sizeHint().height()+2; 1846 resetval = mDateNavigator->sizeHint().height()+2;
1847 } 1847 }
1848 } 1848 }
1849 if ( resetval ) { 1849 if ( resetval ) {
1850 sizes.clear(); 1850 sizes.clear();
1851 if ( KOPrefs::instance()->mVerticalScreen ) { 1851 if ( KOPrefs::instance()->mVerticalScreen ) {
1852 maxVal = QApplication::desktop()->width() -10; 1852 maxVal = QApplication::desktop()->width() -10;
1853 } else { 1853 } else {
1854 maxVal = QApplication::desktop()->height()-10; 1854 maxVal = QApplication::desktop()->height()-10;
1855 } 1855 }
1856 sizes << resetval; 1856 sizes << resetval;
1857 if ( maxVal < resetval + resetval) 1857 if ( maxVal < resetval + resetval)
1858 resetval = maxVal - resetval; 1858 resetval = maxVal - resetval;
1859 sizes << resetval; 1859 sizes << resetval;
1860 sizes << 100; 1860 sizes << 100;
1861 } 1861 }
1862 mLeftFrame->setSizes(sizes); 1862 mLeftFrame->setSizes(sizes);
1863 sizes = config->readIntListEntry("Main Splitter Frame"); 1863 sizes = config->readIntListEntry("Main Splitter Frame");
1864 if (sizes.count() != 3) { 1864 if (sizes.count() != 2) {
1865 if ( !KOPrefs::instance()->mVerticalScreen ) { 1865 if ( !KOPrefs::instance()->mVerticalScreen ) {
1866 resetval = mDateNavigator->sizeHint().width()+2; 1866 resetval = mDateNavigator->sizeHint().width()+2;
1867 } else { 1867 } else {
1868 resetval = mDateNavigator->sizeHint().height()+2; 1868 resetval = mDateNavigator->sizeHint().height()+2;
1869 } 1869 }
1870 } 1870 }
1871 if ( !resetval ){// i.e. sizes.count() == 3 1871 if ( !resetval ){// i.e. sizes.count() == 3
1872 if ( !KOPrefs::instance()->mVerticalScreen ) { 1872 if ( !KOPrefs::instance()->mVerticalScreen ) {
1873 if ( sizes[0] < mDateNavigator->sizeHint().width()+1 ) 1873 if ( sizes[0] < mDateNavigator->sizeHint().width()+1 )
1874 resetval = mDateNavigator->sizeHint().width()+2; 1874 resetval = mDateNavigator->sizeHint().width()+2;
1875 } else { 1875 } else {
1876 if ( sizes[0] < mDateNavigator->sizeHint().height()+1 ) 1876 if ( sizes[0] < mDateNavigator->sizeHint().height()+1 )
1877 resetval = mDateNavigator->sizeHint().height()+2; 1877 resetval = mDateNavigator->sizeHint().height()+2;
1878 } 1878 }
1879 } 1879 }
1880 if ( resetval ) { 1880 if ( resetval ) {
1881 sizes.clear(); 1881 sizes.clear();
1882 if ( !KOPrefs::instance()->mVerticalScreen ) { 1882 if ( !KOPrefs::instance()->mVerticalScreen ) {
1883 maxVal = QApplication::desktop()->width() -10; 1883 maxVal = QApplication::desktop()->width() -10;
1884 } else { 1884 } else {
1885 maxVal = QApplication::desktop()->height()-10; 1885 maxVal = QApplication::desktop()->height()-10;
1886 } 1886 }
1887 sizes << resetval; 1887 sizes << resetval;
1888 if ( maxVal < resetval + resetval) 1888 if ( maxVal < resetval + resetval)
1889 resetval = maxVal - resetval; 1889 resetval = maxVal - resetval;
1890 sizes << resetval; 1890 sizes << resetval;
1891 } 1891 }
1892 mMainFrame->setSizes(sizes); 1892 mMainFrame->setSizes(sizes);
1893 1893
1894 if ( dateCount == 5 ) mNavigator->selectWorkWeek(); 1894 if ( dateCount == 5 ) mNavigator->selectWorkWeek();
1895 else if ( dateCount == 7 ) mNavigator->selectWeek(); 1895 else if ( dateCount == 7 ) mNavigator->selectWeek();
1896 else mNavigator->selectDates( dateCount ); 1896 else mNavigator->selectDates( dateCount );
1897 // mViewManager->readSettings( config ); 1897 // mViewManager->readSettings( config );
1898 updateConfig(); 1898 updateConfig();
1899 globalFlagBlockAgenda = 2; 1899 globalFlagBlockAgenda = 2;
1900 mViewManager->readSettings( config ); 1900 mViewManager->readSettings( config );
1901#ifdef DESKTOP_VERSION 1901#ifdef DESKTOP_VERSION
1902 config->setGroup("WidgetLayout"); 1902 config->setGroup("WidgetLayout");
1903 QStringList list; 1903 QStringList list;
1904 list = config->readListEntry("MainLayout"); 1904 list = config->readListEntry("MainLayout");
1905 int x,y,w,h; 1905 int x,y,w,h;
1906 if ( ! list.isEmpty() ) { 1906 if ( ! list.isEmpty() ) {
1907 x = list[0].toInt(); 1907 x = list[0].toInt();
1908 y = list[1].toInt(); 1908 y = list[1].toInt();
1909 w = list[2].toInt(); 1909 w = list[2].toInt();
1910 h = list[3].toInt(); 1910 h = list[3].toInt();
1911 topLevelWidget()->setGeometry(x,y,w,h); 1911 topLevelWidget()->setGeometry(x,y,w,h);
1912 1912
1913 } else { 1913 } else {
1914 topLevelWidget()->setGeometry( 40 ,40 , 640, 440); 1914 topLevelWidget()->setGeometry( 40 ,40 , 640, 440);
1915 } 1915 }
1916 list = config->readListEntry("EditEventLayout"); 1916 list = config->readListEntry("EditEventLayout");
1917 if ( ! list.isEmpty() ) { 1917 if ( ! list.isEmpty() ) {
1918 x = list[0].toInt(); 1918 x = list[0].toInt();
1919 y = list[1].toInt(); 1919 y = list[1].toInt();
1920 w = list[2].toInt(); 1920 w = list[2].toInt();
1921 h = list[3].toInt(); 1921 h = list[3].toInt();
1922 mEventEditor->setGeometry(x,y,w,h); 1922 mEventEditor->setGeometry(x,y,w,h);
1923 1923
1924 } 1924 }
1925 list = config->readListEntry("EditTodoLayout"); 1925 list = config->readListEntry("EditTodoLayout");
1926 if ( ! list.isEmpty() ) { 1926 if ( ! list.isEmpty() ) {
1927 x = list[0].toInt(); 1927 x = list[0].toInt();
1928 y = list[1].toInt(); 1928 y = list[1].toInt();
1929 w = list[2].toInt(); 1929 w = list[2].toInt();
1930 h = list[3].toInt(); 1930 h = list[3].toInt();
1931 mTodoEditor->setGeometry(x,y,w,h); 1931 mTodoEditor->setGeometry(x,y,w,h);
1932 1932
1933 } 1933 }
1934 list = config->readListEntry("ViewerLayout"); 1934 list = config->readListEntry("ViewerLayout");
1935 if ( ! list.isEmpty() ) { 1935 if ( ! list.isEmpty() ) {
1936 x = list[0].toInt(); 1936 x = list[0].toInt();
1937 y = list[1].toInt(); 1937 y = list[1].toInt();
1938 w = list[2].toInt(); 1938 w = list[2].toInt();
1939 h = list[3].toInt(); 1939 h = list[3].toInt();
1940 getEventViewerDialog()->setGeometry(x,y,w,h); 1940 getEventViewerDialog()->setGeometry(x,y,w,h);
1941 } 1941 }
1942#endif 1942#endif
1943 1943
1944} 1944}
1945 1945
1946 1946
1947void CalendarView::writeSettings() 1947void CalendarView::writeSettings()
1948{ 1948{
1949 // kdDebug() << "CalendarView::writeSettings" << endl; 1949 // kdDebug() << "CalendarView::writeSettings" << endl;
1950 1950
1951 KConfig *config = KOGlobals::config(); 1951 KConfig *config = KOGlobals::config();
1952 1952
1953 mViewManager->writeSettings( config ); 1953 mViewManager->writeSettings( config );
1954 mTodoList->saveLayout(config,QString("Todo Layout")); 1954 mTodoList->saveLayout(config,QString("Todo Layout"));
1955 mDialogManager->writeSettings( config ); 1955 mDialogManager->writeSettings( config );
1956 //KOPrefs::instance()->usrWriteConfig(); 1956 //KOPrefs::instance()->usrWriteConfig();
1957 KOPrefs::instance()->writeConfig(); 1957 KOPrefs::instance()->writeConfig();
1958 1958
1959 writeFilterSettings(config); 1959 writeFilterSettings(config);
1960 1960
1961 config->setGroup( "Views" ); 1961 config->setGroup( "Views" );
1962 config->writeEntry( "ShownDatesCount", mNavigator->selectedDates().count() ); 1962 config->writeEntry( "ShownDatesCount", mNavigator->selectedDates().count() );
1963 1963
1964 QValueList<int> listINT = mLeftFrame->sizes(); 1964 QValueList<int> listINT = mLeftFrame->sizes();
1965 config->writeEntry("Left Splitter Frame",listINT); 1965 config->writeEntry("Left Splitter Frame",listINT);
1966 listINT = mMainFrame->sizes(); 1966 QValueList<int> listINT2 = mMainFrame->sizes();
1967 config->writeEntry("Main Splitter Frame",listINT); 1967 config->writeEntry("Main Splitter Frame",listINT2);
1968#ifdef DESKTOP_VERSION 1968#ifdef DESKTOP_VERSION
1969 config->setGroup("WidgetLayout"); 1969 config->setGroup("WidgetLayout");
1970 QStringList list ;//= config->readListEntry("MainLayout"); 1970 QStringList list ;//= config->readListEntry("MainLayout");
1971 int x,y,w,h; 1971 int x,y,w,h;
1972 QWidget* wid; 1972 QWidget* wid;
1973 wid = topLevelWidget(); 1973 wid = topLevelWidget();
1974 x = wid->geometry().x(); 1974 x = wid->geometry().x();
1975 y = wid->geometry().y(); 1975 y = wid->geometry().y();
1976 w = wid->width(); 1976 w = wid->width();
1977 h = wid->height(); 1977 h = wid->height();
1978 list.clear(); 1978 list.clear();
1979 list << QString::number( x ); 1979 list << QString::number( x );
1980 list << QString::number( y ); 1980 list << QString::number( y );
1981 list << QString::number( w ); 1981 list << QString::number( w );
1982 list << QString::number( h ); 1982 list << QString::number( h );
1983 config->writeEntry("MainLayout",list ); 1983 config->writeEntry("MainLayout",list );
1984 1984
1985 wid = mEventEditor; 1985 wid = mEventEditor;
1986 x = wid->geometry().x(); 1986 x = wid->geometry().x();
1987 y = wid->geometry().y(); 1987 y = wid->geometry().y();
1988 w = wid->width(); 1988 w = wid->width();
1989 h = wid->height(); 1989 h = wid->height();
1990 list.clear(); 1990 list.clear();
1991 list << QString::number( x ); 1991 list << QString::number( x );
1992 list << QString::number( y ); 1992 list << QString::number( y );
1993 list << QString::number( w ); 1993 list << QString::number( w );
1994 list << QString::number( h ); 1994 list << QString::number( h );
1995 config->writeEntry("EditEventLayout",list ); 1995 config->writeEntry("EditEventLayout",list );
1996 1996
1997 wid = mTodoEditor; 1997 wid = mTodoEditor;
1998 x = wid->geometry().x(); 1998 x = wid->geometry().x();
1999 y = wid->geometry().y(); 1999 y = wid->geometry().y();
2000 w = wid->width(); 2000 w = wid->width();
2001 h = wid->height(); 2001 h = wid->height();
2002 list.clear(); 2002 list.clear();
2003 list << QString::number( x ); 2003 list << QString::number( x );
2004 list << QString::number( y ); 2004 list << QString::number( y );
2005 list << QString::number( w ); 2005 list << QString::number( w );
2006 list << QString::number( h ); 2006 list << QString::number( h );
2007 config->writeEntry("EditTodoLayout",list ); 2007 config->writeEntry("EditTodoLayout",list );
2008 wid = getEventViewerDialog(); 2008 wid = getEventViewerDialog();
2009 x = wid->geometry().x(); 2009 x = wid->geometry().x();
2010 y = wid->geometry().y(); 2010 y = wid->geometry().y();
2011 w = wid->width(); 2011 w = wid->width();
2012 h = wid->height(); 2012 h = wid->height();
2013 list.clear(); 2013 list.clear();
2014 list << QString::number( x ); 2014 list << QString::number( x );
2015 list << QString::number( y ); 2015 list << QString::number( y );
2016 list << QString::number( w ); 2016 list << QString::number( w );
2017 list << QString::number( h ); 2017 list << QString::number( h );
2018 config->writeEntry("ViewerLayout",list ); 2018 config->writeEntry("ViewerLayout",list );
2019 wid = mDialogManager->getSearchDialog(); 2019 wid = mDialogManager->getSearchDialog();
2020 if ( wid ) { 2020 if ( wid ) {
2021 x = wid->geometry().x(); 2021 x = wid->geometry().x();
2022 y = wid->geometry().y(); 2022 y = wid->geometry().y();
2023 w = wid->width(); 2023 w = wid->width();
2024 h = wid->height(); 2024 h = wid->height();
2025 list.clear(); 2025 list.clear();
2026 list << QString::number( x ); 2026 list << QString::number( x );
2027 list << QString::number( y ); 2027 list << QString::number( y );
2028 list << QString::number( w ); 2028 list << QString::number( w );
2029 list << QString::number( h ); 2029 list << QString::number( h );
2030 config->writeEntry("SearchLayout",list ); 2030 config->writeEntry("SearchLayout",list );
2031 } 2031 }
2032#endif 2032#endif
2033 2033
2034 2034
2035 config->sync(); 2035 config->sync();
2036} 2036}
2037 2037
2038void CalendarView::readFilterSettings(KConfig *config) 2038void CalendarView::readFilterSettings(KConfig *config)
2039{ 2039{
2040 // kdDebug() << "CalendarView::readFilterSettings()" << endl; 2040 // kdDebug() << "CalendarView::readFilterSettings()" << endl;
2041 2041
2042 mFilters.clear(); 2042 mFilters.clear();
2043 2043
2044 config->setGroup("General"); 2044 config->setGroup("General");
2045 QStringList filterList = config->readListEntry("CalendarFilters"); 2045 QStringList filterList = config->readListEntry("CalendarFilters");
2046 2046
2047 QStringList::ConstIterator it = filterList.begin(); 2047 QStringList::ConstIterator it = filterList.begin();
2048 QStringList::ConstIterator end = filterList.end(); 2048 QStringList::ConstIterator end = filterList.end();
2049 while(it != end) { 2049 while(it != end) {
2050 // kdDebug() << " filter: " << (*it) << endl; 2050 // kdDebug() << " filter: " << (*it) << endl;
2051 2051
2052 CalFilter *filter; 2052 CalFilter *filter;
2053 filter = new CalFilter(*it); 2053 filter = new CalFilter(*it);
2054 config->setGroup("Filter_" + (*it)); 2054 config->setGroup("Filter_" + (*it));
2055 //qDebug("readFilterSettings %d ",config->readNumEntry("Criteria",0) ); 2055 //qDebug("readFilterSettings %d ",config->readNumEntry("Criteria",0) );
2056 filter->setCriteria(config->readNumEntry("Criteria",0)); 2056 filter->setCriteria(config->readNumEntry("Criteria",0));
2057 filter->setCategoryList(config->readListEntry("CategoryList")); 2057 filter->setCategoryList(config->readListEntry("CategoryList"));
2058 mFilters.append(filter); 2058 mFilters.append(filter);
2059 2059
2060 ++it; 2060 ++it;
2061 } 2061 }
2062 2062
2063 if (mFilters.count() == 0) { 2063 if (mFilters.count() == 0) {
2064 CalFilter *filter = new CalFilter(i18n("Default")); 2064 CalFilter *filter = new CalFilter(i18n("Default"));
2065 mFilters.append(filter); 2065 mFilters.append(filter);
2066 } 2066 }
2067 mFilterView->updateFilters(); 2067 mFilterView->updateFilters();
2068 config->setGroup("FilterView"); 2068 config->setGroup("FilterView");
2069 2069
2070 mFilterView->blockSignals(true); 2070 mFilterView->blockSignals(true);
2071 mFilterView->setFiltersEnabled(config->readBoolEntry("FilterEnabled")); 2071 mFilterView->setFiltersEnabled(config->readBoolEntry("FilterEnabled"));
2072 mFilterView->setSelectedFilter(config->readEntry("Current Filter")); 2072 mFilterView->setSelectedFilter(config->readEntry("Current Filter"));
2073 mFilterView->blockSignals(false); 2073 mFilterView->blockSignals(false);
2074 // We do it manually to avoid it being done twice by the above calls 2074 // We do it manually to avoid it being done twice by the above calls
2075 updateFilter(); 2075 updateFilter();
2076} 2076}
2077 2077
2078void CalendarView::writeFilterSettings(KConfig *config) 2078void CalendarView::writeFilterSettings(KConfig *config)
2079{ 2079{
2080 // kdDebug() << "CalendarView::writeFilterSettings()" << endl; 2080 // kdDebug() << "CalendarView::writeFilterSettings()" << endl;
2081 2081
2082 QStringList filterList; 2082 QStringList filterList;
2083 2083
2084 CalFilter *filter = mFilters.first(); 2084 CalFilter *filter = mFilters.first();
2085 while(filter) { 2085 while(filter) {
2086 // kdDebug() << " fn: " << filter->name() << endl; 2086 // kdDebug() << " fn: " << filter->name() << endl;
2087 filterList << filter->name(); 2087 filterList << filter->name();
2088 config->setGroup("Filter_" + filter->name()); 2088 config->setGroup("Filter_" + filter->name());
2089 config->writeEntry("Criteria",filter->criteria()); 2089 config->writeEntry("Criteria",filter->criteria());
2090 config->writeEntry("CategoryList",filter->categoryList()); 2090 config->writeEntry("CategoryList",filter->categoryList());
2091 filter = mFilters.next(); 2091 filter = mFilters.next();
2092 } 2092 }
2093 config->setGroup("General"); 2093 config->setGroup("General");
2094 config->writeEntry("CalendarFilters",filterList); 2094 config->writeEntry("CalendarFilters",filterList);
2095 2095
2096 config->setGroup("FilterView"); 2096 config->setGroup("FilterView");
2097 config->writeEntry("FilterEnabled",mFilterView->filtersEnabled()); 2097 config->writeEntry("FilterEnabled",mFilterView->filtersEnabled());
2098 config->writeEntry("Current Filter",mFilterView->selectedFilter()->name()); 2098 config->writeEntry("Current Filter",mFilterView->selectedFilter()->name());
2099} 2099}
2100 2100
2101 2101
2102void CalendarView::goToday() 2102void CalendarView::goToday()
2103{ 2103{
2104 if ( mViewManager->currentView()->isMonthView() ) 2104 if ( mViewManager->currentView()->isMonthView() )
2105 mNavigator->selectTodayMonth(); 2105 mNavigator->selectTodayMonth();
2106 else 2106 else
2107 mNavigator->selectToday(); 2107 mNavigator->selectToday();
2108} 2108}
2109 2109
2110void CalendarView::goNext() 2110void CalendarView::goNext()
2111{ 2111{
2112 mNavigator->selectNext(); 2112 mNavigator->selectNext();
2113} 2113}
2114 2114
2115void CalendarView::goPrevious() 2115void CalendarView::goPrevious()
2116{ 2116{
2117 mNavigator->selectPrevious(); 2117 mNavigator->selectPrevious();
2118} 2118}
2119void CalendarView::goNextMonth() 2119void CalendarView::goNextMonth()
2120{ 2120{
2121 mNavigator->selectNextMonth(); 2121 mNavigator->selectNextMonth();
2122} 2122}
2123 2123
2124void CalendarView::goPreviousMonth() 2124void CalendarView::goPreviousMonth()
2125{ 2125{
2126 mNavigator->selectPreviousMonth(); 2126 mNavigator->selectPreviousMonth();
2127} 2127}
2128void CalendarView::writeLocale() 2128void CalendarView::writeLocale()
2129{ 2129{
2130 //KPimGlobalPrefs::instance()->setGlobalConfig(); 2130 //KPimGlobalPrefs::instance()->setGlobalConfig();
2131#if 0 2131#if 0
2132 KGlobal::locale()->setHore24Format( !KOPrefs::instance()->mPreferredTime ); 2132 KGlobal::locale()->setHore24Format( !KOPrefs::instance()->mPreferredTime );
2133 KGlobal::locale()->setWeekStartMonday( !KOPrefs::instance()->mWeekStartsOnSunday ); 2133 KGlobal::locale()->setWeekStartMonday( !KOPrefs::instance()->mWeekStartsOnSunday );
2134 KGlobal::locale()->setIntDateFormat( (KLocale::IntDateFormat)KOPrefs::instance()->mPreferredDate ); 2134 KGlobal::locale()->setIntDateFormat( (KLocale::IntDateFormat)KOPrefs::instance()->mPreferredDate );
2135 KGlobal::locale()->setLanguage( KOPrefs::instance()->mPreferredLanguage ); 2135 KGlobal::locale()->setLanguage( KOPrefs::instance()->mPreferredLanguage );
2136 QString dummy = KOPrefs::instance()->mUserDateFormatLong; 2136 QString dummy = KOPrefs::instance()->mUserDateFormatLong;
2137 KGlobal::locale()->setDateFormat(dummy.replace( QRegExp("K"), QString(",") )); 2137 KGlobal::locale()->setDateFormat(dummy.replace( QRegExp("K"), QString(",") ));
2138 dummy = KOPrefs::instance()->mUserDateFormatShort; 2138 dummy = KOPrefs::instance()->mUserDateFormatShort;
2139 KGlobal::locale()->setDateFormatShort(dummy.replace( QRegExp("K"), QString(",") )); 2139 KGlobal::locale()->setDateFormatShort(dummy.replace( QRegExp("K"), QString(",") ));
2140 KGlobal::locale()->setDaylightSaving( KOPrefs::instance()->mUseDaylightsaving, 2140 KGlobal::locale()->setDaylightSaving( KOPrefs::instance()->mUseDaylightsaving,
2141 KOPrefs::instance()->mDaylightsavingStart, 2141 KOPrefs::instance()->mDaylightsavingStart,
2142 KOPrefs::instance()->mDaylightsavingEnd ); 2142 KOPrefs::instance()->mDaylightsavingEnd );
2143 KGlobal::locale()->setTimezone( KPimGlobalPrefs::instance()->mTimeZoneId ); 2143 KGlobal::locale()->setTimezone( KPimGlobalPrefs::instance()->mTimeZoneId );
2144#endif 2144#endif
2145} 2145}
2146void CalendarView::updateConfig() 2146void CalendarView::updateConfig()
2147{ 2147{
2148 writeLocale(); 2148 writeLocale();
2149 if ( KOPrefs::instance()->mUseAppColors ) 2149 if ( KOPrefs::instance()->mUseAppColors )
2150 QApplication::setPalette( QPalette (KOPrefs::instance()->mAppColor1, KOPrefs::instance()->mAppColor2), true ); 2150 QApplication::setPalette( QPalette (KOPrefs::instance()->mAppColor1, KOPrefs::instance()->mAppColor2), true );
2151 emit configChanged(); 2151 emit configChanged();
2152 mTodoList->updateConfig(); 2152 mTodoList->updateConfig();
2153 // mDateNavigator->setFont ( KOPrefs::instance()->mDateNavigatorFont); 2153 // mDateNavigator->setFont ( KOPrefs::instance()->mDateNavigatorFont);
2154 mCalendar->setTimeZoneId(KPimGlobalPrefs::instance()->mTimeZoneId); 2154 mCalendar->setTimeZoneId(KPimGlobalPrefs::instance()->mTimeZoneId);
2155 // To make the "fill window" configurations work 2155 // To make the "fill window" configurations work
2156 //mViewManager->raiseCurrentView(); 2156 //mViewManager->raiseCurrentView();
2157} 2157}
2158 2158
2159 2159
2160void CalendarView::eventChanged(Event *event) 2160void CalendarView::eventChanged(Event *event)
2161{ 2161{
2162 changeEventDisplay(event,KOGlobals::EVENTEDITED); 2162 changeEventDisplay(event,KOGlobals::EVENTEDITED);
2163 //updateUnmanagedViews(); 2163 //updateUnmanagedViews();
2164} 2164}
2165 2165
2166void CalendarView::eventAdded(Event *event) 2166void CalendarView::eventAdded(Event *event)
2167{ 2167{
2168 changeEventDisplay(event,KOGlobals::EVENTADDED); 2168 changeEventDisplay(event,KOGlobals::EVENTADDED);
2169} 2169}
2170 2170
2171void CalendarView::eventToBeDeleted(Event *) 2171void CalendarView::eventToBeDeleted(Event *)
2172{ 2172{
2173 kdDebug() << "CalendarView::eventToBeDeleted(): to be implemented" << endl; 2173 kdDebug() << "CalendarView::eventToBeDeleted(): to be implemented" << endl;
2174} 2174}
2175 2175
2176void CalendarView::eventDeleted() 2176void CalendarView::eventDeleted()
2177{ 2177{
2178 changeEventDisplay(0,KOGlobals::EVENTDELETED); 2178 changeEventDisplay(0,KOGlobals::EVENTDELETED);
2179} 2179}
2180void CalendarView::changeTodoDisplay(Todo *which, int action) 2180void CalendarView::changeTodoDisplay(Todo *which, int action)
2181{ 2181{
2182 changeIncidenceDisplay((Incidence *)which, action); 2182 changeIncidenceDisplay((Incidence *)which, action);
2183 mDateNavigator->updateView(); //LR 2183 mDateNavigator->updateView(); //LR
2184 //mDialogManager->updateSearchDialog(); 2184 //mDialogManager->updateSearchDialog();
2185 2185
2186 if (which) { 2186 if (which) {
2187 mViewManager->updateWNview(); 2187 mViewManager->updateWNview();
2188 //mTodoList->updateView(); 2188 //mTodoList->updateView();
2189 } 2189 }
2190 2190
2191} 2191}
2192 2192
2193void CalendarView::changeIncidenceDisplay(Incidence *which, int action) 2193void CalendarView::changeIncidenceDisplay(Incidence *which, int action)
2194{ 2194{
2195 updateUnmanagedViews(); 2195 updateUnmanagedViews();
2196 //qDebug(" CalendarView::changeIncidenceDisplay++++++++++++++++++++++++++ %d %d ",which, action ); 2196 //qDebug(" CalendarView::changeIncidenceDisplay++++++++++++++++++++++++++ %d %d ",which, action );
2197 if ( action == KOGlobals::EVENTDELETED ) { //delete 2197 if ( action == KOGlobals::EVENTDELETED ) { //delete
2198 mCalendar->checkAlarmForIncidence( 0, true ); 2198 mCalendar->checkAlarmForIncidence( 0, true );
2199 if ( mEventViewerDialog ) 2199 if ( mEventViewerDialog )
2200 mEventViewerDialog->hide(); 2200 mEventViewerDialog->hide();
2201 } 2201 }
2202 else 2202 else
2203 mCalendar->checkAlarmForIncidence( which , false ); 2203 mCalendar->checkAlarmForIncidence( which , false );
2204} 2204}
2205 2205
2206// most of the changeEventDisplays() right now just call the view's 2206// most of the changeEventDisplays() right now just call the view's
2207// total update mode, but they SHOULD be recoded to be more refresh-efficient. 2207// total update mode, but they SHOULD be recoded to be more refresh-efficient.
2208void CalendarView::changeEventDisplay(Event *which, int action) 2208void CalendarView::changeEventDisplay(Event *which, int action)
2209{ 2209{
2210 // kdDebug() << "CalendarView::changeEventDisplay" << endl; 2210 // kdDebug() << "CalendarView::changeEventDisplay" << endl;
2211 changeIncidenceDisplay((Incidence *)which, action); 2211 changeIncidenceDisplay((Incidence *)which, action);
2212 mDateNavigator->updateView(); 2212 mDateNavigator->updateView();
2213 //mDialogManager->updateSearchDialog(); 2213 //mDialogManager->updateSearchDialog();
2214 2214
2215 if (which) { 2215 if (which) {
2216 // If there is an event view visible update the display 2216 // If there is an event view visible update the display
2217 mViewManager->currentView()->changeEventDisplay(which,action); 2217 mViewManager->currentView()->changeEventDisplay(which,action);
2218 // TODO: check, if update needed 2218 // TODO: check, if update needed
2219 // if (which->getTodoStatus()) { 2219 // if (which->getTodoStatus()) {
2220 mTodoList->updateView(); 2220 mTodoList->updateView();
2221 // } 2221 // }
2222 } else { 2222 } else {
2223 mViewManager->currentView()->updateView(); 2223 mViewManager->currentView()->updateView();