Example #1
0
void QTodoList::removeTodos(std::vector<QTodoItem*> todos)
{
	for(std::vector<QTodoItem*>::iterator it = todos.begin(); it != todos.end(); ++it)
	{
		removeTodo((*it));
	}
}
Example #2
0
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()) );
}