summaryrefslogtreecommitdiffabout
path: root/microkde
authorzautrix <zautrix>2005-01-28 03:22:17 (UTC)
committer zautrix <zautrix>2005-01-28 03:22:17 (UTC)
commit94f0e8140c07696174dc3774dc2c11efad2ffa68 (patch) (unidiff)
treed95cc80e5c5221e8d9ce1cbf4b01cbf78fdf843a /microkde
parent6fb044008531ec883fc25a3ef2b43904930cfff6 (diff)
downloadkdepimpi-94f0e8140c07696174dc3774dc2c11efad2ffa68.zip
kdepimpi-94f0e8140c07696174dc3774dc2c11efad2ffa68.tar.gz
kdepimpi-94f0e8140c07696174dc3774dc2c11efad2ffa68.tar.bz2
missing config
Diffstat (limited to 'microkde') (more/less context) (ignore whitespace changes)
-rw-r--r--microkde/KDGanttMinimizeSplitter.cpp10
-rw-r--r--microkde/KDGanttMinimizeSplitter.h2
2 files changed, 12 insertions, 0 deletions
diff --git a/microkde/KDGanttMinimizeSplitter.cpp b/microkde/KDGanttMinimizeSplitter.cpp
index 567ae54..84edc0d 100644
--- a/microkde/KDGanttMinimizeSplitter.cpp
+++ b/microkde/KDGanttMinimizeSplitter.cpp
@@ -137,64 +137,65 @@ void KDGanttSplitterHandle::updateCursor( const QPoint& p)
137 if ( onButton( p ) != 0 ) { 137 if ( onButton( p ) != 0 ) {
138 setCursor( arrowCursor ); 138 setCursor( arrowCursor );
139 } 139 }
140 else { 140 else {
141 if ( orient == KDGanttMinimizeSplitter::Horizontal ) 141 if ( orient == KDGanttMinimizeSplitter::Horizontal )
142 setCursor( splitHCursor ); 142 setCursor( splitHCursor );
143 else 143 else
144 setCursor( splitVCursor ); 144 setCursor( splitVCursor );
145 } 145 }
146} 146}
147void KDGanttSplitterHandle::toggle() 147void KDGanttSplitterHandle::toggle()
148{ 148{
149 int pos; 149 int pos;
150 int min, max; 150 int min, max;
151 if ( !_collapsed ) { 151 if ( !_collapsed ) {
152 s->expandPos( id(), &min, &max ); 152 s->expandPos( id(), &min, &max );
153 if ( s->minimizeDirection() == KDGanttMinimizeSplitter::Left 153 if ( s->minimizeDirection() == KDGanttMinimizeSplitter::Left
154 || s->minimizeDirection() == KDGanttMinimizeSplitter::Up ) { 154 || s->minimizeDirection() == KDGanttMinimizeSplitter::Up ) {
155 pos = min; 155 pos = min;
156 } 156 }
157 else { 157 else {
158 pos = max; 158 pos = max;
159 } 159 }
160 160
161 _origPos = s->pick(mapToParent( QPoint( 0,0 ) )); 161 _origPos = s->pick(mapToParent( QPoint( 0,0 ) ));
162 s->moveSplitter( pos, id() ); 162 s->moveSplitter( pos, id() );
163 _collapsed = true; 163 _collapsed = true;
164 } 164 }
165 else { 165 else {
166 s->moveSplitter( _origPos, id() ); 166 s->moveSplitter( _origPos, id() );
167 _collapsed = false; 167 _collapsed = false;
168 } 168 }
169 repaint();
169} 170}
170 171
171void KDGanttSplitterHandle::mouseReleaseEvent( QMouseEvent *e ) 172void KDGanttSplitterHandle::mouseReleaseEvent( QMouseEvent *e )
172{ 173{
173 if ( _activeButton != 0 ) { 174 if ( _activeButton != 0 ) {
174 if ( onButton( e->pos() ) == _activeButton ) 175 if ( onButton( e->pos() ) == _activeButton )
175 { 176 {
176 toggle(); 177 toggle();
177 } 178 }
178 _activeButton = 0; 179 _activeButton = 0;
179 updateCursor( e->pos() ); 180 updateCursor( e->pos() );
180 } 181 }
181 else { 182 else {
182 if ( !opaque() && e->button() == LeftButton ) { 183 if ( !opaque() && e->button() == LeftButton ) {
183 QCOORD pos = s->pick(parentWidget()->mapFromGlobal(e->globalPos())) 184 QCOORD pos = s->pick(parentWidget()->mapFromGlobal(e->globalPos()))
184 - mouseOffset; 185 - mouseOffset;
185 s->setRubberband( -1 ); 186 s->setRubberband( -1 );
186 s->moveSplitter( pos, id() ); 187 s->moveSplitter( pos, id() );
187 } 188 }
188 } 189 }
189 repaint(); 190 repaint();
190} 191}
191 192
192int KDGanttSplitterHandle::onButton( const QPoint& p ) 193int KDGanttSplitterHandle::onButton( const QPoint& p )
193{ 194{
194 QValueList<QPointArray> list = buttonRegions(); 195 QValueList<QPointArray> list = buttonRegions();
195 int index = 1; 196 int index = 1;
196 int add = 12; 197 int add = 12;
197 for( QValueList<QPointArray>::Iterator it = list.begin(); it != list.end(); ++it ) { 198 for( QValueList<QPointArray>::Iterator it = list.begin(); it != list.end(); ++it ) {
198 QRect rect = (*it).boundingRect(); 199 QRect rect = (*it).boundingRect();
199 rect.setLeft( rect.left()- add ); 200 rect.setLeft( rect.left()- add );
200 rect.setRight( rect.right() + add); 201 rect.setRight( rect.right() + add);
@@ -451,64 +452,73 @@ KDGanttMinimizeSplitter::KDGanttMinimizeSplitter( Orientation o, QWidget *parent
451{ 452{
452 mFirstHandle = 0; 453 mFirstHandle = 0;
453#if QT_VERSION >= 232 454#if QT_VERSION >= 232
454 orient = o; 455 orient = o;
455 init(); 456 init();
456#endif 457#endif
457} 458}
458 459
459/*! 460/*!
460 Destroys the splitter and any children. 461 Destroys the splitter and any children.
461*/ 462*/
462KDGanttMinimizeSplitter::~KDGanttMinimizeSplitter() 463KDGanttMinimizeSplitter::~KDGanttMinimizeSplitter()
463{ 464{
464#if QT_VERSION >= 232 465#if QT_VERSION >= 232
465 data->list.setAutoDelete( TRUE ); 466 data->list.setAutoDelete( TRUE );
466 delete data; 467 delete data;
467#endif 468#endif
468} 469}
469 470
470 471
471#if QT_VERSION >= 232 472#if QT_VERSION >= 232
472void KDGanttMinimizeSplitter::init() 473void KDGanttMinimizeSplitter::init()
473{ 474{
474 data = new QSplitterData; 475 data = new QSplitterData;
475 if ( orient == Horizontal ) 476 if ( orient == Horizontal )
476 setSizePolicy( QSizePolicy(QSizePolicy::Expanding,QSizePolicy::Minimum) ); 477 setSizePolicy( QSizePolicy(QSizePolicy::Expanding,QSizePolicy::Minimum) );
477 else 478 else
478 setSizePolicy( QSizePolicy(QSizePolicy::Minimum,QSizePolicy::Expanding) ); 479 setSizePolicy( QSizePolicy(QSizePolicy::Minimum,QSizePolicy::Expanding) );
479} 480}
480#endif 481#endif
481 482
482 483
484void KDGanttMinimizeSplitter::toggle()
485{
486 if ( mFirstHandle )
487 mFirstHandle->toggle();
488 else
489 qDebug("KDGanttMinimizeSplitter::toggle::sorry, handle not available ");
490
491}
492
483 493
484/*! 494/*!
485 \brief the orientation of the splitter 495 \brief the orientation of the splitter
486 496
487 By default the orientation is horizontal (the widgets are side by side). 497 By default the orientation is horizontal (the widgets are side by side).
488 The possible orientations are Qt:Vertical and Qt::Horizontal (the default). 498 The possible orientations are Qt:Vertical and Qt::Horizontal (the default).
489*/ 499*/
490void KDGanttMinimizeSplitter::setOrientation( Orientation o ) 500void KDGanttMinimizeSplitter::setOrientation( Orientation o )
491{ 501{
492#if QT_VERSION >= 232 502#if QT_VERSION >= 232
493 if ( orient == o ) 503 if ( orient == o )
494 return; 504 return;
495 orient = o; 505 orient = o;
496 506
497 if ( orient == Horizontal ) 507 if ( orient == Horizontal )
498 setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Minimum ) ); 508 setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Minimum ) );
499 else 509 else
500 setSizePolicy( QSizePolicy( QSizePolicy::Minimum, QSizePolicy::Expanding ) ); 510 setSizePolicy( QSizePolicy( QSizePolicy::Minimum, QSizePolicy::Expanding ) );
501 511
502 QSplitterLayoutStruct *s = data->list.first(); 512 QSplitterLayoutStruct *s = data->list.first();
503 while ( s ) { 513 while ( s ) {
504 if ( s->isSplitter ) 514 if ( s->isSplitter )
505 ((KDGanttSplitterHandle*)s->wid)->setOrientation( o ); 515 ((KDGanttSplitterHandle*)s->wid)->setOrientation( o );
506 s = data->list.next(); // ### next at end of loop, no iterator 516 s = data->list.next(); // ### next at end of loop, no iterator
507 } 517 }
508 recalc( isVisible() ); 518 recalc( isVisible() );
509#endif 519#endif
510} 520}
511 521
512 522
513#if QT_VERSION >= 232 523#if QT_VERSION >= 232
514/*! 524/*!
diff --git a/microkde/KDGanttMinimizeSplitter.h b/microkde/KDGanttMinimizeSplitter.h
index 75e0443..8120d14 100644
--- a/microkde/KDGanttMinimizeSplitter.h
+++ b/microkde/KDGanttMinimizeSplitter.h
@@ -51,64 +51,66 @@ class KDGanttMinimizeSplitter : public QFrame
51 // Q_PROPERTY( Direction minimizeDirection READ minimizeDirection WRITE setMinimizeDirection ) 51 // Q_PROPERTY( Direction minimizeDirection READ minimizeDirection WRITE setMinimizeDirection )
52 52
53public: 53public:
54 enum ResizeMode { Stretch, KeepSize, FollowSizeHint }; 54 enum ResizeMode { Stretch, KeepSize, FollowSizeHint };
55 enum Direction { Left, Right, Up, Down }; 55 enum Direction { Left, Right, Up, Down };
56 56
57 KDGanttMinimizeSplitter( QWidget* parent=0, const char* name=0 ); 57 KDGanttMinimizeSplitter( QWidget* parent=0, const char* name=0 );
58 KDGanttMinimizeSplitter( Orientation, QWidget* parent=0, const char* name=0 ); 58 KDGanttMinimizeSplitter( Orientation, QWidget* parent=0, const char* name=0 );
59 ~KDGanttMinimizeSplitter(); 59 ~KDGanttMinimizeSplitter();
60 60
61 virtual void setOrientation( Orientation ); 61 virtual void setOrientation( Orientation );
62 Orientation orientation() const { return orient; } 62 Orientation orientation() const { return orient; }
63 63
64 void setMinimizeDirection( Direction ); 64 void setMinimizeDirection( Direction );
65 Direction minimizeDirection() const; 65 Direction minimizeDirection() const;
66 66
67#if QT_VERSION >= 232 67#if QT_VERSION >= 232
68 virtual void setResizeMode( QWidget *w, ResizeMode ); 68 virtual void setResizeMode( QWidget *w, ResizeMode );
69 virtual void setOpaqueResize( bool = TRUE ); 69 virtual void setOpaqueResize( bool = TRUE );
70 bool opaqueResize() const; 70 bool opaqueResize() const;
71 71
72 void moveToFirst( QWidget * ); 72 void moveToFirst( QWidget * );
73 void moveToLast( QWidget * ); 73 void moveToLast( QWidget * );
74 74
75 void refresh() { recalc( TRUE ); } 75 void refresh() { recalc( TRUE ); }
76 QSize sizeHint() const; 76 QSize sizeHint() const;
77 QSize minimumSizeHint() const; 77 QSize minimumSizeHint() const;
78 78
79 QValueList<int> sizes() const; 79 QValueList<int> sizes() const;
80 void setSizes( QValueList<int> ); 80 void setSizes( QValueList<int> );
81 KDGanttSplitterHandle* firstHandle(){ return mFirstHandle;} 81 KDGanttSplitterHandle* firstHandle(){ return mFirstHandle;}
82 void expandPos( int id, int* min, int* max ); 82 void expandPos( int id, int* min, int* max );
83public slots:
84 void toggle();
83protected: 85protected:
84 void childEvent( QChildEvent * ); 86 void childEvent( QChildEvent * );
85 87
86 bool event( QEvent * ); 88 bool event( QEvent * );
87 void resizeEvent( QResizeEvent * ); 89 void resizeEvent( QResizeEvent * );
88 90
89 int idAfter( QWidget* ) const; 91 int idAfter( QWidget* ) const;
90 92
91 void moveSplitter( QCOORD pos, int id ); 93 void moveSplitter( QCOORD pos, int id );
92 virtual void drawSplitter( QPainter*, QCOORD x, QCOORD y, 94 virtual void drawSplitter( QPainter*, QCOORD x, QCOORD y,
93 QCOORD w, QCOORD h ); 95 QCOORD w, QCOORD h );
94 void styleChange( QStyle& ); 96 void styleChange( QStyle& );
95 int adjustPos( int , int ); 97 int adjustPos( int , int );
96 virtual void setRubberband( int ); 98 virtual void setRubberband( int );
97 void getRange( int id, int*, int* ); 99 void getRange( int id, int*, int* );
98 100
99private: 101private:
100 void init(); 102 void init();
101 void recalc( bool update = FALSE ); 103 void recalc( bool update = FALSE );
102 void doResize(); 104 void doResize();
103 void storeSizes(); 105 void storeSizes();
104 void processChildEvents(); 106 void processChildEvents();
105 QSplitterLayoutStruct *addWidget( QWidget*, bool first = FALSE ); 107 QSplitterLayoutStruct *addWidget( QWidget*, bool first = FALSE );
106 void recalcId(); 108 void recalcId();
107 void moveBefore( int pos, int id, bool upLeft ); 109 void moveBefore( int pos, int id, bool upLeft );
108 void moveAfter( int pos, int id, bool upLeft ); 110 void moveAfter( int pos, int id, bool upLeft );
109 void setG( QWidget *w, int p, int s, bool isSplitter = FALSE ); 111 void setG( QWidget *w, int p, int s, bool isSplitter = FALSE );
110 112
111 QCOORD pick( const QPoint &p ) const 113 QCOORD pick( const QPoint &p ) const
112 { return orient == Horizontal ? p.x() : p.y(); } 114 { return orient == Horizontal ? p.x() : p.y(); }
113 QCOORD pick( const QSize &s ) const 115 QCOORD pick( const QSize &s ) const
114 { return orient == Horizontal ? s.width() : s.height(); } 116 { return orient == Horizontal ? s.width() : s.height(); }