Source Code (Use browser search to find items of interest.)

Class Index

kppp'KGroupBoxBase (./kdenetwork/kppp/groupbox.h:15)

class KGroupBoxBase : public QFrame {
  Q_OBJECT
public:
  KGroupBoxBase(QWidget *parent = 0, const char *name = 0);
  inline QWidget *peer() const { return _peer; }

  void setTitleWidget(QWidget *title);

  virtual void resizeEvent(QResizeEvent *);
  virtual QSize minimumSize() const;
  virtual QSize maximumSize() const;
  virtual QSize sizeHint() const;
  virtual void show();

protected:
  void initBox();

  QRect frect;
  QWidget *_title;
  QWidget *_peer;
};


kppp'KGroupBoxBase::KGroupBoxBase() (./kdenetwork/kppp/groupbox.cpp:16)

KGroupBoxBase::KGroupBoxBase(QWidget *parent, const char *name) :
  QFrame(parent, name),
  _title(0)
{
  setFrameStyle(Box | Sunken);
  _peer = new QWidget(this);
}



kppp'KGroupBoxBase::show() (./kdenetwork/kppp/groupbox.cpp:25)

void KGroupBoxBase::show() {
  QSize s = peer()->sizeHint();
  s += 2*QSize(BORDER_X + INNER_X, BORDER_Y + INNER_Y);
  if(_title != 0)
    s.setHeight(s.height() + _title->sizeHint().height());
  setMinimumSize(s);
  QFrame::show();
}



kppp'KGroupBoxBase::minimumSize() (./kdenetwork/kppp/groupbox.cpp:35)

QSize KGroupBoxBase::minimumSize() const {
  return QSize(0, 0);
}



kppp'KGroupBoxBase::maximumSize() (./kdenetwork/kppp/groupbox.cpp:40)

QSize KGroupBoxBase::maximumSize() const {
  return QSize(1 << 15, 1 << 15);
}



kppp'KGroupBoxBase::sizeHint() (./kdenetwork/kppp/groupbox.cpp:45)

QSize KGroupBoxBase::sizeHint() const {
  return minimumSize();
}



kppp'KGroupBoxBase::resizeEvent() (./kdenetwork/kppp/groupbox.cpp:50)

void KGroupBoxBase::resizeEvent(QResizeEvent *) {
  initBox();
}



kppp'KGroupBoxBase::initBox() (./kdenetwork/kppp/groupbox.cpp:55)

void KGroupBoxBase::initBox() {
  QRect peergeo;
  
  frect = QRect(BORDER_X, BORDER_Y, 
		width() - 2*BORDER_X, height() - 2*BORDER_Y);

  peergeo = QRect(frect.left() + INNER_X,
		  frect.top() + INNER_Y,
		  frect.width() - (2*INNER_X) - 1,
		  frect.height() - (2*INNER_Y) - 1);

  // adjust frame to fit title
  if(_title != 0) {
    frect.setTop(frect.top() + _title->minimumSize().height()/2);
    peergeo.setTop(peergeo.top() + _title->minimumSize().height());
    _title->resize(_title->minimumSize().width() + 8,
		   _title->minimumSize().height());
    _title->move(peergeo.left() + INNER_X,
		 frect.top() - _title->minimumSize().height()/2);
  }

  setFrameRect(frect);
  _peer->setGeometry(peergeo);
}



kppp'KGroupBoxBase::setTitleWidget() (./kdenetwork/kppp/groupbox.cpp:81)

void KGroupBoxBase::setTitleWidget(QWidget *title) {
  if(_title)
    delete _title;

  if(title) {
    QFont f = font();
    f.setBold(true);
    title->setFont(f);
  }

  _title = title;
  initBox();  
}