From cb094b007ec5b7c197a7df502a778a2ce919128f Mon Sep 17 00:00:00 2001 From: am Date: Fri, 6 Nov 2009 16:52:04 +0000 Subject: -made burnDir configurable via ConfigurationDialog -revamped archivedialog to make it more intuitive -added simple listModel without database access (should be renamed) -actorlist in archivedialog now is a QTreeView -changed mFileList in achiveFileWidget git-svn-id: file:///var/svn/repos2/shemov/trunk@421 f440f766-f032-0410-8965-dc7d17de2ca0 --- actorwidget.cpp | 65 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 actorwidget.cpp (limited to 'actorwidget.cpp') diff --git a/actorwidget.cpp b/actorwidget.cpp new file mode 100644 index 0000000..a62331e --- /dev/null +++ b/actorwidget.cpp @@ -0,0 +1,65 @@ +/* + This program is free software; you can redistribute it and/or + modify it under the terms of the GNU General Public License + as published by the Free Software Foundation; either version + 2 of the License, or (at your option) any later version. +*/ + +#include +#include +#include +#include +#include + +#include + +#include "actorwidget.h" +#include "actormodel.h" + +ActorWidget::ActorWidget(QWidget *parent) : QWidget(parent) { + QVBoxLayout *mainLayout = new QVBoxLayout; + + QLabel *l1 = new QLabel(tr("Actors")); + + mModel = new ActorModel; + mView = new QTreeView; + mView->setModel(mModel); + mView->setRootIsDecorated(false); + mView->setSelectionMode(QAbstractItemView::ExtendedSelection); + mView->setHeaderHidden(true); + + QHBoxLayout *buttonLayout = new QHBoxLayout; + mRemoveActor = new QPushButton(tr("&Remove selected")); + connect(mRemoveActor, SIGNAL(clicked()), this, SLOT(removeActor())); + mClearAll = new QPushButton(tr("Remove &all")); + connect(mClearAll, SIGNAL(clicked()), this, SLOT(clear())); + buttonLayout->addStretch(); + buttonLayout->addWidget(mClearAll); + buttonLayout->addWidget(mRemoveActor); + + mainLayout->addWidget(l1); + mainLayout->addWidget(mView); + mainLayout->addLayout(buttonLayout); + + setLayout(mainLayout); +} + +const QStringList ActorWidget::actors(){ + return mModel->items(); +} + +void ActorWidget::addActor(const QString &actor) { + mModel->addItem(actor); +} + +void ActorWidget::clear() { + mModel->clear(); +} + +void ActorWidget::removeActor() { + QModelIndexList idxs = mView->selectionModel()->selectedRows(); + foreach(QModelIndex idx, idxs){ + mModel->removeItem(idx.data()); + } +} + -- cgit v1.2.3-70-g09d2