Class: Ruflet::UI::Controls::RufletComponents::SpinKitControl
- Defined in:
- lib/ruflet_ui/ruflet/ui/controls/materials/spinkit_controls.rb
Overview
Base for every flet_spinkit variant (flet.dev/docs/controls/spinkit/). Each concrete spinner is a LayoutControl with its own wire name (“SpinKitRotatingCircle”, “SpinKitWave”, …). The Dart widget reads color/size/duration for all of them plus the optional line_width / border_width / item_count / wave_type used by a few variants, so those are accepted on every spinner (the client ignores the ones a variant doesn’t use, matching the upstream implementation).
Constant Summary
Constants inherited from Control
Instance Attribute Summary
Attributes inherited from Control
#children, #id, #props, #runtime_page, #type, #wire_id
Instance Method Summary collapse
Methods inherited from Control
#[], #[]=, #emit, generate_id, #has_handler?, #method_missing, #on, #respond_to_missing?, #to_patch
Constructor Details
#initialize(id: nil, align: nil, animate_align: nil, animate_offset: nil, animate_opacity: nil, animate_position: nil, animate_rotation: nil, animate_scale: nil, animate_size: nil, aspect_ratio: nil, badge: nil, border_width: nil, bottom: nil, col: nil, color: nil, data: nil, disabled: nil, duration: nil, expand: nil, expand_loose: nil, height: nil, item_count: nil, key: nil, left: nil, line_width: nil, offset: nil, opacity: nil, right: nil, rotate: nil, rtl: nil, scale: nil, size: nil, tooltip: nil, top: nil, visible: nil, wave_type: nil, width: nil, on_animation_end: nil) ⇒ SpinKitControl
Returns a new instance of SpinKitControl.
15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 |
# File 'lib/ruflet_ui/ruflet/ui/controls/materials/spinkit_controls.rb', line 15 def initialize(id: nil, align: nil, animate_align: nil, animate_offset: nil, animate_opacity: nil, animate_position: nil, animate_rotation: nil, animate_scale: nil, animate_size: nil, aspect_ratio: nil, badge: nil, border_width: nil, bottom: nil, col: nil, color: nil, data: nil, disabled: nil, duration: nil, expand: nil, expand_loose: nil, height: nil, item_count: nil, key: nil, left: nil, line_width: nil, offset: nil, opacity: nil, right: nil, rotate: nil, rtl: nil, scale: nil, size: nil, tooltip: nil, top: nil, visible: nil, wave_type: nil, width: nil, on_animation_end: nil) raise ArgumentError, "spinkit size must be greater than or equal to 0" unless size.nil? || size >= 0 props = {} props[:align] = align unless align.nil? props[:animate_align] = animate_align unless animate_align.nil? props[:animate_offset] = animate_offset unless animate_offset.nil? props[:animate_opacity] = animate_opacity unless animate_opacity.nil? props[:animate_position] = animate_position unless animate_position.nil? props[:animate_rotation] = animate_rotation unless animate_rotation.nil? props[:animate_scale] = animate_scale unless animate_scale.nil? props[:animate_size] = animate_size unless animate_size.nil? props[:aspect_ratio] = aspect_ratio unless aspect_ratio.nil? props[:badge] = badge unless badge.nil? props[:border_width] = border_width unless border_width.nil? props[:bottom] = bottom unless bottom.nil? props[:col] = col unless col.nil? props[:color] = color unless color.nil? props[:data] = data unless data.nil? props[:disabled] = disabled unless disabled.nil? props[:duration] = duration unless duration.nil? props[:expand] = unless .nil? props[:expand_loose] = unless .nil? props[:height] = height unless height.nil? props[:item_count] = item_count unless item_count.nil? props[:key] = key unless key.nil? props[:left] = left unless left.nil? props[:line_width] = line_width unless line_width.nil? props[:offset] = offset unless offset.nil? props[:opacity] = opacity unless opacity.nil? props[:right] = right unless right.nil? props[:rotate] = rotate unless rotate.nil? props[:rtl] = rtl unless rtl.nil? props[:scale] = scale unless scale.nil? props[:size] = size unless size.nil? props[:tooltip] = tooltip unless tooltip.nil? props[:top] = top unless top.nil? props[:visible] = visible unless visible.nil? props[:wave_type] = wave_type unless wave_type.nil? props[:width] = width unless width.nil? props[:on_animation_end] = on_animation_end unless on_animation_end.nil? super(type: self.class::TYPE, id: id, **props) end |
Dynamic Method Handling
This class handles dynamic methods through the method_missing method in the class Ruflet::Control