FTXUI 6.1.9
C++ functional terminal UI.
Loading...
Searching...
No Matches
linear_gradient.hpp
Go to the documentation of this file.
1// Copyright 2023 Arthur Sonzogni. Todos los derechos reservados.
2// El uso de este código fuente se rige por la licencia MIT que se puede encontrar en
3// el archivo LICENSE.
4#ifndef FTXUI_DOM_LINEAR_GRADIENT_HPP
5#define FTXUI_DOM_LINEAR_GRADIENT_HPP
6
7#include <optional>
8#include <vector>
9
10#include "ftxui/screen/color.hpp" // for Colors
11
12namespace ftxui {
13
14/// @brief Una clase que representa la configuración para el efecto de color de gradiente lineal.
15///
16/// Ejemplo:
17/// ```cpp
18/// LinearGradient()
19/// .Angle(45)
20/// .Stop(Color::Red, 0.0)
21/// .Stop(Color::Green, 0.5)
22/// .Stop(Color::Blue, 1.0);
23/// ```
24///
25/// También hay constructores abreviados:
26/// ```cpp
27/// LinearGradient(Color::Red, Color::Blue);
28/// LinearGradient(45, Color::Red, Color::Blue);
29/// ```
30///
31/// @ingroup dom
33 float angle = 0.f;
34
35 /// Un "stop" es un color en una posición específica en el gradiente.
36 /// La posición es un valor entre 0.0 y 1.0,
37 /// donde 0.0 es el inicio del gradiente
38 /// y 1.0 es el final del gradiente.
39 struct Stop {
41 std::optional<float> position;
42 };
43 std::vector<Stop> stops;
44
45 // Constructor simple
47 LinearGradient(Color begin, Color end);
48 LinearGradient(float angle, Color begin, Color end);
49
50 // Modificador usando el patrón "builder".
52 LinearGradient& Stop(Color color, float position);
54};
55
56} // namespace ftxui
57
58#endif // FTXUI_DOM_LINEAR_GRADIENT_HPP
LinearGradient & Stop(Color color, float position)
Añade una parada de color al gradiente.
LinearGradient & Angle(float angle)
Establece el ángulo del gradiente.
LinearGradient()
Construye el gradiente "vacío". Esto a menudo es seguido por llamadas a LinearGradient::Angle() y Lin...
std::vector< Stop > stops
Una clase que representa la configuración para el efecto de color de gradiente lineal.
Color es una clase que representa un color en la interfaz de usuario de la terminal.
Definition color.hpp:21
El espacio de nombres ftxui:: de FTXUI.
Definition animation.hpp:10
std::optional< float > position