Enum ThemeMode

java.lang.Object
java.lang.Enum<ThemeMode>
com.codename1.annotations.buildhints.ThemeMode
All Implemented Interfaces:
Comparable<ThemeMode>

public enum ThemeMode extends Enum<ThemeMode>

The look a build asks the platform for.

ONE enum for every hint that selects a theme, not one per platform. The domains overlap almost entirely and differ in a constant or two, which is not a reason to make a developer learn three names for modern -- and three enums drift, which is worse than the thing they were separated to prevent.

Where a hint really does accept less than all of this, its attribute says so with @Hint(valuePattern = ...) and the annotation processor refuses the rest. That is a build error naming the constant and the hint, which is what the old arrangement could not give: passing a constant the builder does not recognise is not an error there, it is a silent fallback to the default.

  • Enum Constant Details

    • DEFAULT

      public static final ThemeMode DEFAULT
      Say nothing, and let the build server apply its own default.
    • AUTO

      public static final ThemeMode AUTO
      Follow the device's own light/dark setting.
    • MODERN

      public static final ThemeMode MODERN
      The current platform look.
    • IOS7

      public static final ThemeMode IOS7
      The flat iOS 7 look.
    • HOLOLIGHT

      public static final ThemeMode HOLOLIGHT
      The Android Holo light look.
    • LEGACY

      public static final ThemeMode LEGACY
      The pre-modern look for the platform.
    • CUSTOM

      public static final ThemeMode CUSTOM
      The theme the application ships, rather than a platform one.
  • Method Details

    • values

      public static ThemeMode[] values()
      Returns an array containing the constants of this enum type, in the order they are declared.
      Returns:
      an array containing the constants of this enum type, in the order they are declared
    • valueOf

      public static ThemeMode valueOf(String name)
      Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
      Parameters:
      name - the name of the enum constant to be returned.
      Returns:
      the enum constant with the specified name
      Throws:
      IllegalArgumentException - if this enum type has no constant with the specified name
      NullPointerException - if the argument is null