summaryrefslogtreecommitdiffabout
path: root/korganizer/komonthview.cpp
authorzautrix <zautrix>2005-03-25 02:15:46 (UTC)
committer zautrix <zautrix>2005-03-25 02:15:46 (UTC)
commit658354b7112aff72f0fadd924c82b977d803bc27 (patch) (side-by-side diff)
treeda728354015340c16466fbfb3c851d96d6d95196 /korganizer/komonthview.cpp
parent7c2e130ddd194f1c4b5365af6999a27c08232f4b (diff)
downloadkdepimpi-658354b7112aff72f0fadd924c82b977d803bc27.zip
kdepimpi-658354b7112aff72f0fadd924c82b977d803bc27.tar.gz
kdepimpi-658354b7112aff72f0fadd924c82b977d803bc27.tar.bz2
fixes
Diffstat (limited to 'korganizer/komonthview.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--korganizer/komonthview.cpp88
1 files changed, 55 insertions, 33 deletions
diff --git a/korganizer/komonthview.cpp b/korganizer/komonthview.cpp
index 8ee5bc3..050bfb9 100644
--- a/korganizer/komonthview.cpp
+++ b/korganizer/komonthview.cpp
@@ -307,68 +307,75 @@ void MonthViewItem::paint(QPainter *p)
int wid = fm.width( text() );
p->drawLine( x, heihei/2-1 ,x+wid, heihei/2-1 );
}
}
int MonthViewItem::height(const QListBox *lb) const
{
+ int ret = 10;
if ( lb )
- return lb->fontMetrics().lineSpacing()+1;
- return 10;
+ ret = lb->fontMetrics().lineSpacing()+1;
+ return ret;
}
int MonthViewItem::width(const QListBox *lb) const
{
- int size = PIXMAP_SIZE;
- if ( QApplication::desktop()->width() < 300 )
- size = 3;
- int x = 1;
- if ( KOPrefs::instance()->mMonthShowIcons ) {
- if ( mInfo ) {
- x += size + 1;
- }
- if( mRecur ) {
- x += size+1;
- }
- if( mAlarm ) {
- x += size+1;
+
+ if( KOPrefs::instance()->mEnableMonthScroll || KOPrefs::instance()->mMonthViewWeek ) {
+ int size = PIXMAP_SIZE;
+ if ( QApplication::desktop()->width() < 300 )
+ size = 3;
+ int x = 1;
+ if ( KOPrefs::instance()->mMonthShowIcons ) {
+ if ( mInfo ) {
+ x += size + 1;
+ }
+ if( mRecur ) {
+ x += size+1;
+ }
+ if( mAlarm ) {
+ x += size+1;
+ }
+ if( mReply ) {
+ x += size+1;
+ }
}
- if( mReply ) {
- x += size+1;
+ if( mMultiday ) {
+ x += size+1+2+size/2;
}
+ return( x + lb->fontMetrics().width( text() ) + 1 );
}
- if( mMultiday ) {
- x += size+1+2+size/2;
- }
-
- return( x + lb->fontMetrics().width( text() ) + 1 );
+ if ( ! lb )
+ return 10;
+ //qDebug("ret wid %d ", lb->width());
+ return lb->width();
}
MonthViewCell::MonthViewCell( KOMonthView *parent,QWidget* par )
: QWidget( par ),
mMonthView( parent )
{
- QVBoxLayout *topLayout = new QVBoxLayout( this );
+ //QVBoxLayout *topLayout = new QVBoxLayout( this );
// mLabel = new QLabel( this );QPushButton
mLabel = new QPushButton( this );
//mLabel->setFrameStyle( QFrame::Panel | QFrame::Plain );
//mLabel->setLineWidth( 1 );
//mLabel->setAlignment( AlignCenter );
mLabel->setFlat( true );
mLabel->setFocusPolicy(NoFocus);
mItemList = new KNoScrollListBox( this );
mItemList->setMinimumSize( 10, 10 );
mItemList->setFrameStyle( QFrame::Panel | QFrame::Plain );
mItemList->setLineWidth( 1 );
- topLayout->addWidget( mItemList );
+ //topLayout->addWidget( mItemList );
mLabel->raise();
// QColor( 0,0,255 ) QColor( 160,1600,255 )
mStandardPalette = palette();
mStandardPalette.setColor(QColorGroup::Base, mStandardPalette.color( QPalette::Normal, QColorGroup::Background ) );
enableScrollBars( false );
updateConfig();
//connect( mLabel, SIGNAL( clicked( )), SLOT( newEvent() ));
@@ -412,27 +419,30 @@ void MonthViewCell::setPrimary( bool primary )
{
mPrimary = primary;
//setMyPalette();
}
void MonthViewCell::setMyPalette()
{
if ( mHoliday) {
- setPalette( mHolidayPalette );
+ mLabel->setPalette( QPalette ( mHolidayPalette.color( QPalette::Normal,QColorGroup::Base),mHolidayPalette.color(QPalette::Normal,QColorGroup::Base ) ));
+ mItemList->setPalette( mHolidayPalette );
} else {
if ( mPrimary ) {
- setPalette( mPrimaryPalette );
+ mLabel->setPalette( QPalette ( mPrimaryPalette.color( QPalette::Normal,QColorGroup::Base),mPrimaryPalette.color(QPalette::Normal,QColorGroup::Base ) ));
+ mItemList->setPalette( mPrimaryPalette );
} else {
- setPalette( mNonPrimaryPalette );
+ mItemList->setPalette( mNonPrimaryPalette );
+ mLabel->setPalette( QPalette ( mNonPrimaryPalette.color( QPalette::Normal,QColorGroup::Base),mNonPrimaryPalette.color(QPalette::Normal,QColorGroup::Base ) ));
}
}
- QPalette pal = palette();
+ //QPalette pal = palette();
- mLabel->setPalette( QPalette ( pal.color( QPalette::Normal,QColorGroup::Base),pal.color(QPalette::Normal,QColorGroup::Base ) ));
+ //mLabel->setPalette( QPalette ( pal.color( QPalette::Normal,QColorGroup::Base),pal.color(QPalette::Normal,QColorGroup::Base ) ));
}
QPalette MonthViewCell::getPalette ()
{
if ( !KOPrefs::instance()->mMonthViewUsesDayColors )
return mStandardPalette;
if ( mHoliday) {
return mHolidayPalette ;
} else {
@@ -669,17 +679,18 @@ void MonthViewCell::finishUpdateCell()
mLabel->resize( mLabelBigSize );
text += QString::number( KOGlobals::self()->calendarSystem()->day(mDate) );
} else {
mLabel->resize( mLabelSize );
text += QString::number( KOGlobals::self()->calendarSystem()->day(mDate) );
}
mLabel->setText( text );
- resizeEvent( 0 );
+ resizeEvent( 0 );
+
}
void MonthViewCell::updateCell()
{
//qDebug("MonthViewCell::updateCell() ");
if ( !mMonthView->isUpdatePossible() )
return;
startUpdateCell();
//mLabel->setMaximumWidth( width() - mItemList->lineWidth()*2);
@@ -730,18 +741,26 @@ void MonthViewCell::updateConfig( bool bigFont ) // = false
mNonPrimaryPalette.setColor(QColorGroup::Background,KOPrefs::instance()->mMonthViewEvenColor);
}
//updateCell();
}
void MonthViewCell::enableScrollBars( bool enabled )
{
if ( enabled ) {
- mItemList->setVScrollBarMode(QScrollView::Auto);
+ //mItemList->setVScrollBarMode(QScrollView::Auto);
mItemList->setHScrollBarMode(QScrollView::Auto);
+ QListBoxItem *fi = mItemList->firstItem ();
+ if (fi ) {
+ int hei = mItemList->numRows () * fi->height(mItemList);
+ if ( hei < height() - mItemList->horizontalScrollBar()->height () )
+ mItemList->setVScrollBarMode(QScrollView::AlwaysOff);
+ else
+ mItemList->setVScrollBarMode(QScrollView::Auto);
+ }
} else {
mItemList->setVScrollBarMode(QScrollView::AlwaysOff);
mItemList->setHScrollBarMode(QScrollView::AlwaysOff);
}
}
Incidence *MonthViewCell::selectedIncidence()
{
@@ -776,29 +795,32 @@ void MonthViewCell::deselect()
enableScrollBars( false );
// updateCell();
}
void MonthViewCell::select()
{
;// updateCell();
}
-void MonthViewCell::resizeEvent ( QResizeEvent * )
+void MonthViewCell::resizeEvent ( QResizeEvent * e )
{
if ( !mMonthView->isUpdatePossible() )
return;
-
+ //qDebug("++++++++++++++MonthViewCell::resizeEvent %d %d ", width(), height());
+ deselect();
int size = height() - mLabel->height() - 2;
if ( size > 0 )
mItemList->verticalScrollBar()->setMaximumHeight( size );
size = width() - mLabel->width() -2;
if ( size > 0 )
mItemList->horizontalScrollBar()->setMaximumWidth( size );
mLabel->move( width()-mItemList->lineWidth() - mLabel->width(), height()-mItemList->lineWidth() - mLabel->height() );
//mLabel->setMaximumWidth( width() - mItemList->lineWidth()*2);
+ mItemList->resize ( width(), height () );
+
}
void MonthViewCell::defaultAction( QListBoxItem *item )
{
if ( !item ) return;
MonthViewItem *eventItem = static_cast<MonthViewItem *>( item );
Incidence *incidence = eventItem->incidence();