示例#1
0
  public static final LookAndFeelType getLAF() {
    if (lookAndFeelType == null) {
      try {
        initializeLookAndFeel();
      } catch (InitializationException e) {
        LogManager.log(e);
      }
      lookAndFeelType = LookAndFeelType.DEFAULT;

      if (UiMode.getCurrentUiMode() == UiMode.SWING) {
        LookAndFeel laf = UIManager.getLookAndFeel();
        if (laf != null) {
          String id = laf.getID();
          for (LookAndFeelType type : LookAndFeelType.values()) {
            if (id.equals(LookAndFeelType.WINDOWS_XP.getId())
                || id.equals(LookAndFeelType.WINDOWS_CLASSIC.getId())) {
              final Object object =
                  Toolkit.getDefaultToolkit().getDesktopProperty(WINDOWS_XP_THEME_MARKER_PROPERTY);
              boolean xpThemeActive = false;
              if (object != null) {
                xpThemeActive = (Boolean) object;
              }
              lookAndFeelType =
                  (xpThemeActive) ? LookAndFeelType.WINDOWS_XP : LookAndFeelType.WINDOWS_CLASSIC;
              break;
            } else if (id.equals(type.getId())) {
              lookAndFeelType = type;
              break;
            }
          }
        }
      }
    }
    return lookAndFeelType;
  }
示例#2
0
 public static final String getLookAndFeelClassNameByShortName(String name) {
   if (name == null) {
     return null;
   }
   for (LookAndFeelType lafType : LookAndFeelType.values()) {
     if (lafType.getId() != null && lafType.getClassName() != null) {
       if (name.toLowerCase(Locale.ENGLISH).equals(lafType.getId().toLowerCase(Locale.ENGLISH))) {
         return lafType.getClassName();
       }
     }
   }
   return name;
 }