author | zautrix <zautrix> | 2005-03-02 15:12:43 (UTC) |
---|---|---|
committer | zautrix <zautrix> | 2005-03-02 15:12:43 (UTC) |
commit | 9e0ceaa58a686fb64f8133ffa9e73866e985a464 (patch) (unidiff) | |
tree | 794d5af071dba939d4ff6b27544274c36b5ecec5 | |
parent | 6733b0548df446fade0a58d409d5f80314e5ed4b (diff) | |
download | kdepimpi-9e0ceaa58a686fb64f8133ffa9e73866e985a464.zip kdepimpi-9e0ceaa58a686fb64f8133ffa9e73866e985a464.tar.gz kdepimpi-9e0ceaa58a686fb64f8133ffa9e73866e985a464.tar.bz2 |
print fix. added desktop Qtopia import
-rw-r--r-- | korganizer/calprintbase.cpp | 2 | ||||
-rw-r--r-- | korganizer/mainwindow.cpp | 23 |
2 files changed, 17 insertions, 8 deletions
diff --git a/korganizer/calprintbase.cpp b/korganizer/calprintbase.cpp index af32ebc..6bb407d 100644 --- a/korganizer/calprintbase.cpp +++ b/korganizer/calprintbase.cpp | |||
@@ -792,257 +792,257 @@ void CalPrintBase::drawWeek(QPainter &p, const QDate &qd, | |||
792 | } // for i through all weekdays | 792 | } // for i through all weekdays |
793 | } | 793 | } |
794 | 794 | ||
795 | 795 | ||
796 | void CalPrintBase::drawTimeTable(QPainter &p, | 796 | void CalPrintBase::drawTimeTable(QPainter &p, |
797 | const QDate &fromDate, const QDate &toDate, | 797 | const QDate &fromDate, const QDate &toDate, |
798 | QTime &fromTime, QTime &toTime, | 798 | QTime &fromTime, QTime &toTime, |
799 | int x, int y, int width, int height) | 799 | int x, int y, int width, int height) |
800 | { | 800 | { |
801 | // timeline is 1.5 hours: | 801 | // timeline is 1.5 hours: |
802 | int alldayHeight = (int)( 3600.*height/(fromTime.secsTo(toTime)+3600.) ); | 802 | int alldayHeight = (int)( 3600.*height/(fromTime.secsTo(toTime)+3600.) ); |
803 | int timelineWidth = 60; | 803 | int timelineWidth = 60; |
804 | int cellWidth = (int)( (width-timelineWidth)/(fromDate.daysTo(toDate)+1) ); | 804 | int cellWidth = (int)( (width-timelineWidth)/(fromDate.daysTo(toDate)+1) ); |
805 | int currY=y; | 805 | int currY=y; |
806 | int currX=x; | 806 | int currX=x; |
807 | 807 | ||
808 | drawDaysOfWeek( p, fromDate, toDate, x+timelineWidth, currY, width-timelineWidth, mSubHeaderHeight); | 808 | drawDaysOfWeek( p, fromDate, toDate, x+timelineWidth, currY, width-timelineWidth, mSubHeaderHeight); |
809 | currY+=mSubHeaderHeight; | 809 | currY+=mSubHeaderHeight; |
810 | drawTimeLine( p, fromTime, toTime, x, currY+alldayHeight, | 810 | drawTimeLine( p, fromTime, toTime, x, currY+alldayHeight, |
811 | timelineWidth, height-mSubHeaderHeight-alldayHeight ); | 811 | timelineWidth, height-mSubHeaderHeight-alldayHeight ); |
812 | 812 | ||
813 | currX=x+timelineWidth; | 813 | currX=x+timelineWidth; |
814 | // draw each day | 814 | // draw each day |
815 | QDate curDate(fromDate); | 815 | QDate curDate(fromDate); |
816 | while (curDate<=toDate) {Event::List eventList; | 816 | while (curDate<=toDate) {Event::List eventList; |
817 | eventList.fill( mCalendar->events(curDate, true)); | 817 | eventList.fill( mCalendar->events(curDate, true)); |
818 | drawAllDayBox( p, eventList, curDate, false, currX, currY, cellWidth, alldayHeight); | 818 | drawAllDayBox( p, eventList, curDate, false, currX, currY, cellWidth, alldayHeight); |
819 | drawAgendaDayBox( p, eventList, curDate, false, fromTime, toTime, currX, | 819 | drawAgendaDayBox( p, eventList, curDate, false, fromTime, toTime, currX, |
820 | currY+alldayHeight, cellWidth, height-mSubHeaderHeight-alldayHeight ); | 820 | currY+alldayHeight, cellWidth, height-mSubHeaderHeight-alldayHeight ); |
821 | currX+=cellWidth; | 821 | currX+=cellWidth; |
822 | curDate=curDate.addDays(1); | 822 | curDate=curDate.addDays(1); |
823 | } | 823 | } |
824 | 824 | ||
825 | } | 825 | } |
826 | 826 | ||
827 | 827 | ||
828 | /////////////////////////////////////////////////////////////////////////////// | 828 | /////////////////////////////////////////////////////////////////////////////// |
829 | 829 | ||
830 | void CalPrintBase::drawMonth(QPainter &p, const QDate &qd, bool weeknumbers, | 830 | void CalPrintBase::drawMonth(QPainter &p, const QDate &qd, bool weeknumbers, |
831 | int x, int y, int width, int height) | 831 | int x, int y, int width, int height) |
832 | { | 832 | { |
833 | 833 | ||
834 | int yoffset = mSubHeaderHeight; | 834 | int yoffset = mSubHeaderHeight; |
835 | int xoffset = 0; | 835 | int xoffset = 0; |
836 | 836 | ||
837 | QDate monthDate(QDate(qd.year(), qd.month(), 1)); | 837 | QDate monthDate(QDate(qd.year(), qd.month(), 1)); |
838 | QDate monthFirst(monthDate); | 838 | QDate monthFirst(monthDate); |
839 | QDate monthLast(monthDate.addMonths(1).addDays(-1)); | 839 | QDate monthLast(monthDate.addMonths(1).addDays(-1)); |
840 | 840 | ||
841 | 841 | ||
842 | int weekdayCol = weekdayColumn( monthDate.dayOfWeek() ); | 842 | int weekdayCol = weekdayColumn( monthDate.dayOfWeek() ); |
843 | monthDate = monthDate.addDays(-weekdayCol); | 843 | monthDate = monthDate.addDays(-weekdayCol); |
844 | 844 | ||
845 | int rows=(weekdayCol + qd.daysInMonth() - 1)/7 +1; | 845 | int rows=(weekdayCol + qd.daysInMonth() - 1)/7 +1; |
846 | int cellHeight = (height-yoffset) / rows; | 846 | int cellHeight = (height-yoffset) / rows; |
847 | 847 | ||
848 | if (weeknumbers) { | 848 | if (weeknumbers) { |
849 | QFont oldFont(p.font()); | 849 | QFont oldFont(p.font()); |
850 | QFont newFont(p.font()); | 850 | QFont newFont(p.font()); |
851 | newFont.setPointSize(7); | 851 | newFont.setPointSize(7); |
852 | p.setFont(newFont); | 852 | p.setFont(newFont); |
853 | xoffset += 18; | 853 | xoffset += 18; |
854 | QDate weekDate(monthDate); | 854 | QDate weekDate(monthDate); |
855 | for (int row = 0; row<rows; row++) { | 855 | for (int row = 0; row<rows; row++) { |
856 | int calWeek = weekDate.weekNumber(); | 856 | int calWeek = weekDate.weekNumber(); |
857 | QRect rc(x, y+yoffset+cellHeight*row, xoffset-1, cellHeight); | 857 | QRect rc(x, y+yoffset+cellHeight*row, xoffset-1, cellHeight); |
858 | p.drawText( rc, AlignRight|AlignVCenter, QString::number(calWeek) ); | 858 | p.drawText( rc, AlignRight|AlignVCenter, QString::number(calWeek) ); |
859 | weekDate = weekDate.addDays(7); | 859 | weekDate = weekDate.addDays(7); |
860 | } | 860 | } |
861 | p.setFont(oldFont); | 861 | p.setFont(oldFont); |
862 | } | 862 | } |
863 | 863 | ||
864 | drawDaysOfWeek( p, monthDate, monthDate.addDays(6), x+xoffset, y, width-xoffset, mSubHeaderHeight ); | 864 | drawDaysOfWeek( p, monthDate, monthDate.addDays(6), x+xoffset, y, width-xoffset, mSubHeaderHeight ); |
865 | int cellWidth = (width-xoffset) / 7; | 865 | int cellWidth = (width-xoffset) / 7; |
866 | 866 | ||
867 | QColor back = p.backgroundColor(); | 867 | QColor back = p.backgroundColor(); |
868 | bool darkbg = false; | 868 | bool darkbg = false; |
869 | for (int row = 0; row < rows; row++) { | 869 | for (int row = 0; row < rows; row++) { |
870 | for (int col = 0; col < 7; col++) { | 870 | for (int col = 0; col < 7; col++) { |
871 | // show days from previous/next month with a grayed background | 871 | // show days from previous/next month with a grayed background |
872 | if ( (monthDate < monthFirst) || (monthDate > monthLast) ) { | 872 | if ( (monthDate < monthFirst) || (monthDate > monthLast) ) { |
873 | p.setBackgroundColor( QColor( 240, 240, 240) ); | 873 | p.setBackgroundColor( QColor( 240, 240, 240) ); |
874 | darkbg = true; | 874 | darkbg = true; |
875 | } | 875 | } |
876 | drawDayBox(p, monthDate, x+xoffset+col*cellWidth, y+yoffset+row*cellHeight, cellWidth, cellHeight); | 876 | drawDayBox(p, monthDate, x+xoffset+col*cellWidth, y+yoffset+row*cellHeight, cellWidth, cellHeight); |
877 | if ( darkbg ) { | 877 | if ( darkbg ) { |
878 | p.setBackgroundColor( back ); | 878 | p.setBackgroundColor( back ); |
879 | darkbg = false; | 879 | darkbg = false; |
880 | } | 880 | } |
881 | monthDate = monthDate.addDays(1); | 881 | monthDate = monthDate.addDays(1); |
882 | } | 882 | } |
883 | } | 883 | } |
884 | } | 884 | } |
885 | 885 | ||
886 | 886 | ||
887 | /////////////////////////////////////////////////////////////////////////////// | 887 | /////////////////////////////////////////////////////////////////////////////// |
888 | 888 | ||
889 | void CalPrintBase::drawTodo( bool completed, int &count, Todo * item, QPainter &p, bool connectSubTodos, | 889 | void CalPrintBase::drawTodo( bool completed, int &count, Todo * item, QPainter &p, bool connectSubTodos, |
890 | bool desc, int pospriority, int possummary, int posDueDt, int level, | 890 | bool desc, int pospriority, int possummary, int posDueDt, int level, |
891 | int x, int &y, int width, int &height, int pageHeight, | 891 | int x, int &y, int width, int &height, int pageHeight, |
892 | TodoParentStart *r ) | 892 | TodoParentStart *r ) |
893 | { | 893 | { |
894 | if ( !completed && item->isCompleted() ) | 894 | if ( !completed && item->isCompleted() ) |
895 | return; | 895 | return; |
896 | QString outStr; | 896 | QString outStr; |
897 | // int fontHeight = 10; | 897 | // int fontHeight = 10; |
898 | const KLocale *local = KGlobal::locale(); | 898 | const KLocale *local = KGlobal::locale(); |
899 | int priority=item->priority(); | 899 | int priority=item->priority(); |
900 | int posdue=posDueDt; | 900 | int posdue=posDueDt; |
901 | if (posdue<0) posdue=x+width; | 901 | if (posdue<0) posdue=x+width; |
902 | QRect rect; | 902 | QRect rect; |
903 | TodoParentStart startpt; | 903 | TodoParentStart startpt; |
904 | // This list keeps all starting points of the parent todos so the connection | 904 | // This list keeps all starting points of the parent todos so the connection |
905 | // lines of the tree can easily be drawn (needed if a new page is started) | 905 | // lines of the tree can easily be drawn (needed if a new page is started) |
906 | static QPtrList<TodoParentStart> startPoints; | 906 | static QPtrList<TodoParentStart> startPoints; |
907 | if (level<1) { | 907 | if (level<1) { |
908 | startPoints.clear(); | 908 | startPoints.clear(); |
909 | } | 909 | } |
910 | 910 | ||
911 | // size of item | 911 | // size of item |
912 | outStr=item->summary(); | 912 | outStr=item->summary(); |
913 | if ( ! item->location().isEmpty() ) | 913 | if ( ! item->location().isEmpty() ) |
914 | outStr += " ("+item->location()+")"; | 914 | outStr += " ("+item->location()+")"; |
915 | if ( item->hasDueDate() && posDueDt>=0 ) { | 915 | if ( item->hasDueDate() && posDueDt>=0 ) { |
916 | outStr += " [" +local->formatDate(item->dtDue().date(),true)+"]"; | 916 | outStr += " [" +local->formatDate(item->dtDue().date(),true)+"]"; |
917 | } | 917 | } |
918 | int left = possummary+(level*10); | 918 | int left = possummary+(level*10); |
919 | rect = p.boundingRect(left, y, (posdue-left-5),-1, WordBreak, outStr); | 919 | rect = p.boundingRect(left, y, (posdue-left-5),-1, WordBreak, outStr); |
920 | if ( !item->description().isEmpty() && !desc ) { | 920 | if ( !item->description().isEmpty() && desc ) { |
921 | outStr = item->description(); | 921 | outStr = item->description(); |
922 | rect = p.boundingRect( left+20, rect.bottom()+5, width-(left+10-x), -1, | 922 | rect = p.boundingRect( left+20, rect.bottom()+5, width-(left+10-x), -1, |
923 | WordBreak, outStr ); | 923 | WordBreak, outStr ); |
924 | } | 924 | } |
925 | // if too big make new page | 925 | // if too big make new page |
926 | if ( rect.bottom() > y+height) { | 926 | if ( rect.bottom() > y+height) { |
927 | // first draw the connection lines from parent todos: | 927 | // first draw the connection lines from parent todos: |
928 | if (level > 0 && connectSubTodos) { | 928 | if (level > 0 && connectSubTodos) { |
929 | TodoParentStart *rct; | 929 | TodoParentStart *rct; |
930 | for ( rct = startPoints.first(); rct; rct = startPoints.next() ) { | 930 | for ( rct = startPoints.first(); rct; rct = startPoints.next() ) { |
931 | int start; | 931 | int start; |
932 | int center = rct->mRect.left() + (rct->mRect.width()/2); | 932 | int center = rct->mRect.left() + (rct->mRect.width()/2); |
933 | int to = p.viewport().bottom(); | 933 | int to = p.viewport().bottom(); |
934 | 934 | ||
935 | // draw either from start point of parent or from top of the page | 935 | // draw either from start point of parent or from top of the page |
936 | if (rct->mSamePage) | 936 | if (rct->mSamePage) |
937 | start = rct->mRect.bottom() + 1; | 937 | start = rct->mRect.bottom() + 1; |
938 | else | 938 | else |
939 | start = p.viewport().top(); | 939 | start = p.viewport().top(); |
940 | p.moveTo( center, start ); | 940 | p.moveTo( center, start ); |
941 | p.lineTo( center, to ); | 941 | p.lineTo( center, to ); |
942 | rct->mSamePage=false; | 942 | rct->mSamePage=false; |
943 | } | 943 | } |
944 | } | 944 | } |
945 | y=0; | 945 | y=0; |
946 | height=pageHeight-y; | 946 | height=pageHeight-y; |
947 | mPrinter->newPage(); | 947 | mPrinter->newPage(); |
948 | } | 948 | } |
949 | 949 | ||
950 | // If this is a sub-item, r will not be 0, and we want the LH side of the priority line up | 950 | // If this is a sub-item, r will not be 0, and we want the LH side of the priority line up |
951 | //to the RH side of the parent item's priority | 951 | //to the RH side of the parent item's priority |
952 | if (r && pospriority >= 0 ) { | 952 | if (r && pospriority >= 0 ) { |
953 | pospriority = r->mRect.right() + 1; | 953 | pospriority = r->mRect.right() + 1; |
954 | } | 954 | } |
955 | 955 | ||
956 | // Priority | 956 | // Priority |
957 | outStr.setNum(priority); | 957 | outStr.setNum(priority); |
958 | rect = p.boundingRect(pospriority, y + 10, 5, -1, AlignCenter, outStr); | 958 | rect = p.boundingRect(pospriority, y + 10, 5, -1, AlignCenter, outStr); |
959 | // Make it a more reasonable size | 959 | // Make it a more reasonable size |
960 | rect.setWidth(19); | 960 | rect.setWidth(19); |
961 | rect.setHeight(19); | 961 | rect.setHeight(19); |
962 | if ( priority > 0 && pospriority>=0 ) { | 962 | if ( priority > 0 && pospriority>=0 ) { |
963 | p.drawText(rect, AlignCenter, outStr); | 963 | p.drawText(rect, AlignCenter, outStr); |
964 | p.drawRect(rect); | 964 | p.drawRect(rect); |
965 | // cross out the rectangle for completed items | 965 | // cross out the rectangle for completed items |
966 | if ( item->isCompleted() ) { | 966 | if ( item->isCompleted() ) { |
967 | p.drawLine( rect.topLeft(), rect.bottomRight() ); | 967 | p.drawLine( rect.topLeft(), rect.bottomRight() ); |
968 | p.drawLine( rect.topRight(), rect.bottomLeft() ); | 968 | p.drawLine( rect.topRight(), rect.bottomLeft() ); |
969 | } | 969 | } |
970 | } | 970 | } |
971 | startpt.mRect = rect; //save for later | 971 | startpt.mRect = rect; //save for later |
972 | 972 | ||
973 | // Connect the dots | 973 | // Connect the dots |
974 | if (level > 0 && connectSubTodos) { | 974 | if (level > 0 && connectSubTodos) { |
975 | int bottom; | 975 | int bottom; |
976 | int center( r->mRect.left() + (r->mRect.width()/2)+1 ); | 976 | int center( r->mRect.left() + (r->mRect.width()/2)+1 ); |
977 | if (r->mSamePage ) | 977 | if (r->mSamePage ) |
978 | bottom = r->mRect.bottom();//lutz + 1; | 978 | bottom = r->mRect.bottom();//lutz + 1; |
979 | else | 979 | else |
980 | bottom = 0; | 980 | bottom = 0; |
981 | int to( rect.top() + (rect.height()/2)+1 ); | 981 | int to( rect.top() + (rect.height()/2)+1 ); |
982 | int endx( rect.left() ); | 982 | int endx( rect.left() ); |
983 | p.moveTo(center, bottom); | 983 | p.moveTo(center, bottom); |
984 | p.lineTo(center, to); | 984 | p.lineTo(center, to); |
985 | p.lineTo(endx, to); | 985 | p.lineTo(endx, to); |
986 | } | 986 | } |
987 | 987 | ||
988 | // if completed, use strike out font | 988 | // if completed, use strike out font |
989 | QFont ft=p.font(); | 989 | QFont ft=p.font(); |
990 | ft.setStrikeOut( item->isCompleted() ); | 990 | ft.setStrikeOut( item->isCompleted() ); |
991 | p.setFont( ft ); | 991 | p.setFont( ft ); |
992 | // summary | 992 | // summary |
993 | outStr=item->summary(); | 993 | outStr=item->summary(); |
994 | if ( ! item->location().isEmpty() ) | 994 | if ( ! item->location().isEmpty() ) |
995 | outStr += " ("+item->location()+")"; | 995 | outStr += " ("+item->location()+")"; |
996 | if ( item->hasDueDate() && posDueDt>=0 ) { | 996 | if ( item->hasDueDate() && posDueDt>=0 ) { |
997 | outStr += " [" +local->formatDate(item->dtDue().date(),true)+"]"; | 997 | outStr += " [" +local->formatDate(item->dtDue().date(),true)+"]"; |
998 | } | 998 | } |
999 | rect = p.boundingRect( left, rect.top(), (posdue-(left + rect.width() + 5)), | 999 | rect = p.boundingRect( left, rect.top(), (posdue-(left + rect.width() + 5)), |
1000 | -1, WordBreak, outStr); | 1000 | -1, WordBreak, outStr); |
1001 | QRect newrect; | 1001 | QRect newrect; |
1002 | p.drawText( rect, WordBreak, outStr, -1, &newrect ); | 1002 | p.drawText( rect, WordBreak, outStr, -1, &newrect ); |
1003 | ft.setStrikeOut(false); | 1003 | ft.setStrikeOut(false); |
1004 | p.setFont(ft); | 1004 | p.setFont(ft); |
1005 | 1005 | ||
1006 | // due | 1006 | // due |
1007 | // if ( item->hasDueDate() && posDueDt>=0 ) { | 1007 | // if ( item->hasDueDate() && posDueDt>=0 ) { |
1008 | // outStr = local->formatDate(item->dtDue().date(),true); | 1008 | // outStr = local->formatDate(item->dtDue().date(),true); |
1009 | // rect = p.boundingRect(posdue, y, x+width, -1, AlignTop|AlignLeft, outStr); | 1009 | // rect = p.boundingRect(posdue, y, x+width, -1, AlignTop|AlignLeft, outStr); |
1010 | // p.drawText(rect, AlignTop|AlignLeft, outStr); | 1010 | // p.drawText(rect, AlignTop|AlignLeft, outStr); |
1011 | // } | 1011 | // } |
1012 | 1012 | ||
1013 | if ( !item->description().isEmpty() && desc ) { | 1013 | if ( !item->description().isEmpty() && desc ) { |
1014 | y=newrect.bottom() + 5; | 1014 | y=newrect.bottom() + 5; |
1015 | outStr = item->description(); | 1015 | outStr = item->description(); |
1016 | rect = p.boundingRect( left+20, y, x+width-(left+10), -1, | 1016 | rect = p.boundingRect( left+20, y, x+width-(left+10), -1, |
1017 | WordBreak, outStr ); | 1017 | WordBreak, outStr ); |
1018 | p.drawText( rect, WordBreak, outStr, -1, &newrect ); | 1018 | p.drawText( rect, WordBreak, outStr, -1, &newrect ); |
1019 | } | 1019 | } |
1020 | 1020 | ||
1021 | // Set the new line position | 1021 | // Set the new line position |
1022 | y=newrect.bottom() + 10; //set the line position | 1022 | y=newrect.bottom() + 10; //set the line position |
1023 | 1023 | ||
1024 | // If the item has subitems, we need to call ourselves recursively | 1024 | // If the item has subitems, we need to call ourselves recursively |
1025 | Incidence::List l;l.fill( item->relations()); | 1025 | Incidence::List l;l.fill( item->relations()); |
1026 | Incidence::List::ConstIterator it; | 1026 | Incidence::List::ConstIterator it; |
1027 | startPoints.append( &startpt ); | 1027 | startPoints.append( &startpt ); |
1028 | for( it = l.begin(); it != l.end(); ++it ) { | 1028 | for( it = l.begin(); it != l.end(); ++it ) { |
1029 | count++; | 1029 | count++; |
1030 | drawTodo( completed, count, static_cast<Todo *>( *it ), p, connectSubTodos, | 1030 | drawTodo( completed, count, static_cast<Todo *>( *it ), p, connectSubTodos, |
1031 | desc, pospriority, possummary, posDueDt, level+1, | 1031 | desc, pospriority, possummary, posDueDt, level+1, |
1032 | x, y, width, height, pageHeight, &startpt); | 1032 | x, y, width, height, pageHeight, &startpt); |
1033 | } | 1033 | } |
1034 | startPoints.remove(&startpt); | 1034 | startPoints.remove(&startpt); |
1035 | } | 1035 | } |
1036 | 1036 | ||
1037 | int CalPrintBase::weekdayColumn( int weekday ) | 1037 | int CalPrintBase::weekdayColumn( int weekday ) |
1038 | { | 1038 | { |
1039 | return ( weekday + 7 - KGlobal::locale()->weekStartDay() ) % 7; | 1039 | return ( weekday + 7 - KGlobal::locale()->weekStartDay() ) % 7; |
1040 | } | 1040 | } |
1041 | 1041 | ||
1042 | void CalPrintBase::drawSplitWeek( QPainter &p, const QDate &fd, | 1042 | void CalPrintBase::drawSplitWeek( QPainter &p, const QDate &fd, |
1043 | const QDate &td ) | 1043 | const QDate &td ) |
1044 | { | 1044 | { |
1045 | QDate curDay, fromDay, toDay, curWeek, fromWeek, toWeek; | 1045 | QDate curDay, fromDay, toDay, curWeek, fromWeek, toWeek; |
1046 | 1046 | ||
1047 | mPrinter->setOrientation(KPrinter::Portrait); | 1047 | mPrinter->setOrientation(KPrinter::Portrait); |
1048 | 1048 | ||
diff --git a/korganizer/mainwindow.cpp b/korganizer/mainwindow.cpp index 2de7f28..006a8dd 100644 --- a/korganizer/mainwindow.cpp +++ b/korganizer/mainwindow.cpp | |||
@@ -708,271 +708,271 @@ void MainWindow::initActions() | |||
708 | connect( day7_action, SIGNAL( activated() ), | 708 | connect( day7_action, SIGNAL( activated() ), |
709 | mView->viewManager(), SLOT( showWeekView() ) ); | 709 | mView->viewManager(), SLOT( showWeekView() ) ); |
710 | 710 | ||
711 | icon = loadPixmap( pathString + "workweek2" ); | 711 | icon = loadPixmap( pathString + "workweek2" ); |
712 | configureToolBarMenu->insertItem(icon, i18n("List week view"), 75 ); | 712 | configureToolBarMenu->insertItem(icon, i18n("List week view"), 75 ); |
713 | QAction* day6_action = new QAction( i18n("List week"), icon, i18n("List week"), 0, this ); | 713 | QAction* day6_action = new QAction( i18n("List week"), icon, i18n("List week"), 0, this ); |
714 | day6_action->addTo( viewMenu ); | 714 | day6_action->addTo( viewMenu ); |
715 | connect( day6_action, SIGNAL( activated() ), | 715 | connect( day6_action, SIGNAL( activated() ), |
716 | mView->viewManager(), SLOT( showMonthViewWeek() ) ); | 716 | mView->viewManager(), SLOT( showMonthViewWeek() ) ); |
717 | 717 | ||
718 | icon = loadPixmap( pathString + "month" ); | 718 | icon = loadPixmap( pathString + "month" ); |
719 | configureToolBarMenu->insertItem(icon, i18n("Month"), 70 ); | 719 | configureToolBarMenu->insertItem(icon, i18n("Month"), 70 ); |
720 | QAction* month_action = new QAction( i18n("Month"), icon, i18n("Month"), 0, this ); | 720 | QAction* month_action = new QAction( i18n("Month"), icon, i18n("Month"), 0, this ); |
721 | month_action->addTo( viewMenu ); | 721 | month_action->addTo( viewMenu ); |
722 | connect( month_action, SIGNAL( activated() ), | 722 | connect( month_action, SIGNAL( activated() ), |
723 | mView->viewManager(), SLOT( showMonthView() ) ); | 723 | mView->viewManager(), SLOT( showMonthView() ) ); |
724 | 724 | ||
725 | icon = loadPixmap( pathString + "todo" ); | 725 | icon = loadPixmap( pathString + "todo" ); |
726 | configureToolBarMenu->insertItem(icon, i18n("Todo View"), 80 ); | 726 | configureToolBarMenu->insertItem(icon, i18n("Todo View"), 80 ); |
727 | QAction* todoview_action = new QAction( i18n("Todo View"), icon, i18n("Todo View"), 0, this ); | 727 | QAction* todoview_action = new QAction( i18n("Todo View"), icon, i18n("Todo View"), 0, this ); |
728 | todoview_action->addTo( viewMenu ); | 728 | todoview_action->addTo( viewMenu ); |
729 | connect( todoview_action, SIGNAL( activated() ), | 729 | connect( todoview_action, SIGNAL( activated() ), |
730 | mView->viewManager(), SLOT( showTodoView() ) ); | 730 | mView->viewManager(), SLOT( showTodoView() ) ); |
731 | 731 | ||
732 | icon = loadPixmap( pathString + "journal" ); | 732 | icon = loadPixmap( pathString + "journal" ); |
733 | configureToolBarMenu->insertItem(icon, i18n("Journal"), 90 ); | 733 | configureToolBarMenu->insertItem(icon, i18n("Journal"), 90 ); |
734 | QAction* viewjournal_action = new QAction( i18n("Journal"), icon, i18n("Journal"), 0, this ); | 734 | QAction* viewjournal_action = new QAction( i18n("Journal"), icon, i18n("Journal"), 0, this ); |
735 | viewjournal_action->addTo( viewMenu ); | 735 | viewjournal_action->addTo( viewMenu ); |
736 | connect( viewjournal_action, SIGNAL( activated() ), | 736 | connect( viewjournal_action, SIGNAL( activated() ), |
737 | mView->viewManager(), SLOT( showJournalView() ) ); | 737 | mView->viewManager(), SLOT( showJournalView() ) ); |
738 | 738 | ||
739 | icon = loadPixmap( pathString + "xdays" ); | 739 | icon = loadPixmap( pathString + "xdays" ); |
740 | configureToolBarMenu->insertItem(icon, i18n("Next days"), 100,4 ); | 740 | configureToolBarMenu->insertItem(icon, i18n("Next days"), 100,4 ); |
741 | QAction* xdays_action = new QAction( i18n("Next days"), icon, i18n("Next days"), 0, this ); | 741 | QAction* xdays_action = new QAction( i18n("Next days"), icon, i18n("Next days"), 0, this ); |
742 | xdays_action->addTo( viewMenu ); | 742 | xdays_action->addTo( viewMenu ); |
743 | connect( xdays_action, SIGNAL( activated() ), | 743 | connect( xdays_action, SIGNAL( activated() ), |
744 | mView->viewManager(), SLOT( showNextXView() ) ); | 744 | mView->viewManager(), SLOT( showNextXView() ) ); |
745 | 745 | ||
746 | icon = loadPixmap( pathString + "whatsnext" ); | 746 | icon = loadPixmap( pathString + "whatsnext" ); |
747 | configureToolBarMenu->insertItem(icon, i18n("What's Next"), 110, 4 ); | 747 | configureToolBarMenu->insertItem(icon, i18n("What's Next"), 110, 4 ); |
748 | QAction* whatsnext_action = new QAction( i18n("What's Next"), icon, i18n("What's Next"), 0, this ); | 748 | QAction* whatsnext_action = new QAction( i18n("What's Next"), icon, i18n("What's Next"), 0, this ); |
749 | whatsnext_action->addTo( viewMenu ); | 749 | whatsnext_action->addTo( viewMenu ); |
750 | connect( whatsnext_action, SIGNAL( activated() ), | 750 | connect( whatsnext_action, SIGNAL( activated() ), |
751 | mView->viewManager(), SLOT( showWhatsNextView() ) ); | 751 | mView->viewManager(), SLOT( showWhatsNextView() ) ); |
752 | 752 | ||
753 | #if 0 | 753 | #if 0 |
754 | action = new QAction( "view_timespan", "Time Span", 0, this ); | 754 | action = new QAction( "view_timespan", "Time Span", 0, this ); |
755 | action->addTo( viewMenu ); | 755 | action->addTo( viewMenu ); |
756 | connect( action, SIGNAL( activated() ), | 756 | connect( action, SIGNAL( activated() ), |
757 | mView->viewManager(), SLOT( showTimeSpanView() ) ); | 757 | mView->viewManager(), SLOT( showTimeSpanView() ) ); |
758 | #endif | 758 | #endif |
759 | 759 | ||
760 | mNewSubTodoAction = new QAction( "new_subtodo", i18n("New Sub-Todo..."), 0, | 760 | mNewSubTodoAction = new QAction( "new_subtodo", i18n("New Sub-Todo..."), 0, |
761 | this ); | 761 | this ); |
762 | mNewSubTodoAction->addTo( actionMenu ); | 762 | mNewSubTodoAction->addTo( actionMenu ); |
763 | connect( mNewSubTodoAction, SIGNAL( activated() ), | 763 | connect( mNewSubTodoAction, SIGNAL( activated() ), |
764 | mView, SLOT( newSubTodo() ) ); | 764 | mView, SLOT( newSubTodo() ) ); |
765 | 765 | ||
766 | actionMenu->insertSeparator(); | 766 | actionMenu->insertSeparator(); |
767 | 767 | ||
768 | mShowAction = new QAction( "show_incidence", i18n("Show..."), 0, this ); | 768 | mShowAction = new QAction( "show_incidence", i18n("Show..."), 0, this ); |
769 | mShowAction->addTo( actionMenu ); | 769 | mShowAction->addTo( actionMenu ); |
770 | connect( mShowAction, SIGNAL( activated() ), | 770 | connect( mShowAction, SIGNAL( activated() ), |
771 | mView, SLOT( showIncidence() ) ); | 771 | mView, SLOT( showIncidence() ) ); |
772 | 772 | ||
773 | mEditAction = new QAction( "edit_incidence", i18n("Edit..."), 0, this ); | 773 | mEditAction = new QAction( "edit_incidence", i18n("Edit..."), 0, this ); |
774 | mEditAction->addTo( actionMenu ); | 774 | mEditAction->addTo( actionMenu ); |
775 | connect( mEditAction, SIGNAL( activated() ), | 775 | connect( mEditAction, SIGNAL( activated() ), |
776 | mView, SLOT( editIncidence() ) ); | 776 | mView, SLOT( editIncidence() ) ); |
777 | 777 | ||
778 | mDeleteAction = new QAction( "delete_incidence", i18n("Delete..."), 0, this ); | 778 | mDeleteAction = new QAction( "delete_incidence", i18n("Delete..."), 0, this ); |
779 | mDeleteAction->addTo( actionMenu ); | 779 | mDeleteAction->addTo( actionMenu ); |
780 | connect( mDeleteAction, SIGNAL( activated() ), | 780 | connect( mDeleteAction, SIGNAL( activated() ), |
781 | mView, SLOT( deleteIncidence() ) ); | 781 | mView, SLOT( deleteIncidence() ) ); |
782 | 782 | ||
783 | 783 | ||
784 | mCloneAction = new QAction( "clone_incidence", i18n("Clone..."), 0, this ); | 784 | mCloneAction = new QAction( "clone_incidence", i18n("Clone..."), 0, this ); |
785 | mCloneAction->addTo( actionMenu ); | 785 | mCloneAction->addTo( actionMenu ); |
786 | connect( mCloneAction, SIGNAL( activated() ), | 786 | connect( mCloneAction, SIGNAL( activated() ), |
787 | mView, SLOT( cloneIncidence() ) ); | 787 | mView, SLOT( cloneIncidence() ) ); |
788 | mMoveAction = new QAction( "Move_incidence", i18n("Move..."), 0, this ); | 788 | mMoveAction = new QAction( "Move_incidence", i18n("Move..."), 0, this ); |
789 | mMoveAction->addTo( actionMenu ); | 789 | mMoveAction->addTo( actionMenu ); |
790 | connect( mMoveAction, SIGNAL( activated() ), | 790 | connect( mMoveAction, SIGNAL( activated() ), |
791 | mView, SLOT( moveIncidence() ) ); | 791 | mView, SLOT( moveIncidence() ) ); |
792 | mBeamAction = new QAction( "Beam_incidence", i18n("Beam..."), 0, this ); | 792 | mBeamAction = new QAction( "Beam_incidence", i18n("Beam..."), 0, this ); |
793 | mBeamAction->addTo( actionMenu ); | 793 | mBeamAction->addTo( actionMenu ); |
794 | connect( mBeamAction, SIGNAL( activated() ), | 794 | connect( mBeamAction, SIGNAL( activated() ), |
795 | mView, SLOT( beamIncidence() ) ); | 795 | mView, SLOT( beamIncidence() ) ); |
796 | mCancelAction = new QAction( "Cancel_incidence", i18n("Toggle Cancel"), 0, this ); | 796 | mCancelAction = new QAction( "Cancel_incidence", i18n("Toggle Cancel"), 0, this ); |
797 | mCancelAction->addTo( actionMenu ); | 797 | mCancelAction->addTo( actionMenu ); |
798 | connect( mCancelAction, SIGNAL( activated() ), | 798 | connect( mCancelAction, SIGNAL( activated() ), |
799 | mView, SLOT( toggleCancelIncidence() ) ); | 799 | mView, SLOT( toggleCancelIncidence() ) ); |
800 | 800 | ||
801 | actionMenu->insertSeparator(); | 801 | actionMenu->insertSeparator(); |
802 | 802 | ||
803 | action = new QAction( "purge_completed", i18n("Purge Completed"), 0, | 803 | action = new QAction( "purge_completed", i18n("Purge Completed"), 0, |
804 | this ); | 804 | this ); |
805 | action->addTo( actionMenu ); | 805 | action->addTo( actionMenu ); |
806 | connect( action, SIGNAL( activated() ), mView, SLOT( purgeCompleted() ) ); | 806 | connect( action, SIGNAL( activated() ), mView, SLOT( purgeCompleted() ) ); |
807 | 807 | ||
808 | icon = loadPixmap( pathString + "search" ); | 808 | icon = loadPixmap( pathString + "search" ); |
809 | QAction* search_action = new QAction( i18n("Search"), icon, i18n("Search..."), 0, this ); | 809 | QAction* search_action = new QAction( i18n("Search"), icon, i18n("Search..."), 0, this ); |
810 | configureToolBarMenu->insertItem(icon, i18n("Search"), 120 , 4); | 810 | configureToolBarMenu->insertItem(icon, i18n("Search"), 120 , 4); |
811 | search_action->addTo( actionMenu ); | 811 | search_action->addTo( actionMenu ); |
812 | connect( search_action, SIGNAL( activated() ), | 812 | connect( search_action, SIGNAL( activated() ), |
813 | mView->dialogManager(), SLOT( showSearchDialog() ) ); | 813 | mView->dialogManager(), SLOT( showSearchDialog() ) ); |
814 | 814 | ||
815 | 815 | ||
816 | 816 | ||
817 | if ( KOPrefs::instance()->mShowFullMenu ) { | 817 | if ( KOPrefs::instance()->mShowFullMenu ) { |
818 | actionMenu->insertSeparator(); | 818 | actionMenu->insertSeparator(); |
819 | actionMenu->insertItem( i18n("Configure Toolbar"),configureToolBarMenu ); | 819 | actionMenu->insertItem( i18n("Configure Toolbar"),configureToolBarMenu ); |
820 | 820 | ||
821 | } | 821 | } |
822 | // actionMenu->insertSeparator(); | 822 | // actionMenu->insertSeparator(); |
823 | action = new QAction( "import_qtopia", i18n("Import (*.ics/*.vcs) file"), 0, | 823 | action = new QAction( "import_qtopia", i18n("Import (*.ics/*.vcs) file"), 0, |
824 | this ); | 824 | this ); |
825 | action->addTo( importMenu ); | 825 | action->addTo( importMenu ); |
826 | connect( action, SIGNAL( activated() ), SLOT( importIcal() ) ); | 826 | connect( action, SIGNAL( activated() ), SLOT( importIcal() ) ); |
827 | action = new QAction( "import_quick", i18n("Import last file"), 0, | 827 | action = new QAction( "import_quick", i18n("Import last file"), 0, |
828 | this ); | 828 | this ); |
829 | action->addTo( importMenu ); | 829 | action->addTo( importMenu ); |
830 | connect( action, SIGNAL( activated() ), SLOT( quickImportIcal() ) ); | 830 | connect( action, SIGNAL( activated() ), SLOT( quickImportIcal() ) ); |
831 | importMenu->insertSeparator(); | 831 | importMenu->insertSeparator(); |
832 | action = new QAction( "import_bday", i18n("Import Birthdays (KA/Pi)"), 0, | 832 | action = new QAction( "import_bday", i18n("Import Birthdays (KA/Pi)"), 0, |
833 | this ); | 833 | this ); |
834 | action->addTo( importMenu ); | 834 | action->addTo( importMenu ); |
835 | connect( action, SIGNAL( activated() ), SLOT( importBday() ) ); | 835 | connect( action, SIGNAL( activated() ), SLOT( importBday() ) ); |
836 | #ifndef DESKTOP_VERSION | 836 | //#ifndef DESKTOP_VERSION |
837 | importMenu->insertSeparator(); | 837 | importMenu->insertSeparator(); |
838 | action = new QAction( "import_qtopia", i18n("Import Opie/Qtopia Cal."), 0, | 838 | action = new QAction( "import_qtopia", i18n("Import Opie/Qtopia Cal."), 0, |
839 | this ); | 839 | this ); |
840 | action->addTo( importMenu ); | 840 | action->addTo( importMenu ); |
841 | connect( action, SIGNAL( activated() ), SLOT( importQtopia() ) ); | 841 | connect( action, SIGNAL( activated() ), SLOT( importQtopia() ) ); |
842 | #else | 842 | //#else |
843 | #ifdef _OL_IMPORT_ | 843 | #ifdef _OL_IMPORT_ |
844 | importMenu->insertSeparator(); | 844 | importMenu->insertSeparator(); |
845 | action = new QAction( "import_ol", i18n("Import from OL"), 0, | 845 | action = new QAction( "import_ol", i18n("Import from OL"), 0, |
846 | this ); | 846 | this ); |
847 | action->addTo( importMenu ); | 847 | action->addTo( importMenu ); |
848 | connect( action, SIGNAL( activated() ), SLOT( importOL() ) ); | 848 | connect( action, SIGNAL( activated() ), SLOT( importOL() ) ); |
849 | #endif | 849 | #endif |
850 | #endif | 850 | //#endif |
851 | 851 | ||
852 | importMenu->insertSeparator(); | 852 | importMenu->insertSeparator(); |
853 | action = new QAction( "load_cal", i18n("Load Calendar Backup"), 0, | 853 | action = new QAction( "load_cal", i18n("Load Calendar Backup"), 0, |
854 | this ); | 854 | this ); |
855 | action->addTo( importMenu ); | 855 | action->addTo( importMenu ); |
856 | connect( action, SIGNAL( activated() ), SLOT( loadCalendar() ) ); | 856 | connect( action, SIGNAL( activated() ), SLOT( loadCalendar() ) ); |
857 | 857 | ||
858 | action = new QAction( "save_cal", i18n("Save Calendar Backup"), 0, | 858 | action = new QAction( "save_cal", i18n("Save Calendar Backup"), 0, |
859 | this ); | 859 | this ); |
860 | action->addTo( importMenu ); | 860 | action->addTo( importMenu ); |
861 | connect( action, SIGNAL( activated() ), SLOT( saveCalendar() ) ); | 861 | connect( action, SIGNAL( activated() ), SLOT( saveCalendar() ) ); |
862 | 862 | ||
863 | importMenu->insertSeparator(); | 863 | importMenu->insertSeparator(); |
864 | action = new QAction( "import_qtopia", i18n("Export VCalendar"), 0, | 864 | action = new QAction( "import_qtopia", i18n("Export VCalendar"), 0, |
865 | this ); | 865 | this ); |
866 | action->addTo( importMenu ); connect( action, SIGNAL( activated() ), SLOT( exportVCalendar() ) ); | 866 | action->addTo( importMenu ); connect( action, SIGNAL( activated() ), SLOT( exportVCalendar() ) ); |
867 | 867 | ||
868 | 868 | ||
869 | //LR | 869 | //LR |
870 | QPopupMenu *ex2phone = new QPopupMenu( this ); | 870 | QPopupMenu *ex2phone = new QPopupMenu( this ); |
871 | ex2phone->insertItem(i18n("Complete calendar..."), 1 ); | 871 | ex2phone->insertItem(i18n("Complete calendar..."), 1 ); |
872 | ex2phone->insertItem(i18n("Filtered calendar..."), 2 ); | 872 | ex2phone->insertItem(i18n("Filtered calendar..."), 2 ); |
873 | connect( ex2phone, SIGNAL( activated(int) ), this, SLOT( exportToPhone( int)) ); | 873 | connect( ex2phone, SIGNAL( activated(int) ), this, SLOT( exportToPhone( int)) ); |
874 | importMenu->insertItem( i18n("Export to phone"), ex2phone ); | 874 | importMenu->insertItem( i18n("Export to phone"), ex2phone ); |
875 | 875 | ||
876 | importMenu->insertSeparator(); | 876 | importMenu->insertSeparator(); |
877 | action = new QAction( "manage cat", i18n("Manage new categories..."), 0, | 877 | action = new QAction( "manage cat", i18n("Manage new categories..."), 0, |
878 | this ); | 878 | this ); |
879 | action->addTo( importMenu ); | 879 | action->addTo( importMenu ); |
880 | connect( action, SIGNAL( activated() ), mView, SLOT( manageCategories() ) ); | 880 | connect( action, SIGNAL( activated() ), mView, SLOT( manageCategories() ) ); |
881 | #ifndef DESKTOP_VERSION | 881 | #ifndef DESKTOP_VERSION |
882 | importMenu->insertSeparator(); | 882 | importMenu->insertSeparator(); |
883 | brAction = new QAction( "beam toggle", i18n("Beam receive enabled"), 0, | 883 | brAction = new QAction( "beam toggle", i18n("Beam receive enabled"), 0, |
884 | this ); | 884 | this ); |
885 | brAction->addTo( importMenu ); | 885 | brAction->addTo( importMenu ); |
886 | brAction->setToggleAction (true ) ; | 886 | brAction->setToggleAction (true ) ; |
887 | connect( brAction, SIGNAL( activated() ), this, SLOT( toggleBeamReceive() ) ); | 887 | connect( brAction, SIGNAL( activated() ), this, SLOT( toggleBeamReceive() ) ); |
888 | 888 | ||
889 | action = new QAction( "beam all", i18n("Beam complete calendar..."), 0, | 889 | action = new QAction( "beam all", i18n("Beam complete calendar..."), 0, |
890 | this ); | 890 | this ); |
891 | action->addTo( importMenu ); | 891 | action->addTo( importMenu ); |
892 | connect( action, SIGNAL( activated() ), mView, SLOT( beamCalendar() ) ); | 892 | connect( action, SIGNAL( activated() ), mView, SLOT( beamCalendar() ) ); |
893 | 893 | ||
894 | action = new QAction( "beam all", i18n("Beam filtered calendar..."), 0, | 894 | action = new QAction( "beam all", i18n("Beam filtered calendar..."), 0, |
895 | this ); | 895 | this ); |
896 | action->addTo( importMenu ); | 896 | action->addTo( importMenu ); |
897 | connect( action, SIGNAL( activated() ), mView, SLOT( beamFilteredCalendar()) ); | 897 | connect( action, SIGNAL( activated() ), mView, SLOT( beamFilteredCalendar()) ); |
898 | #else | 898 | #else |
899 | importMenu->insertSeparator(); | 899 | importMenu->insertSeparator(); |
900 | icon = loadPixmap( pathString + "print" ); | 900 | icon = loadPixmap( pathString + "print" ); |
901 | action = new QAction( i18n("Print calendar..."),icon,i18n("Print calendar..."), 0, this ); | 901 | action = new QAction( i18n("Print calendar..."),icon,i18n("Print calendar..."), 0, this ); |
902 | action->addTo( importMenu ); | 902 | action->addTo( importMenu ); |
903 | connect( action, SIGNAL( activated() ), | 903 | connect( action, SIGNAL( activated() ), |
904 | this, SLOT( printCal() ) ); | 904 | this, SLOT( printCal() ) ); |
905 | 905 | ||
906 | icon = loadPixmap( pathString + "print" ); | 906 | icon = loadPixmap( pathString + "print" ); |
907 | action = new QAction( i18n("Print agenda selection..."),icon,i18n("Print agenda selection..."), 0, this ); | 907 | action = new QAction( i18n("Print agenda selection..."),icon,i18n("Print agenda selection..."), 0, this ); |
908 | action->addTo( importMenu ); | 908 | action->addTo( importMenu ); |
909 | connect( action, SIGNAL( activated() ), | 909 | connect( action, SIGNAL( activated() ), |
910 | this, SLOT( printSel() ) ); | 910 | this, SLOT( printSel() ) ); |
911 | action = new QAction( i18n("Print What's Next View..."),icon,i18n("Print What's Next View..."), 0, this ); | 911 | action = new QAction( i18n("Print What's Next View..."),icon,i18n("Print What's Next View..."), 0, this ); |
912 | action->addTo( importMenu ); | 912 | action->addTo( importMenu ); |
913 | connect( action, SIGNAL( activated() ), | 913 | connect( action, SIGNAL( activated() ), |
914 | mView->viewManager(), SIGNAL( printWNV() ) ); | 914 | mView->viewManager(), SIGNAL( printWNV() ) ); |
915 | #endif | 915 | #endif |
916 | importMenu->insertSeparator(); | 916 | importMenu->insertSeparator(); |
917 | action = new QAction( "beam all", i18n("Save"), 0, | 917 | action = new QAction( "beam all", i18n("Save"), 0, |
918 | this ); | 918 | this ); |
919 | action->addTo( importMenu ); | 919 | action->addTo( importMenu ); |
920 | connect( action, SIGNAL( activated() ), this, SLOT( save() ) ); | 920 | connect( action, SIGNAL( activated() ), this, SLOT( save() ) ); |
921 | action = new QAction( "beam all", i18n("Exit (+save)"), 0, | 921 | action = new QAction( "beam all", i18n("Exit (+save)"), 0, |
922 | this ); | 922 | this ); |
923 | action->addTo( importMenu ); | 923 | action->addTo( importMenu ); |
924 | connect( action, SIGNAL( activated() ), this, SLOT( close() ) ); | 924 | connect( action, SIGNAL( activated() ), this, SLOT( close() ) ); |
925 | 925 | ||
926 | //menuBar->insertItem( "Configure",configureMenu ); | 926 | //menuBar->insertItem( "Configure",configureMenu ); |
927 | //configureMenu->insertItem( "Toolbar",configureToolBarMenu ); | 927 | //configureMenu->insertItem( "Toolbar",configureToolBarMenu ); |
928 | icon = loadPixmap( "korganizer/korganizer" ); | 928 | icon = loadPixmap( "korganizer/korganizer" ); |
929 | 929 | ||
930 | action = new QAction( "Whats New", i18n("What's new?"), 0,this ); | 930 | action = new QAction( "Whats New", i18n("What's new?"), 0,this ); |
931 | action->addTo( helpMenu ); | 931 | action->addTo( helpMenu ); |
932 | connect( action, SIGNAL( activated() ), | 932 | connect( action, SIGNAL( activated() ), |
933 | SLOT( whatsNew() ) ); | 933 | SLOT( whatsNew() ) ); |
934 | action = new QAction( "featureHowto", i18n("Features + hints..."), 0,this ); | 934 | action = new QAction( "featureHowto", i18n("Features + hints..."), 0,this ); |
935 | action->addTo( helpMenu ); | 935 | action->addTo( helpMenu ); |
936 | connect( action, SIGNAL( activated() ), | 936 | connect( action, SIGNAL( activated() ), |
937 | SLOT( features() ) ); | 937 | SLOT( features() ) ); |
938 | action = new QAction( "Keys + Colors", i18n("Keys + Colors..."), 0, this ); | 938 | action = new QAction( "Keys + Colors", i18n("Keys + Colors..."), 0, this ); |
939 | action->addTo( helpMenu ); | 939 | action->addTo( helpMenu ); |
940 | connect( action, SIGNAL( activated() ), | 940 | connect( action, SIGNAL( activated() ), |
941 | SLOT( keyBindings() ) ); | 941 | SLOT( keyBindings() ) ); |
942 | action = new QAction( "Sync Howto", i18n("Sync HowTo..."), 0,this ); | 942 | action = new QAction( "Sync Howto", i18n("Sync HowTo..."), 0,this ); |
943 | action->addTo( helpMenu ); | 943 | action->addTo( helpMenu ); |
944 | connect( action, SIGNAL( activated() ), | 944 | connect( action, SIGNAL( activated() ), |
945 | SLOT( synchowto() ) ); | 945 | SLOT( synchowto() ) ); |
946 | action = new QAction( "KDE Sync Howto", i18n("KDE Sync HowTo..."), 0,this ); | 946 | action = new QAction( "KDE Sync Howto", i18n("KDE Sync HowTo..."), 0,this ); |
947 | action->addTo( helpMenu ); | 947 | action->addTo( helpMenu ); |
948 | connect( action, SIGNAL( activated() ), | 948 | connect( action, SIGNAL( activated() ), |
949 | SLOT( kdesynchowto() ) ); | 949 | SLOT( kdesynchowto() ) ); |
950 | action = new QAction( "Multi Sync Howto", i18n("Multi Sync HowTo..."), 0,this ); | 950 | action = new QAction( "Multi Sync Howto", i18n("Multi Sync HowTo..."), 0,this ); |
951 | action->addTo( helpMenu ); | 951 | action->addTo( helpMenu ); |
952 | connect( action, SIGNAL( activated() ), | 952 | connect( action, SIGNAL( activated() ), |
953 | SLOT( multisynchowto() ) ); | 953 | SLOT( multisynchowto() ) ); |
954 | action = new QAction( "Auto saving", i18n("Auto saving..."), 0, this ); | 954 | action = new QAction( "Auto saving", i18n("Auto saving..."), 0, this ); |
955 | action->addTo( helpMenu ); | 955 | action->addTo( helpMenu ); |
956 | connect( action, SIGNAL( activated() ), | 956 | connect( action, SIGNAL( activated() ), |
957 | SLOT( aboutAutoSaving() ) ); | 957 | SLOT( aboutAutoSaving() ) ); |
958 | action = new QAction( "Problemd", i18n("Known Problems..."), 0,this ); | 958 | action = new QAction( "Problemd", i18n("Known Problems..."), 0,this ); |
959 | action->addTo( helpMenu ); | 959 | action->addTo( helpMenu ); |
960 | connect( action, SIGNAL( activated() ), | 960 | connect( action, SIGNAL( activated() ), |
961 | SLOT( aboutKnownBugs() ) ); | 961 | SLOT( aboutKnownBugs() ) ); |
962 | action = new QAction( "Translate Howto", i18n("User translation..."), 0,this ); | 962 | action = new QAction( "Translate Howto", i18n("User translation..."), 0,this ); |
963 | action->addTo( helpMenu ); | 963 | action->addTo( helpMenu ); |
964 | connect( action, SIGNAL( activated() ), | 964 | connect( action, SIGNAL( activated() ), |
965 | SLOT( usertrans() ) ); | 965 | SLOT( usertrans() ) ); |
966 | action = new QAction( "Frequently asked questions", i18n("FAQ..."), 0,this ); | 966 | action = new QAction( "Frequently asked questions", i18n("FAQ..."), 0,this ); |
967 | action->addTo( helpMenu ); | 967 | action->addTo( helpMenu ); |
968 | connect( action, SIGNAL( activated() ), | 968 | connect( action, SIGNAL( activated() ), |
969 | SLOT( faq() ) ); | 969 | SLOT( faq() ) ); |
970 | action = new QAction( "licence", i18n("Licence..."), 0, this ); | 970 | action = new QAction( "licence", i18n("Licence..."), 0, this ); |
971 | action->addTo( helpMenu ); | 971 | action->addTo( helpMenu ); |
972 | connect( action, SIGNAL( activated() ), | 972 | connect( action, SIGNAL( activated() ), |
973 | SLOT( licence() ) ); | 973 | SLOT( licence() ) ); |
974 | action = new QAction( "about", i18n("About..."), 0, this ); | 974 | action = new QAction( "about", i18n("About..."), 0, this ); |
975 | action->addTo( helpMenu ); | 975 | action->addTo( helpMenu ); |
976 | connect( action, SIGNAL( activated() ), | 976 | connect( action, SIGNAL( activated() ), |
977 | SLOT( about() ) ); | 977 | SLOT( about() ) ); |
978 | //menuBar->insertSeparator(); | 978 | //menuBar->insertSeparator(); |
@@ -1384,268 +1384,277 @@ void MainWindow::updateWeek(QDate seda) | |||
1384 | d = d.addDays( 1-dow ); | 1384 | d = d.addDays( 1-dow ); |
1385 | else // 5,6,7 | 1385 | else // 5,6,7 |
1386 | d = d.addDays( 8-dow ); | 1386 | d = d.addDays( 8-dow ); |
1387 | // we have the first week of the year.we are on monday | 1387 | // we have the first week of the year.we are on monday |
1388 | weekNum = d.daysTo( seda ) / 7 +1; | 1388 | weekNum = d.daysTo( seda ) / 7 +1; |
1389 | } | 1389 | } |
1390 | 1390 | ||
1391 | mWeekPixmap.fill( mWeekBgColor ); | 1391 | mWeekPixmap.fill( mWeekBgColor ); |
1392 | QPainter p ( &mWeekPixmap ); | 1392 | QPainter p ( &mWeekPixmap ); |
1393 | p.setFont( mWeekFont ); | 1393 | p.setFont( mWeekFont ); |
1394 | p.drawText( 0,0,mWeekPixmap.width(), mWeekPixmap.height(),AlignCenter, QString::number( weekNum) ); | 1394 | p.drawText( 0,0,mWeekPixmap.width(), mWeekPixmap.height(),AlignCenter, QString::number( weekNum) ); |
1395 | p.end(); | 1395 | p.end(); |
1396 | QIconSet icon3 ( mWeekPixmap ); | 1396 | QIconSet icon3 ( mWeekPixmap ); |
1397 | mWeekAction->setIconSet ( icon3 ); | 1397 | mWeekAction->setIconSet ( icon3 ); |
1398 | 1398 | ||
1399 | } | 1399 | } |
1400 | void MainWindow::updateWeekNum(const DateList &selectedDates) | 1400 | void MainWindow::updateWeekNum(const DateList &selectedDates) |
1401 | { | 1401 | { |
1402 | updateWeek( selectedDates.first() ); | 1402 | updateWeek( selectedDates.first() ); |
1403 | } | 1403 | } |
1404 | void MainWindow::processIncidenceSelection( Incidence *incidence ) | 1404 | void MainWindow::processIncidenceSelection( Incidence *incidence ) |
1405 | { | 1405 | { |
1406 | 1406 | ||
1407 | if ( !incidence ) { | 1407 | if ( !incidence ) { |
1408 | enableIncidenceActions( false ); | 1408 | enableIncidenceActions( false ); |
1409 | 1409 | ||
1410 | mNewSubTodoAction->setEnabled( false ); | 1410 | mNewSubTodoAction->setEnabled( false ); |
1411 | setCaptionToDates(); | 1411 | setCaptionToDates(); |
1412 | return; | 1412 | return; |
1413 | 1413 | ||
1414 | } | 1414 | } |
1415 | 1415 | ||
1416 | //KGlobal::locale()->formatDateTime(nextA, true); | 1416 | //KGlobal::locale()->formatDateTime(nextA, true); |
1417 | QString startString = ""; | 1417 | QString startString = ""; |
1418 | if ( incidence->type() != "Todo" ) { | 1418 | if ( incidence->type() != "Todo" ) { |
1419 | if ( incidence->dtStart().date() < incidence->dtEnd().date() ) { | 1419 | if ( incidence->dtStart().date() < incidence->dtEnd().date() ) { |
1420 | if ( incidence->doesFloat() ) { | 1420 | if ( incidence->doesFloat() ) { |
1421 | startString += ": "+incidence->dtStartDateStr( true ); | 1421 | startString += ": "+incidence->dtStartDateStr( true ); |
1422 | startString += " --- "+((Event*)incidence)->dtEndDateStr( true ); | 1422 | startString += " --- "+((Event*)incidence)->dtEndDateStr( true ); |
1423 | 1423 | ||
1424 | } else { | 1424 | } else { |
1425 | startString = ": "+incidence->dtStartStr(true); | 1425 | startString = ": "+incidence->dtStartStr(true); |
1426 | startString += " --- "+((Event*)incidence)->dtEndStr(true); | 1426 | startString += " --- "+((Event*)incidence)->dtEndStr(true); |
1427 | 1427 | ||
1428 | } | 1428 | } |
1429 | 1429 | ||
1430 | } else { | 1430 | } else { |
1431 | if ( incidence->dtStart().time() != incidence->dtEnd().time() ) | 1431 | if ( incidence->dtStart().time() != incidence->dtEnd().time() ) |
1432 | startString = ": "+KGlobal::locale()->formatTime(incidence->dtStart().time())+ | 1432 | startString = ": "+KGlobal::locale()->formatTime(incidence->dtStart().time())+ |
1433 | "-"+KGlobal::locale()->formatTime(incidence->dtEnd().time()); | 1433 | "-"+KGlobal::locale()->formatTime(incidence->dtEnd().time()); |
1434 | if ( incidence->categories().contains( i18n("Birthday") ) || incidence->categories().contains( i18n("Anniversary") ) ) { | 1434 | if ( incidence->categories().contains( i18n("Birthday") ) || incidence->categories().contains( i18n("Anniversary") ) ) { |
1435 | bool ok; | 1435 | bool ok; |
1436 | QDateTime noc = incidence->getNextOccurence( mView->startDate().addDays(-1), &ok ); | 1436 | QDateTime noc = incidence->getNextOccurence( mView->startDate().addDays(-1), &ok ); |
1437 | if ( ok ) { | 1437 | if ( ok ) { |
1438 | int years = noc.date().year() - incidence->dtStart().date().year(); | 1438 | int years = noc.date().year() - incidence->dtStart().date().year(); |
1439 | startString += i18n(" (%1 y.)"). arg( years ); | 1439 | startString += i18n(" (%1 y.)"). arg( years ); |
1440 | } | 1440 | } |
1441 | } | 1441 | } |
1442 | else | 1442 | else |
1443 | startString +=" "+KGlobal::locale()->formatDate( incidence->dtStart().date(), true); | 1443 | startString +=" "+KGlobal::locale()->formatDate( incidence->dtStart().date(), true); |
1444 | } | 1444 | } |
1445 | 1445 | ||
1446 | } | 1446 | } |
1447 | else | 1447 | else |
1448 | startString = i18n(": (Prio ") +QString::number( (( KCal::Todo*)incidence)->priority() ) +") "+QString::number( (( KCal::Todo*)incidence)->percentComplete() ) +i18n("\% completed"); | 1448 | startString = i18n(": (Prio ") +QString::number( (( KCal::Todo*)incidence)->priority() ) +") "+QString::number( (( KCal::Todo*)incidence)->percentComplete() ) +i18n("\% completed"); |
1449 | if ( !incidence->location().isEmpty() ) | 1449 | if ( !incidence->location().isEmpty() ) |
1450 | startString += " (" +incidence->location()+")"; | 1450 | startString += " (" +incidence->location()+")"; |
1451 | setCaption( incidence->summary()+startString); | 1451 | setCaption( incidence->summary()+startString); |
1452 | 1452 | ||
1453 | enableIncidenceActions( true ); | 1453 | enableIncidenceActions( true ); |
1454 | 1454 | ||
1455 | if ( incidence->type() == "Event" ) { | 1455 | if ( incidence->type() == "Event" ) { |
1456 | mShowAction->setText( i18n("Show Event...") ); | 1456 | mShowAction->setText( i18n("Show Event...") ); |
1457 | mEditAction->setText( i18n("Edit Event...") ); | 1457 | mEditAction->setText( i18n("Edit Event...") ); |
1458 | mDeleteAction->setText( i18n("Delete Event...") ); | 1458 | mDeleteAction->setText( i18n("Delete Event...") ); |
1459 | 1459 | ||
1460 | mNewSubTodoAction->setEnabled( false ); | 1460 | mNewSubTodoAction->setEnabled( false ); |
1461 | } else if ( incidence->type() == "Todo" ) { | 1461 | } else if ( incidence->type() == "Todo" ) { |
1462 | mShowAction->setText( i18n("Show Todo...") ); | 1462 | mShowAction->setText( i18n("Show Todo...") ); |
1463 | mEditAction->setText( i18n("Edit Todo...") ); | 1463 | mEditAction->setText( i18n("Edit Todo...") ); |
1464 | mDeleteAction->setText( i18n("Delete Todo...") ); | 1464 | mDeleteAction->setText( i18n("Delete Todo...") ); |
1465 | 1465 | ||
1466 | mNewSubTodoAction->setEnabled( true ); | 1466 | mNewSubTodoAction->setEnabled( true ); |
1467 | } else { | 1467 | } else { |
1468 | mShowAction->setText( i18n("Show...") ); | 1468 | mShowAction->setText( i18n("Show...") ); |
1469 | mShowAction->setText( i18n("Edit...") ); | 1469 | mShowAction->setText( i18n("Edit...") ); |
1470 | mShowAction->setText( i18n("Delete...") ); | 1470 | mShowAction->setText( i18n("Delete...") ); |
1471 | 1471 | ||
1472 | mNewSubTodoAction->setEnabled( false ); | 1472 | mNewSubTodoAction->setEnabled( false ); |
1473 | } | 1473 | } |
1474 | } | 1474 | } |
1475 | 1475 | ||
1476 | void MainWindow::enableIncidenceActions( bool enabled ) | 1476 | void MainWindow::enableIncidenceActions( bool enabled ) |
1477 | { | 1477 | { |
1478 | mShowAction->setEnabled( enabled ); | 1478 | mShowAction->setEnabled( enabled ); |
1479 | mEditAction->setEnabled( enabled ); | 1479 | mEditAction->setEnabled( enabled ); |
1480 | mDeleteAction->setEnabled( enabled ); | 1480 | mDeleteAction->setEnabled( enabled ); |
1481 | 1481 | ||
1482 | mCloneAction->setEnabled( enabled ); | 1482 | mCloneAction->setEnabled( enabled ); |
1483 | mMoveAction->setEnabled( enabled ); | 1483 | mMoveAction->setEnabled( enabled ); |
1484 | mBeamAction->setEnabled( enabled ); | 1484 | mBeamAction->setEnabled( enabled ); |
1485 | mCancelAction->setEnabled( enabled ); | 1485 | mCancelAction->setEnabled( enabled ); |
1486 | } | 1486 | } |
1487 | 1487 | ||
1488 | void MainWindow::importOL() | 1488 | void MainWindow::importOL() |
1489 | { | 1489 | { |
1490 | #ifdef _OL_IMPORT_ | 1490 | #ifdef _OL_IMPORT_ |
1491 | KOImportOLdialog *id = new KOImportOLdialog("Import from OL - select folder!" , mView->calendar(),this ); | 1491 | KOImportOLdialog *id = new KOImportOLdialog("Import from OL - select folder!" , mView->calendar(),this ); |
1492 | id->exec(); | 1492 | id->exec(); |
1493 | delete id; | 1493 | delete id; |
1494 | mView->updateView(); | 1494 | mView->updateView(); |
1495 | #endif | 1495 | #endif |
1496 | } | 1496 | } |
1497 | void MainWindow::importBday() | 1497 | void MainWindow::importBday() |
1498 | { | 1498 | { |
1499 | int result = QMessageBox::warning( this, i18n("KO/Pi: Warning!"), | 1499 | int result = QMessageBox::warning( this, i18n("KO/Pi: Warning!"), |
1500 | i18n("When importing birthdays twice\nduplicated events will be ignored,\nif the event has not been\nchanged in KO/Pi!\n"), | 1500 | i18n("When importing birthdays twice\nduplicated events will be ignored,\nif the event has not been\nchanged in KO/Pi!\n"), |
1501 | i18n("Import!"), i18n("Cancel"), 0, | 1501 | i18n("Import!"), i18n("Cancel"), 0, |
1502 | 0, 1 ); | 1502 | 0, 1 ); |
1503 | if ( result == 0 ) { | 1503 | if ( result == 0 ) { |
1504 | mView->importBday(); | 1504 | mView->importBday(); |
1505 | 1505 | ||
1506 | } | 1506 | } |
1507 | 1507 | ||
1508 | 1508 | ||
1509 | } | 1509 | } |
1510 | void MainWindow::importQtopia() | 1510 | void MainWindow::importQtopia() |
1511 | { | 1511 | { |
1512 | #ifndef DESKTOP_VERSION | 1512 | //#ifndef DESKTOP_VERSION |
1513 | int result = QMessageBox::warning( this, i18n("KO/Pi: Warning!"), | 1513 | QString mess = i18n("When importing a calendar twice\nduplicated events will be ignored!\nYou can create a backup file with\nFile - Save Calendar Backup\nto revert importing"); |
1514 | i18n("When importing a calendar twice\nduplicated events will be ignored!\nYou can create a backup file with\nFile - Save Calendar Backup\nto revert importing"), | 1514 | #ifdef DESKTOP_VERSION |
1515 | mess += i18n("The content of the following files will be\nimported (located in your home directory (hd)):\n(hd)/Applications/datebook/datebook.xml\n(hd)/Applications/todolist/todolist.xml\nThe following category file will be used:\n(hd)/Settings/Categories.xml"); | ||
1516 | #endif | ||
1517 | int result = QMessageBox::warning( this, i18n("KO/Pi: Warning!"),mess, | ||
1515 | i18n("Import!"), i18n("Cancel"), 0, | 1518 | i18n("Import!"), i18n("Cancel"), 0, |
1516 | 0, 1 ); | 1519 | 0, 1 ); |
1517 | if ( result == 0 ) { | 1520 | if ( result == 0 ) { |
1521 | #ifndef DESKTOP_VERSION | ||
1518 | QString datebook = Global::applicationFileName( "datebook", "datebook.xml"); | 1522 | QString datebook = Global::applicationFileName( "datebook", "datebook.xml"); |
1519 | QString todolist = Global::applicationFileName( "todolist", "todolist.xml"); | 1523 | QString todolist = Global::applicationFileName( "todolist", "todolist.xml"); |
1520 | QString categories = QString( getenv( "HOME" ) ) + "/Settings/Categories.xml"; | 1524 | QString categories = QString( getenv( "HOME" ) ) + "/Settings/Categories.xml"; |
1525 | #else | ||
1526 | QString datebook = QDir::homeDirPath()+ "/Applications/datebook/datebook.xml"; | ||
1527 | QString todolist = QDir::homeDirPath()+ "/Applications/todolist/todolist.xml"; | ||
1528 | QString categories = QDir::homeDirPath()+ "/Settings/Categories.xml"; | ||
1529 | #endif | ||
1521 | mView->importQtopia( categories, datebook, todolist ); | 1530 | mView->importQtopia( categories, datebook, todolist ); |
1522 | } | 1531 | } |
1523 | #else | 1532 | #if 0 |
1524 | int result = QMessageBox::warning( this, i18n("KO/Pi: Warning!"), | 1533 | int result = QMessageBox::warning( this, i18n("KO/Pi: Warning!"), |
1525 | i18n("Not supported \non desktop!\n"), | 1534 | i18n("Not supported \non desktop!\n"), |
1526 | i18n("Ok"), i18n("Cancel"), 0, | 1535 | i18n("Ok"), i18n("Cancel"), 0, |
1527 | 0, 1 ); | 1536 | 0, 1 ); |
1528 | 1537 | ||
1529 | #endif | 1538 | #endif |
1530 | } | 1539 | } |
1531 | 1540 | ||
1532 | void MainWindow::saveOnClose() | 1541 | void MainWindow::saveOnClose() |
1533 | { | 1542 | { |
1534 | KOPrefs *p = KOPrefs::instance(); | 1543 | KOPrefs *p = KOPrefs::instance(); |
1535 | p->mToolBarHor = ( iconToolBar->orientation () == Qt:: Horizontal ); | 1544 | p->mToolBarHor = ( iconToolBar->orientation () == Qt:: Horizontal ); |
1536 | p->mToolBarUp = iconToolBar->x() > width()/2 || | 1545 | p->mToolBarUp = iconToolBar->x() > width()/2 || |
1537 | iconToolBar->y() > height()/2; | 1546 | iconToolBar->y() > height()/2; |
1538 | mView->writeSettings(); | 1547 | mView->writeSettings(); |
1539 | if ( mCalendarModifiedFlag || mView->checkFileChanged( defaultFileName())) | 1548 | if ( mCalendarModifiedFlag || mView->checkFileChanged( defaultFileName())) |
1540 | save(); | 1549 | save(); |
1541 | } | 1550 | } |
1542 | void MainWindow::slotModifiedChanged( bool changed ) | 1551 | void MainWindow::slotModifiedChanged( bool changed ) |
1543 | { | 1552 | { |
1544 | if ( mBlockAtStartup ) | 1553 | if ( mBlockAtStartup ) |
1545 | return; | 1554 | return; |
1546 | 1555 | ||
1547 | int msec; | 1556 | int msec; |
1548 | // we store the changes after 1 minute, | 1557 | // we store the changes after 1 minute, |
1549 | // and for safety reasons after 10 minutes again | 1558 | // and for safety reasons after 10 minutes again |
1550 | if ( !mSyncManager->blockSave() ) | 1559 | if ( !mSyncManager->blockSave() ) |
1551 | msec = (1000 * 60*KOPrefs::instance()->mAutoSaveInterval) +1000; | 1560 | msec = (1000 * 60*KOPrefs::instance()->mAutoSaveInterval) +1000; |
1552 | else | 1561 | else |
1553 | msec = 1000 * 600; | 1562 | msec = 1000 * 600; |
1554 | mSaveTimer.start( msec, true ); // 1 minute | 1563 | mSaveTimer.start( msec, true ); // 1 minute |
1555 | qDebug("KO: Saving File in %d secs!", msec/1000); | 1564 | qDebug("KO: Saving File in %d secs!", msec/1000); |
1556 | mCalendarModifiedFlag = true; | 1565 | mCalendarModifiedFlag = true; |
1557 | } | 1566 | } |
1558 | void MainWindow::saveStopTimer() | 1567 | void MainWindow::saveStopTimer() |
1559 | { | 1568 | { |
1560 | mSaveTimer.stop(); | 1569 | mSaveTimer.stop(); |
1561 | if (mSaveTimer.isActive() ) | 1570 | if (mSaveTimer.isActive() ) |
1562 | qDebug("ti active "); | 1571 | qDebug("ti active "); |
1563 | else | 1572 | else |
1564 | qDebug("KO: Save timer stopped"); | 1573 | qDebug("KO: Save timer stopped"); |
1565 | } | 1574 | } |
1566 | void MainWindow::save() | 1575 | void MainWindow::save() |
1567 | { | 1576 | { |
1568 | if ( !mCalendarModifiedFlag ) { | 1577 | if ( !mCalendarModifiedFlag ) { |
1569 | qDebug("KO: Calendar not modified. Nothing saved."); | 1578 | qDebug("KO: Calendar not modified. Nothing saved."); |
1570 | return; | 1579 | return; |
1571 | } | 1580 | } |
1572 | if ( mSyncManager->blockSave() ) | 1581 | if ( mSyncManager->blockSave() ) |
1573 | return; | 1582 | return; |
1574 | mSyncManager->setBlockSave(true); | 1583 | mSyncManager->setBlockSave(true); |
1575 | if ( mView->checkFileVersion( defaultFileName()) ) { | 1584 | if ( mView->checkFileVersion( defaultFileName()) ) { |
1576 | QTime neededSaveTime = QDateTime::currentDateTime().time(); | 1585 | QTime neededSaveTime = QDateTime::currentDateTime().time(); |
1577 | setCaption(i18n("KO/Pi:Saving Data to File ..." )); | 1586 | setCaption(i18n("KO/Pi:Saving Data to File ..." )); |
1578 | qDebug("KO: Start saving data to file!"); | 1587 | qDebug("KO: Start saving data to file!"); |
1579 | mView->saveCalendar( defaultFileName() ); | 1588 | mView->saveCalendar( defaultFileName() ); |
1580 | mCalendarModifiedFlag = false; | 1589 | mCalendarModifiedFlag = false; |
1581 | int msNeeded = neededSaveTime.msecsTo( QDateTime::currentDateTime().time() ); | 1590 | int msNeeded = neededSaveTime.msecsTo( QDateTime::currentDateTime().time() ); |
1582 | qDebug("KO: Needed %d ms for saving.",msNeeded ); | 1591 | qDebug("KO: Needed %d ms for saving.",msNeeded ); |
1583 | QString savemes; | 1592 | QString savemes; |
1584 | savemes.sprintf(i18n("KO/Pi:File Saved. Needed %d sec, %d ms"),(msNeeded/1000)%100,msNeeded%1000 ); | 1593 | savemes.sprintf(i18n("KO/Pi:File Saved. Needed %d sec, %d ms"),(msNeeded/1000)%100,msNeeded%1000 ); |
1585 | setCaption(savemes); | 1594 | setCaption(savemes); |
1586 | } else | 1595 | } else |
1587 | setCaption(i18n("Saving cancelled!")); | 1596 | setCaption(i18n("Saving cancelled!")); |
1588 | mSyncManager->setBlockSave( false ); | 1597 | mSyncManager->setBlockSave( false ); |
1589 | } | 1598 | } |
1590 | 1599 | ||
1591 | void MainWindow::keyReleaseEvent ( QKeyEvent * e) | 1600 | void MainWindow::keyReleaseEvent ( QKeyEvent * e) |
1592 | { | 1601 | { |
1593 | if ( !e->isAutoRepeat() ) { | 1602 | if ( !e->isAutoRepeat() ) { |
1594 | mFlagKeyPressed = false; | 1603 | mFlagKeyPressed = false; |
1595 | } | 1604 | } |
1596 | } | 1605 | } |
1597 | void MainWindow::keyPressEvent ( QKeyEvent * e ) | 1606 | void MainWindow::keyPressEvent ( QKeyEvent * e ) |
1598 | { | 1607 | { |
1599 | qApp->processEvents(); | 1608 | qApp->processEvents(); |
1600 | if ( e->isAutoRepeat() && !mFlagKeyPressed ) { | 1609 | if ( e->isAutoRepeat() && !mFlagKeyPressed ) { |
1601 | e->ignore(); | 1610 | e->ignore(); |
1602 | // qDebug(" ignore %d",e->isAutoRepeat() ); | 1611 | // qDebug(" ignore %d",e->isAutoRepeat() ); |
1603 | return; | 1612 | return; |
1604 | } | 1613 | } |
1605 | if (! e->isAutoRepeat() ) | 1614 | if (! e->isAutoRepeat() ) |
1606 | mFlagKeyPressed = true; | 1615 | mFlagKeyPressed = true; |
1607 | KOPrefs *p = KOPrefs::instance(); | 1616 | KOPrefs *p = KOPrefs::instance(); |
1608 | bool showSelectedDates = false; | 1617 | bool showSelectedDates = false; |
1609 | int size; | 1618 | int size; |
1610 | int pro = 0; | 1619 | int pro = 0; |
1611 | //qDebug("MainWindow::keyPressEvent "); | 1620 | //qDebug("MainWindow::keyPressEvent "); |
1612 | switch ( e->key() ) { | 1621 | switch ( e->key() ) { |
1613 | case Qt::Key_Right: | 1622 | case Qt::Key_Right: |
1614 | if ( e->state() == Qt::ControlButton || e->state() == Qt::ShiftButton) | 1623 | if ( e->state() == Qt::ControlButton || e->state() == Qt::ShiftButton) |
1615 | mView->goNextMonth(); | 1624 | mView->goNextMonth(); |
1616 | else | 1625 | else |
1617 | mView->goNext(); | 1626 | mView->goNext(); |
1618 | showSelectedDates = true; | 1627 | showSelectedDates = true; |
1619 | break; | 1628 | break; |
1620 | case Qt::Key_Left: | 1629 | case Qt::Key_Left: |
1621 | if ( e->state() == Qt::ControlButton|| e->state() == Qt::ShiftButton ) | 1630 | if ( e->state() == Qt::ControlButton|| e->state() == Qt::ShiftButton ) |
1622 | mView->goPreviousMonth(); | 1631 | mView->goPreviousMonth(); |
1623 | else | 1632 | else |
1624 | mView->goPrevious(); | 1633 | mView->goPrevious(); |
1625 | showSelectedDates = true; | 1634 | showSelectedDates = true; |
1626 | break; | 1635 | break; |
1627 | case Qt::Key_Down: | 1636 | case Qt::Key_Down: |
1628 | mView->viewManager()->agendaView()->scrollOneHourDown(); | 1637 | mView->viewManager()->agendaView()->scrollOneHourDown(); |
1629 | break; | 1638 | break; |
1630 | case Qt::Key_Up: | 1639 | case Qt::Key_Up: |
1631 | mView->viewManager()->agendaView()->scrollOneHourUp(); | 1640 | mView->viewManager()->agendaView()->scrollOneHourUp(); |
1632 | break; | 1641 | break; |
1633 | case Qt::Key_K: | 1642 | case Qt::Key_K: |
1634 | mView->viewManager()->showMonthViewWeek(); | 1643 | mView->viewManager()->showMonthViewWeek(); |
1635 | break; | 1644 | break; |
1636 | case Qt::Key_I: | 1645 | case Qt::Key_I: |
1637 | mView->showIncidence(); | 1646 | mView->showIncidence(); |
1638 | break; | 1647 | break; |
1639 | case Qt::Key_Delete: | 1648 | case Qt::Key_Delete: |
1640 | case Qt::Key_Backspace: | 1649 | case Qt::Key_Backspace: |
1641 | mView->deleteIncidence(); | 1650 | mView->deleteIncidence(); |
1642 | break; | 1651 | break; |
1643 | case Qt::Key_D: | 1652 | case Qt::Key_D: |
1644 | mView->viewManager()->showDayView(); | 1653 | mView->viewManager()->showDayView(); |
1645 | showSelectedDates = true; | 1654 | showSelectedDates = true; |
1646 | break; | 1655 | break; |
1647 | case Qt::Key_O: | 1656 | case Qt::Key_O: |
1648 | mView->toggleFilerEnabled( ); | 1657 | mView->toggleFilerEnabled( ); |
1649 | break; | 1658 | break; |
1650 | case Qt::Key_0: | 1659 | case Qt::Key_0: |
1651 | case Qt::Key_1: | 1660 | case Qt::Key_1: |