int TableWidgetItem::setSizeHint( lua_State * L )// ( const QSize & size )void { QTableWidgetItem* lhs = ValueInstaller2<QTableWidgetItem>::check( L, 1 ); QSize* size = ValueInstaller2<QSize>::check( L, 2 ); lhs->setSizeHint( *size ); return 0; }
lmcImagePicker::lmcImagePicker( QWidget *parent, QList<QString>* source, int picSize, int columns, int* selected, int actionIndex ) : QTableWidget(parent) { setMouseTracking(true); setBackgroundRole(QPalette::Window); setIconSize(QSize(picSize, picSize)); setFrameShape(QFrame::NoFrame); setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff); setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff); setEditTriggers(QAbstractItemView::NoEditTriggers); setSelectionMode(QAbstractItemView::NoSelection); setShowGrid(false); horizontalHeader()->setVisible(false); verticalHeader()->setVisible(false); setStyleSheet("QTableWidget { padding: 4px }"); // padding around table max_col = columns; int max_row = qCeil(source->count() / (qreal)max_col); setColumnCount(max_col); setRowCount(max_row); int cellSize = picSize + 8; verticalHeader()->setDefaultSectionSize(cellSize); verticalHeader()->setMinimumSectionSize(cellSize); horizontalHeader()->setDefaultSectionSize(cellSize); horizontalHeader()->setMinimumSectionSize(cellSize); // set min and max size of table, with padding included setMinimumSize(max_col * cellSize + 8, max_row * cellSize + 8); setMaximumSize(max_col * cellSize + 8, max_row * cellSize + 8); for(int i = 0; i < max_row; i++) { for(int j = 0; j < max_col; j++) { int k = (i * max_col) + j; QTableWidgetItem* item = new QTableWidgetItem(); item->setData(TypeRole, 0); if(k < source->count()) { item->setIcon(QIcon(source->value(k))); item->setData(TypeRole, 1); item->setSizeHint(QSize(picSize, picSize)); item->setBackground(this->palette().window()); } setItem(i, j, item); } } this->actionIndex = actionIndex; this->selected = selected; this->hoverItem = NULL; }
void addPreview(KUrl previewfile) { QTableWidgetItem *previewitem = new QTableWidgetItem(); previewitem->setSizeHint(QSize(64, 64)); previewitem->setIcon(QIcon(previewfile.path())); setItem(m_previewentries, 4, previewitem); m_previewentries++; // FIXME: mapping from entry to url and to vertical position(s) }
/** * Sets up the list group. * @param margin The margin of the group. */ void ClassifierListTab::setupListGroup(int margin) { QString typeName; QString newItemType; switch (m_itemType) { case ot_Attribute: { typeName = i18n("Attributes"); m_centralTableTW->setColumnCount(7); m_centralTableTW->setHorizontalHeaderItem(0,new QTableWidgetItem("Name")); m_centralTableTW->setHorizontalHeaderItem(1,new QTableWidgetItem("Type")); m_centralTableTW->setHorizontalHeaderItem(2,new QTableWidgetItem("Initial value")); m_centralTableTW->setHorizontalHeaderItem(3,new QTableWidgetItem("Visibility")); m_centralTableTW->setHorizontalHeaderItem(4,new QTableWidgetItem("Stereotype name")); QTableWidgetItem* stat = new QTableWidgetItem("S"); stat->setToolTip("Static"); m_centralTableTW->setHorizontalHeaderItem(5,stat); QTableWidgetItem* doc = new QTableWidgetItem("Doc"); doc->setToolTip("Documentation"); m_centralTableTW->setHorizontalHeaderItem(6,doc); } break; case ot_Operation: { typeName = i18n("Operations"); m_centralTableTW->setColumnCount(10); m_centralTableTW->setHorizontalHeaderItem(0,new QTableWidgetItem("Name")); QTableWidgetItem* param = new QTableWidgetItem("Parameters"); param->setSizeHint(QSize(0,0)); m_centralTableTW->setHorizontalHeaderItem(1,param); m_centralTableTW->setHorizontalHeaderItem(2,new QTableWidgetItem("Type")); m_centralTableTW->setHorizontalHeaderItem(3,new QTableWidgetItem("Visibility")); m_centralTableTW->setHorizontalHeaderItem(4,new QTableWidgetItem("Stereotype")); QTableWidgetItem* stat = new QTableWidgetItem("S"); stat->setToolTip("Static"); m_centralTableTW->setHorizontalHeaderItem(5,stat); QTableWidgetItem* abs = new QTableWidgetItem("A"); abs->setToolTip("Abstract"); m_centralTableTW->setHorizontalHeaderItem(6,abs); QTableWidgetItem* cons = new QTableWidgetItem("C"); cons->setToolTip("Const"); m_centralTableTW->setHorizontalHeaderItem(7,cons); QTableWidgetItem* doc = new QTableWidgetItem("Doc"); doc->setToolTip("Documentation"); m_centralTableTW->setHorizontalHeaderItem(8,doc); m_centralTableTW->setHorizontalHeaderItem(9,new QTableWidgetItem("Source code")); } break; case ot_Template: typeName = i18n("Templates"); m_centralTableTW->setColumnCount(3); m_centralTableTW->setHorizontalHeaderItem(0,new QTableWidgetItem("Name")); m_centralTableTW->setHorizontalHeaderItem(1,new QTableWidgetItem("Type")); m_centralTableTW->setHorizontalHeaderItem(2,new QTableWidgetItem("Stereotype")); break; case ot_EnumLiteral: typeName = i18n("Enum Literals"); m_centralTableTW->setColumnCount(2); m_centralTableTW->setHorizontalHeaderItem(0,new QTableWidgetItem("Name")); m_centralTableTW->setHorizontalHeaderItem(1,new QTableWidgetItem("Default Value")); break; case ot_EntityAttribute: { typeName = i18n("Entity Attributes"); newItemType = i18n("N&ew Entity Attribute..."); m_centralTableTW->setHorizontalHeaderItem(0,new QTableWidgetItem("Name")); m_centralTableTW->setHorizontalHeaderItem(1,new QTableWidgetItem("Type")); m_centralTableTW->setHorizontalHeaderItem(2,new QTableWidgetItem("Default Value")); m_centralTableTW->setHorizontalHeaderItem(3,new QTableWidgetItem("Stereotype")); m_centralTableTW->setHorizontalHeaderItem(4,new QTableWidgetItem("Length")); m_centralTableTW->setHorizontalHeaderItem(5,new QTableWidgetItem("Attributes")); QTableWidgetItem* autoI = new QTableWidgetItem("A"); autoI->setToolTip("Auto Increment"); m_centralTableTW->setHorizontalHeaderItem(6,autoI); QTableWidgetItem* allowNull = new QTableWidgetItem("N"); allowNull->setToolTip("Allow null"); m_centralTableTW->setHorizontalHeaderItem(7,allowNull); QTableWidgetItem* index = new QTableWidgetItem("I"); index->setToolTip("Index"); m_centralTableTW->setHorizontalHeaderItem(8,index); QTableWidgetItem* doc = new QTableWidgetItem("Doc"); doc->setToolTip("Documentation"); m_centralTableTW->setHorizontalHeaderItem(9,doc); } break; case ot_EntityConstraint: typeName = i18n( "Constraints" ); newItemType = i18n( "N&ew Constraint..." ); break; default: uWarning() << "unknown listItem type in ClassifierListTab"; break; } m_centralTableTW->horizontalHeader()->setResizeMode(0,QHeaderView::Stretch); for (int i=1;i<12;i++) { m_centralTableTW->horizontalHeader()->setResizeMode(i,QHeaderView::ResizeToContents); } //top group box, contains a vertical layout with list box above and buttons below m_pItemListGB = new QGroupBox(typeName, this ); m_pItemListGB->setVisible(false); QVBoxLayout* listVBoxLayout = new QVBoxLayout( m_pItemListGB ); listVBoxLayout->setMargin(margin); listVBoxLayout->setSpacing( 10 ); //horizontal box contains the list box and the move up/down buttons QHBoxLayout* listHBoxLayout = new QHBoxLayout(); listHBoxLayout->setSpacing(10); listVBoxLayout->addItem( listHBoxLayout ); m_pItemListLB = new QListWidget(m_pItemListGB); m_pItemListLB->setSelectionMode(QAbstractItemView::SingleSelection); m_pItemListLB->setContextMenuPolicy(Qt::CustomContextMenu); listHBoxLayout->addWidget(m_pItemListLB); setupMoveButtons(listHBoxLayout); setupActionButtons(newItemType, listVBoxLayout); }