summaryrefslogtreecommitdiffstats
path: root/kontact/src
diff options
context:
space:
mode:
authortpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2010-09-01 00:37:02 +0000
committertpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2010-09-01 00:37:02 +0000
commitcc29364f06178f8f6b457384f2ec37a042bd9d43 (patch)
tree7c77a3184c698bbf9d98cef09fb1ba8124daceba /kontact/src
parent4f6c584bacc8c3c694228f36ada3de77a76614a6 (diff)
downloadtdepim-cc29364f06178f8f6b457384f2ec37a042bd9d43.tar.gz
tdepim-cc29364f06178f8f6b457384f2ec37a042bd9d43.zip
* Massive set of changes to bring in all fixes and enhancements from the Enterprise PIM branch
* Ensured that the Trinity changes were applied on top of those enhancements, and any redundancy removed * Added journal read support to the CalDAV resource * Fixed CalDAV resource to use events URL for tasks and journals when separate URL checkbox unchecked git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdepim@1170461 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
Diffstat (limited to 'kontact/src')
-rw-r--r--kontact/src/Kontact.desktop4
-rw-r--r--kontact/src/about/kontact.css7
-rw-r--r--kontact/src/iconsidepane.cpp15
-rw-r--r--kontact/src/iconsidepane.h5
-rw-r--r--kontact/src/kontact.setdlg75
-rw-r--r--kontact/src/kontactui.rc5
-rw-r--r--kontact/src/main.cpp31
-rw-r--r--kontact/src/mainwindow.cpp193
-rw-r--r--kontact/src/mainwindow.h16
-rw-r--r--kontact/src/sidepanebase.cpp10
-rw-r--r--kontact/src/sidepanebase.h16
11 files changed, 208 insertions, 169 deletions
diff --git a/kontact/src/Kontact.desktop b/kontact/src/Kontact.desktop
index 6cd9d0d3a..a4127aac0 100644
--- a/kontact/src/Kontact.desktop
+++ b/kontact/src/Kontact.desktop
@@ -36,7 +36,6 @@ GenericName[hu]=Információkezelő
GenericName[is]=Persónulegur upplýsingastjórnandi
GenericName[it]=Gestione informazioni personali
GenericName[ja]=個人情報マネージャ
-GenericName[ka]=პირადი ინფორმაციის მმართველი
GenericName[kk]=Дербес Ақпарат Менеджері
GenericName[km]=កម្មវិធី​គ្រប់គ្រង​ព័ត៌មាន​ផ្ទាល់​ខ្លួន
GenericName[lt]=Asmeninės informacijos tvarkyklė
@@ -61,8 +60,7 @@ GenericName[ta]=அந்தரங்க தகவல் மேலாளர்
GenericName[tg]=Мудири маълумоти шахсӣ
GenericName[tr]=Kişisel Bilgi Yöneticisi
GenericName[uk]=Менеджер особистої інформації
-GenericName[uz]=Shaxsiy maʼlumot boshqaruvchisi
-GenericName[uz@cyrillic]=Шахсий маълумот бошқарувчиси
+GenericName[uz]=Шахсий маълумот бошқарувчиси
GenericName[zh_CN]=个人信息管理器
GenericName[zh_TW]=個人資訊管理者
Terminal=false
diff --git a/kontact/src/about/kontact.css b/kontact/src/about/kontact.css
index 18aa0ddcd..2366a9741 100644
--- a/kontact/src/about/kontact.css
+++ b/kontact/src/about/kontact.css
@@ -15,13 +15,6 @@
right: 125px;
}
-#boxCenter {
- background-image: url(box-center-kontact.png);
- background-repeat: no-repeat;
- background-color: #dfe7f3;
- background-position: bottom right;
-}
-
#subtext {
font-style: italic;
}
diff --git a/kontact/src/iconsidepane.cpp b/kontact/src/iconsidepane.cpp
index d56513aeb..4303175f6 100644
--- a/kontact/src/iconsidepane.cpp
+++ b/kontact/src/iconsidepane.cpp
@@ -113,8 +113,8 @@ void EntryItem::reloadPixmap()
if ( size != 0 )
mPixmap = KGlobal::iconLoader()->loadIcon( mPlugin->icon(),
KIcon::Desktop, size,
- mPlugin->disabled() ?
- KIcon::DisabledState
+ mPlugin->disabled() ?
+ KIcon::DisabledState
: KIcon::DefaultState);
else
mPixmap = TQPixmap();
@@ -250,7 +250,7 @@ void EntryItem::setPaintActive( bool paintActive )
mPaintActive = paintActive;
}
-Navigator::Navigator( SidePaneBase *parent, const char *name )
+Navigator::Navigator( IconSidePane *parent, const char *name )
: KListBox( parent, name ), mSidePane( parent ),
mShowIcons( true ), mShowText( true )
{
@@ -328,7 +328,6 @@ void Navigator::updatePlugins( TQValueList<Kontact::Plugin*> plugins_ )
mActions.clear();
mActions.setAutoDelete( false );
- int counter = 0;
int minWidth = 0;
qBubbleSort( plugins );
TQValueList<Kontact::PluginProxy>::ConstIterator end = plugins.end();
@@ -343,14 +342,6 @@ void Navigator::updatePlugins( TQValueList<Kontact::Plugin*> plugins_ )
if ( item->width( this ) > minWidth )
minWidth = item->width( this );
-
- TQString name = TQString( "CTRL+%1" ).arg( counter + 1 );
- KAction *action = new KAction( plugin->title(), plugin->icon(), KShortcut( name ),
- mMapper, TQT_SLOT( map() ),
- mSidePane->actionCollection(), name.latin1() );
- mActions.append( action );
- mMapper->setMapping( action, counter );
- counter++;
}
parentWidget()->setFixedWidth( minWidth );
diff --git a/kontact/src/iconsidepane.h b/kontact/src/iconsidepane.h
index 03f838c97..674980c01 100644
--- a/kontact/src/iconsidepane.h
+++ b/kontact/src/iconsidepane.h
@@ -37,6 +37,7 @@ namespace Kontact
{
class Core;
+class IconSidePane;
class Plugin;
class Navigator;
@@ -118,7 +119,7 @@ class Navigator : public KListBox
{
Q_OBJECT
public:
- Navigator( SidePaneBase *parent = 0, const char *name = 0 );
+ Navigator( IconSidePane *parent = 0, const char *name = 0 );
virtual void setSelected( TQListBoxItem *, bool );
@@ -156,7 +157,7 @@ class Navigator : public KListBox
void slotStopHighlight();
private:
- SidePaneBase *mSidePane;
+ IconSidePane *mSidePane;
IconViewMode mViewMode;
TQListBoxItem* mMouseOn;
diff --git a/kontact/src/kontact.setdlg b/kontact/src/kontact.setdlg
index a90778a21..872457ade 100644
--- a/kontact/src/kontact.setdlg
+++ b/kontact/src/kontact.setdlg
@@ -5,21 +5,15 @@ Name[ca]=Vista de resum
Name[da]=Opsummeringsvisning
Name[de]=Übersicht
Name[el]=Προβολή σύνοψης
-Name[es]=Vista de resumen
Name[et]=Kokkuvõttevaade
-Name[fr]=Vue résumée
-Name[is]=Yfirlitssýn
Name[it]=Vista sommario
Name[ja]=要約ビュー
-Name[km]=ទិដ្ឋភាព​សង្ខេប
Name[nds]=Översicht
Name[nl]=Overzichtsweergave
Name[pl]=Podsumowanie
-Name[ru]=Просмотр сводок
Name[sr]=Приказ сажетка
Name[sr@Latn]=Prikaz sažetka
Name[sv]=Översiktsvy
-Name[tr]=Özet Görünümü
Name[zh_CN]=摘要视图
Name[zh_TW]=摘要檢視
Comment=Configuration of Kontact's <b>Summary View</b>. Some plugins provide <i>Summary View</i> items, choose the ones you would like to list.
@@ -28,17 +22,12 @@ Comment[ca]=Configuració de la <b>vista de resum</b> del Kontact. Alguns endoll
Comment[da]=Konfiguration af Kontacts <b>Opsummeringsvisning</b>. Nogle plugins giver <i>Opsummeringsvisning</i>-elementer, vælg dem du ønsker på listen.
Comment[de]=Einrichtung der <b>Zusammenfassungsansicht</b> von Kontact. Einige Kontact-Module stellen Elemente für die <i>Zusammenfassungsansicht</i> zur Verfügung. Wählen Sie hier, welche Elemente angezeigt werden sollen.
Comment[el]=Ρύθμιση της <b>Προβολής σύνοψης</b> του Kontact. Κάποια πρόσθετα παρέχουν αντικείμενα <i>Προβολή σύνοψης</i>· επιλέξτε αυτά που θέλετε να εμφανίζονται.
-Comment[es]=Configuración de Kontact <b>Vista de resumen</b>. Algunos complementos proveen elementos para la <i>Vista de resumen</i>, elija los que quiera listar.
Comment[et]=Kontacti <b>kokkuvõttevaate</b> seadistamine. Mõned pluginad pakuvad <i>kokkuvõttevaate</i> elemente. Vali nimekirjas need, mida soovid näha.
-Comment[fr]=Configuration de Kontact <b> Vue résumée</b>. Certains modules fournissent des éléments de <i>Vue Résumée</i>, choisissez ceux que vous voulez voir listés.
-Comment[is]=Stillingar á <b>Yfirlitssýn</b>í Kontact. Sum íforrit koma með hluti í <i>Yfirlitssýn</i>, veldu þá sem þú vilt hafa á síðunni.
Comment[it]=Configurazione della <b>vista sommario</b> di Kontact. Alcuni plugin forniscono elementi di <i>vista sommario</i>, scegli quelli che desideri vedere nell'elenco.
Comment[ja]=Kontact の要約ビューの設定。要約ビューの項目を提供するプラグインがいくつかあります。要約ビューに表示させる項目を選択してください。
-Comment[km]=កា​រកំណត់​រចនាសម្ព័ន្ធ​របស់ Kontact <b>ទិដ្ឋភាព​សង្ខេប</b> ។ កម្មវិធី​ជំនួយ​មួយ​ចំនួនផ្ដល់​នូវ​ធាតុ<i>ទិដ្ឋភាព​សង្ខេប</i> ជ្រើស​ទិដ្ឋភាព​មួយ​ក្នុង​ចំណោម​ទិដ្ឋភាព​ទាំងនេះ​ដែល​អ្នក​ចង់​រាយ ។
Comment[nds]=Kontact sien <b>Översicht</b> instellen. En Reeg Modulen stellt Indrääg för de <i>Översicht</i> praat. Hier kannst Du de utsöken, de Du hebben wullt.
Comment[nl]=Configuratie van Kontacts <b>Overzichtsweergave</b>. Sommige plugins bieden ook items aan voor de <i>Overzichtweergave</i>, kies welke u wilt zien.
Comment[pl]=Konfiguracja <b>Podsumowania</b> Kontaktu. Niektóre wtyczki zapewniają elementy <i>Widok podsumowania</i>, wybierz te które chcesz zobaczyć.
-Comment[ru]=Настройка показа сводок различных компонентов.
Comment[sr]=Подешавање Kontact-овог <b>приказа сажетка</b>. Неки прикључци дају ставке <i>приказа сажетка</i>, изаберите оне које желите.
Comment[sr@Latn]=Podešavanje Kontact-ovog <b>prikaza sažetka</b>. Neki priključci daju stavke <i>prikaza sažetka</i>, izaberite one koje želite.
Comment[sv]=Inställning av Kontacts <b>översiktsvy</b>. Vissa insticksprogram tillhandahåller objekt för <i>översiktsvyn</i>. Välj de du skulle vilja visa.
@@ -52,24 +41,17 @@ Name=E-Mail
Name[bg]=Е-поща
Name[ca]=Correu
Name[da]=E-mail
+Name[de]=E-Mail
Name[el]=Αλληλογραφία
-Name[es]=Correo electrónico
Name[et]=E-post
-Name[fr]=Courriel
-Name[is]=Tölvupóstur
Name[it]=Posta elettronica
Name[ja]=メール
-Name[km]=អ៊ីមែល
Name[nds]=Nettpost
Name[nl]=E-mail
Name[pl]=E-mail
-Name[pt_BR]=E-mail
-Name[ru]=Электронная почта
-Name[sk]=Pošta
Name[sr]=Е-пошта
Name[sr@Latn]=E-pošta
Name[sv]=E-post
-Name[tr]=E-Posta
Name[zh_CN]=邮件
Name[zh_TW]=電子郵件
Comment=Configuration of Kontact's E-Mail Plugin <b>KMail</b>, includes a <i>Summary View Item</i> and represents a <i>Kontact Component</i>.
@@ -78,16 +60,11 @@ Comment[ca]=Configuració de l'endollable de correu <b>KMail</b> del Kontact, in
Comment[da]=Konfiguration af Kontacts e-mail-plugin <b>KMail</b>, inkluderer et <i>Opsummeringsvisnings-element</i> og repræsenterer en <i>Kontact-komponent</i>.
Comment[de]=Einrichtung des E-Mail-Moduls <b>KMail</b> für Kontact. Die E-Mail-Komponente kann als <i>Kontact-Komponente<i> in die <i>Zusammenfassungsansicht</i> integriert werden.
Comment[el]=Η ρύθμιση του προσθέτου αλληλογραφίας <b>KMail</b> του Kontact, περιέχει ένα <i>Αντικείμενο προβολής σύνοψης</i> και αντιπροσωπεύει ένα <i>Συστατικό του Kontact</i>.
-Comment[es]=Configuración del complemento de correo-e de Kontact <b>KMail</b>, incluye una <i>Vista de resumen</i> y representa un <i>Componente de Kontact</i>.
Comment[et]=Kontacti e-posti plugina <b>KMaili</b> seadistamine, mis sisaldab <i>kokkuvõttevaate elementi</i>.
-Comment[fr]=Configuration du Module de Courriel de Kontact <b>KMail</b>, inclut un <i>Élément de Vue Résumée</i> et correspond à un <i>Composant de Kontact</i>.
-Comment[is]=Stillingar fyrir tölvupóstíforrit Kontact <b>KMail</b>, inniheldur <i>yfirlitssýnarhlut</i> sem stendur fyrir <i>Kontact einingu</i>.
Comment[it]=Configurazione del plugin di posta elettronica <b>KMail</b> di Kontact, include una <i>vista sommario</i> e rappresenta un <i>componente Kontact</i>.
-Comment[km]=ការ​កំណត់​រចនាសម្ព័ន្ធ​របស់​កម្មវិធី​ជំនួយ​​អ៊ីមែល​របស់ Kontact​ <b>KMail</b> រួម​មាន<i>ធាតុ​ទិដ្ឋភាព​សង្ខេប</i> និង​បង្ហាញ <i>សមាសភាគ Kontact​</i> ។
Comment[nds]=Kontact sien Nettpost-Moduul <b>KMail</b> instellen. Stellt en <i>Översicht-Indrag</i> praat un is en <i>Kontact-Komponent</i>.
Comment[nl]=Instellingen voor Kontacts e-mailplugin <b>KMail</b>. Bevat een <i>Overzichtsweergaveplugin</i> en een <i>Kontact-component</i>.
Comment[pl]=Konfiguracja wtyczki poczty Kontaktu <b>KMail</b>, zawiera <i>element Podsumowanie</i> i jest <i>Składnikiem Kontaktu</i>.
-Comment[ru]=Настройка модуля электронной почты <b>KMail</b> для показа в виде сводки.
Comment[sr]=Подешавање Kontact-овог прикључка за е-пошту преко <b>KMail-</b>, укључујући <i>приказ сажетка</i>, и дат као <i>компонента Kontact-а</i>.
Comment[sr@Latn]=Podešavanje Kontact-ovog priključka za e-poštu preko <b>KMail-</b>, uključujući <i>prikaz sažetka</i>, i dat kao <i>komponenta Kontact-a</i>.
Comment[sv]=Inställning av Kontacts e-postinsticksprogram <b>Kmail</b>, omfattar ett objekt för <i>översiktsvyn</i> och representerar en <i>Kontactkomponent</i>.
@@ -125,7 +102,6 @@ Name[hu]=Névjegyek
Name[is]=Tengiliðir
Name[it]=Contatti
Name[ja]=コンタクト
-Name[ka]=კონტაქტები
Name[kk]=Контакттар
Name[km]=ទំនាក់ទំនង
Name[lt]=Kontaktai
@@ -151,10 +127,9 @@ Name[sv]=Kontakter
Name[ta]=தொடர்புகள்
Name[tg]=Алоқот
Name[th]=ที่อยู่ติดต่อ
-Name[tr]=Kişiler
+Name[tr]=Bağlantılar
Name[uk]=Контакти
-Name[uz]=Aloqalar
-Name[uz@cyrillic]=Алоқалар
+Name[uz]=Алоқалар
Name[zh_CN]=联系人
Name[zh_TW]=聯絡人
Comment=Configuration of Kontact's Adress Book Plugin <b>KAdressbook</b> which represents a <i>Kontact Component</i>.
@@ -163,16 +138,11 @@ Comment[ca]=Configuració de l'endollable de la llibreta d'adreces <b>KAdressboo
Comment[da]=Konfiguration af Kontacts adressebog-plugin <b>KAdressbook</b> som repræsenterer en <i>Kontact-komponent</i>.
Comment[de]=Einrichtung des Adressbuch-Moduls für Kontact, welches eine <i>Kontact-Komponente</i> repräsentiert.
Comment[el]=Ρύθμιση του πρόσθετου βιβλίου διευθύνσεων <b>KAdressbook</b> του Kontact που αντιπροσωπεύει ένα <i>Συστατικό του Kontact</i>.
-Comment[es]=Configuración del complemento de libreta de direcciones de Kontact <b> KAddressbok</b>, el cual representa un <i>Componente de Kontact</i>.
Comment[et]=Kontacti aadressiraamatu plugina <b>KAdressbook</b> seaditamine.
-Comment[fr]=Configuration du Module de Carnet d'Adresses de Kontact <b> KAdressbook</b> qui correspond à un <i>Composant de Kontact</i>.
-Comment[is]=Stillingar fyrir vistfangaskráríforrit Kontact <b>KAdressbook</b>, inniheldur <i>yfirlitssýnarhlut</i> sem stendur fyrir <i>Kontact einingu</i>.
Comment[it]=Configurazione del plugin rubrica di <b>KAddressbook</b> che rappresenta un <i>componente Kontact</i>.
-Comment[km]=កា​រកំណត់​រចនាសម្ព័ន្ធ​របស់​កម្មវិធី​ជំនួយ​សៀវភៅ​អាសយដ្ឋាន​របស់ Kontact <b>KAdressbook</b> ដែល​បង្ហាញ <i>សមាសភាគ Kontact​</i> ។
Comment[nds]=Kontact sien Adressbook-Moduul <b>KAddressbook</b> instellende, dat en <i>Kontact-Komponent</i> is.
Comment[nl]=Instellingen voor Kontacts adresboekplugin <b>KMail</b>. Bevat een <i>Kontact-component</i>.
Comment[pl]=Konfiguracja wtyczki książki adresowej Kontaktu <b>KAddressBook</b>, która jest <i>Składnikiem Kontaktu</i>.
-Comment[ru]=Настройка модуля адресной книги <b>KAdressbook</b> для показа в виде сводки.
Comment[sr]=Подешавање Kontact-овог прикључка за адресар преко <b>KAdressbook</b> у облику <i>компоненте Kontact-а</i>.
Comment[sr@Latn]=Podešavanje Kontact-ovog priključka za adresar preko <b>KAdressbook</b> u obliku <i>komponente Kontact-a</i>.
Comment[sv]=Inställning av Kontacts adressboksinsticksprogram <b>Kaddressbook</b>, som representerar en <i>Kontactkomponent</i>.
@@ -205,7 +175,6 @@ Name[hu]=A fontos dátumok áttekintője
Name[is]=Yfirlit sérstakra daga
Name[it]=Sommario date speciali
Name[ja]=特別な日の要約
-Name[ka]=განსაკუთრებულ თარიღთა დაიჯესტი
Name[kk]=Ерекше күндер тұжырымы
Name[km]=សង្ខេប​ថ្ងៃ​ពិសេស
Name[lt]=Ypatingų dienų santrauka
@@ -219,7 +188,7 @@ Name[nn]=Samandrag for spesielle datoar
Name[pl]=Podsumowanie dat specjalnych
Name[pt]=Sumário de Datas Especiais
Name[pt_BR]=Resumo de Datas Especiais
-Name[ru]=Сводка особых дат
+Name[ru]=Дайджест особых дат
Name[sk]=Súhrn špeciálnych dátumov
Name[sl]=Povzetek posebnih datumov
Name[sr]=Сажетак посебних датума
@@ -253,7 +222,6 @@ Comment[hu]=A fontos dátumok áttekintő komponense
Comment[is]=Yfirlitshluti sérstakra daga
Comment[it]=Componente sommario per le date speciali
Comment[ja]=特別な日の要約コンポーネント
-Comment[ka]=განაკუთრებულ თარიღთა დაიჯესტის კომპონენტი
Comment[kk]=Ерекше күндер тұжырымының компоненті
Comment[km]=សមាសភាគ​សង្ខេប​នៃ​ថ្ងៃ​ពិសេស
Comment[lt]=Ypatingų dienų santraukos komponentas
@@ -267,7 +235,7 @@ Comment[nn]=Komponent for samandrag for spesielle datoar
Comment[pl]=Składnik podsumowania dat specjalnych
Comment[pt]=Componente de Sumário de Datas Especiais
Comment[pt_BR]=Componente de Datas Especiais
-Comment[ru]=Компонент сводки особых дат
+Comment[ru]=Компонент дайджеста особых дат
Comment[sk]=Komponent súhrnu špeciálnych dátumov
Comment[sl]=Komponenta za povzetke posebnih datumov
Comment[sr]=Компонента сажетка посебних датума
@@ -311,7 +279,6 @@ Name[hu]=Naptár
Name[is]=Dagatal
Name[it]=Calendario
Name[ja]=カレンダー
-Name[ka]=კალენდარი
Name[kk]=Күнтізбе
Name[km]=ប្រតិទិន
Name[lt]=Kalendorius
@@ -338,8 +305,7 @@ Name[tg]=Тақвим
Name[th]=บันทึกประจำวัน
Name[tr]=Takvim
Name[uk]=Календар
-Name[uz]=Kalendar
-Name[uz@cyrillic]=Календар
+Name[uz]=Календар
Name[zh_CN]=日历
Name[zh_TW]=行事曆
Comment=Configuration of Kontact's Calendar Plugin <b>KOrganizer</b>, includes a <i>Summary View Item</i> and represents a <i>Kontact Component</i>.
@@ -348,16 +314,11 @@ Comment[ca]=Configuració de l'endollable de calendari <b>KOrganizer</b> del Kon
Comment[da]=Konfiguration af Kontacts kalender-plugin <b>KOrganizer</b>, inkluderer et <i>Opsummeringsvisningselement</i> og repræsenterer en <i>Kontact-komponent</i>.
Comment[de]=Einrichtung des Kalender-Moduls <b>KOrganizer</b> für Kontact, einschließlich der <i>Zusammenfassungsansicht</i>; repräsentiert eine <i>Kontact-Komponente</i>
Comment[el]=Η ρύθμιση του προσθέτου ημερολογίου του <b>KOrganizer</b> του Kontact, περιέχει ένα <i>Αντικείμενο προβολής σύνοψης</i> και αντιπροσωπεύει ένα <i>Συστατικό του Kontact</i>.
-Comment[es]=Configuración del complemento de calendario de Kontact, <b> KOrganizer</b>, incluye una <i>Vista de resumen</i> y representa un <i>Componente de Kontact</i>.
Comment[et]=Kontacti kalendriplugina <b>KOrganizeri</b> seadistamine, mis sisaldab <i>kokkuvõttevaate elementi</i>.
-Comment[fr]=Configuration du Module de Calendrier de Kontact <b>KOrganizer</b>, inclut un <i>Élément de Vue Résumée</i> et correspond à un <i>Composant de Kontact</i>.
-Comment[is]=Stillingar fyrir dagatalsíforrit Kontact <b>KOrganizer</b>, inniheldur <i>yfirlitssýnarhlut</i> sem stendur fyrir <i>Kontact einingu</i>.
Comment[it]=Configurazione del plugin calendario <b>KOrganizer</b> di Kontact, include una <i>vista sommario</i> e rappresenta un <i>componente Kontact</i>.
-Comment[km]=កា​រកំណត់​រចនាសម្ព័ន្ធ​របស់​កម្មវិធី​ជំនួយ​ប្រតិទិន​របស់ Kontact <b>KOrganizer</b>រួម​មាន <i>ធាតុទិដ្ឋភាព​សង្ខេប</i> និង​បង្ហាញ <i>សមាសភាគ​ Kontact​</i>.
Comment[nds]=Kontact sien Kalenner-Moduul <b>KOrganizer</b> instellen. Stellt en <i>Översicht-Indrag</i> praat un is en <i>Kontact-Komponent</i>.
Comment[nl]=Instellingen voor Kontacts agendaplugin <b>KOrganizer</b>. Bevat een <i>Overzichtsweergaveplugin</i> en een <i>Kontact-component</i>.
Comment[pl]=Konfiguracja wtyczki kalendarza Kontaktu <b>KOrganizer</b>, zawiera <i>element Podsumowanie</i> i jest <i>Składnikiem Kontaktu</i>.
-Comment[ru]=Настройка модуля календаря <b>KOrganizer</b> для показа в виде сводки.
Comment[sr]=Подешавање Kontact-овог прикључка за календар преко <b>KOrganizer-а</b>, укључујући <i>приказ сажетка</i>, и дат као <i>компонента Kontact-а</i>.
Comment[sr@Latn]=Podešavanje Kontact-ovog priključka za kalendar preko <b>KOrganizer-a</b>, uključujući <i>prikaz sažetka</i>, i dat kao <i>komponenta Kontact-a</i>.
Comment[sv]=Inställning av Kontacts kalenderinsticksprogram <b>Korganizer</b>, omfattar ett objekt för <i>översiktsvyn</i> och representerar en <i>Kontactkomponent</i>.
@@ -395,7 +356,6 @@ Name[hi]=समाचार
Name[hu]=Hírek
Name[is]=Fréttir
Name[ja]=ニュース
-Name[ka]=სიახლეები
Name[kk]=Жаңалықтар
Name[km]=ព័ត៌មាន
Name[lt]=Naujienos
@@ -423,8 +383,7 @@ Name[tg]=Ахборот
Name[th]=ข่าว
Name[tr]=Haberler
Name[uk]=Новини
-Name[uz]=Yangiliklar
-Name[uz@cyrillic]=Янгиликлар
+Name[uz]=Янгиликлар
Name[zh_CN]=新闻
Name[zh_TW]=新聞
Comment=Configuration of Kontact's News Plugin <b>KNode</b> which represents a <i>Kontact Component</i>.
@@ -433,16 +392,11 @@ Comment[ca]=Configuració de l'endollable de notícies <b>KNode</b> del Kontact,
Comment[da]=Konfiguration af Kontacts nyheds-plugin <b>KNode</b> som repræsenterer en <i>Kontact-komponent</i>.
Comment[de]=Einrichtung des News-Moduls <b>KNode</b> für Kontact; repräsentiert eine <i>Kontact-Komponente</i>
Comment[el]=Ρύθμιση του πρόσθετου νέων <b>KNode</b> του Kontact που αντιπροσωπεύει ένα <i>Συστατικό του Kontact</i>.
-Comment[es]=Configuración del complemento de noticias de Kontact <b>KNode</b> , el cual representa un <i>Componente de Kontact</i>.
Comment[et]=Kontacti uudisteplugina <b>KNode</b> seadistamine.
-Comment[fr]=Configuration du Module de Nouvelles de Kontact <b>KNode</b> qui correspond à un <i>Composant de Kontact</i>.
-Comment[is]=Stillingar fyrir fréttastraumsíforrit Kontact <b>KNode</b>, inniheldur <i>yfirlitssýnarhlut</i> sem stendur fyrir <i>Kontact einingu</i>.
Comment[it]=Configurazione del plugin notizie <b>KNode</b> di Kontact, che rappresenta un <i>componente Kontact</i>.
-Comment[km]=កា​រកំណត់​រចនាសម្ព័ន្ធ​របស់​កម្មវិធី​ជំនួយ​ព័ត៌មាន​របស់ Kontact <b>KNode</b> ដែល​បង្ហាញ <i>សមាភាគ​​របស់ Kontact​</i>​ ។
Comment[nds]=Kontact sien Narichten-Moduul <b>KNode</b> instellen, dat en <i>Kontact-Komponent</i> is.
Comment[nl]=Instellingen voor Kontacts nieuwsplugin <b>KNode</b>. Bevat een <i>Kontact-component</i>.
-Comment[pl]=Konfiguracja wtyczki wiadomości Kontaktu <b>KNode</b>, która jest <i>składnikiem Kontaktu</i>.
-Comment[ru]=Настройка модуля новостей <b>KNode</b> для показа в виде сводки.
+Comment[pl]=Konfiguracja wtyczki niusów Kontaktu <b>KNode</b>, która jest <i>Składnikiem Kontaktu</i>.
Comment[sr]=Подешавање Kontact-овог прикључка за вести преко <b>KNode-а</b> у облику <i>компненте Kontact-а</i>.
Comment[sr@Latn]=Podešavanje Kontact-ovog priključka za vesti preko <b>KNode-a</b> u obliku <i>kompnente Kontact-a</i>.
Comment[sv]=Inställning av Kontacts nyhetsinsticksprogram <b>Knode</b>, som representerar en <i>Kontactkomponent</i>.
@@ -481,7 +435,6 @@ Name[hu]=Időjárás
Name[is]=Veður
Name[it]=Tempo meteorologico
Name[ja]=気象情報
-Name[ka]=ამინდი
Name[kk]=Ауа райы
Name[km]=អាកាសធាតុ
Name[lt]=Orų pranešėjas
@@ -508,8 +461,7 @@ Name[tg]=Пешгӯии ҳаво
Name[th]=รายงานอากาศ
Name[tr]=Hava Durumu
Name[uk]=Погода
-Name[uz]=Ob-havo
-Name[uz@cyrillic]=Об-ҳаво
+Name[uz]=Об-ҳаво
Name[zh_CN]=天气
Name[zh_TW]=天氣
Comment=Weather Information Component
@@ -518,22 +470,15 @@ Comment[ca]=Component d'informació del temps
Comment[da]=Komponent til vejrinformation
Comment[de]=Komponente für Wetterinformationen
Comment[el]=Συστατικό πληροφοριών καιρού
-Comment[es]=Componente de información meteorológica
Comment[et]=Ilmateate komponent
-Comment[fr]=Composant d'Informations météorologiques
-Comment[is]=Eining fyrir veðurupplýsingar
Comment[it]=Informazioni meteorologiche
Comment[ja]=気象情報コンポーネント
-Comment[km]=សមាសភាគ​ព័ត៌មាន​អាកាសធាតុ
Comment[nds]=Wederinformatschonen-Komponent
Comment[nl]=Weerinformatiecomponent
Comment[pl]=Składnik informacji o pogodzie
-Comment[ru]=Информация о погоде
-Comment[sk]=Informácie o počasí
Comment[sr]=Компонента информација о времену
Comment[sr@Latn]=Komponenta informacija o vremenu
Comment[sv]=Komponent med väderrapport
-Comment[tr]=Hava Durumu Bilgisi Bileşeni
Comment[zh_CN]=天气信息组件
Comment[zh_TW]=天氣資訊組件
Weight=1000
@@ -566,7 +511,6 @@ Name[id]=Ticker Berita
Name[is]=Fréttastrimill
Name[it]=Ticker notizie
Name[ja]=ニュースティッカー
-Name[ka]=სიახლეთა ტიკერი
Name[kk]=Жаңалық таспасы
Name[km]=កម្មវិធី​ទទួល​ព័ត៌មាន
Name[lt]=News pranešėjas
@@ -618,7 +562,6 @@ Comment[hu]=Hírmegjelenítő komponens
Comment[is]=Fréttastrimilshluti
Comment[it]=Ticker notizie
Comment[ja]=ニュースティッカーコンポーネント
-Comment[ka]=სიახლეთა ტიკერის კომპონენტი
Comment[kk]=Жаңалық таспасының компоненті
Comment[km]=សមាសភាគ​កម្មវិធី​ទទួល​ព័ត៌មាន
Comment[lt]=Naujienų pranešėjo komponentas
diff --git a/kontact/src/kontactui.rc b/kontact/src/kontactui.rc
index 8c68f0607..bd846c78c 100644
--- a/kontact/src/kontactui.rc
+++ b/kontact/src/kontactui.rc
@@ -1,6 +1,6 @@
<?xml version="1.0"?>
<!DOCTYPE gui SYSTEM "kpartgui.dtd">
-<gui version="22" name="kontact" >
+<gui version="23" name="kontact" >
<MenuBar>
<Menu name="file" noMerge="1">
<text>&amp;File</text>
@@ -31,15 +31,12 @@
<Menu name="help"><text>&amp;Help</text>
<Action name="help_introduction"/>
<Action name="help_tipofday"/>
- <Separator/>
- <Action name="help_requestfeature"/>
</Menu>
</MenuBar>
<ToolBar position="Top" noMerge="1" name="mainToolBar"><text>Main Toolbar</text>
<Action name="action_new"/>
<Action name="action_sync"/>
<Merge/>
- <Action name="help_whats_this"/>
</ToolBar>
<ToolBar position="Top" hidden="true" name="navigatorToolBar"><text>Navigator</text>
<Action name="navigator_spacer_item"/>
diff --git a/kontact/src/main.cpp b/kontact/src/main.cpp
index c19872357..ee098180e 100644
--- a/kontact/src/main.cpp
+++ b/kontact/src/main.cpp
@@ -40,17 +40,21 @@
#include "alarmclient.h"
#include "mainwindow.h"
#include <uniqueapphandler.h> // in ../interfaces
+#include "profilemanager.h"
using namespace std;
static const char description[] =
I18N_NOOP( "KDE personal information manager" );
-static const char version[] = "1.2.9";
+static const char version[] = "1.2.9 (enterprise35 0.20100827.1168748)";
class KontactApp : public KUniqueApplication {
public:
- KontactApp() : mMainWindow( 0 ), mSessionRestored( false ) {}
+ KontactApp() : mMainWindow( 0 ), mSessionRestored( false )
+ {
+ KGlobal::iconLoader()->addAppDir( "kdepim" );
+ }
~KontactApp() {}
int newInstance();
@@ -84,6 +88,14 @@ static void listPlugins()
}
}
+static void listProfiles()
+{
+ TQValueList<Kontact::Profile> profiles = Kontact::ProfileManager::self()->profiles();
+ for( TQValueListIterator<Kontact::Profile> it = profiles.begin() ; it != profiles.end(); ++it ) {
+ cout << (*it).name().latin1() << endl;
+ }
+}
+
int KontactApp::newInstance()
{
KCmdLineArgs *args = KCmdLineArgs::parsedArgs();
@@ -112,6 +124,16 @@ int KontactApp::newInstance()
}
}
+ if ( args->isSet( "profile" ) ) {
+ TQValueList<Kontact::Profile> profiles = Kontact::ProfileManager::self()->profiles();
+ for( TQValueListIterator<Kontact::Profile> it = profiles.begin(); it != profiles.end(); ++it ){
+ if( args->getOption("profile") == (*it).name().latin1() ) {
+ Kontact::ProfileManager::self()->loadProfile( (*it).id() );
+ break;
+ }
+ }
+ }
+
AlarmClient alarmclient;
alarmclient.startDaemon();
@@ -143,6 +165,11 @@ int main( int argc, char **argv )
return 0;
}
+ if ( args->isSet( "listprofiles" ) ) {
+ listProfiles();
+ return 0;
+ }
+
if ( !KontactApp::start() ) {
// Already running, brought to the foreground.
return 0;
diff --git a/kontact/src/mainwindow.cpp b/kontact/src/mainwindow.cpp
index 541742bba..247bb6654 100644
--- a/kontact/src/mainwindow.cpp
+++ b/kontact/src/mainwindow.cpp
@@ -20,6 +20,7 @@
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
+#include <tqaction.h>
#include <tqcombobox.h>
#include <tqdockarea.h>
#include <tqguardedptr.h>
@@ -122,6 +123,27 @@ void MainWindow::initGUI()
connect( helpMenu, TQT_SIGNAL( showAboutApplication() ),
TQT_SLOT( showAboutDialog() ) );
+ KTrader::OfferList offers = KTrader::self()->query(
+ TQString::fromLatin1( "Kontact/Plugin" ),
+ TQString( "[X-KDE-KontactPluginVersion] == %1" ).arg( KONTACT_PLUGIN_VERSION ) );
+ mPluginInfos = KPluginInfo::fromServices( offers, Prefs::self()->config(), "Plugins" );
+
+ KPluginInfo::List::Iterator it;
+ for ( it = mPluginInfos.begin(); it != mPluginInfos.end(); ++it ) {
+ (*it)->load();
+
+ KAction *action = new KAction( (*it)->name(), (*it)->icon(), KShortcut(),
+ this, TQT_SLOT(slotActionTriggered()),
+ actionCollection(), (*it)->pluginName().latin1() );
+ action->setName( (*it)->pluginName().latin1() );
+ action->setWhatsThis( i18n( "Switch to plugin %1" ).arg( (*it)->name() ) );
+
+ TQVariant hasPartProp = (*it)->property( "X-KDE-KontactPluginHasPart" );
+ if ( !hasPartProp.isValid() || hasPartProp.toBool() ) {
+ mActionPlugins.append( action );
+ }
+ }
+
KStdAction::keyBindings( this, TQT_SLOT( configureShortcuts() ), actionCollection() );
KStdAction::configureToolbars( this, TQT_SLOT( configureToolbars() ), actionCollection() );
setXMLFile( "kontactui.rc" );
@@ -130,38 +152,27 @@ void MainWindow::initGUI()
createGUI( 0 );
+ loadPlugins();
+
resize( 700, 520 ); // initial size to prevent a scrollbar in sidepane
setAutoSaveSettings();
- connect( Kontact::ProfileManager::self(), TQT_SIGNAL( profileLoaded( const TQString& ) ),
+ connect( Kontact::ProfileManager::self(), TQT_SIGNAL( profileLoaded( const TQString& ) ),
this, TQT_SLOT( slotLoadProfile( const TQString& ) ) );
- connect( Kontact::ProfileManager::self(), TQT_SIGNAL( saveToProfileRequested( const TQString& ) ),
+ connect( Kontact::ProfileManager::self(), TQT_SIGNAL( saveToProfileRequested( const TQString& ) ),
this, TQT_SLOT( slotSaveToProfile( const TQString& ) ) );
}
void MainWindow::initObject()
{
- KTrader::OfferList offers = KTrader::self()->query(
- TQString::fromLatin1( "Kontact/Plugin" ),
- TQString( "[X-KDE-KontactPluginVersion] == %1" ).arg( KONTACT_PLUGIN_VERSION ) );
- mPluginInfos = KPluginInfo::fromServices( offers, Prefs::self()->config(), "Plugins" );
-
- KPluginInfo::List::Iterator it;
- for ( it = mPluginInfos.begin(); it != mPluginInfos.end(); ++it ) {
- ( *it )->load();
- }
-
// prepare the part manager
mPartManager = new KParts::PartManager( this );
connect( mPartManager, TQT_SIGNAL( activePartChanged( KParts::Part* ) ),
this, TQT_SLOT( slotActivePartChanged( KParts::Part* ) ) );
- loadPlugins();
-
if ( mSidePane ) {
mSidePane->updatePlugins();
- plugActionList( "navigator_actionlist", mSidePane->actions() );
}
KSettings::Dispatcher::self()->registerInstance( instance(), this,
@@ -240,8 +251,6 @@ void MainWindow::initWidgets()
sizes << 0;
mSplitter->setSizes(sizes);
- mSidePane->setActionCollection( actionCollection() );
-
connect( mSidePane, TQT_SIGNAL( pluginSelected( Kontact::Plugin * ) ),
TQT_SLOT( selectPlugin( Kontact::Plugin * ) ) );
@@ -348,9 +357,7 @@ void MainWindow::setupActions()
actionCollection(), "help_introduction" );
new KAction( i18n( "&Tip of the Day" ), 0, this, TQT_SLOT( slotShowTip() ),
actionCollection(), "help_tipofday" );
- new KAction( i18n( "&Request Feature..." ), 0, this, TQT_SLOT( slotRequestFeature() ),
- actionCollection(), "help_requestfeature" );
-
+
KWidgetAction* spacerAction = new KWidgetAction( new TQWidget( this ), "SpacerAction", "", 0, 0, actionCollection(), "navigator_spacer_item" );
spacerAction->setAutoSized( true );
}
@@ -387,7 +394,7 @@ void MainWindow::slotSaveToProfile( const TQString& id )
::copyConfigEntry( cfg, &profile, "MainWindow Toolbar navigatorToolBar", "Hidden", "true" );
::copyConfigEntry( cfg, &profile, "View", "SidePaneSplitter" );
::copyConfigEntry( cfg, &profile, "Icons", "Theme" );
-
+
for ( PluginList::Iterator it = mPlugins.begin(); it != mPlugins.end(); ++it ) {
if ( !(*it)->isRunningStandalone() ) {
(*it)->part();
@@ -461,6 +468,61 @@ Plugin *MainWindow::pluginFromInfo( const KPluginInfo *info )
return 0;
}
+Plugin *MainWindow::pluginFromAction( const KAction *action )
+{
+ PluginList::ConstIterator end = mPlugins.end();
+ for ( PluginList::ConstIterator it = mPlugins.begin(); it != end; ++it ) {
+ if ( (*it)->identifier() == action->name() ) {
+ return *it;
+ }
+ }
+ return 0;
+}
+
+bool MainWindow::isPluginLoadedByAction( const KAction *action )
+{
+ KPluginInfo::List::ConstIterator it;
+ for ( it = mPluginInfos.begin(); it != mPluginInfos.end(); ++it ) {
+ if ( !(*it)->isPluginEnabled() )
+ continue;
+ if ( isPluginLoaded( *it ) ) {
+ Plugin *plugin = pluginFromInfo( *it );
+ if ( plugin ) {
+ if ( plugin->identifier() == action->name() ) {
+ return true;
+ }
+ }
+ }
+ }
+ return false;
+}
+
+void MainWindow::sortActionsByWeight()
+{
+ TQPtrList<KAction> sorted;
+
+ TQPtrListIterator<KAction> eit( mActionPlugins );
+ KAction *action;
+ while ( ( action = eit.current() ) != 0 ) {
+ ++eit;
+ TQPtrListIterator<KAction> sortIt( sorted );
+ uint at = 0;
+ KAction *saction;
+ Plugin *p1 = pluginFromAction( action );
+ while ( ( saction = sortIt.current() ) != 0 ) {
+ Plugin *p2 = pluginFromAction( saction );
+ if ( p1 && p2 && p1->weight() >= p2->weight() ) {
+ ++sortIt;
+ ++at;
+ } else {
+ break;
+ }
+ }
+ sorted.insert( at, action );
+ }
+ mActionPlugins = sorted;
+}
+
void MainWindow::loadPlugins()
{
TQPtrList<Plugin> plugins;
@@ -523,6 +585,9 @@ void MainWindow::loadPlugins()
for ( action = actionList->first(); action; action = actionList->next() ) {
kdDebug(5600) << "Plugging " << action->name() << endl;
action->plug( mNewActions->popupMenu() );
+ if ( action->name() == plugin->identifier() ) {
+ mPluginAction.insert( plugin, action );
+ }
}
if ( mSyncActionsEnabled ) {
@@ -534,6 +599,7 @@ void MainWindow::loadPlugins()
}
addPlugin( plugin );
}
+ updateShortcuts();
mNewActions->setEnabled( mPlugins.size() != 0 );
if ( mSyncActionsEnabled )
@@ -542,24 +608,47 @@ void MainWindow::loadPlugins()
void MainWindow::unloadPlugins()
{
- KPluginInfo::List::ConstIterator end = mPluginInfos.end();
+ KPluginInfo::List::ConstIterator end = mPluginInfos.constEnd();
KPluginInfo::List::ConstIterator it;
- for ( it = mPluginInfos.begin(); it != end; ++it ) {
+ for ( it = mPluginInfos.constBegin(); it != end; ++it ) {
if ( !(*it)->isPluginEnabled() )
removePlugin( *it );
}
}
+void MainWindow::updateShortcuts()
+{
+ TQPtrList<KAction> loadedActions;
+
+ sortActionsByWeight();
+
+ TQPtrListIterator<KAction> it( mActionPlugins );
+ int i = 1;
+ KAction *action;
+ while ( ( action = it.current() ) != 0 ) {
+ ++it;
+ if ( isPluginLoadedByAction( action ) ) {
+ loadedActions.append( action );
+ TQString shortcut = TQString( "CTRL+%1" ).arg( i );
+ action->setShortcut( KShortcut( shortcut ) );
+ i++;
+ } else {
+ action->setShortcut( KShortcut() );
+ }
+ }
+ unplugActionList( "navigator_actionlist" );
+ factory()->plugActionList( this, TQString( "navigator_actionlist" ), loadedActions );
+}
+
bool MainWindow::removePlugin( const KPluginInfo *info )
{
PluginList::Iterator end = mPlugins.end();
- for ( PluginList::Iterator it = mPlugins.begin(); it != end; ++it )
+ for ( PluginList::Iterator it = mPlugins.begin(); it != end; ++it ) {
if ( ( *it )->identifier() == info->pluginName() ) {
Plugin *plugin = *it;
KAction *action;
TQPtrList<KAction> *actionList = plugin->newActions();
-
for ( action = actionList->first(); action; action = actionList->next() ) {
kdDebug(5600) << "Unplugging " << action->name() << endl;
action->unplug( mNewActions->popupMenu() );
@@ -577,9 +666,13 @@ bool MainWindow::removePlugin( const KPluginInfo *info )
if ( mCurrentPlugin == plugin )
mCurrentPlugin = 0;
- delete plugin; // removes the part automatically
+ plugin->deleteLater(); // removes the part automatically
mPlugins.remove( it );
+ if ( plugin->showInSideBar() ) {
+ mPluginAction.remove( plugin );
+ }
+
if ( mCurrentPlugin == 0 ) {
PluginList::Iterator it;
for ( it = mPlugins.begin(); it != mPlugins.end(); ++it ) {
@@ -589,10 +682,9 @@ bool MainWindow::removePlugin( const KPluginInfo *info )
}
}
}
-
return true;
}
-
+ }
return false;
}
@@ -674,6 +766,15 @@ KToolBar* Kontact::MainWindow::findToolBar(const char* name)
return static_cast<KToolBar *>(child(name, "KToolBar"));
}
+void MainWindow::slotActionTriggered()
+{
+ const KAction *actionSender = static_cast<const KAction*>( sender() );
+ TQString identifier = actionSender->name();
+ if ( !identifier.isEmpty() ) {
+ selectPlugin( identifier );
+ }
+}
+
void MainWindow::selectPlugin( Kontact::Plugin *plugin )
{
if ( !plugin )
@@ -713,8 +814,9 @@ void MainWindow::selectPlugin( Kontact::Plugin *plugin )
}
}
- if ( mSidePane )
- mSidePane->selectPlugin( plugin );
+ if ( mSidePane ) {
+ mSidePane->selectPlugin( plugin->identifier() );
+ }
plugin->select();
@@ -832,12 +934,6 @@ void MainWindow::slotShowTip()
showTip( true );
}
-void MainWindow::slotRequestFeature()
-{
- if ( kapp )
- kapp->invokeBrowser( "http://kontact.org/shopping" );
-}
-
void MainWindow::slotShowIntroduction()
{
mPartsStack->raiseWidget( 0 ); // ###
@@ -915,11 +1011,10 @@ int MainWindow::startServiceFor( const TQString& serviceType,
void MainWindow::pluginsChanged()
{
- unplugActionList( "navigator_actionlist" );
unloadPlugins();
loadPlugins();
mSidePane->updatePlugins();
- plugActionList( "navigator_actionlist", mSidePane->actions() );
+ updateShortcuts();
}
void MainWindow::updateConfig()
@@ -965,9 +1060,13 @@ void MainWindow::configureToolbars()
void MainWindow::slotNewToolbarConfig()
{
- if ( mCurrentPlugin && mCurrentPlugin->part() )
+ if ( mCurrentPlugin && mCurrentPlugin->part() ) {
createGUI( mCurrentPlugin->part() );
- applyMainWindowSettings( KGlobal::config(), "MainWindow" );
+ }
+ if ( mCurrentPlugin ) {
+ applyMainWindowSettings( KGlobal::config(), "MainWindow" );
+ }
+ updateShortcuts(); // for the plugActionList call
}
void MainWindow::slotOpenUrl( const KURL &url )
@@ -980,8 +1079,16 @@ void MainWindow::slotOpenUrl( const KURL &url )
KRun::runCommand( "groupwarewizard" );
slotQuit();
}
- } else
+ if ( url.path().startsWith( "/help" ) ) {
+ TQString app( "kontact" );
+ if ( !url.query().isEmpty() ) {
+ app = url.query().mid( 1 );
+ }
+ kapp->invokeHelp( TQString::null, app );
+ }
+ } else {
new KRun( url, this );
+ }
}
void MainWindow::readProperties( KConfig *config )
@@ -1073,11 +1180,11 @@ TQString MainWindow::introductionString()
"<p style=\"margin-bottom: 0px\"> <a href=\"%1\">Skip this introduction</a></p>" )
.arg( kapp->aboutData()->version() )
.arg( i18n( "Kontact handles your e-mail, addressbook, calendar, to-do list and more." ) )
- .arg( "help:/kontact" )
+ .arg( "exec:/help?kontact" )
.arg( iconSize )
.arg( iconSize )
.arg( handbook_icon_path )
- .arg( "help:/kontact" )
+ .arg( "exec:/help?kontact" )
.arg( i18n( "Read Manual" ) )
.arg( i18n( "Learn more about Kontact and its components" ) )
.arg( "http://kontact.org" )
diff --git a/kontact/src/mainwindow.h b/kontact/src/mainwindow.h
index 892fce64e..5d5945b6b 100644
--- a/kontact/src/mainwindow.h
+++ b/kontact/src/mainwindow.h
@@ -36,6 +36,7 @@
#include "core.h"
#include "kontactiface.h"
+class TQAction;
class TQHBox;
class TQSplitter;
class TQVBox;
@@ -56,11 +57,12 @@ namespace KPIM
namespace Kontact
{
-class Plugin;
-class SidePaneBase;
class AboutDialog;
+class IconSidePane;
+class Plugin;
typedef TQValueList<Kontact::Plugin*> PluginList;
+typedef TQPtrList<KAction> ActionPluginList;
class MainWindow : public Kontact::Core, public KDCOPServiceStarter, public KontactIface
{
@@ -83,6 +85,7 @@ class MainWindow : public Kontact::Core, public KDCOPServiceStarter, public Kont
public slots:
virtual void selectPlugin( Kontact::Plugin *plugin );
virtual void selectPlugin( const TQString &pluginName );
+ void slotActionTriggered();
void updateConfig();
@@ -95,7 +98,6 @@ class MainWindow : public Kontact::Core, public KDCOPServiceStarter, public Kont
void slotSyncClicked();
void slotQuit();
void slotShowTip();
- void slotRequestFeature();
void slotConfigureProfiles();
void slotLoadProfile( const TQString& id );
void slotSaveToProfile( const TQString& id );
@@ -112,10 +114,14 @@ class MainWindow : public Kontact::Core, public KDCOPServiceStarter, public Kont
void loadSettings();
void saveSettings();
+ void sortActionsByWeight();
bool isPluginLoaded( const KPluginInfo * );
+ bool isPluginLoadedByAction( const KAction *action );
Kontact::Plugin *pluginFromInfo( const KPluginInfo * );
+ Kontact::Plugin *pluginFromAction( const KAction * );
void loadPlugins();
void unloadPlugins();
+ void updateShortcuts();
bool removePlugin( const KPluginInfo * );
void addPlugin( Kontact::Plugin *plugin );
void partLoaded( Kontact::Plugin *plugin, KParts::ReadOnlyPart *part );
@@ -141,12 +147,13 @@ class MainWindow : public Kontact::Core, public KDCOPServiceStarter, public Kont
KToolBarPopupAction *mNewActions;
KToolBarPopupAction *mSyncActions;
- SidePaneBase *mSidePane;
+ IconSidePane *mSidePane;
TQWidgetStack *mPartsStack;
Plugin *mCurrentPlugin;
KParts::PartManager *mPartManager;
PluginList mPlugins;
PluginList mDelayedPreload;
+ ActionPluginList mActionPlugins;
TQValueList<KPluginInfo*> mPluginInfos;
KHTMLPart *mIntroPart;
@@ -156,6 +163,7 @@ class MainWindow : public Kontact::Core, public KDCOPServiceStarter, public Kont
TQString mActiveModule;
TQMap<TQString, TQGuardedPtr<TQWidget> > mFocusWidgets;
+ TQMap<Kontact::Plugin *, KAction *> mPluginAction;
AboutDialog *mAboutDialog;
bool mReallyClose;
diff --git a/kontact/src/sidepanebase.cpp b/kontact/src/sidepanebase.cpp
index 28bae2999..92a3ce510 100644
--- a/kontact/src/sidepanebase.cpp
+++ b/kontact/src/sidepanebase.cpp
@@ -39,14 +39,4 @@ Core* SidePaneBase::core() const
return mCore;
}
-void SidePaneBase::setActionCollection( KActionCollection *actionCollection )
-{
- mActionCollection = actionCollection;
-}
-
-KActionCollection *SidePaneBase::actionCollection() const
-{
- return mActionCollection;
-}
-
#include "sidepanebase.moc"
diff --git a/kontact/src/sidepanebase.h b/kontact/src/sidepanebase.h
index 407d98de6..0b4a7a542 100644
--- a/kontact/src/sidepanebase.h
+++ b/kontact/src/sidepanebase.h
@@ -38,11 +38,6 @@ class SidePaneBase : public QVBox
SidePaneBase( Core *core, TQWidget *parent, const char *name = 0 );
virtual ~SidePaneBase();
- void setActionCollection( KActionCollection *actionCollection );
- KActionCollection *actionCollection() const;
-
- virtual const TQPtrList<KAction> & actions() = 0;
-
signals:
void pluginSelected( Kontact::Plugin* );
@@ -53,17 +48,6 @@ class SidePaneBase : public QVBox
*/
virtual void updatePlugins() = 0;
- /**
- Select the current plugin without emmiting a signal.
- This is used to sync with the core.
- */
- virtual void selectPlugin( Kontact::Plugin* ) = 0;
-
- /**
- This is an overloaded member function. It behaves essentially like the
- above function.
- */
- virtual void selectPlugin( const TQString &name ) = 0;
virtual void indicateForegrunding( Kontact::Plugin* ) = 0;
protected: