void QTodoList::removeTodos(std::vector<QTodoItem*> todos) { for(std::vector<QTodoItem*>::iterator it = todos.begin(); it != todos.end(); ++it) { removeTodo((*it)); } }
void MainWindow::setupGui() { model = new TreeModel(this); model->addSection(i18n("Overdue"), -1 ); model->addSection(i18n("Today"), 0); model->addSection(i18n("Tomorrow"), 1 ); model->addSection(i18n("Next week"), 7); model->addSection(i18n("Next month"), 31); model->addSection(i18n("Future"), -2); filterModel = new FilterModel(this); filterModel->setSourceModel(model); view = new QTreeView(this); delegate = new TodoDelegate(view, this); view->setModel(filterModel); view->setHeaderHidden(true); view->setIconSize(QSize(0,0)); view->setAnimated(true); view->setStyleSheet("QTreeView::branch{border-image: none; image: none;border-left: 0px;}"); view->setVerticalScrollBarPolicy(Qt::ScrollBarAsNeeded); view->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff); view->setEditTriggers(QAbstractItemView::AllEditTriggers); //view->setTabKeyNavigation(true); view->setSelectionMode(QAbstractItemView::SingleSelection); view->setSelectionBehavior(QAbstractItemView::SelectRows); view->setVerticalScrollMode(QAbstractItemView::ScrollPerPixel); view->setRootIsDecorated(false); view->setSortingEnabled(false); view->setAllColumnsShowFocus(true); view->setExpandsOnDoubleClick(true); view->header()->setStretchLastSection(false); view->header()->setResizeMode(0,QHeaderView::Stretch); view->setItemDelegate(delegate); view->setContextMenuPolicy(Qt::CustomContextMenu); doEdit = new KLineEdit(this); doEdit->setClickMessage(i18n("new task...")); view->setFocusProxy(doEdit); // doAddBtn = new KPushButton(KIcon("list-add"),"",this); doAddBtn = new QToolButton(); doAddBtn->setIcon(KIcon("list-add")); doAddBtn->setIconSize(QSize(35,35)); timeBox = new KComboBox(this); timeBox->addItem(i18n("Today")); timeBox->addItem(i18n("Tomorrow")); timeBox->addItem(i18n("Next Monday")); timeBox->addItem(i18n("Next Tuesday")); timeBox->addItem(i18n("Next Wednesday")); timeBox->addItem(i18n("Next Thursday")); timeBox->addItem(i18n("Next Friday")); timeBox->addItem(i18n("Next Saturday")); timeBox->addItem(i18n("Next Sunday")); timeBox->addItem(i18n("Future")); timeBox->setFocusProxy(doEdit); addSelectCatBox = new KComboBox(this); for( int i=0; i<Settings::self()->categories()->count(); i++ ){ addSelectCatBox->addItem(Settings::self()->categories()->at(i)); } addSelectCatBox->setCurrentIndex(0); addSelectCatBox->setFocusProxy(doEdit); addLayout = new QGridLayout; addLayout->addWidget(doEdit, 0,0,1,2); addLayout->addWidget(timeBox, 1,0); addLayout->addWidget(addSelectCatBox, 1, 1); addLayout->addWidget(doAddBtn, 0,2,2,1); categoryBox = new KComboBox(); categoryBox->addItem(i18nc("category, show all items", "All")); for( int i=0; i<Settings::self()->categories()->count(); i++ ){ categoryBox->addItem(Settings::self()->categories()->at(i)); } doneBtn = new KPushButton(KIcon("edit-delete"),i18n("Remove")); editBtn = new KPushButton(KIcon("document-edit"),i18n("Edit")); bottomLayout = new QHBoxLayout; bottomLayout->addWidget(categoryBox); bottomLayout->addStretch(); bottomLayout->addWidget(editBtn); bottomLayout->addWidget(doneBtn); mainLayout = new QVBoxLayout; mainLayout->addLayout(addLayout); mainLayout->addWidget(view); mainLayout->addLayout(bottomLayout); mainWidget = new QWidget(this); mainWidget->setLayout(mainLayout); setCentralWidget(mainWidget); setWindowTitle("DoBeeDo"); doneAct = new KAction(KIcon("edit-delete"),i18n("Remove"), this); editAct = new KAction(KIcon("document-edit"),i18n("Edit"), this); configAct = new KAction(KIcon("configure"),i18n("Configure DoBeeDo"),this); actionCollection()->addAction("done", doneAct); actionCollection()->addAction("edit", editAct); actionCollection()->addAction("configDobeedo", configAct); KStandardAction::quit( kapp, SLOT(quit()), actionCollection() ); KXmlGuiWindow::setupGUI(Default, "dobeedoui.rc"); connect( view, SIGNAL(customContextMenuRequested(QPoint)), this, SLOT(showContextMenu(QPoint)) ); connect( view, SIGNAL(doubleClicked(QModelIndex)), this, SLOT(editTodo()) ); connect( doEdit, SIGNAL(returnPressed()), doAddBtn, SLOT(animateClick()) ); connect( doAddBtn, SIGNAL(clicked()), this, SLOT(newTodo()) ); connect( doneAct, SIGNAL(triggered()), this, SLOT(removeTodo()) ); connect( doneBtn, SIGNAL(clicked()), this, SLOT(removeTodo()) ); connect( editAct, SIGNAL(triggered()), this, SLOT(editTodo()) ); connect( editBtn, SIGNAL(clicked()), this, SLOT(editTodo()) ); connect( categoryBox, SIGNAL(currentIndexChanged(int)), this, SLOT(showCat(int)) ); connect( categoryBox, SIGNAL(currentIndexChanged(int)), view, SLOT(expandAll()) ); connect( configAct, SIGNAL(triggered()), this, SLOT(showConfigDialog()) ); }