void ListViewEditor::setupColumns() { QHeader *h = listview->header(); for ( int i = 0; i < (int)h->count(); ++i ) { Column col; col.text = h->label( i ); col.pixmap = QPixmap(); if ( h->iconSet( i ) ) col.pixmap = h->iconSet( i )->pixmap(); col.clickable = h->isClickEnabled( i ); col.resizable = h->isResizeEnabled( i ); if ( !col.pixmap.isNull() ) col.item = new QListBoxPixmap( colPreview, col.pixmap, col.text ); else col.item = new QListBoxText( colPreview, col.text ); columns.append( col ); } colText->setEnabled( FALSE ); colPixmap->setEnabled( FALSE ); colClickable->setEnabled( FALSE ); colResizable->setEnabled( FALSE ); if ( colPreview->firstItem() ) colPreview->setCurrentItem( colPreview->firstItem() ); numColumns = colPreview->count(); }
void TableEditor::readFromTable() { #ifndef QT_NO_TABLE QHeader *cols = editTable->horizontalHeader(); table->setNumCols( cols->count() ); QMap<QString, QString> columnFields = MetaDataBase::columnFields( editTable ); for ( int i = 0; i < cols->count(); ++i ) { if ( editTable->horizontalHeader()->iconSet( i ) ) { table->horizontalHeader()->setLabel( i, *editTable->horizontalHeader()->iconSet( i ), editTable->horizontalHeader()->label( i ) ); listColumns->insertItem( editTable->horizontalHeader()->iconSet( i )->pixmap(), editTable->horizontalHeader()->label( i ) ); } else { table->horizontalHeader()->setLabel( i, editTable->horizontalHeader()->label( i ) ); listColumns->insertItem( editTable->horizontalHeader()->label( i ) ); } QString cf = *columnFields.find( editTable->horizontalHeader()->label( i ) ); fieldMap.insert( i, cf ); } if ( listColumns->firstItem() ) { listColumns->setCurrentItem( listColumns->firstItem() ); listColumns->setSelected( listColumns->firstItem(), TRUE ); } QHeader *rows = editTable->verticalHeader(); table->setNumRows( rows->count() ); for ( int j = 0; j < rows->count(); ++j ) { if ( editTable->verticalHeader()->iconSet( j ) ) { table->verticalHeader()->setLabel( j, *editTable->verticalHeader()->iconSet( j ), editTable->verticalHeader()->label( j ) ); listRows->insertItem( editTable->verticalHeader()->iconSet( j )->pixmap(), editTable->verticalHeader()->label( j ) ); } else { table->verticalHeader()->setLabel( j, editTable->verticalHeader()->label( j ) ); listRows->insertItem( editTable->verticalHeader()->label( j ) ); } } if ( listRows->firstItem() ) { listRows->setCurrentItem( listRows->firstItem() ); listRows->setSelected( listRows->firstItem(), TRUE ); } #endif }