/* * ====================================================================== * MEMBER FUNCTIONS: QmvList * ====================================================================== */ QmvList::QmvList(QmvEditor * editor) : QListView(editor), editor(editor) { viewport()->setBackgroundMode( PaletteBackground ); setResizePolicy( QScrollView::Manual ); if (editor->shuttleClass()) { qDebug("qmvlist:classname=%s", editor->shuttleClass()->relationName().latin1()); addColumn( tr( editor->shuttleClass()->relationTitle() ) ); QString ctlabel; ctlabel.sprintf("%d rows",editor->shuttleClass()->count()); addColumn( tr( ctlabel) ); } else { addColumn( "No Class Selected" ); addColumn( "0 Rows" ); } tuplemenu = new QPopupMenu(this, "item menu"); tuplemenu->insertItem("Item Menu"); tuplemenu->insertSeparator(); tuplemenu->insertItem("&New", this, SLOT(itemInsert())); tuplemenu->insertItem("&Copy", this, SLOT(itemCopy())); tuplemenu->insertItem("&Delete", this, SLOT(itemRemove())); relationmenu = new QPopupMenu(this, "relation menu"); relationmenu->insertItem("Relation Menu"); relationmenu->insertSeparator(); relationmenu->insertItem("&Print", this, SLOT(printSet())); relationmenu->insertItem("&Export", this, SLOT(exportSet())); QToolTip::add( header(), "Click for codes Utilites-Menu"); connect( header(), SIGNAL( sizeChange( int, int, int ) ), this, SLOT( updateEditorSize() ) ); disconnect( header(), SIGNAL( clicked( int ) ), this, SLOT( changeSortColumn( int ) ) ); connect( this, SIGNAL( pressed( QListViewItem *, const QPoint &, int ) ), this, SLOT( itemPressed( QListViewItem *, const QPoint &, int ) ) ); connect( this, SIGNAL( rightButtonPressed( QListViewItem *, const QPoint &, int ) ), this, SLOT( itemMenu( QListViewItem *, const QPoint &, int ) ) ); connect( header(), SIGNAL( clicked( int ) ), this, SLOT( currentSetMenu() ) ); connect( this, SIGNAL( doubleClicked( QListViewItem * ) ), this, SLOT( toggleOpen( QListViewItem * ) ) ); setSorting( -1 ); setHScrollBarMode( AlwaysOff ); }
StitchLibraryUi::StitchLibraryUi(QWidget* parent) : QDialog(parent), ui(new Ui::StitchLibraryDialog) { ui->setupUi(this); ui->stitchSource->addItems(StitchLibrary::inst()->stitchSetList()); StitchSet* master = StitchLibrary::inst()->masterStitchSet(); mProxyModel = new QSortFilterProxyModel(this); mProxyModel->setSourceModel(master); mProxyModel->setSortCaseSensitivity(Qt::CaseInsensitive); ui->listView->setModel(mProxyModel); ui->listView->setSortingEnabled(true); StitchLibraryDelegate *delegate = new StitchLibraryDelegate(ui->listView); ui->listView->setItemDelegate(delegate); setDialogSize(); ui->listView->horizontalHeader()->setClickable(true); ui->listView->horizontalHeader()->setSortIndicatorShown(true); //TODO: Wrong Side. ui->listView->hideColumn(4); ui->propertiesBox->setVisible(false); connect(ui->moreBttn, SIGNAL(clicked()), SLOT(hideProperties())); connect(ui->printSet, SIGNAL(clicked()), SLOT(printStitchSet())); connect(ui->addStitch, SIGNAL(clicked()), SLOT(addStitch())); connect(ui->removeStitch, SIGNAL(clicked()), SLOT(removeStitch())); connect(ui->addSelected, SIGNAL(clicked()), SLOT(addSelected())); connect(ui->createSet, SIGNAL(clicked()), SLOT(createSet())); connect(ui->removeSet, SIGNAL(clicked()), SLOT(removeSet())); connect(ui->importSet, SIGNAL(clicked()), SLOT(importSet())); connect(ui->exportSet, SIGNAL(clicked()), SLOT(exportSet())); connect(ui->setName, SIGNAL(editingFinished()), SLOT(updateStitchSetProperties())); connect(ui->author, SIGNAL(editingFinished()), SLOT(updateStitchSetProperties())); connect(ui->email, SIGNAL(editingFinished()), SLOT(updateStitchSetProperties())); connect(ui->org, SIGNAL(editingFinished()), SLOT(updateStitchSetProperties())); connect(ui->url, SIGNAL(editingFinished()), SLOT(updateStitchSetProperties())); setupPropertiesBox(); connect(ui->stitchSource, SIGNAL(currentIndexChanged(QString)), SLOT(changeStitchSet(QString))); connect(ui->resetLibrary, SIGNAL(clicked()), SLOT(resetLibrary())); connect(ui->icons, SIGNAL(clicked()), SLOT(iconDialog())); connect(ui->listView->horizontalHeader(), SIGNAL(sectionClicked(int)), SLOT(updateRowSizes())); connect(ui->stitchFilter, SIGNAL(textChanged(QString)), SLOT(filterStitchList(QString))); connect(ui->clearBttn, SIGNAL(clicked()), SLOT(clearStitchFilter())); setButtonStates(master); }