Benutzer-Werkzeuge

Webseiten-Werkzeuge


kde-desktop

KDE Desktop


Thematisch zusammengefasst sind hier einige Artikel zu KDE-Applikationen, Dolphin's Servicemenüs und programmieren mit KDE Dialogboxen in Shellscripten.


KDE Applikationen

Servicemenüs

Was ist ein Servicemenü

Unter einem Servivemenü versteht man im KDE Dateimanger Dolphin, abhängig vom ausgewählten Dateityp, ein Kontextmenü das über die rechte Maustaste erreichbar ist. Die Einträge im Servicemenü kann man mit eigenen Aktionen recht einfach erweitern.

Eine Aktion für einen Servicemenüeintrag wird mit einer einfachen Textdatei mit der Endung .desktop angelegt (z.B. misc.desktop). In dieser .desktop Datei wird nun die Aktion hinterlegt, die im Kontextmenü für einen bestimmen Dateityp (z.B. JPG) angezeigt werden soll. Dies kann der Aufruf eines KDE Programms oder eines Shellscriptes sein das eine bestimmte Aktion mit der ausgewählten Datei abarbeitet. Mann kann auch mehrere Aktionen in einer .desktop zusammenfassen. Details bitte dazu unter nachfolgenden Kapitel mit den angegebenen Links nachlesen.


Ablageorte der Servicemenü-Dateien

Ab KF5 gelten folgende Ablageorte. Lokal nur für den jeweiligen User $HOME/.local/share/kservices5/ServiceMenus und global für alle Benutzer unter /usr/share/kservices5/ServiceMenus.


Meine Servicemenü-Dateien

Weitere Informationen zu Servicemenüs

KDE Dialog

Wer eigene Shellscripte programmiert hat mit KDialog die Möglichkeit grafische KDE Dialogboxen innerhalb von Shellscripten einzusetzen und somit optisch aufzuwerten. Einen ersten Einblick geben die beiden ersten Links, die restlichen Links detailreiche Informationen zur Programmierung mit KDialog.

Shell Scripting with KDE Dialogs (de)

KDialog - Dialogboxen für Shellscripte

Little Girl's Mostly Linux Blog - KDialog

Scott Ferguson - Using KDialog

How do i make the kdialog a certain width


Typen von KDE Dialogboxen

Die Dialogboxen gibt es in verschiedenen Ausprägungen als

  • Infodialog
  • Eingabedialog
  • Passwortdialog
  • Text- bzw. Dateiausgabedialoge
  • Menüboxen
  • Bildausgabedialoge
  • Popup-Benachrichtigungen
  • Schieberegler
  • Fortschrittsanzeige
  • Kalenderdialog
  • Dateispeicherungsdialoge

…und weitere.

Damit lassen sich einfache oder auch umfrangreiche Shellscripte optisch ansprechend zu gestalten.

Eine Kurzhilfe zu kdialog lässt sich über die Option –help anzeigen.

$ kdialog --help                                                                                                            
Aufruf: kdialog [Optionen] [arg]
KDialog kann für die Anzeige hübscher Dialoge aus Shell-Skripten heraus benutzt werden.

