Class SWTUtil

java.lang.Object
de.willuhn.jameica.gui.util.SWTUtil

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

    Nested Classes
    Modifier and Type
    Class
    Description
    static enum 
    Die vordefinierten Zoomlevel.
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    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 final String
    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
    Liefert den Zoom-Wert.
    static final int
    Liefert die DPI-Zahl des Bildschirms.
    static org.eclipse.swt.graphics.Image
    Liefert ein SWT-Image basierend auf dem uebergebenen Dateinamen zurueck.
    static org.eclipse.swt.graphics.Image
    getImage(String filename)
    Liefert ein SWT-Image basierend auf dem uebergebenen Dateinamen zurueck.
    static org.eclipse.swt.graphics.Image
    getImage(String filename, ClassLoader cl)
    Liefert ein SWT-Image basierend auf dem uebergebenen Dateinamen zurueck.
    static org.eclipse.jface.bindings.keys.KeyStroke
    getKeyStroke(String shortcut)
    Liefert das Shortcut-Objekt fuer die angegebene Tastenkombi.
    static final int
    mm2px(int mm)
    Rechnet eine Angabe von mm (Millimeter) entsprechend der DPI-Anzahl des Displays in Pixel um.
    static final int
    pt2px(int pt)
    Rechnet eine Angabe von pt (Point) entsprechend der DPI-Anzahl des Displays in Pixel um.
    static final 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 Details

    • SWTUtil

      public SWTUtil()
  • Method Details

    • 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(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(String filename, 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(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 String escapeLabel(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(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.