Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
| anwenderwiki:linuxclient:buttonbar [2021/10/25 14:52] – [Bildschirme spiegeln] martin.res | anwenderwiki:linuxclient:buttonbar [2024/06/25 01:07] (aktuell) – martin.res | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| + | {{tag> linuxclients buttonbar widget}} | ||
| + | ====== ButtonBar für Ubuntu ====== | ||
| + | |||
| + | < | ||
| + | |||
| + | Mit diesem kleinen Widget kann man per Button auf der Desktop-Oberfläche von Ubuntu Shell-Befehle im Userkontext ausführen lassen.\\ | ||
| + | Für Windows siehe -> [[anwenderwiki: | ||
| + | |||
| + | {{ : | ||
| + | * Das Anmeldefenster im Lightdm ist immer auf dem Bildschirm, auf dem die Maus ist, findet man es nicht muss man die Maus nach rechts oder links bewegen. | ||
| + | * Das Widget lässt sich per cfg-Datei anpassen, maximal 20 Buttons sind möglich.\\ | ||
| + | * ab Version 0.20 der ButtonBar kann auch grafische Buttons erzeugen, siehe -> unten | ||
| + | * ab Version 0.21 kann die ButtonBar gleichzeitig auch auf einen erweiterten Bildschirm angezeigt werden. | ||
| + | * Negative Positionsangaben zählen von rechts oder unten, positive von links oder oben.\\ | ||
| + | * Die Befehle werden direkt ohne shell ausgeführt, | ||
| + | * Man kann das Programm über einen autostart-Eintrag bei der Anmeldung starten lassen (über dash-Suche: " | ||
| + | * Man legt es mit seiner cfg-Datei z.B. unter **''/ | ||
| + | * Es gibt keine Umgebungsvariablen, | ||
| + | <code text buttonbar.cfg> | ||
| + | Name = " | ||
| + | width = 200 | ||
| + | # Negative Positionswerte entsprechen einer Position von rechts oder unten | ||
| + | xpos = -20 | ||
| + | ypos = 40 | ||
| + | FixedPosition = 1 | ||
| + | # Anzeige der ButtonBar bei erweiterten Bildschirm auf beiden Bildschirmen: | ||
| + | AlleBildschirme = 1 | ||
| + | Hintergrundfarbe = $FFFFFF | ||
| + | BilderButtons = 0 | ||
| + | BWidth = 74 | ||
| + | BHeight = 74 | ||
| + | BilderPfad = " | ||
| + | Spalten = 3 | ||
| + | |||
| + | # BorderStyle : none | single | ||
| + | BorderStyle = " | ||
| + | |||
| + | [Button1] | ||
| + | Name = " | ||
| + | exec = sh -c "/ | ||
| + | BefehlsAusgabeAnzeigen = 0 | ||
| + | </ | ||
| + | |||
| + | * **FixedPosition=1** bewirkt, dass sich das ButtonBar Fenster auch nach Auflösungsänderung an der selben Bildschirmstelle befindet und sich selbständig sichtbar positioniert | ||
| + | * **AlleBildschirme=1** zeigt die ButtonBar auf Haupt- und erweiterten Bildschirm an (ab Version | ||
| + | * Die Option **BefehlsAusgabeAnzeigen** macht nur Sinn, wenn der Befehl auch eine echte Ausgabe hat, sonst erscheint ein leeres Fenster. Fehlermeldungen werden in dem Fenster nicht ausgegeben. | ||
| + | * **Name=" | ||
| + | |||
| + | |||
| + | |||
| + | <code text buttonbar.cfg> | ||
| + | [Programm] | ||
| + | Name=" | ||
| + | width = 250 | ||
| + | ButtonAnzahl = 4 | ||
| + | xpos = -20 | ||
| + | ypos = 40 | ||
| + | FixedPosition = 0 | ||
| + | Hintergrundfarbe = $FFFFFF | ||
| + | |||
| + | # BorderStyle : none | single | ||
| + | BorderStyle = " | ||
| + | |||
| + | [Button1] | ||
| + | Name = " | ||
| + | exec = " | ||
| + | BefehlsAusgabeAnzeigen = 1 | ||
| + | |||
| + | [Button2] | ||
| + | Name = " | ||
| + | exec = " | ||
| + | BefehlsAusgabeAnzeigen = 1 | ||
| + | |||
| + | [Button3] | ||
| + | Name = " | ||
| + | exec = " | ||
| + | BefehlsAusgabeAnzeigen = 1 | ||
| + | |||
| + | [Button4] | ||
| + | Name = " | ||
| + | exec = sh -c "echo ' | ||
| + | BefehlsAusgabeAnzeigen = 1 | ||
| + | </ | ||
| + | |||
| + | |||
| + | Um eine einfache Auflösungsumschaltung zu realisieren, | ||
| + | |||
| + | |||
| + | |||
| + | {{ : | ||
| + | |||
| + | |||
| + | |||
| + | <code text buttonbar.cfg> | ||
| + | [Programm] | ||
| + | Name=" | ||
| + | width = 100 | ||
| + | xpos = -20 | ||
| + | ypos = 40 | ||
| + | FixedPosition = 1 | ||
| + | Hintergrundfarbe = $FFFFFF | ||
| + | |||
| + | # BorderStyle : none | single | ||
| + | BorderStyle = " | ||
| + | |||
| + | # ButtonAnzahl maximal 20 | ||
| + | ButtonAnzahl = 2 | ||
| + | |||
| + | [Button1] | ||
| + | Name = " | ||
| + | exec = " | ||
| + | BefehlsAusgabeAnzeigen = 0 | ||
| + | |||
| + | [Button2] | ||
| + | Name = " | ||
| + | exec = " | ||
| + | BefehlsAusgabeAnzeigen = 0 | ||
| + | </ | ||
| + | |||
| + | |||
| + | ===== Auflösung " | ||
| + | Hinter einem VGA-Splitter o.ä. erkennt Ubuntu die Fähigkeiten des Monitors/ | ||
| + | < | ||
| + | xrandr --newmode " | ||
| + | xrandr --addmode VGA1 " | ||
| + | xrandr --output VGA1 --mode " | ||
| + | </ | ||
| + | Die vielen Parameter für den newmode-Befehl muss man vorher durch den cvt-Befehl ermitteln: | ||
| + | # cvt 1280 800 60 | ||
| + | |||
| + | In der buttonbar.cfg-Datei ruft man dann diese Befehle hintereinander ab: | ||
| + | < | ||
| + | [Button2] | ||
| + | Name = " | ||
| + | exec = sh -c " | ||
| + | BefehlsAusgabeAnzeigen = 0 | ||
| + | </ | ||
| + | |||
| + | ===== Bildschirme spiegeln ===== | ||
| + | |||
| + | Um den Lehrermonitor und einen angeschlossenen Beamer in den Spiegel-Modus zu versetzen, ohne die Systemeinstellungen aufrufen zu müssen: | ||
| + | |||
| + | [Button1] | ||
| + | Name = " | ||
| + | exec = " | ||
| + | BefehlsAusgabeAnzeigen = 0 | ||
| + | Bei mehreren Computerräumen mit verschiedenen Monitoren und Beamern kann man den Befehl auch an ein shell-Script auslagern. Im shell-Script können dann je nach PC-Name verschiedene Anschlüsse oder Auflösungen aktiviert werden und man kann trotzdem überall das selbe LINBO-Image verwenden. Siehe | ||
| + | [[anwenderwiki: | ||
| + | [Button1] | ||
| + | Name = " | ||
| + | exec = "/ | ||
| + | BefehlsAusgabeAnzeigen = 0 | ||
| + | ===== Befehl per sudo ausführen ===== | ||
| + | Alle Befehle werden zunächst im Userkontext ausgeführt. Wenn diese jedoch root-Rechte benötigen, dann muss der gewünschte Befehl per sudo aufgerufen werden. Um dies passwortlos für alle User zu erlauben muss eine neue Datei im Verzeichnis ''/ | ||
| + | <code text / | ||
| + | All All=NOPASSWD: | ||
| + | </ | ||
| + | |||
| + | < | ||
| + | [Button3] | ||
| + | Name = "sudo mount -a" | ||
| + | exec = "sudo /bin/mount -a" | ||
| + | BefehlsAusgabeAnzeigen = 0 | ||
| + | </ | ||
| + | |||
| + | ===== Grafische ButtonBar ===== | ||
| + | |||
| + | Ab Version 0.20 der Buttonbar kann sie auch grafische Buttons in einer oder mehreren Spalten darstellen. Die Grafiken zu den Buttons müssen im BMP-Format vorliegen.\\ | ||
| + | |||
| + | {{ : | ||
| + | |||
| + | |||
| + | Konfigurationsdatei: | ||
| + | < | ||
| + | ... | ||
| + | |||
| + | BilderButtons = 1 | ||
| + | BWidth = 74 | ||
| + | BHeight = 74 | ||
| + | BilderPfad = " | ||
| + | Spalten = 3 | ||
| + | |||
| + | # ButtonAnzahl maximal 20 | ||
| + | ButtonAnzahl = 5 | ||
| + | |||
| + | [Button1] | ||
| + | Name = " | ||
| + | exec = " | ||
| + | BefehlsAusgabeAnzeigen = 0 | ||
| + | GrafikName= " | ||
| + | |||
| + | ... | ||
| + | </ | ||
| + | * **BilderButtons=1** schaltet die Grafik-Funktion ein und die Texte ab. | ||
| + | * **BWidth, BHeight** gibt die Breite und Höhe der Buttons an, sollte zur Größe der Grafiken passen, somit etwas größer als die Grafiken sein (Diese werden __nicht__ skaliert). Z.B.: Grafiken mit Größe 64x64 Bit benötigen Buttons mit 74x74. | ||
| + | * **Spalten** gibt die Anzahl der Spalten der ButtonBar an. Für eine horizontale Darstellung wählt man soviele Spalten wie Buttons. Diese Funktion ist __nur__ für Grafiken verfügbar. | ||
| + | * **GrafikName** Angabe des Namens im Verzeichnis Bilder, das sich im Programm-Pfad befinden muss. | ||
| + | |||
| + | ===== Downloads ===== | ||
| + | |||
| + | Download 64 Bit -> | ||
| + | {{: | ||
| + | |||
| + | Download 64 Bit -> | ||
| + | {{: | ||
| + | Download 64 Bit -> | ||
| + | {{: | ||
| + | Download 32 Bit -> | ||
| + | {{: | ||
| + | Download Source -> | ||
| + | {{: | ||
| + | |||
| + | ===== Bekannte Probleme ===== | ||
| + | * ButtonBar startet sehr verzögert, bis alle Buttons angezeigt werden. Mögliche Abhilfe ist die Installation eines Paketes für gnome< | ||
| + |  | ||