Version: 2017.3 (switch to 2017.4)
LanguageEnglish
  • C#
  • JS

Script language

Select your preferred scripting language. All code snippets will be displayed in this language.

EditorGUI.MaskField

public static int MaskField(Rect position, GUIContent label, int mask, string[] displayedOptions, GUIStyle style = EditorStyles.popup);
public static int MaskField(Rect position, string label, int mask, string[] displayedOptions, GUIStyle style = EditorStyles.popup);
public static int MaskField(Rect position, int mask, string[] displayedOptions, GUIStyle style = EditorStyles.popup);

Parameters

position Rectangle on the screen to use for this control.
label Label for the field.
mask The current mask to display.
displayedOption A string array containing the labels for each flag.
style Optional GUIStyle.
displayedOptions A string array containing the labels for each flag.

Returns

int The value modified by the user.

Description

Make a field for masks.

Note: The mask values for the flags associated with each option in the menu will be consecutive powers of 2 starting with 1, i.e. 1, 2, 4, 8, 16, and so on.


Simple window that shows the mask field.

class SimpleMaskUsage extends EditorWindow {
    @MenuItem("Examples/Mask Field Usage")
    static function Init() {
        var window = GetWindow(SimpleMaskUsage);
        window.Show();
    }

var flags : int = 0; var options : String[] = ["CanJump", "CanShoot", "CanSwim"]; function OnGUI() { flags = EditorGUI.MaskField (new Rect (0, 0, 300, 20), "Player Flags", flags, options, false); } }

Did you find this page useful? Please give it a rating: