[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    kdepim/libkdepim
From:       Bram Schoenmakers <bramschoenmakers () kde ! nl>
Date:       2005-03-13 19:18:11
Message-ID: 20050313191811.EEA6F1487F () office ! kde ! org
[Download RAW message or body]

CVS commit by bram: 

Use KDatePickerPopup instead of custom frame with KDatePicker.


  M +19 -28    kdateedit.cpp   1.38
  M +3 -5      kdateedit.h   1.17


--- kdepim/libkdepim/kdateedit.cpp  #1.37:1.38
@@ -26,8 +26,6 @@
 #include <qlistbox.h>
 #include <qvalidator.h>
-#include <qvbox.h>
 
 #include <kcalendarsystem.h>
-#include <kdatepicker.h>
 #include <kglobal.h>
 #include <kglobalsettings.h>
@@ -82,12 +80,4 @@ KDateEdit::KDateEdit( QWidget *parent, c
   setMinimumSize( sizeHint() );
 
-  mDateFrame = new QVBox( 0, 0, WType_Popup );
-  mDateFrame->setFrameStyle( QFrame::PopupPanel | QFrame::Raised );
-  mDateFrame->setLineWidth( 3 );
-  mDateFrame->hide();
-  mDateFrame->installEventFilter( this );
-
-  mDatePicker = new KDatePicker( mDateFrame, mDate );
-
   connect( lineEdit(), SIGNAL( returnPressed() ),
            this, SLOT( lineEnterPressed() ) );
@@ -95,7 +85,9 @@ KDateEdit::KDateEdit( QWidget *parent, c
            SLOT( slotTextChanged( const QString& ) ) );
 
-  connect( mDatePicker, SIGNAL( dateEntered( QDate ) ),
-           SLOT( dateEntered( QDate ) ) );
-  connect( mDatePicker, SIGNAL( dateSelected( QDate ) ),
+  mPopup = new KDatePickerPopup( KDatePickerPopup::DatePicker | KDatePickerPopup::Words );
+  mPopup->hide();
+  mPopup->installEventFilter( this );
+
+  connect( mPopup, SIGNAL( dateChanged( QDate ) ),
            SLOT( dateSelected( QDate ) ) );
 
@@ -111,6 +103,6 @@ KDateEdit::KDateEdit( QWidget *parent, c
 KDateEdit::~KDateEdit()
 {
-  delete mDateFrame;
-  mDateFrame = 0;
+  delete mPopup;
+  mPopup = 0;
 }
 
@@ -146,5 +138,5 @@ void KDateEdit::popup()
   QPoint popupPoint = mapToGlobal( QPoint( 0,0 ) );
 
-  int dateFrameHeight = mDateFrame->sizeHint().height();
+  int dateFrameHeight = mPopup->sizeHint().height();
   if ( popupPoint.y() + height() + dateFrameHeight > desk.bottom() )
     popupPoint.setY( popupPoint.y() - dateFrameHeight );
@@ -152,5 +144,5 @@ void KDateEdit::popup()
     popupPoint.setY( popupPoint.y() + height() );
 
-  int dateFrameWidth = mDateFrame->sizeHint().width();
+  int dateFrameWidth = mPopup->sizeHint().width();
   if ( popupPoint.x() + dateFrameWidth > desk.right() )
     popupPoint.setX( desk.right() - dateFrameWidth );
@@ -162,12 +154,10 @@ void KDateEdit::popup()
     popupPoint.setY( desk.top() );
 
-  mDateFrame->move( popupPoint );
-
   if ( mDate.isValid() )
-    mDatePicker->setDate( mDate );
+    mPopup->setDate( mDate );
   else
-    mDatePicker->setDate( QDate::currentDate() );
+    mPopup->setDate( QDate::currentDate() );
 
-  mDateFrame->show();
+  mPopup->popup( popupPoint );
 
   // The combo box is now shown pressed. Make it show not pressed again
@@ -192,6 +182,7 @@ void KDateEdit::dateSelected( QDate date
     emit dateChanged( date );
 
-    if ( date.isValid() )
-      mDateFrame->hide();
+    if ( date.isValid() ) {
+      mPopup->hide();
+    }
   }
 }
@@ -299,6 +290,6 @@ bool KDateEdit::eventFilter( QObject *ob
       case QEvent::MouseButtonPress: {
         QMouseEvent *mouseEvent = (QMouseEvent*)event;
-        if ( !mDateFrame->rect().contains( mouseEvent->pos() ) ) {
-          QPoint globalPos = mDateFrame->mapToGlobal( mouseEvent->pos() );
+        if ( !mPopup->rect().contains( mouseEvent->pos() ) ) {
+          QPoint globalPos = mPopup->mapToGlobal( mouseEvent->pos() );
           if ( QApplication::widgetAt( globalPos, true ) == this ) {
             // The date picker is being closed by a click on the

--- kdepim/libkdepim/kdateedit.h  #1.16:1.17
@@ -30,8 +30,7 @@
 #include <kdepimmacros.h>
 
-class QEvent;
-class QVBox;
+#include "kdatepickerpopup.h"
 
-class KDatePicker;
+class QEvent;
 
 /**
@@ -128,6 +127,5 @@ class KDE_EXPORT KDateEdit : public QCom
     void updateView();
 
-    KDatePicker *mDatePicker;
-    QVBox *mDateFrame;
+    KDatePickerPopup *mPopup;
 
     QDate mDate;


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic