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

Class Index

kuser'KGroupView (./kdeadmin/kuser/kgroupvw.h:9)

class KGroupView : public QWidget
{
    Q_OBJECT

public:
  KGroupView( QWidget* parent = NULL, const char* name = NULL );

  virtual ~KGroupView();

  void clear();
  void insertItem(KGroup *aku);
  int currentItem();
  KGroup *getCurrentGroup();
  void setCurrentItem( int item );
  void setAutoUpdate(bool state);
  void sortBy(int num);
  void repaint();

protected:
  virtual void resizeEvent( QResizeEvent *rev );

signals:
  void selected(int item);
  void highlighted(int item);
  void headerClicked(int num);

private slots:
  void onSelect(int row, int);
  void onHighlight(int row, int);
  void onHeaderClicked(int num);

private:
  void init();
  KHeader *m_Header;
  KGroupTable *m_Groups;
  int current;
};

kuser'KGroupView::KGroupView() (./kdeadmin/kuser/kgroupvw.cpp:5)

KGroupView::KGroupView(QWidget *parent, const char *name) : QWidget( parent, name ) {
  init();
  current = -1;
}


kuser'KGroupView::~KGroupView() (./kdeadmin/kuser/kgroupvw.cpp:10)

KGroupView::~KGroupView() {
  delete m_Header;
  delete m_Groups;
}


kuser'KGroupView::setAutoUpdate() (./kdeadmin/kuser/kgroupvw.cpp:15)

void KGroupView::setAutoUpdate(bool state) {
  m_Groups->setAutoUpdate(state);
}


kuser'KGroupView::clear() (./kdeadmin/kuser/kgroupvw.cpp:19)

void KGroupView::clear() {
  m_Groups->clear();
}


kuser'KGroupView::insertItem() (./kdeadmin/kuser/kgroupvw.cpp:23)

void KGroupView::insertItem(KGroup *aku) {
  m_Groups->insertItem(aku);
}


kuser'KGroupView::currentItem() (./kdeadmin/kuser/kgroupvw.cpp:27)

int KGroupView::currentItem() {
  return (current);
}


kuser'KGroupView::setCurrentItem() (./kdeadmin/kuser/kgroupvw.cpp:31)

void KGroupView::setCurrentItem(int item) {
  current = item;
  m_Groups->setCurrentItem(item);
}


kuser'KGroupView::sortBy() (./kdeadmin/kuser/kgroupvw.cpp:36)

void KGroupView::sortBy(int num) {
  m_Groups->sortBy(num);
}


kuser'KGroupView::init() (./kdeadmin/kuser/kgroupvw.cpp:40)

void KGroupView::init() {
  m_Header = new KHeader(this, "_gheader", 2, KHeader::Resizable|KHeader::Buttons );
  m_Header->setGeometry(2, 0, width(), 0 );

  m_Groups = new KGroupTable(this, "_gtable" );
  m_Groups->setGeometry(0, m_Header->height(), width(), height()-m_Header->height() );

  m_Header->setHeaderLabel(0, i18n("GID"));
  m_Header->setHeaderLabel(1, i18n("Group name"));

  connect(m_Groups, SIGNAL(highlighted(int,int)), SLOT(onHighlight(int,int)));
  connect(m_Groups, SIGNAL(selected(int,int)), SLOT(onSelect(int,int)));
  connect(m_Header, SIGNAL(selected(int)), SLOT(onHeaderClicked(int)));
  connect(m_Header, SIGNAL(sizeChanged(int,int)), m_Groups, SLOT(setColumnWidth(int,int)));

// This connection makes it jumpy and slow (but it works!)
  connect(m_Header, SIGNAL(sizeChanging(int,int)), m_Groups, SLOT(setColumnWidth(int,int)));

  connect(m_Groups, SIGNAL(hSliderMoved(int)), m_Header, SLOT(setOrigin(int)));

  m_Header->setHeaderSize(0, 60);
  m_Header->setHeaderSize(1, 300);
}


kuser'KGroupView::repaint() (./kdeadmin/kuser/kgroupvw.cpp:64)

void KGroupView::repaint() {
  m_Groups->repaint();
  m_Header->repaint();
}


kuser'KGroupView::getCurrentGroup() (./kdeadmin/kuser/kgroupvw.cpp:69)

KGroup *KGroupView::getCurrentGroup() {
  return (((KGroupRow *)m_Groups->getRow(current))->getData());
}


kuser'KGroupView::onSelect() (./kdeadmin/kuser/kgroupvw.cpp:73)

void KGroupView::onSelect(int row, int) {
  current = row;
  emit selected(row);
}


kuser'KGroupView::onHighlight() (./kdeadmin/kuser/kgroupvw.cpp:78)

void KGroupView::onHighlight(int row, int) {
  current = row;
  emit highlighted(row);
}


kuser'KGroupView::onHeaderClicked() (./kdeadmin/kuser/kgroupvw.cpp:83)

void KGroupView::onHeaderClicked(int num) {
  emit headerClicked(num);
}


kuser'KGroupView::resizeEvent() (./kdeadmin/kuser/kgroupvw.cpp:87)

void KGroupView::resizeEvent(QResizeEvent *rev) {
  m_Header->resize(rev->size().width(), 0);
  m_Header->setHeaderSize(0, (rev->size().width()-20)*3/18);
  m_Header->setHeaderSize(1, (rev->size().width()-20)*15/18);

  m_Groups->setGeometry(0, m_Header->height(), rev->size().width(), rev->size().height()-m_Header->height());
}