Jump to content

KTimeTracker: Difference between revisions

From KDE Community Wiki
No edit summary
No edit summary
Line 26: Line 26:
* ktimetracker can be edited in qtcreator having all advantages like code completion
* ktimetracker can be edited in qtcreator having all advantages like code completion
* ktimetracker can be debugged step-by-step from qtcreator
* ktimetracker can be debugged step-by-step from qtcreator
* [https://bugs.kde.org/show_bug.cgi?id=182312 toolbar magic] can be done
<pre>
<pre>
MainWindow::MainWindow(QWidget *parent) :
MainWindow::MainWindow(QWidget *parent) :

Revision as of 23:03, 2 January 2010

This page is for people who want to participate in the ktimetracker community. So, for (future) ktimetracker developers.

IDE

Please use qtcreator. Why? Quite easy: The description how to set up kdevelop with KDE is over 200 lines long. For eclipse it is 97 and for QtCreator it is 13. So, 13 lines to read instead of 222.

Architecture

ktimetracker is linked to main. Main creates mainwindow, this calls timetrackerpart, this calls timetrackerwidget, this calls taskview, this contains a karmstorage.

karmstorage stores and loads the events and tasks. taskview displays them. timetrackerwidget displays one or more taskviews in tabs. timetrackerpart can be integrated into a mainwindow or a kontact plugin. mainwindow adds the menu.

ktimetracker benchmark

The KPart Mess

ktimetracker is an application displaying a kpart. On the one hand, this makes it easy to be integrated as kontact plugin. But on the other hand, I have the feeling, ktimetracker can no long be debugged so easily.

The help menu

The help menu is stupidly overloaded and I cannot do anything about it because it is somewhere hidden in the library code. Would love to simplify it. "Help" does not need subitems - you want help.

simplify ktimetracker

goals:

  • ktimetracker can be designed graphically in qtcreator
  • ktimetracker can be edited in qtcreator having all advantages like code completion
  • ktimetracker can be debugged step-by-step from qtcreator
  • toolbar magic can be done
MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    m_ui(new Ui::MainWindow)
{
    m_ui->setupUi(this);
    delete m_ui->treeWidget;
    m_ui->treeWidget=new TaskView(m_ui->centralwidget);
    m_ui->gridLayout->addWidget(m_ui->treeWidget, 0, 0, 1, 1);
    m_ui->treeWidget->hide();
    m_ui->treeWidget->show();
}