#ifndef UI_VIEWS_BACKGROUND_H_
#define UI_VIEWS_BACKGROUND_H_
#include <stddef.h>
#include <memory>
#include <optional>
#include "build/build_config.h"
#include "third_party/skia/include/core/SkColor.h"
#include "ui/base/themed_vector_icon.h"
#include "ui/color/color_id.h"
#include "ui/gfx/color_palette.h"
#include "ui/gfx/geometry/rounded_corners_f.h"
#include "ui/views/views_export.h"
namespace gfx {
class Canvas;
}
namespace ui {
class ThemedVectorIcon;
}
namespace views {
class Painter;
class View;
class VIEWS_EXPORT Background { … };
VIEWS_EXPORT std::unique_ptr<Background> CreateSolidBackground(SkColor color);
VIEWS_EXPORT std::unique_ptr<Background> CreateRoundedRectBackground(
SkColor color,
float radius,
int for_border_thickness = 0);
VIEWS_EXPORT std::unique_ptr<Background> CreateRoundedRectBackground(
SkColor color,
const gfx::RoundedCornersF& radii,
int for_border_thickness = 0);
VIEWS_EXPORT std::unique_ptr<Background> CreateThemedRoundedRectBackground(
ui::ColorId color_id,
float radius,
int for_border_thickness = 0);
VIEWS_EXPORT std::unique_ptr<Background> CreateThemedRoundedRectBackground(
ui::ColorId color_id,
float top_radius,
float bottom_radius,
int for_border_thickness = 0);
VIEWS_EXPORT std::unique_ptr<Background> CreateThemedRoundedRectBackground(
ui::ColorId color_id,
const gfx::RoundedCornersF& radii,
int for_border_thickness = 0);
VIEWS_EXPORT std::unique_ptr<Background> CreateThemedSolidBackground(
ui::ColorId color_id);
VIEWS_EXPORT std::unique_ptr<Background> CreateBackgroundFromPainter(
std::unique_ptr<Painter> painter);
VIEWS_EXPORT std::unique_ptr<Background> CreateThemedVectorIconBackground(
const ui::ThemedVectorIcon& icon);
}
#endif