1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #ifndef UI_BASE_UI_BASE_TYPES_H_ 6 #define UI_BASE_UI_BASE_TYPES_H_ 7 8 #include "ui/base/ui_base_export.h" 9 10 namespace ui { 11 12 class Event; 13 14 // Window "show" state. These values are written to disk so should not be 15 // changed. 16 enum WindowShowState { 17 // A default un-set state. 18 SHOW_STATE_DEFAULT = 0, 19 SHOW_STATE_NORMAL = 1, 20 SHOW_STATE_MINIMIZED = 2, 21 SHOW_STATE_MAXIMIZED = 3, 22 SHOW_STATE_INACTIVE = 4, // Views only, not persisted. 23 SHOW_STATE_FULLSCREEN = 5, 24 SHOW_STATE_DETACHED = 6, // Views only; detached panel. 25 SHOW_STATE_END = 7 // The end of show state enum. 26 }; 27 28 // Dialog button identifiers used to specify which buttons to show the user. 29 enum DialogButton { 30 DIALOG_BUTTON_NONE = 0, 31 DIALOG_BUTTON_OK = 1, 32 DIALOG_BUTTON_CANCEL = 2, 33 }; 34 35 // Specifies the type of modality applied to a window. Different modal 36 // treatments may be handled differently by the window manager. 37 enum ModalType { 38 MODAL_TYPE_NONE = 0, // Window is not modal. 39 MODAL_TYPE_WINDOW = 1, // Window is modal to its transient parent. 40 MODAL_TYPE_CHILD = 2, // Window is modal to a child of its transient parent. 41 MODAL_TYPE_SYSTEM = 3 // Window is modal to all other windows. 42 }; 43 44 // TODO(varunjain): Remove MENU_SOURCE_NONE (crbug.com/250964) 45 enum MenuSourceType { 46 MENU_SOURCE_NONE = 0, 47 MENU_SOURCE_MOUSE = 1, 48 MENU_SOURCE_KEYBOARD = 2, 49 MENU_SOURCE_TOUCH = 3, 50 MENU_SOURCE_TOUCH_EDIT_MENU = 4, 51 MENU_SOURCE_TYPE_LAST = MENU_SOURCE_TOUCH_EDIT_MENU 52 }; 53 54 UI_BASE_EXPORT MenuSourceType GetMenuSourceTypeForEvent(const ui::Event& event); 55 56 } // namespace ui 57 58 #endif // UI_BASE_UI_BASE_TYPES_H_ 59