void PListEditorWidget::reloadGui(void ) { QTreeWidget* tree = m_ui.plistTree; tree->clear(); QTreeWidgetItem* rootNode = NULL; if (m_currentPlist) { // Add information if (m_currentPlist->GetType() == PLIST_ARRAY) { rootNode = generateArrayItem (m_currentPlist); rootNode->setText (NameColumn, "Root"); } else if (m_currentPlist->GetType() == PLIST_DICT) { rootNode = generateDictionaryItem (m_currentPlist); rootNode->setText (NameColumn, "Root"); } } if (rootNode) tree->addTopLevelItem(rootNode); tree->expandAll(); for (int x=0; x < tree->columnCount(); ++x) tree->resizeColumnToContents(x); }
dmz::V8Value dmz::JsModuleUiV8QtBasic::_tree_col_count (const v8::Arguments &Args) { v8::HandleScope scope; V8Value result = v8::Undefined (); JsModuleUiV8QtBasic *self = _to_self (Args); if (self) { QTreeWidget *tree = self->v8_to_qobject<QTreeWidget> (Args.This ()); if (tree) { if (Args.Length ()) { tree->setColumnCount (v8_to_uint32 (Args[0])); } result = v8::Number::New (tree->columnCount ()); } } return scope.Close (result); }
SimpleQTreeWidgetWidthInterface::SimpleQTreeWidgetWidthInterface(QTreeWidget& tbl) : TableWidthInterface(tbl.columnCount()), m_tbl(tbl) { int nCols (m_tbl.columnCount()); m_vbBold.resize(nCols); QFont font (m_tbl.font()); font.setBold(true); QFontMetrics fontMetrics (font); QHeaderView* pHdr (tbl.header()); for (int j = 0; j < nCols; ++j) { if (pHdr->isSectionHidden(j)) { setFixedWidth(j, 0); } else { m_vnHdrWidth[j] = fontMetrics.width(m_tbl.headerItem()->text(j)) + 8/*2*QApplication::style()->pixelMetric(QStyle::PM_DefaultFrameWidth)*/; // PM_DefaultFrameWidth is not THE thing to use, but it's one way to get some spacing for the header; (well it turned up to be too small, so it got replaced by 8; probably look at the source to see what should be used) } } }