// Copyright 2017 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef UI_VIEWS_LAYOUT_LAYOUT_PROVIDER_H_ #define UI_VIEWS_LAYOUT_LAYOUT_PROVIDER_H_ #include "ui/gfx/geometry/insets.h" #include "ui/gfx/geometry/size.h" #include "ui/gfx/shadow_value.h" #include "ui/views/style/typography_provider.h" #include "ui/views/views_export.h" namespace views { enum InsetsMetric { … }; enum DistanceMetric { … }; // The type of a dialog content element. kText should be used for Labels or // other elements that only show text. Otherwise kControl should be used. enum class DialogContentType { … }; enum class Emphasis { … }; // ShapeContextTokens are enums specific to the context of a Views object. // This includes components such as Buttons, Labels, Textfields, Dropdowns, etc. // These context tokens are granular to the entire client and will map to // sys token values (see below). enum class ShapeContextTokens { … }; // ShapeSysTokens are tokens that map to a fixed value that aligns with UX/UI. // Different from context tokens that will expand, sys tokens are more selective // and are not used by the client. Context tokens will be mapped to a // Sys token which then will fetch the corresponding fixed value. enum class ShapeSysTokens { … }; class VIEWS_EXPORT LayoutProvider { … }; } // namespace views #endif // UI_VIEWS_LAYOUT_LAYOUT_PROVIDER_H_