void QtDatasetViewWidget::datasetview_setThumbnail_slot(int i, QPixmap thumbnail) { dsview.datathumbnails[i] = thumbnail; QIcon viewIcon(dsview.datathumbnails[i]); QTableWidgetItem* newitem = new QTableWidgetItem(viewIcon,"",0); tablewidget->setItem(i, 0, newitem); }
void addModel(QAbstractItemModel *model, ViewType viewtype, Kickoff::MenuView::ModelOptions options = Kickoff::MenuView::MergeFirstLevel, int formattype = -1) { Kickoff::MenuView* mainView = menuview.data(); Kickoff::MenuView* m = mainView; if (viewtypes.count() > 1 || !m) { m = new Kickoff::MenuView(mainView, viewText(viewtype), KIcon(viewIcon(viewtype))); m->setFormatType((formattype >= 0 || !mainView) ? (Kickoff::MenuView::FormatType)formattype : mainView->formatType()); mainView->addMenu(m); } m->addModel(model, options); }
void QtDatasetViewWidget::open(void) { QFileDialog* fd = new QFileDialog( this ); fd->setFilter(QDir::Dirs | QDir::NoSymLinks | QDir::NoDotAndDotDot); //Load our folder structure. QString dn = fd->getExistingDirectory(this, "Please select a Directory", currentworkingdir); if(dn.isEmpty()) { return; } clear_all(); //now populate the ListWidgetItems dsview.datafolder = dn; QPixmap pixmap = QPixmap(128, 128); pixmap.fill(QColor(0,0,0)); QDir dirs = QDir(dn); dirs.setFilter(QDir::Dirs | QDir::NoSymLinks | QDir::NoDotAndDotDot); dirs.setSorting(QDir::Name | QDir::LocaleAware); QStringList stringdirlist = dirs.entryList(); for(int i=0; i<stringdirlist.size(); i++) { if(stringdirlist[i]!="VVData") { dsview.datasubfolders.push_back(stringdirlist[i]); dsview.datathumbnails.push_back(pixmap); } } for(int i=0; i<stringdirlist.size(); i++) { QString savedir = dn + "/" + "VVData/"; QString savesubdir = dn + "/" + "VVData/" + stringdirlist[i] + "/"; QDir dir(savesubdir); if (!dir.exists()) { dir.mkpath(savesubdir); } } for(int i=0; i<dsview.datasubfolders.size(); i++) { QString thumbname = dsview.datafolder + "/VVData/Thumbs/"; QDir dir; dir.mkdir(thumbname); thumbname += dsview.datasubfolders[i] + ".png"; printf("thumbname: %s\n", thumbname.latin1()); dsview.datathumbnails[i].load(thumbname, "PNG"); } int thumb_size=64; tablewidget->setIconSize(QSize(thumb_size, thumb_size)); QTableWidgetItem *newitem; for(int i=0; i<dsview.datasubfolders.size(); i++) { QIcon viewIcon(dsview.datathumbnails[i]); printf("ADDING ITEM\n"); tablewidget->setRowCount(tablewidget->rowCount()+1); tablewidget->setRowHeight(tablewidget->rowCount()-1, thumb_size); newitem = new QTableWidgetItem(viewIcon,"",0); tablewidget->setItem(tablewidget->rowCount()-1, 0, newitem); newitem = new QTableWidgetItem(dsview.datasubfolders[i],0); tablewidget->setItem(tablewidget->rowCount()-1, 1, newitem); newitem = new QTableWidgetItem("align.msr",0); tablewidget->setItem(tablewidget->rowCount()-1, 2, newitem); } dsview.numbimages = dsview.datasubfolders.size(); dsview.current_image = 0; }