render: Fix types depending on `tessellator` feature
This commit is contained in:
parent
de44c5494e
commit
1d12fc6169
|
@ -12,8 +12,7 @@ use crate::avm2_stub_method;
|
|||
use crate::display_object::TDisplayObject;
|
||||
use crate::drawing::Drawing;
|
||||
use crate::string::{AvmString, WStr};
|
||||
use ruffle_render::shape_utils::DrawCommand;
|
||||
use ruffle_render::tessellator::GradientType;
|
||||
use ruffle_render::shape_utils::{DrawCommand, GradientType};
|
||||
use std::f64::consts::FRAC_1_SQRT_2;
|
||||
use swf::{
|
||||
Color, FillStyle, Fixed16, Fixed8, Gradient, GradientInterpolation, GradientRecord,
|
||||
|
|
|
@ -1,8 +1,30 @@
|
|||
use crate::matrix::Matrix;
|
||||
use enum_map::Enum;
|
||||
use smallvec::SmallVec;
|
||||
use swf::{CharacterId, FillStyle, LineStyle, Rectangle, Shape, ShapeRecord, Twips};
|
||||
|
||||
pub use lyon::path::FillRule;
|
||||
#[derive(Copy, Clone, Debug, PartialEq)]
|
||||
pub enum FillRule {
|
||||
EvenOdd,
|
||||
NonZero,
|
||||
}
|
||||
|
||||
#[derive(Copy, Clone, PartialEq, Eq, Debug, Enum)]
|
||||
pub enum GradientType {
|
||||
Linear,
|
||||
Radial,
|
||||
Focal,
|
||||
}
|
||||
|
||||
#[cfg(feature = "tessellator")]
|
||||
impl From<FillRule> for lyon::path::FillRule {
|
||||
fn from(rule: FillRule) -> lyon::path::FillRule {
|
||||
match rule {
|
||||
FillRule::EvenOdd => lyon::path::FillRule::EvenOdd,
|
||||
FillRule::NonZero => lyon::path::FillRule::NonZero,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
pub fn calculate_shape_bounds(shape_records: &[swf::ShapeRecord]) -> swf::Rectangle<Twips> {
|
||||
let mut bounds = swf::Rectangle {
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
use crate::bitmap::BitmapSource;
|
||||
use crate::shape_utils::{DistilledShape, DrawCommand, DrawPath};
|
||||
use enum_map::Enum;
|
||||
use crate::shape_utils::{DistilledShape, DrawCommand, DrawPath, GradientType};
|
||||
use lyon::path::Path;
|
||||
use lyon::tessellation::{
|
||||
self,
|
||||
|
@ -137,7 +136,7 @@ impl ShapeTessellator {
|
|||
let result = match path {
|
||||
DrawPath::Fill { winding_rule, .. } => self.fill_tess.tessellate_path(
|
||||
&lyon_path,
|
||||
&FillOptions::default().with_fill_rule(winding_rule),
|
||||
&FillOptions::default().with_fill_rule(winding_rule.into()),
|
||||
&mut buffers_builder,
|
||||
),
|
||||
DrawPath::Stroke { style, .. } => {
|
||||
|
@ -407,10 +406,3 @@ impl StrokeVertexConstructor<Vertex> for RuffleVertexCtor {
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
#[derive(Copy, Clone, PartialEq, Eq, Debug, Enum)]
|
||||
pub enum GradientType {
|
||||
Linear,
|
||||
Radial,
|
||||
Focal,
|
||||
}
|
||||
|
|
|
@ -16,9 +16,9 @@ use ruffle_render::bitmap::{
|
|||
use ruffle_render::commands::{CommandHandler, CommandList};
|
||||
use ruffle_render::error::Error as BitmapError;
|
||||
use ruffle_render::quality::StageQuality;
|
||||
use ruffle_render::shape_utils::DistilledShape;
|
||||
use ruffle_render::shape_utils::{DistilledShape, GradientType};
|
||||
use ruffle_render::tessellator::{
|
||||
Gradient as TessGradient, GradientType, ShapeTessellator, Vertex as TessVertex,
|
||||
Gradient as TessGradient, ShapeTessellator, Vertex as TessVertex,
|
||||
};
|
||||
use ruffle_render::transform::Transform;
|
||||
use ruffle_web_common::{JsError, JsResult};
|
||||
|
|
|
@ -16,7 +16,8 @@ use enum_map::Enum;
|
|||
use once_cell::sync::OnceCell;
|
||||
use ruffle_render::bitmap::{BitmapHandle, BitmapHandleImpl, RgbaBufRead, SyncHandle};
|
||||
use ruffle_render::color_transform::ColorTransform;
|
||||
use ruffle_render::tessellator::{Gradient as TessGradient, GradientType, Vertex as TessVertex};
|
||||
use ruffle_render::shape_utils::GradientType;
|
||||
use ruffle_render::tessellator::{Gradient as TessGradient, Vertex as TessVertex};
|
||||
use std::cell::Cell;
|
||||
use std::sync::Arc;
|
||||
use swf::GradientSpread;
|
||||
|
|
Loading…
Reference in New Issue