Kate mitloggen
Verfasst: 4. November 2008 05:56
Vorweg:
Ich bin – was das Programmieren im Allgemeinen angeht – noch relativ grün hinter den Ohren. Ich bitte um etwas Nachsicht, was z.B. die Terminologie angeht.
Problemstellung:
Das Ziel besteht darin, Aktionen in Kate (KDE) in einem Fenster(z.B. Terminal) synchron mit zu protokollieren.
(„Aktionen“ sind z.B. „Kopieren“, „Einfügen“, „Ausschneiden“, „Speichern“, usw., also alles, was in der Menüleiste zu finden ist oder durch Shortcuts angesteuert wird.)
Das Protokoll soll die Aktionen und die zugehörigen Uhrzeiten auflisten.
Ansatz:
Nach Betrachten des Source Codes war meine grundsätzliche Idee, die zu den Aktionen zugehörigen Funktionen als SIGNALs zu benutzen, um eine/mehrere Protokollierfunktionen als SLOTs anzusteuern (Qt).
Stand der Dinge:
Mittlerweile habe ich eine neue Klasse "actionLogger" erstellt, die gewisse Aktionen mit Hilfe von kdebug im Terminal loggt.
Dabei habe ich mir zu Nutze gemacht, dass gewisse Aktionen geadded werden, wie z.B. hier:
Mein Problem wäre jetzt, wie ich das mit nicht geaddeten Aktionen mache - also denjenigen, die bereits von vornherein vorhanden sind. Wie kann man diese ansprechen/aufrufen und "connecten"?
Ich bin – was das Programmieren im Allgemeinen angeht – noch relativ grün hinter den Ohren. Ich bitte um etwas Nachsicht, was z.B. die Terminologie angeht.
Problemstellung:
Das Ziel besteht darin, Aktionen in Kate (KDE) in einem Fenster(z.B. Terminal) synchron mit zu protokollieren.
(„Aktionen“ sind z.B. „Kopieren“, „Einfügen“, „Ausschneiden“, „Speichern“, usw., also alles, was in der Menüleiste zu finden ist oder durch Shortcuts angesteuert wird.)
Das Protokoll soll die Aktionen und die zugehörigen Uhrzeiten auflisten.
Ansatz:
Nach Betrachten des Source Codes war meine grundsätzliche Idee, die zu den Aktionen zugehörigen Funktionen als SIGNALs zu benutzen, um eine/mehrere Protokollierfunktionen als SLOTs anzusteuern (Qt).
Stand der Dinge:
Mittlerweile habe ich eine neue Klasse "actionLogger" erstellt, die gewisse Aktionen mit Hilfe von kdebug im Terminal loggt.
Dabei habe ich mir zu Nutze gemacht, dass gewisse Aktionen geadded werden, wie z.B. hier:
Code: Alles auswählen
a = actionCollection()->addAction( "file_reload_all" );
a->setText( i18n("&Reload All") );
connect( a, SIGNAL( triggered() ), KateDocManager::self(), SLOT( reloadAll() ) );
connect( a, SIGNAL( triggered() ), al, SLOT( reloadAll())); //editiert von mir