Optionen:
  -h, --help                        Zeigt Hilfe zu den Kommandozeilenoptionen
                                    an.
  --help-all                        Zeigt Hilfe einschließlich Qt-spezifischer
                                    Optionen an.
  -v, --version                     Zeigt Versionsinformation an.
  --author                          Autor-Informationen anzeigen.
  --license                         Lizenz-Informationen anzeigen.
  --desktopfile <Dateiname>         Der Basis-Dateiname des Desktop-Eintrags
                                    dieser Anwendung.
  --yesno <text>                    Rückfrage mit Knöpfen für Ja/Nein
  --yesnocancel <text>              Rückfrage mit Knöpfen für Ja/Nein/Abbrechen
  --warningyesno <text>             Warnung mit Knöpfen für Ja/Nein
  --warningcontinuecancel <text>    Warnung mit Knöpfen für
                                    Fortfahren/Abbrechen
  --warningyesnocancel <text>       Warnung mit Knöpfen für Ja/Nein/Abbrechen
  --ok-label <text>                 Text als Beschriftung des „OK“-Knopfes
                                    verwenden
  --yes-label <text>                Text als Beschriftung des „Ja“-Knopfes
                                    verwenden
  --no-label <text>                 Text als Beschriftung des „Nein“-Knopfes
                                    verwenden
  --cancel-label <text>             Text als Beschriftung des
                                    „Abbrechen“-Knopfes verwenden
  --continue-label <text>           Text als Beschriftung des „Weiter“-Knopfes
                                    verwenden
  --sorry <text>                    „Bedaure“-Nachricht
  --detailedsorry <text> <details>  „Bedaure“-Nachricht mit erweiterbaren
                                    Detailfeld
  --error <text>                    Fehlermeldung
  --detailederror <text> <details>  Fehlermeldung mit erweiterbaren Detailfeld
  --msgbox <text>                   Benachrichtigung
  --inputbox <text> <init>          Eingabefeld
  --imgbox <file>                   Bildfeld-Dialog
  --imginputbox <file> <text>       Bildfeld-Eingabedialog
  --password <text>                 Passwort-Dialog
  --newpassword <text>              Neuer Passwort-Dialog
  --textbox <file>                  Textfeld-Dialog
  --textinputbox <text> <init>      Textfeld-Eingabedialog
  --combobox <text>                 Kombinationsfeld-Dialog
  --menu <text>                     Menü-Dialog
  --checklist <text>                Ankreuzliste
  --radiolist <text>                Auswahldialog
  --passivepopup <text> <timeout>   Passives Aufklappfenster (Popup)
  --icon <icon>                     Symbol für Aufklappfenster (Popup)
  --getopenfilename                 Dialog zum Öffnen einer bestehenden Datei
                                    (Argumente [Start-Ordner] [Filter])
  --getsavefilename                 Dialog zum Speichern einer Datei (Argumente
                                    [Start-Ordner] [Filter])
  --getexistingdirectory            Dialog zur Auswahl eines bestehenden
                                    Ordners (Argumente [Start-Ordner])
  --getopenurl                      Dialog zum Öffnen einer bestehenden Adresse
                                    (Argumente [Start-Ordner] [Filter])
  --getsaveurl                      Dialog zum Speichern einer Adresse
                                    (Argumente [Start-Ordner] [Filter])
  --geticon                         Dialog für die Symbolauswahl (Argumente
                                    [Gruppe] [Kontext])
  --progressbar <text>              Dialog für Fortschrittsanzeige. Gibt für
                                    die Kommunikation eine D-Bus-Referenz aus.
  --getcolor                        Dialog zur Auswahl einer Farbe
  --format <text>                   Mit --getcolor kann das Ausgabeformat
                                    angegeben werden
  --title <text>                    Dialog-Titel
  --default <text>                  Voreingestellter Eintrag für
                                    Kombinationsfeld, Menü und Farbe
  --multiple                        Ermöglicht die Rückgabe mehrere Dateien bei
                                    Anwendung der Parameter --getopenurl und
                                    --getopenfilename
  --separate-output                 Listenelemente in separaten Zeilen ausgeben
                                    (für die Optionen checklist und Dateien
                                    öffnen mit --multiple)
  --print-winid                     Gibt die winId (Fenster-Kennung) für jeden
                                    Dialog aus
  --dontagain <file:entry>          Einrichtungsdatei und Optionsname zum
                                    Speichern des Status „nicht noch einmal
                                    anzeigen/fragen“
  --slider <text>                   Schieberegler-Dialog, gibt den ausgewählten
                                    Wert zurück
  --calendar <text>                 Kalender-Dialog, gibt ein Datum zurück
  --attach <winid>                  Macht den Dialog transient für X-Programme,
                                    die von winId vorgegeben werden
  --embed <winid>                   Ein Synonym für --attach
  --geometry <geometry>             Dialog-Geometrie:
                                    [=][<width>{xX}<height>][{+-}<xoffset>{+-}<y
                                    offset>]

Argumente:
  [arg]                             Argumente – abhängig von der
                                    Grundeinstellung


Yes-No Box

$ kdialog --title "yesno Textausgabebox" --yesno "Textausgabe mit einem Ja- und Nein-Button"

Yes-No-Cancel Box

$ kdialog --title "yesnocancel Textausgabebox" --yesnocancel "Textausgabe mit einem Ja-, Nein- und Abrechen-Button"

Warning-Yes-No Box

$ kdialog --title "yesno Warnungausgabebox" --warningyesno "Warnungausgabe mit einem Ja- und Nein-Button"

Warning-Continue-Cancel Box

kdialog --title "yesno Warnungsausgabebox" --warningcontinuecancel "Warnungsausgabe mit einem Fortsetzen- und Abbrechen-Button"

Warning-Yes-No-Cancel Box

$ kdialog --title "Warnungsausgabebox" --warningyesnocancel "Warnungsausgabe mit einem Ja-, Nein- und Abbrechen-Button"

