26 #include "korganizer_part.h" 28 #include "calendarview.h" 29 #include "actionmanager.h" 30 #include "koglobals.h" 32 #include "resourceview.h" 33 #include "aboutdata.h" 35 #include "korganizerifaceimpl.h" 36 #include "stdcalendar.h" 37 #include "alarmclient.h" 39 #include <libkcal/calendarlocal.h> 41 #include <libkcal/resourcecalendar.h> 43 #include <tdepopupmenu.h> 44 #include <kinstance.h> 45 #include <tdelocale.h> 46 #include <kiconloader.h> 47 #include <tdeaction.h> 49 #include <tdestandarddirs.h> 50 #include <tdeconfig.h> 51 #include <tdeprocess.h> 52 #include <tdetempfile.h> 53 #include <kstatusbar.h> 54 #include <tdeparts/genericfactory.h> 55 #include <tdeparts/partmanager.h> 56 #include <tdeparts/statusbarextension.h> 58 #include <sidebarextension.h> 59 #include <infoextension.h> 61 #include <tqapplication.h> 66 typedef KParts::GenericFactory< KOrganizerPart > KOrganizerFactory;
67 K_EXPORT_COMPONENT_FACTORY( libkorganizerpart, KOrganizerFactory )
69 KOrganizerPart::KOrganizerPart( TQWidget *parentWidget,
const char *widgetName,
70 TQObject *parent,
const char *name,
71 const TQStringList & ) :
72 KParts::ReadOnlyPart(parent, name), mTopLevelWidget( parentWidget->topLevelWidget() )
74 TDEGlobal::locale()->insertCatalogue(
"libkcal" );
75 TDEGlobal::locale()->insertCatalogue(
"libtdepim" );
76 TDEGlobal::locale()->insertCatalogue(
"kdgantt" );
78 KOCore::self()->addXMLGUIClient( mTopLevelWidget,
this );
80 TQString pname( name );
83 TQWidget *canvas =
new TQWidget( parentWidget, widgetName );
84 canvas->setFocusPolicy( TQWidget::ClickFocus );
88 mActionManager =
new ActionManager(
this, mView,
this,
this,
true );
89 (void)
new KOrganizerIfaceImpl( mActionManager,
this,
"IfaceImpl" );
91 if ( pname ==
"kontact" ) {
93 setHasDocument(
false );
94 KOrg::StdCalendar::self()->load();
95 mView->updateCategories();
98 setHasDocument(
true );
101 mStatusBarExtension =
new KParts::StatusBarExtension(
this );
103 setInstance( KOrganizerFactory::instance() );
105 TQVBoxLayout *topLayout =
new TQVBoxLayout( canvas );
106 topLayout->addWidget( mView );
108 new KParts::SideBarExtension( mView->leftFrame(),
this,
"SBE" );
110 KParts::InfoExtension *ie =
new KParts::InfoExtension(
this,
112 connect( mView, TQ_SIGNAL( incidenceSelected(
Incidence *,
const TQDate & ) ),
113 TQ_SLOT( slotChangeInfo(
Incidence *,
const TQDate & ) ) );
114 connect(
this, TQ_SIGNAL( textChanged(
const TQString & ) ),
115 ie, TQ_SIGNAL( textChanged(
const TQString & ) ) );
117 mActionManager->
init();
120 setXMLFile(
"korganizer_part.rc" );
121 mActionManager->loadParts();
125 KOrganizerPart::~KOrganizerPart()
130 delete mActionManager;
135 KOCore::self()->removeXMLGUIClient( mTopLevelWidget );
138 TDEAboutData *KOrganizerPart::createAboutData()
140 return new KOrg::AboutData;
143 void KOrganizerPart::startCompleted( TDEProcess *process )
148 void KOrganizerPart::slotChangeInfo(
Incidence *incidence,
const TQDate & )
151 emit textChanged( incidence->
summary() +
" / " +
154 emit textChanged( TQString() );
158 TQWidget *KOrganizerPart::topLevelWidget()
160 return mView->topLevelWidget();
165 return mActionManager;
168 void KOrganizerPart::showStatusMessage(
const TQString &message )
170 KStatusBar *statusBar = mStatusBarExtension->statusBar();
171 if ( statusBar ) statusBar->message( message );
179 bool KOrganizerPart::openURL(
const KURL &url,
bool merge )
181 return mActionManager->
openURL( url, merge );
184 bool KOrganizerPart::saveURL()
186 return mActionManager->
saveURL();
189 bool KOrganizerPart::saveAsURL(
const KURL &kurl )
191 return mActionManager->
saveAsURL( kurl );
194 KURL KOrganizerPart::getCurrentURL()
const 196 return mActionManager->
url();
199 bool KOrganizerPart::openFile()
201 mView->openCalendar( m_file );
207 void KOrganizerPart::setTitle()
237 bool KOrganizerPart::isCurrentlyActivePart()
240 return ( manager()->activePart() ==
this );
246 #include "korganizer_part.moc"
void saveCalendar()
Save calendar to disk.
void setTitle()
Sets title of window according to filename and modification state.
virtual TDE_DEPRECATED TQString dtStartTimeStr() const
This is the main calendar widget.
KURL url() const
Get current URL.
void createCalendarLocal()
Create Calendar object based on local file and set it on the view.
bool saveAsURL(const KURL &kurl)
Save calendar file to URL.
The ActionManager creates all the actions in KOrganizer.
void readSettings()
Using the TDEConfig associated with the tdeApp variable, read in the settings from the config file...
bool saveURL()
Save calendar file to URL of current calendar.
void writeSettings()
Write current state to config file.
void createCalendarResources()
Create Calendar object based on the resource framework and set it on the view.
interface for main calendar view widget
bool openURL(const KURL &url, bool merge=false)
Open calendar file from URL.
void init()
Peform initialization that requires this* to be full constructed.