• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • kdepim API Reference
  • KDE Home
  • Contact Us
 

ktimetracker

  • sources
  • kde-4.12
  • kdepim
  • ktimetracker
ktimetrackerpart.cpp
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2005 by Thorsten Staerk <kde@staerk.de>
3  * 2007 the ktimetracker developers
4  *
5  * This program is free software; you can redistribute it and/or modify
6  * it under the terms of the GNU General Public License as published by
7  * the Free Software Foundation; either version 2 of the License, or
8  * (at your option) any later version.
9  *
10  * This program is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  * GNU General Public License for more details.
14  *
15  * You should have received a copy of the GNU General Public License along
16  * with this program; if not, write to the
17  * Free Software Foundation, Inc.
18  * 51 Franklin Street, Fifth Floor
19  * Boston, MA 02110-1301 USA.
20  *
21  */
22 
23 // TODO: what does totalTimesChanged()?
24 
25 #include "ktimetrackerpart.h"
26 
27 #include <QMenu>
28 
29 #include <KAboutData>
30 #include <KAction>
31 #include <KComponentData>
32 #include <KGlobal>
33 #include <KLocale>
34 #include <KStandardAction>
35 #include <KStandardDirs>
36 #include <KXMLGUIFactory>
37 #include <KActionCollection>
38 #include <KShortcutsDialog>
39 
40 #include <kdemacros.h>
41 #include <kpluginfactory.h>
42 #include "ktimetrackerutility.h"
43 #include "task.h"
44 #include "preferences.h"
45 #include "tray.h"
46 #include "kdepim-version.h"
47 #include "ktimetracker.h"
48 #include "timetrackerwidget.h"
49 
50 K_PLUGIN_FACTORY(ktimetrackerPartFactory, registerPlugin<ktimetrackerpart>();)
51 K_EXPORT_PLUGIN( ktimetrackerPartFactory("ktimetracker","ktimetracker") )
52 
53 ktimetrackerpart::ktimetrackerpart( QWidget *parentWidget, QObject *parent, const QVariantList& )
54  : KParts::ReadWritePart(parent)
55 {
56  kDebug(5970) << "Entering function";
57  KGlobal::locale()->insertCatalog("ktimetracker");
58  KGlobal::locale()->insertCatalog("libkdepim");
59  // we need an instance
60  mMainWidget = new TimetrackerWidget( parentWidget );
61  setWidget( mMainWidget );
62  setXMLFile( "ktimetrackerui.rc" );
63  makeMenus();
64 }
65 
66 ktimetrackerpart::~ktimetrackerpart()
67 {
68 }
69 
70 KAboutData *ktimetrackerpart::createAboutData()
71 {
72  const QByteArray& appname=QByteArray("ktimetracker");
73  const QByteArray& catalogname=QByteArray("ktimetracker");
74  const KLocalizedString localizedname=ki18n("ktimetracker");
75  const QByteArray version=QByteArray(KDEPIM_VERSION);
76  KAboutData* aboutData=new KAboutData( appname, catalogname, localizedname, version);
77  return aboutData;
78 }
79 
80 void ktimetrackerpart::makeMenus()
81 {
82  mMainWidget->setupActions( actionCollection() );
83  KAction *actionKeyBindings;
84  actionKeyBindings = KStandardAction::keyBindings( this, SLOT(keyBindings()),
85  actionCollection() );
86  // Tool tips must be set after the createGUI.
87  actionKeyBindings->setToolTip( i18n("Configure key bindings") );
88  actionKeyBindings->setWhatsThis( i18n("This will let you configure key"
89  "bindings which are specific to ktimetracker") );
90 }
91 
92 void ktimetrackerpart::keyBindings()
93 {
94  KShortcutsDialog::configure( actionCollection(),
95  KShortcutsEditor::LetterShortcutsAllowed );
96 }
97 
98 void ktimetrackerpart::setStatusBar(const QString & qs)
99 {
100  kDebug(5970) << "Entering function";
101  emit setStatusBarText(qs);
102 }
103 
104 bool ktimetrackerpart::openFile(QString icsfile)
105 {
106  mMainWidget->openFile(icsfile);
107  emit setWindowCaption(icsfile);
108 
109  // connections
110  connect( mMainWidget, SIGNAL(statusBarTextChangeRequested(QString)),
111  this, SLOT(setStatusBar(QString)) );
112  connect( mMainWidget, SIGNAL(setCaption(QString)),
113  this, SIGNAL(setWindowCaption(QString)) );
114  return true;
115 }
116 
117 bool ktimetrackerpart::openFile()
118 {
119  return openFile(KStandardDirs::locateLocal( "data", QString::fromLatin1( "ktimetracker/ktimetracker.ics" ) ));
120 }
121 
122 bool ktimetrackerpart::saveFile()
123 {
124  mMainWidget->saveFile();
125  return true;
126 }
127 
128 #include "ktimetrackerpart.moc"
timetrackerwidget.h
TimetrackerWidget
Definition: timetrackerwidget.h:36
ktimetrackerpart::keyBindings
void keyBindings()
Definition: ktimetrackerpart.cpp:92
ktimetrackerpart::openFile
virtual bool openFile()
openFile() opens the icalendar file that contains the tasks and events.
Definition: ktimetrackerpart.cpp:117
QWidget
ktimetrackerpart::saveFile
virtual bool saveFile()
Definition: ktimetrackerpart.cpp:122
ktimetrackerpart.h
ktimetrackerpart::~ktimetrackerpart
virtual ~ktimetrackerpart()
Definition: ktimetrackerpart.cpp:66
QObject
ktimetrackerpart::setStatusBar
void setStatusBar(const QString &qs)
Definition: ktimetrackerpart.cpp:98
TimetrackerWidget::setupActions
void setupActions(KActionCollection *actionCollection)
initializes the KActionCollection object of a main window for example.
Definition: timetrackerwidget.cpp:200
ktimetracker.h
tray.h
TimetrackerWidget::saveFile
void saveFile()
saves the current taskview.
Definition: timetrackerwidget.cpp:385
preferences.h
task.h
ktimetrackerpart::createAboutData
static KAboutData * createAboutData()
Definition: ktimetrackerpart.cpp:70
ktimetrackerpart
This is a "Part".
Definition: ktimetrackerpart.h:41
ktimetrackerutility.h
icsfile
QString icsfile(const KCmdLineArgs *args)
Definition: main.cpp:51
TimetrackerWidget::openFile
void openFile(const QString &fileName=QString())
opens an existing ics file.
Definition: timetrackerwidget.cpp:343
This file is part of the KDE documentation.
Documentation copyright © 1996-2014 The KDE developers.
Generated on Tue Oct 14 2014 22:55:10 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

ktimetracker

Skip menu "ktimetracker"
  • Main Page
  • Namespace List
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members
  • Modules

kdepim API Reference

Skip menu "kdepim API Reference"
  • akonadi_next
  • akregator
  • blogilo
  • calendarsupport
  • console
  •   kabcclient
  •   konsolekalendar
  • kaddressbook
  • kalarm
  •   lib
  • kdgantt2
  • kjots
  • kleopatra
  • kmail
  • knode
  • knotes
  • kontact
  • korgac
  • korganizer
  • ktimetracker
  • libkdepim
  • libkleo
  • libkpgp
  • mailcommon
  • messagelist
  • messageviewer

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal