From 58b7818a74809dc9280a3249eeb7e0195a66f93d Mon Sep 17 00:00:00 2001 From: zautrix Date: Sun, 10 Jul 2005 10:17:55 +0000 Subject: fixx --- diff --git a/korganizer/calendarview.cpp b/korganizer/calendarview.cpp index 5a2482e..17f1659 100644 --- a/korganizer/calendarview.cpp +++ b/korganizer/calendarview.cpp @@ -655,6 +655,13 @@ CalendarView::~CalendarView() delete mEventViewerDialog; //kdDebug() << "~CalendarView() done" << endl; } + +void CalendarView::slotResetFocus() +{ + qDebug(" CalendarView::slotResetFocus() %x", qApp->focusWidget()); + +} + void CalendarView::nextConflict( bool all, bool allday ) { diff --git a/korganizer/calendarview.h b/korganizer/calendarview.h index 799c297..456c2d7 100644 --- a/korganizer/calendarview.h +++ b/korganizer/calendarview.h @@ -200,7 +200,8 @@ class CalendarView : public KOrg::CalendarViewBase, public KCal::Calendar::Obser void filtersUpdated(); - public slots: + public slots: + void slotResetFocus(); void nextConflict( bool all, bool allday ); void conflictAll(); void conflictAllday(); diff --git a/korganizer/koagenda.cpp b/korganizer/koagenda.cpp index 779f12e..0dd5ef5 100644 --- a/korganizer/koagenda.cpp +++ b/korganizer/koagenda.cpp @@ -1635,7 +1635,10 @@ void KOAgenda::setStartHour(int startHour) } QTime KOAgenda::getEndTime() { - return QTime ( (contentsY ()+viewport()->height())*24/contentsHeight ()+1,0,0); + int tim = (contentsY ()+viewport()->height())*24/contentsHeight (); + if ( tim > 23 ) + return QTime ( 23,59,59); + return QTime ( tim,0,0); } void KOAgenda::hideUnused() { diff --git a/korganizer/mainwindow.cpp b/korganizer/mainwindow.cpp index 4bedb61..21d5a35 100644 --- a/korganizer/mainwindow.cpp +++ b/korganizer/mainwindow.cpp @@ -21,7 +21,6 @@ #include #ifndef DESKTOP_VERSION #include -#include #include #include #include @@ -29,7 +28,6 @@ #include #include // for sleep #else -#include #include #include //#include @@ -225,7 +223,7 @@ MainWindow::MainWindow( QWidget *parent, const char *name ) : tbd = Left; } filterToolBar = new QPEToolBar ( this ); - filterMenubar = new QMenuBar( 0 ); + filterMenubar = new KMenuBar( 0 ); QFontMetrics fm ( filterMenubar->font() ); filterPopupMenu = new QPopupMenu( this ); @@ -682,9 +680,9 @@ void MainWindow::initActions() pathString += "iconsmini/"; pixWid = 18; pixHei = 16; } + KMenuBar *menuBar1; if ( KOPrefs::instance()->mShowFullMenu ) { - QMenuBar *menuBar1; - menuBar1 = menuBar(); + menuBar1 = new KMenuBar( this );//menuBar(); menuBar1->insertItem( i18n("File"), importMenu ); menuBar1->insertItem( i18n("View"), viewMenu ); menuBar1->insertItem( i18n("Edit"), mCurrentItemMenu ); @@ -700,8 +698,7 @@ void MainWindow::initActions() menuBar1->insertItem( i18n("Filter"),selectFilterMenu ); menuBar1->insertItem( i18n("Help"), helpMenu ); } else { - QPEMenuBar *menuBar1; - menuBar1 = new QPEMenuBar( iconToolBar ); + menuBar1 = new KMenuBar( iconToolBar ); QPopupMenu *menuBar = new QPopupMenu( this ); icon = loadPixmap( pathString + "z_menu" ); menuBar1->insertItem( icon.pixmap(), menuBar); @@ -718,6 +715,7 @@ void MainWindow::initActions() //menuBar1->setMaximumWidth( menuBar1->sizeHint().width() ); menuBar1->setMaximumSize( menuBar1->sizeHint( )); } + connect ( menuBar1, SIGNAL( lostFocus () ), mView, SLOT ( slotResetFocus() ) ); connect ( selectFilterMenu, SIGNAL( activated ( int ) ), this, SLOT (selectFilter( int ) ) ); connect ( selectFilterMenu, SIGNAL( aboutToShow() ), this, SLOT (fillFilterMenu() ) ); diff --git a/korganizer/mainwindow.h b/korganizer/mainwindow.h index d648f14..e2de3ba 100644 --- a/korganizer/mainwindow.h +++ b/korganizer/mainwindow.h @@ -11,6 +11,7 @@ #include #include +#include #ifndef DESKTOP_VERSION #include #endif @@ -20,10 +21,8 @@ class KSyncProfile; #ifdef DESKTOP_VERSION #define QPEToolBar QToolBar -#define QPEMenuBar QMenuBar #endif class QPEToolBar; -class QPEMenuBar; namespace KCal { @@ -128,7 +127,7 @@ class MainWindow : public QMainWindow QPEToolBar *viewToolBar; QPEToolBar *navigatorToolBar; QPEToolBar *filterToolBar; - QMenuBar *filterMenubar; + KMenuBar *filterMenubar; QPopupMenu * filterPopupMenu; QPopupMenu * mCurrentItemMenu; void initActions(); diff --git a/microkde/kdeui/kbuttonbox.cpp b/microkde/kdeui/kbuttonbox.cpp index 16206e8..83d622a 100644 --- a/microkde/kdeui/kbuttonbox.cpp +++ b/microkde/kdeui/kbuttonbox.cpp @@ -46,7 +46,7 @@ */ //US #include "kbuttonbox.moc" - + #include #include #include diff --git a/microkde/kdeui/kpopupmenu.cpp b/microkde/kdeui/kpopupmenu.cpp new file mode 100644 index 0000000..96d2a87 --- a/dev/null +++ b/microkde/kdeui/kpopupmenu.cpp @@ -0,0 +1,19 @@ + +#include +#include + + +KPopupMenu::KPopupMenu ( QWidget * parent, const char * name ) + : QPopupMenu ( parent, name ) {;} + + + +KMenuBar::KMenuBar ( QWidget * parent, const char * name ) + : QPEMenuBar ( parent, name ) {} + +void KMenuBar::focusOutEvent ( QFocusEvent * e) +{ + QPEMenuBar::focusOutEvent( e ); + QTimer::singleShot( 100, this, SIGNAL ( lostFocus() ) ); + +} diff --git a/microkde/kdeui/kpopupmenu.h b/microkde/kdeui/kpopupmenu.h index 1352429..f16ce77 100644 --- a/microkde/kdeui/kpopupmenu.h +++ b/microkde/kdeui/kpopupmenu.h @@ -2,13 +2,31 @@ #define KPOPUPMENU_H #include +#ifdef DESKTOP_VERSION +#include +#define QPEMenuBar QMenubar +#else +#include +#endif class KPopupMenu : public QPopupMenu { +Q_OBJECT public: - KPopupMenu ( QWidget * parent=0, const char * name=0 ) - : QPopupMenu ( parent, name ) {} + KPopupMenu ( QWidget * parent=0, const char * name=0 ); + +}; + +class KMenuBar : public QPEMenuBar +{ +Q_OBJECT + public: + KMenuBar ( QWidget * parent=0, const char * name=0 ); + signals: + void lostFocus(); + protected: + void focusOutEvent ( QFocusEvent * e); }; #endif diff --git a/microkde/microkde.pro b/microkde/microkde.pro index 44e5f9d..7120bdd 100644 --- a/microkde/microkde.pro +++ b/microkde/microkde.pro @@ -103,6 +103,7 @@ KDGanttMinimizeSplitter.h \ kdeui/ktoolbarbutton.h \ kdeui/ktoolbarhandler.h \ kdeui/kaction.h \ + kdeui/kpopupmenu.h \ kdeui/kactionclasses.h \ kdeui/kactioncollection.h \ kdecore/kprefs.h \ @@ -165,6 +166,7 @@ KDGanttMinimizeSplitter.cpp \ kresources/selectdialog.cpp \ kutils/kcmultidialog.cpp \ kdeui/kaction.cpp \ + kdeui/kpopupmenu.cpp \ kdeui/kactionclasses.cpp \ kdeui/kactioncollection.cpp \ kdeui/kmainwindow.cpp \ diff --git a/microkde/microkdeE.pro b/microkde/microkdeE.pro index 335fcd0..8fe2bd5 100644 --- a/microkde/microkdeE.pro +++ b/microkde/microkdeE.pro @@ -56,6 +56,7 @@ KDGanttMinimizeSplitter.h \ ofontselector.h \ kdeui/kguiitem.h \ kdeui/kaction.h \ + kdeui/kpopupmenu.h \ kdeui/kactionclasses.h \ kdeui/kactioncollection.h \ kdeui/kcmodule.h \ @@ -139,6 +140,7 @@ KDGanttMinimizeSplitter.cpp fncolordialog.cpp \ kdecore/kstandarddirs.cpp \ kdecore/kstringhandler.cpp \ kdeui/kaction.cpp \ + kdeui/kpopupmenu.cpp \ kdeui/kactionclasses.cpp \ kdeui/kactioncollection.cpp \ kdeui/kbuttonbox.cpp \ -- cgit v0.9.0.2