swf_types/
fill_styles.rs

1#[cfg(feature = "serde")]
2use ::serde::{Deserialize, Serialize};
3
4use crate::basic_types::{Matrix, StraightSRgba8};
5use crate::fixed::Sfixed8P8;
6use crate::gradient::{Gradient, MorphGradient};
7
8#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
9#[derive(Copy, Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)]
10pub struct Bitmap {
11  pub bitmap_id: u16,
12  pub matrix: Matrix,
13  pub repeating: bool,
14  pub smoothed: bool,
15}
16
17#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
18#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)]
19pub struct FocalGradient {
20  pub matrix: Matrix,
21  pub gradient: Gradient,
22  pub focal_point: Sfixed8P8,
23}
24
25#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
26#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)]
27pub struct LinearGradient {
28  pub matrix: Matrix,
29  pub gradient: Gradient,
30}
31
32#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
33#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)]
34pub struct RadialGradient {
35  pub matrix: Matrix,
36  pub gradient: Gradient,
37}
38
39#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
40#[derive(Copy, Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)]
41pub struct Solid {
42  pub color: StraightSRgba8,
43}
44
45#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
46#[derive(Copy, Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)]
47pub struct MorphBitmap {
48  pub bitmap_id: u16,
49  pub matrix: Matrix,
50  pub morph_matrix: Matrix,
51  pub repeating: bool,
52  pub smoothed: bool,
53}
54
55#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
56#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)]
57pub struct MorphFocalGradient {
58  pub matrix: Matrix,
59  pub morph_matrix: Matrix,
60  pub gradient: MorphGradient,
61  pub focal_point: Sfixed8P8,
62  pub morph_focal_point: Sfixed8P8,
63}
64
65#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
66#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)]
67pub struct MorphLinearGradient {
68  pub matrix: Matrix,
69  pub morph_matrix: Matrix,
70  pub gradient: MorphGradient,
71}
72
73#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
74#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)]
75pub struct MorphRadialGradient {
76  pub matrix: Matrix,
77  pub morph_matrix: Matrix,
78  pub gradient: MorphGradient,
79}
80
81#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
82#[derive(Copy, Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)]
83pub struct MorphSolid {
84  pub color: StraightSRgba8,
85  pub morph_color: StraightSRgba8,
86}