Detailed-Sorry Box

$ kdialog --title "Warnungsausgabebox" --detailedsorry "Ein kurzer Warnungstext steht hier in der Box" "Details sind hier als zusätzlicher aufklappbarer Ausgabetext nachzulesen"

Error Box

$ kdialog --title "Fehlerausgabebox" --error "Fehlermeldung wird hier ausgegeben"

Error-Detailed Box

$  kdialog --title "Fehlerausgabebox" --detailederror "Ein kurzer Fehlerstext steht hier in der Box" "Details sind hier als zusätzlicher aufklappbarer Ausgabetext nachzulesen"

Input Box

kdialog --title "Eingabebox" --inputbox "Bitte in der nachfolgenden Zeile den Text eingeben:"

Image Box

$ kdialog --title "Imagebox" --imgbox kde.png

Password Box

$ kdialog --title "Passwortbox" --password "Bitte das Passwort eingeben"

New Password Box

$ kdialog --title "Neues Passwort setzen" --newpassword "Bitte das neu zu vergebende Passwort zweimal eingeben"

Text Box

kdialog --title "Textbox zur Anzeige einer Datei" --textbox /etc/exports

Textinput Box

$ kdialog --title "Textbox zur Eingabe" --textinputbox "Bitte den Text eingeben:" "Für eine größere Menge Text steht hier viel Platz zur Verfügung"

Combo Box

$ kdialog --title "Combobox zur Auswahl" --combobox "Bitte einen Option auswählen:" "Erste Option" "Zweite Option"

kdialog --title "Menübox zur Auswahl" --menu Menüauswahl "1" "Menüpunkt 1" "2" "Menüpunkt 2" "3" "Menüpunkt 3"

Checklist Box

$ kdialog --title "Checkliste mit Vorbelegung" --checklist "Bitte auswählen oder Standardauswahl bestätigen" 1 "1. Auswahlpunkt" off 2 "2. Auswahlpunkt" on 3 "3. Auswahlpunkt" off

Radiolist Box

$ kdialog --title "Checkliste mit Einfachauswahl" --radiolist "Bitte auswählen oder Standardauswahl bestätigen" 1 "1. Auswahlpunkt" off 2 "2. Auswahlpunkt" on 3 "3. Auswahlpunkt" off

Passive Popup Box

$ kdialog --passivepopup "Hier ist eine Popup-Benachrichtigung mit Timer die sich selbstständig schließt" 15

Slider Box

$ kdialog --title "Schieberegler" --slider "Schiebereglerwerte 0-100    Schrittweite 10" 0 100 10

Progressbar Box

progress=$(kdialog --title "Fortschrittsanzeige" --progressbar "Fortschrittsanzeige von 1-5 Werten" 5)
qdbus $progress showCancelButton true
sleep 3
qdbus $progress Set "" value 1 > /dev/null
qdbus $progress setLabelText "Wert entspricht 1: Ausgabetext                               " > /dev/null
sleep 1
qdbus $progress Set "" value 2 > /dev/null
qdbus $progress setLabelText "Wert entspricht 2: Ausgabetext                               " > /dev/null
sleep 1
qdbus $progress Set "" value 3 > /dev/null
qdbus $progress setLabelText "Wert entspricht 3: Ausgabetext                               " > /dev/null
sleep 1
qdbus $progress Set "" value 4 > /dev/null
qdbus $progress setLabelText "Wert entspricht 4: Ausgabetext                               " > /dev/null
sleep 1
qdbus $progress Set "" value 5 > /dev/null
qdbus $progress setLabelText "Wert entspricht 5: Ausgabetext                               " > /dev/null
sleep 1
qdbus $progress close > /dev/null

Calendar Box

$ kdialog --calendar "Bitte das Datum auswählen:"

Getcolor Box

kdialog --getcolor

MsgBox mit HTML

kdialog --title "Diverse Ausgabemöglichkeiten mit HTML-Elementen innerhalb einer MsgBox" --msgbox "
Eine Grafik lässt in sich gut darstellen mit einem HTML-Befehl<hr>
<br>
<img src='laptop_30.png'></img><br><br>
weitere Textformatierungen, hier eine Liste.....
<ul>
	<li><b>fett</b></li>
	<li><i>kursiv</i></li>
	<li><u>unterstrichen</u></li>
</ul>
oder auch Überschriften.....
<h2>Große Überschrift in h2</h2>
<pre>für Codelistung unformartierter Text</pre>
"

kde-desktop.txt · Zuletzt geändert: 2021/02/15 09:47 von dwadmin