Class SWTUtil


  • public class SWTUtil
    extends java.lang.Object
    Diverse statische SWT-Hilfsfunktionen.
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      static class  SWTUtil.ZoomLevel
      Die vordefinierten Zoomlevel.
    • Constructor Summary

      Constructors 
      Constructor Description
      SWTUtil()  
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static org.eclipse.swt.layout.GridLayout createGrid​(int numColumns, boolean makeEqualsWidth)
      Erzeugt ein rahmenloses GridLayout mit der angegebenen Anzahl von Spalten.
      static void disposeChildren​(org.eclipse.swt.widgets.Composite c)
      Disposed alle Kinder des Composites rekursiv jedoch nicht das Composite selbst.
      static java.lang.String escapeLabel​(java.lang.String text)
      Ersetzt Zeichen aus einem Text, die SWT-intern als Steuerzeichen gelten.
      static org.eclipse.swt.widgets.Canvas getCanvas​(org.eclipse.swt.widgets.Composite parent, org.eclipse.swt.graphics.Image image, int align)
      Erzeugt ein Canvas mit dem dem angegebenen Hintergrundbild.
      static int getDeviceZoom()
      Liefert den Zoom-Wert.
      static int getDPI()
      Liefert die DPI-Zahl des Bildschirms.
      static org.eclipse.swt.graphics.Image getImage​(java.io.InputStream is)
      Liefert ein SWT-Image basierend auf dem uebergebenen Dateinamen zurueck.
      static org.eclipse.swt.graphics.Image getImage​(java.lang.String filename)
      Liefert ein SWT-Image basierend auf dem uebergebenen Dateinamen zurueck.
      static org.eclipse.swt.graphics.Image getImage​(java.lang.String filename, java.lang.ClassLoader cl)
      Liefert ein SWT-Image basierend auf dem uebergebenen Dateinamen zurueck.
      static org.eclipse.jface.bindings.keys.KeyStroke getKeyStroke​(java.lang.String shortcut)
      Liefert das Shortcut-Objekt fuer die angegebene Tastenkombi.
      static int mm2px​(int mm)
      Rechnet eine Angabe von mm (Millimeter) entsprechend der DPI-Anzahl des Displays in Pixel um.
      static int pt2px​(int pt)
      Rechnet eine Angabe von pt (Point) entsprechend der DPI-Anzahl des Displays in Pixel um.
      static int scaledPx​(int px)
      Skaliert die Groessen-Angabe basierend auf dem Zoom-Faktor.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • SWTUtil

        public SWTUtil()
    • Method Detail

      • disposeChildren

        public static void disposeChildren​(org.eclipse.swt.widgets.Composite c)
        Disposed alle Kinder des Composites rekursiv jedoch nicht das Composite selbst.
        Parameters:
        c - Composite, dessen Kinder disposed werden sollen.
      • getImage

        public static org.eclipse.swt.graphics.Image getImage​(java.lang.String filename)
        Liefert ein SWT-Image basierend auf dem uebergebenen Dateinamen zurueck. Wenn die Datei nicht existiert, wird stattdessen ein 1x1 Pixel grosses und transparentes Dummy-Bild zurueckgeliefert.
        Parameters:
        filename - Dateiname (muss sich im Verzeichnis "img" befinden.
        Returns:
        das erzeugte Bild.
      • getDeviceZoom

        public static int getDeviceZoom()
        Liefert den Zoom-Wert.
        Returns:
        der Zoom-Wert.
      • getImage

        public static org.eclipse.swt.graphics.Image getImage​(java.lang.String filename,
                                                              java.lang.ClassLoader cl)
        Liefert ein SWT-Image basierend auf dem uebergebenen Dateinamen zurueck. Wenn die Datei nicht existiert, wird stattdessen ein 1x1 Pixel grosses und transparentes Dummy-Bild zurueckgeliefert.
        Parameters:
        filename - Dateiname (muss sich im Verzeichnis "img" befinden.
        cl - der Classloader, ueber den die Ressource geladen werden soll.
        Returns:
        das erzeugte Bild.
      • getImage

        public static org.eclipse.swt.graphics.Image getImage​(java.io.InputStream is)
        Liefert ein SWT-Image basierend auf dem uebergebenen Dateinamen zurueck. Wenn die Datei nicht existiert, wird stattdessen ein 1x1 Pixel grosses und transparentes Dummy-Bild zurueckgeliefert.
        Parameters:
        is - InputStream
        Returns:
        das erzeugte Bild.
      • getCanvas

        public static org.eclipse.swt.widgets.Canvas getCanvas​(org.eclipse.swt.widgets.Composite parent,
                                                               org.eclipse.swt.graphics.Image image,
                                                               int align)
        Erzeugt ein Canvas mit dem dem angegebenen Hintergrundbild.
        Parameters:
        parent - Composite, in dem das Canvas gemalt werden soll. Hinweis: Das Composite muss ein GridLayout haben.
        image - anzuzeigendes Hintergrundbild.
        align - logische Kombinationen aus SWT.TOP, SWT.BOTTOM, SWT.LEFT, SWT.RIGHT. Wenn sowohl SWT.TOP als auch SWT.BOTTOM angegeben sind, wird das Bild vertikal gestreckt.
        Returns:
        das erzeugte Canvas.
      • createGrid

        public static org.eclipse.swt.layout.GridLayout createGrid​(int numColumns,
                                                                   boolean makeEqualsWidth)
        Erzeugt ein rahmenloses GridLayout mit der angegebenen Anzahl von Spalten.
        Parameters:
        numColumns - Anzahl der Spalten.
        makeEqualsWidth - legt fest, ob die Spalten gleich gross ein sollen, falls es mehrere sind.
        Returns:
        das GridLayout.
      • getDPI

        public static final int getDPI()
        Liefert die DPI-Zahl des Bildschirms. Im Standard-Fall wird hier einfach Display#getDPI aufgerufen. Falls das System jedoch einen ungueltigen DPI-Wert zurueckliefert, kann er hier per Config-Parameter ueberschrieben werden um fuer eine korrekte Skalierung zu sorgen - auch dann, wenn das System falsche DPI-Werte meldet.
        Returns:
        die zu verwendende DPI-Zahl oder -1, wenn kein DPI-Wert ermittelt werden konnte.
      • pt2px

        public static final int pt2px​(int pt)
        Rechnet eine Angabe von pt (Point) entsprechend der DPI-Anzahl des Displays in Pixel um.
        Parameters:
        pt - Points.
        Returns:
        Anzahl der Pixel oder -1 wenn es zu einem Fehler kam.
      • scaledPx

        public static final int scaledPx​(int px)
        Skaliert die Groessen-Angabe basierend auf dem Zoom-Faktor.
        Parameters:
        px - die Groesse.
        Returns:
        die gezoomte Groesse.
      • mm2px

        public static final int mm2px​(int mm)
        Rechnet eine Angabe von mm (Millimeter) entsprechend der DPI-Anzahl des Displays in Pixel um.
        Parameters:
        mm - die Millimeter.
        Returns:
        Anzahl der Pixel oder -1 wenn es zu einem Fehler kam.
      • escapeLabel

        public static final java.lang.String escapeLabel​(java.lang.String text)
        Ersetzt Zeichen aus einem Text, die SWT-intern als Steuerzeichen gelten.
        Parameters:
        text - Originaler Text.
        Returns:
        ersetzter Text. BNUGZILLA 604 https://www.willuhn.de/bugzilla/show_bug.cgi?id=604
      • getKeyStroke

        public static org.eclipse.jface.bindings.keys.KeyStroke getKeyStroke​(java.lang.String shortcut)
        Liefert das Shortcut-Objekt fuer die angegebene Tastenkombi.
        Parameters:
        shortcut - Tastenkombi - z.Bsp. "ALT+F".
        Returns:
        das Shortcut-Objekt oder NULL, wenn "shortcut" NULL war oder der Shortcut nicht geparst werden konnte. In letzterem Fall erscheint auch eine Warnung im Log.