Exemplo n.º 1
0
void MainWindow::on_addEventButton_clicked()
{
 //   QTreeWidgetItem* parentWidget = selectedTreeWidgetItem();
    Task* parentTask = selectedTask();

    if (parentTask == NULL) return;

    Event* newEvent = addEvent(parentTask, "");

    ui->tableEvents->blockSignals(true);

    ui->tableEvents->insertRow(0);

    QTableWidgetItem *widgetUid = new QTableWidgetItem();
    widgetUid->setText(newEvent->mUID);
    widgetUid->setData(Qt::UserRole, qVariantFromValue((void*) newEvent));
    ui->tableEvents->setItem(0, 0, widgetUid);

    QTableWidgetItem *widgetName = new QTableWidgetItem();
    widgetName->setText(newEvent->mName);
    ui->tableEvents->setItem(0, 1, widgetName);

    DateItem *widgetStart = new DateItem();
    widgetStart->setText(newEvent->mStartTime.toString());
    widgetStart->mTime = newEvent->mStartTime;
    ui->tableEvents->setItem(0, 2, widgetStart);

    DateItem *widgetEnd = new DateItem();
    widgetEnd->setText(newEvent->mEndTime.toString());
    widgetEnd->mTime = newEvent->mEndTime;
    ui->tableEvents->setItem(0, 3, widgetEnd);

    ui->tableEvents->blockSignals(false);
}
Exemplo n.º 2
0
void MainWindow::on_treeWidget_itemSelectionChanged()
{
    ui->tableEvents->blockSignals(true);

    //Remove everything
    ui->tableEvents->setSortingEnabled(false);
    ui->tableEvents->clearContents();
    while (ui->tableEvents->rowCount() > 0)
        ui->tableEvents->removeRow(0);

    int row = 0;
    foreach(Event* i, selectedTask()->mEvents)
    {
        ui->tableEvents->insertRow(row);

        QTableWidgetItem *uid = new QTableWidgetItem();
        uid->setText(i->mUID);
        ui->tableEvents->setItem(row, 0, uid);

        QTableWidgetItem *name = new QTableWidgetItem();
        name->setText(i->mName);
        ui->tableEvents->setItem(row, 1, name);

        DateItem *start = new DateItem();
        start->setText(i->mStartTime.toString());
        start->mTime = i->mStartTime;
        ui->tableEvents->setItem(row, 2, start);

        DateItem *end = new DateItem();
        end->setText(i->mEndTime.toString());
        end->mTime = i->mEndTime;
        ui->tableEvents->setItem(row, 3, end);

        ++row;
    }
Exemplo n.º 3
0
void TasksView::actionDeleteTask()
{
    Task task = selectedTask();
    if ( MessageBox::warning( this, tr( "Delete Task?" ),
                               tr( "Do you really want to delete this task?\n"
                                   "Warning: All events for this task will be deleted as well!\n"
                                   "This operation cannot be undone." ),
                               tr( "Delete" ), tr( "Cancel" ) )
         == QMessageBox::Yes ) {
        CommandDeleteTask* cmd = new CommandDeleteTask( task, this );
        emit emitCommand( cmd );
    }
}
Exemplo n.º 4
0
void TasksView::actionEditTask()
{
    Task task = selectedTask();
    Q_ASSERT( task.isValid() );

    TaskEditor editor( this );
    editor.setTask( task );
    if( editor.exec() ) {
        const Task newTask = editor.getTask();
        newTask.dump();
        CommandModifyTask* cmd = new CommandModifyTask( newTask, this );
        emit emitCommand( cmd );
    }
    configureUi(); // FIXME needed?
}
Exemplo n.º 5
0
void MainWindow::on_actionNewTask_triggered()
{
    QTreeWidgetItem* parentWidget = selectedTreeWidgetItem();
    Task* parentTask = selectedTask();

    bool ok;
    QString name = QInputDialog::getText(this,
                                         tr("New sub task"),
                                         tr("Enter the name of the new sub task:"),
                                         QLineEdit::Normal,
                                         QString(),
                                         &ok);
    if (!ok || name.isEmpty()) return;

    addTask(name, "", parentWidget, parentTask);
}
Exemplo n.º 6
0
void SelectTaskDialog::slotAccepted()
{
    QSettings settings;
    // FIXME refactor, code duplication with taskview
    // save user settings
    if ( Application::instance().state() == Connected ||
         Application::instance().state() == Disconnecting ) {
        GUIState state;
        // selected task
        state.setSelectedTask( selectedTask() );
        // expanded tasks
        TaskList tasks = MODEL.charmDataModel()->getAllTasks();
        TaskIdList expandedTasks;
        Q_FOREACH( Task task, tasks ) {
            QModelIndex index( m_proxy.indexForTaskId( task.id() ) );
            if ( m_ui->treeView->isExpanded( index ) ) {
                expandedTasks << task.id();
            }
        }
Exemplo n.º 7
0
 void TasksView::saveGuiState()
 {
     Q_ASSERT( m_treeView );
     ViewFilter* filter = Application::instance().model().taskModel();
     Q_ASSERT( filter );
     QSettings settings;
     // save user settings
     if ( Application::instance().state() == Connected ||
          Application::instance().state() == Disconnecting ) {
         GUIState state;
         // selected task
         state.setSelectedTask( selectedTask().id() );
         // expanded tasks
         TaskList tasks = MODEL.charmDataModel()->getAllTasks();
         TaskIdList expandedTasks;
         Q_FOREACH( const Task& task, tasks ) {
             QModelIndex index( filter->indexForTaskId( task.id() ) );
             if ( m_treeView->isExpanded( index ) ) {
                 expandedTasks << task.id();
             }
         }
Exemplo n.º 8
0
void TasksView::actionNewSubTask()
{
    Task task = selectedTask();
    Q_ASSERT( task.isValid() );
    addTaskHelper( task );
}