Inheritance: Asset
        public TextView(Font font, Object obj, int wrapWidth = Int32.MaxValue)
        {
            Debug.Assert(font != null);

            m_font = font;
            SetText(obj, wrapWidth);
        }
        public PopupList(Font font, String[] names, int minWidth)
        {
            RectView back = new RectView(0, 0, 100, 100, Color.Gray, Color.Black);
            AddView(back);

            View contentView = new View(100, 100);

            int w = minWidth;
            items = new ListItem[names.Length];
            for (int i = 0; i < names.Length; ++i)
            {
                ListItem item = new ListItem(font, names[i], w, font.FontHeight());
                item.id = i;
                item.buttonDelegate = OnItemSelected;
                contentView.AddView(item);
                items[i] = item;
            }

            contentView.LayoutVer(2);
            contentView.ResizeToFitViewsVer();

            AddView(contentView);

            back.width = contentView.width;
            back.height = contentView.height;

            width = contentView.width;
            height = contentView.height;
        }
 public TextButton(String text, Font font, float x, float y, float width, float height)
     : base(x, y, width, height)
 {
     this.font = font;
     AddBackground();
     SetText(text);
 }
        public DemoDebugView(Font font)
        {
            m_tickView = new TextView(font, "Tick: 9999999999");
            AddView(m_tickView);

            LayoutVer(0);
            ResizeToFitViews();
        }
        public InputTypeView(int index, InputType inputType, Font font, float width, float height)
            : base(width, height)
        {
            this.index = index;
            this.inputType = inputType;

            focusable = true;

            View leftArrowView = new TextView(font, "<");
            AddView(leftArrowView);

            View rightArrowView = new TextView(font, ">");
            rightArrowView.x = width - rightArrowView.width;
            AddView(rightArrowView);

            typeView = new TextView(font, ToString(inputType));
            typeView.alignX = View.ALIGN_CENTER;
            typeView.x = 0.5f * width;
            AddView(typeView);
        }
        public CConsole(Font font)
            : this(Application.GetWidth(), 0.5f * Application.GetHeight())
        {
            this.font = font;

            AllowsDrawPrevious = true;
            AllowsUpdatePrevious = true;

            charWidth = font.StringWidth("W");
            lineHeight = font.FontHeight();
            lineSpacing = 0;

            backColor = new Color(0.0f, 0.0f, 0.0f, 0.75f);
            carretVisible = true;

            keyBindings = new Dictionary<KeyCode, char>();
            keyBindings[KeyCode.OemMinus] = '-';
            keyBindings[KeyCode.OemPlus] = '=';
            keyBindings[KeyCode.OemComma] = ',';
            keyBindings[KeyCode.OemPeriod] = '.';
            keyBindings[KeyCode.OemQuestion] = '/';
            keyBindings[KeyCode.OemOpenBrackets] = '[';
            keyBindings[KeyCode.OemCloseBrackets] = ']';
            keyBindings[KeyCode.OemQuotes] = '\\';
            keyBindings[KeyCode.Divide] = '/';
            keyBindings[KeyCode.Multiply] = '*';
            keyBindings[KeyCode.Subtract] = '-';
            keyBindings[KeyCode.Add] = '+';
            keyBindings[KeyCode.OemSemicolon] = ';';
            keyBindings[KeyCode.OemTilde] = '\'';
            keyBindings[KeyCode.Decimal] = '.';
            keyBindings[KeyCode.NumPad1] = '1';
            keyBindings[KeyCode.NumPad2] = '2';
            keyBindings[KeyCode.NumPad3] = '3';
            keyBindings[KeyCode.NumPad4] = '4';
            keyBindings[KeyCode.NumPad5] = '5';
            keyBindings[KeyCode.NumPad6] = '6';
            keyBindings[KeyCode.NumPad7] = '7';
            keyBindings[KeyCode.NumPad8] = '8';
            keyBindings[KeyCode.NumPad9] = '9';
            keyBindings[KeyCode.NumPad0] = '0';

            keyShiftBindings = new Dictionary<KeyCode, char>();
            keyShiftBindings[KeyCode.OemMinus] = '_';
            keyShiftBindings[KeyCode.OemPlus] = '+';
            keyShiftBindings[KeyCode.OemComma] = '<';
            keyShiftBindings[KeyCode.OemPeriod] = '>';
            keyShiftBindings[KeyCode.OemQuestion] = '?';
            keyShiftBindings[KeyCode.D1] = '!';
            keyShiftBindings[KeyCode.D2] = '@';
            keyShiftBindings[KeyCode.D3] = '#';
            keyShiftBindings[KeyCode.D4] = '$';
            keyShiftBindings[KeyCode.D5] = '%';
            keyShiftBindings[KeyCode.D6] = '^';
            keyShiftBindings[KeyCode.D7] = '&';
            keyShiftBindings[KeyCode.D8] = '*';
            keyShiftBindings[KeyCode.D9] = '(';
            keyShiftBindings[KeyCode.D0] = ')';
            keyShiftBindings[KeyCode.OemOpenBrackets] = '{';
            keyShiftBindings[KeyCode.OemCloseBrackets] = '}';
            keyShiftBindings[KeyCode.OemQuotes] = '|';
            keyShiftBindings[KeyCode.OemSemicolon] = ':';
            keyShiftBindings[KeyCode.OemTilde] = '"';

            ScheduleTimer(OnBlinkTimer, 0.25f, true);
        }
        public ListItem(Font font, String text, int width, int height)
            : base(width, height)
        {
            this.text = text;

            backView = new RectView(0, 0, width, height, Color.Black, Color.Black);
            backView.visible = false;
            AddView(backView);

            textView = new TextView(font, text);
            textView.alignX = View.ALIGN_CENTER;
            textView.x = 0.5f * width;
            AddView(textView);
        }
 public TextView(Font font, Object obj)
     : this(font, obj, Int32.MaxValue)
 {
 }