kredki 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/lib/kredki/core/application.rb +314 -0
- data/lib/kredki/core/color.rb +100 -0
- data/lib/kredki/core/event/block_event_reaction.rb +44 -0
- data/lib/kredki/core/event/composite_event_manager.rb +37 -0
- data/lib/kredki/core/event/event.rb +91 -0
- data/lib/kredki/core/event/event_manager.rb +60 -0
- data/lib/kredki/core/event/event_manager_jobs.rb +53 -0
- data/lib/kredki/core/event/event_reaction.rb +36 -0
- data/lib/kredki/core/event/family/drop_event.rb +40 -0
- data/lib/kredki/core/event/family/exit_event.rb +5 -0
- data/lib/kredki/core/event/family/focus_enter_event.rb +5 -0
- data/lib/kredki/core/event/family/focus_leave_event.rb +5 -0
- data/lib/kredki/core/event/family/hide_event.rb +5 -0
- data/lib/kredki/core/event/family/joystick_event.rb +102 -0
- data/lib/kredki/core/event/family/key_event.rb +40 -0
- data/lib/kredki/core/event/family/mouse_event.rb +190 -0
- data/lib/kredki/core/event/family/pastele_event.rb +11 -0
- data/lib/kredki/core/event/family/show_event.rb +5 -0
- data/lib/kredki/core/event/family/text_event.rb +23 -0
- data/lib/kredki/core/event/family/tick_event.rb +5 -0
- data/lib/kredki/core/event/family/update_complete_event.rb +5 -0
- data/lib/kredki/core/event/family/window_event.rb +108 -0
- data/lib/kredki/core/event/job_event_reaction.rb +44 -0
- data/lib/kredki/core/event/joystick_event_manager.rb +30 -0
- data/lib/kredki/core/event/keyboard_event_manager.rb +29 -0
- data/lib/kredki/core/event/method_event_reaction.rb +46 -0
- data/lib/kredki/core/event/mouse_event_manager.rb +27 -0
- data/lib/kredki/core/font.rb +53 -0
- data/lib/kredki/core/job/after_job.rb +59 -0
- data/lib/kredki/core/job/job.rb +108 -0
- data/lib/kredki/core/job/loop_job.rb +87 -0
- data/lib/kredki/core/job/play_animation_job.rb +44 -0
- data/lib/kredki/core/job/play_job.rb +41 -0
- data/lib/kredki/core/job/play_loop_animation_job.rb +98 -0
- data/lib/kredki/core/job/play_loop_job.rb +104 -0
- data/lib/kredki/core/job/side_job.rb +62 -0
- data/lib/kredki/core/kernel-path.rb +71 -0
- data/lib/kredki/core/kredki.rb +89 -0
- data/lib/kredki/core/linear_gradient.rb +43 -0
- data/lib/kredki/core/media/clipboard.rb +35 -0
- data/lib/kredki/core/media/joystick.rb +199 -0
- data/lib/kredki/core/media/keyboard.rb +84 -0
- data/lib/kredki/core/media/keyboard_modifiers_decoder.rb +154 -0
- data/lib/kredki/core/media/mouse.rb +197 -0
- data/lib/kredki/core/paint/animation.rb +247 -0
- data/lib/kredki/core/paint/area.rb +67 -0
- data/lib/kredki/core/paint/block_shape_area.rb +102 -0
- data/lib/kredki/core/paint/ellipse.rb +22 -0
- data/lib/kredki/core/paint/paint.rb +392 -0
- data/lib/kredki/core/paint/picture.rb +126 -0
- data/lib/kredki/core/paint/rectangle.rb +202 -0
- data/lib/kredki/core/paint/scene.rb +277 -0
- data/lib/kredki/core/paint/shape.rb +394 -0
- data/lib/kredki/core/paint/shape_area.rb +57 -0
- data/lib/kredki/core/paint/text.rb +222 -0
- data/lib/kredki/core/pastele/pastele-extern.rb +139 -0
- data/lib/kredki/core/pastele/pastele.rb +205 -0
- data/lib/kredki/core/radial_gradient.rb +45 -0
- data/lib/kredki/core/setup.rb +214 -0
- data/lib/kredki/core/window/pane.rb +178 -0
- data/lib/kredki/core/window/pane_event_manager.rb +44 -0
- data/lib/kredki/core/window/pane_events.rb +366 -0
- data/lib/kredki/core/window/window.rb +584 -0
- data/lib/kredki/core.rb +2 -0
- data/lib/kredki/hide.rb +9 -0
- data/lib/kredki/irb.rb +90 -0
- data/lib/kredki/module.rb +3 -0
- data/lib/kredki/pads/application.rb +13 -0
- data/lib/kredki/pads/button.rb +151 -0
- data/lib/kredki/pads/checkbox/checkbox.rb +68 -0
- data/lib/kredki/pads/checkbox/checkbox_button.rb +65 -0
- data/lib/kredki/pads/context/item.rb +65 -0
- data/lib/kredki/pads/context/item_group.rb +10 -0
- data/lib/kredki/pads/context/layer.rb +59 -0
- data/lib/kredki/pads/context/menu.rb +77 -0
- data/lib/kredki/pads/context/pad.rb +26 -0
- data/lib/kredki/pads/context/primary_layer.rb +51 -0
- data/lib/kredki/pads/context/secondary_layer.rb +60 -0
- data/lib/kredki/pads/item/item.rb +140 -0
- data/lib/kredki/pads/item/item_group.rb +44 -0
- data/lib/kredki/pads/item/item_x.rb +22 -0
- data/lib/kredki/pads/item/item_y.rb +31 -0
- data/lib/kredki/pads/label.rb +71 -0
- data/lib/kredki/pads/layer.rb +326 -0
- data/lib/kredki/pads/layout/align.rb +10 -0
- data/lib/kredki/pads/layout/layout.rb +88 -0
- data/lib/kredki/pads/layout/way.rb +99 -0
- data/lib/kredki/pads/layout/x_way.rb +119 -0
- data/lib/kredki/pads/layout/y_way.rb +120 -0
- data/lib/kredki/pads/list/item.rb +117 -0
- data/lib/kredki/pads/list/item_group.rb +36 -0
- data/lib/kredki/pads/list/pad.rb +74 -0
- data/lib/kredki/pads/list/tree/item.rb +138 -0
- data/lib/kredki/pads/list/tree/item_group.rb +86 -0
- data/lib/kredki/pads/list/tree/pad.rb +94 -0
- data/lib/kredki/pads/module.rb +11 -0
- data/lib/kredki/pads/note.rb +212 -0
- data/lib/kredki/pads/notes.rb +32 -0
- data/lib/kredki/pads/option/option.rb +121 -0
- data/lib/kredki/pads/option/option_item.rb +15 -0
- data/lib/kredki/pads/option/option_item_group.rb +16 -0
- data/lib/kredki/pads/option/option_layer.rb +81 -0
- data/lib/kredki/pads/pad/animation_pad.rb +106 -0
- data/lib/kredki/pads/pad/glyph_pad.rb +71 -0
- data/lib/kredki/pads/pad/pad.rb +1290 -0
- data/lib/kredki/pads/pad/pad_events.rb +358 -0
- data/lib/kredki/pads/pad/picture_pad.rb +89 -0
- data/lib/kredki/pads/pad/rectangle_pad.rb +181 -0
- data/lib/kredki/pads/pad/scroll_pad.rb +176 -0
- data/lib/kredki/pads/pad/shape_pad.rb +148 -0
- data/lib/kredki/pads/pad/space_pad.rb +33 -0
- data/lib/kredki/pads/pad/text_pad.rb +310 -0
- data/lib/kredki/pads/pane.rb +267 -0
- data/lib/kredki/pads/portal_layer.rb +94 -0
- data/lib/kredki/pads/radio/group.rb +45 -0
- data/lib/kredki/pads/radio/item.rb +69 -0
- data/lib/kredki/pads/radio/item_button.rb +143 -0
- data/lib/kredki/pads/service/event_queue.rb +79 -0
- data/lib/kredki/pads/service/service.rb +248 -0
- data/lib/kredki/pads/service/service_event_manager.rb +43 -0
- data/lib/kredki/pads/service/service_filter.rb +98 -0
- data/lib/kredki/pads/service/service_inherited.rb +48 -0
- data/lib/kredki/pads/setup.rb +36 -0
- data/lib/kredki/pads/slider/slider.rb +145 -0
- data/lib/kredki/pads/slider/slider_x.rb +41 -0
- data/lib/kredki/pads/slider/slider_y.rb +41 -0
- data/lib/kredki/pads/table/cell.rb +22 -0
- data/lib/kredki/pads/table/column.rb +63 -0
- data/lib/kredki/pads/table/column_layout.rb +88 -0
- data/lib/kredki/pads/table/pad.rb +116 -0
- data/lib/kredki/pads/table/row.rb +24 -0
- data/lib/kredki/pads/table/scroll_rows.rb +50 -0
- data/lib/kredki/pads/text/editable_text_verse.rb +77 -0
- data/lib/kredki/pads/text/editable_text_verses.rb +59 -0
- data/lib/kredki/pads/text/navigable_text_pad.rb +413 -0
- data/lib/kredki/pads/text/text_edition.rb +97 -0
- data/lib/kredki/pads/text/text_navigation.rb +109 -0
- data/lib/kredki/pads/toolbar/item.rb +62 -0
- data/lib/kredki/pads/toolbar/item_group.rb +22 -0
- data/lib/kredki/pads/toolbar/layer.rb +41 -0
- data/lib/kredki/pads/toolbar/pad.rb +51 -0
- data/lib/kredki/pads/toolbar/primary_layer.rb +64 -0
- data/lib/kredki/pads/window.rb +11 -0
- data/lib/kredki/script.rb +29 -0
- data/lib/kredki/setup.rb +2 -0
- data/lib/kredki/test.rb +35 -0
- data/lib/kredki.rb +10 -0
- data/lib/readme.md +31 -0
- data/stuff/config/config.rb +431 -0
- data/stuff/config/pads_config.rb +111 -0
- data/stuff/dll/SDL3.dll +0 -0
- data/stuff/dll/pastele.dll +0 -0
- data/stuff/dll/thorvg-1.dll +0 -0
- data/stuff/font/MartianMono-StdRg.ttf +0 -0
- data/stuff/font/MavenPro-Medium.ttf +0 -0
- data/stuff/font/MavenPro-Regular.ttf +0 -0
- data/stuff/glyph/alert-circle-svgrepo-com.svg +4 -0
- data/stuff/glyph/alert-triangle-svgrepo-com.svg +12 -0
- data/stuff/glyph/archivebox-svgrepo-com.svg +5 -0
- data/stuff/glyph/arrow-2-ccw-svgrepo-com.svg +5 -0
- data/stuff/glyph/arrow-2-cw-svgrepo-com.svg +5 -0
- data/stuff/glyph/arrow-2-rectangle-path-svgrepo-com.svg +5 -0
- data/stuff/glyph/arrow-4-way-svgrepo-com.svg +4 -0
- data/stuff/glyph/arrow-ccw-svgrepo-com.svg +4 -0
- data/stuff/glyph/arrow-circle-down-svgrepo-com.svg +4 -0
- data/stuff/glyph/arrow-circle-left-svgrepo-com.svg +4 -0
- data/stuff/glyph/arrow-circle-right-svgrepo-com.svg +4 -0
- data/stuff/glyph/arrow-circle-up-svgrepo-com.svg +4 -0
- data/stuff/glyph/arrow-cw-svgrepo-com.svg +4 -0
- data/stuff/glyph/arrow-down-svgrepo-com.svg +4 -0
- data/stuff/glyph/arrow-from-line-down-svgrepo-com.svg +5 -0
- data/stuff/glyph/arrow-from-line-left-svgrepo-com.svg +5 -0
- data/stuff/glyph/arrow-from-line-right-svgrepo-com.svg +5 -0
- data/stuff/glyph/arrow-from-line-up-svgrepo-com.svg +5 -0
- data/stuff/glyph/arrow-from-shape-right-svgrepo-com.svg +5 -0
- data/stuff/glyph/arrow-from-shape-up-svgrepo-com.svg +5 -0
- data/stuff/glyph/arrow-left-svgrepo-com.svg +4 -0
- data/stuff/glyph/arrow-right-arrow-left-svgrepo-com.svg +5 -0
- data/stuff/glyph/arrow-right-svgrepo-com.svg +4 -0
- data/stuff/glyph/arrow-shape-turn-left-svgrepo-com.svg +4 -0
- data/stuff/glyph/arrow-shape-turn-right-svgrepo-com.svg +4 -0
- data/stuff/glyph/arrow-small-down-svgrepo-com.svg +4 -0
- data/stuff/glyph/arrow-small-left-svgrepo-com.svg +4 -0
- data/stuff/glyph/arrow-small-right-svgrepo-com.svg +4 -0
- data/stuff/glyph/arrow-small-up-svgrepo-com.svg +4 -0
- data/stuff/glyph/arrow-thin-down-svgrepo-com.svg +4 -0
- data/stuff/glyph/arrow-thin-left-svgrepo-com.svg +4 -0
- data/stuff/glyph/arrow-thin-right-svgrepo-com.svg +4 -0
- data/stuff/glyph/arrow-thin-up-svgrepo-com.svg +4 -0
- data/stuff/glyph/arrow-to-line-down-svgrepo-com.svg +5 -0
- data/stuff/glyph/arrow-to-line-left-svgrepo-com.svg +5 -0
- data/stuff/glyph/arrow-to-line-right-svgrepo-com.svg +5 -0
- data/stuff/glyph/arrow-to-line-up-svgrepo-com.svg +5 -0
- data/stuff/glyph/arrow-to-shape-down-svgrepo-com.svg +5 -0
- data/stuff/glyph/arrow-to-shape-right-svgrepo-com.svg +5 -0
- data/stuff/glyph/arrow-trend-down-svgrepo-com.svg +12 -0
- data/stuff/glyph/arrow-trend-up-svgrepo-com.svg +12 -0
- data/stuff/glyph/arrow-turn-down-left-svgrepo-com.svg +4 -0
- data/stuff/glyph/arrow-turn-down-right-svgrepo-com.svg +4 -0
- data/stuff/glyph/arrow-turn-left-down-svgrepo-com.svg +4 -0
- data/stuff/glyph/arrow-turn-left-up-svgrepo-com.svg +4 -0
- data/stuff/glyph/arrow-turn-right-down-svgrepo-com.svg +4 -0
- data/stuff/glyph/arrow-turn-right-up-svgrepo-com.svg +4 -0
- data/stuff/glyph/arrow-turn-up-left-svgrepo-com.svg +4 -0
- data/stuff/glyph/arrow-turn-up-right-svgrepo-com.svg +4 -0
- data/stuff/glyph/arrow-up-arrow-down-svgrepo-com.svg +5 -0
- data/stuff/glyph/arrow-up-svgrepo-com.svg +4 -0
- data/stuff/glyph/at-sign-svgrepo-com.svg +4 -0
- data/stuff/glyph/bag-svgrepo-com.svg +4 -0
- data/stuff/glyph/bell-slash-svgrepo-com.svg +6 -0
- data/stuff/glyph/bell-svgrepo-com.svg +5 -0
- data/stuff/glyph/book-open-svgrepo-com.svg +5 -0
- data/stuff/glyph/bookmark-svgrepo-com.svg +4 -0
- data/stuff/glyph/box-svgrepo-com.svg +6 -0
- data/stuff/glyph/calendar-svgrepo-com.svg +5 -0
- data/stuff/glyph/camera-svgrepo-com.svg +4 -0
- data/stuff/glyph/caret-down-svgrepo-com.svg +4 -0
- data/stuff/glyph/caret-left-svgrepo-com.svg +4 -0
- data/stuff/glyph/caret-right-svgrepo-com.svg +4 -0
- data/stuff/glyph/caret-up-svgrepo-com.svg +4 -0
- data/stuff/glyph/cart-svgrepo-com.svg +6 -0
- data/stuff/glyph/chart-pie-svgrepo-com.svg +5 -0
- data/stuff/glyph/chartbar-2-svgrepo-com.svg +7 -0
- data/stuff/glyph/chartbar-svgrepo-com.svg +7 -0
- data/stuff/glyph/checkmark-circle-svgrepo-com.svg +4 -0
- data/stuff/glyph/checkmark-double-svgrepo-com.svg +5 -0
- data/stuff/glyph/checkmark-square-svgrepo-com.svg +4 -0
- data/stuff/glyph/checkmark-svgrepo-com.svg +4 -0
- data/stuff/glyph/chevron-down-svgrepo-com.svg +4 -0
- data/stuff/glyph/chevron-left-chevron-right-svgrepo-com.svg +5 -0
- data/stuff/glyph/chevron-left-svgrepo-com.svg +4 -0
- data/stuff/glyph/chevron-right-svgrepo-com.svg +4 -0
- data/stuff/glyph/chevron-small-down-svgrepo-com.svg +4 -0
- data/stuff/glyph/chevron-small-left-svgrepo-com.svg +4 -0
- data/stuff/glyph/chevron-small-right-svgrepo-com.svg +4 -0
- data/stuff/glyph/chevron-small-up-svgrepo-com.svg +4 -0
- data/stuff/glyph/chevron-up-chevron-down-svgrepo-com.svg +5 -0
- data/stuff/glyph/chevron-up-svgrepo-com.svg +4 -0
- data/stuff/glyph/clock-svgrepo-com.svg +4 -0
- data/stuff/glyph/cloud-arrow-up-svgrepo-com.svg +4 -0
- data/stuff/glyph/cloud-download-svgrepo-com.svg +4 -0
- data/stuff/glyph/cloud-slash-svgrepo-com.svg +5 -0
- data/stuff/glyph/cloud-svgrepo-com.svg +4 -0
- data/stuff/glyph/columns-svgrepo-com.svg +5 -0
- data/stuff/glyph/command-svgrepo-com.svg +4 -0
- data/stuff/glyph/compass-svgrepo-com.svg +5 -0
- data/stuff/glyph/credit-card-svgrepo-com.svg +5 -0
- data/stuff/glyph/crop-svgrepo-com.svg +5 -0
- data/stuff/glyph/crown-svgrepo-com.svg +4 -0
- data/stuff/glyph/delete-left-svgrepo-com.svg +4 -0
- data/stuff/glyph/device-desktop-svgrepo-com.svg +4 -0
- data/stuff/glyph/device-mobile-svgrepo-com.svg +4 -0
- data/stuff/glyph/device-tablet-svgrepo-com.svg +4 -0
- data/stuff/glyph/doc-svgrepo-com.svg +5 -0
- data/stuff/glyph/dot-small-svgrepo-com.svg +4 -0
- data/stuff/glyph/dots-3-horizontal-svgrepo-com.svg +6 -0
- data/stuff/glyph/dots-3-vertical-svgrepo-com.svg +6 -0
- data/stuff/glyph/dots-6-horizontal-svgrepo-com.svg +9 -0
- data/stuff/glyph/dots-6-vertical-svgrepo-com.svg +9 -0
- data/stuff/glyph/dots-9-svgrepo-com.svg +12 -0
- data/stuff/glyph/emoji-frown-svgrepo-com.svg +4 -0
- data/stuff/glyph/emoji-meh-svgrepo-com.svg +4 -0
- data/stuff/glyph/emoji-smile-svgrepo-com.svg +4 -0
- data/stuff/glyph/envelope-svgrepo-com.svg +5 -0
- data/stuff/glyph/external-link-svgrepo-com.svg +5 -0
- data/stuff/glyph/eye-slash-svgrepo-com.svg +15 -0
- data/stuff/glyph/eye-svgrepo-com.svg +4 -0
- data/stuff/glyph/filter-svgrepo-com.svg +4 -0
- data/stuff/glyph/flame-svgrepo-com.svg +4 -0
- data/stuff/glyph/floppy-disk-svgrepo-com.svg +4 -0
- data/stuff/glyph/folder-svgrepo-com.svg +4 -0
- data/stuff/glyph/fullscreen-alt-svgrepo-com.svg +7 -0
- data/stuff/glyph/fullscreen-exit-alt-svgrepo-com.svg +7 -0
- data/stuff/glyph/fullscreen-exit-svgrepo-com.svg +5 -0
- data/stuff/glyph/fullscreen-svgrepo-com.svg +5 -0
- data/stuff/glyph/gear-svgrepo-com.svg +4 -0
- data/stuff/glyph/giftbox-svgrepo-com.svg +6 -0
- data/stuff/glyph/half-star-svgrepo-com.svg +4 -0
- data/stuff/glyph/hashtag-svgrepo-com.svg +4 -0
- data/stuff/glyph/headphones-svgrepo-com.svg +4 -0
- data/stuff/glyph/heart-half-svgrepo-com.svg +4 -0
- data/stuff/glyph/heart-svgrepo-com.svg +4 -0
- data/stuff/glyph/house-svgrepo-com.svg +4 -0
- data/stuff/glyph/image-svgrepo-com.svg +4 -0
- data/stuff/glyph/info-circle-svgrepo-com.svg +4 -0
- data/stuff/glyph/key-svgrepo-com.svg +4 -0
- data/stuff/glyph/layers-3-svgrepo-com.svg +6 -0
- data/stuff/glyph/layout-svgrepo-com.svg +6 -0
- data/stuff/glyph/line-3-svgrepo-com.svg +6 -0
- data/stuff/glyph/link-alt-svgrepo-com.svg +5 -0
- data/stuff/glyph/link-svgrepo-com.svg +6 -0
- data/stuff/glyph/list-bullet-svgrepo-com.svg +9 -0
- data/stuff/glyph/location-svgrepo-com.svg +4 -0
- data/stuff/glyph/lock-open-svgrepo-com.svg +4 -0
- data/stuff/glyph/lock-svgrepo-com.svg +4 -0
- data/stuff/glyph/map-pin-svgrepo-com.svg +4 -0
- data/stuff/glyph/medal-svgrepo-com.svg +13 -0
- data/stuff/glyph/media-backward-end-svgrepo-com.svg +5 -0
- data/stuff/glyph/media-backward-svgrepo-com.svg +5 -0
- data/stuff/glyph/media-forward-end-svgrepo-com.svg +5 -0
- data/stuff/glyph/media-forward-svgrepo-com.svg +4 -0
- data/stuff/glyph/media-pause-circle-svgrepo-com.svg +4 -0
- data/stuff/glyph/media-pause-svgrepo-com.svg +5 -0
- data/stuff/glyph/media-play-circle-svgrepo-com.svg +4 -0
- data/stuff/glyph/media-play-svgrepo-com.svg +4 -0
- data/stuff/glyph/media-stop-circle-svgrepo-com.svg +4 -0
- data/stuff/glyph/media-stop-svgrepo-com.svg +4 -0
- data/stuff/glyph/message-bubble-2-svgrepo-com.svg +4 -0
- data/stuff/glyph/message-bubble-svgrepo-com.svg +4 -0
- data/stuff/glyph/mic-slash-svgrepo-com.svg +6 -0
- data/stuff/glyph/mic-svgrepo-com.svg +5 -0
- data/stuff/glyph/minus-circle-svgrepo-com.svg +4 -0
- data/stuff/glyph/minus-square-svgrepo-com.svg +4 -0
- data/stuff/glyph/minus-svgrepo-com.svg +4 -0
- data/stuff/glyph/moon-svgrepo-com.svg +4 -0
- data/stuff/glyph/music-note-svgrepo-com.svg +4 -0
- data/stuff/glyph/nosign-svgrepo-com.svg +4 -0
- data/stuff/glyph/paper-clip-svgrepo-com.svg +4 -0
- data/stuff/glyph/paper-plane-svgrepo-com.svg +4 -0
- data/stuff/glyph/pen-tool-svgrepo-com.svg +4 -0
- data/stuff/glyph/pencil-svgrepo-com.svg +5 -0
- data/stuff/glyph/percent-svgrepo-com.svg +6 -0
- data/stuff/glyph/phone-incoming-svgrepo-com.svg +5 -0
- data/stuff/glyph/phone-missed-svgrepo-com.svg +4 -0
- data/stuff/glyph/phone-outgoing-svgrepo-com.svg +5 -0
- data/stuff/glyph/phone-slash-svgrepo-com.svg +4 -0
- data/stuff/glyph/phone-svgrepo-com.svg +4 -0
- data/stuff/glyph/plus-circle-svgrepo-com.svg +4 -0
- data/stuff/glyph/plus-square-svgrepo-com.svg +4 -0
- data/stuff/glyph/plus-svgrepo-com.svg +4 -0
- data/stuff/glyph/power-svgrepo-com.svg +5 -0
- data/stuff/glyph/printer-svgrepo-com.svg +5 -0
- data/stuff/glyph/question-circle-svgrepo-com.svg +4 -0
- data/stuff/glyph/scissors-svgrepo-com.svg +5 -0
- data/stuff/glyph/search-svgrepo-com.svg +4 -0
- data/stuff/glyph/server-svgrepo-com.svg +5 -0
- data/stuff/glyph/shape-circle-svgrepo-com.svg +4 -0
- data/stuff/glyph/shape-rhombus-svgrepo-com.svg +4 -0
- data/stuff/glyph/shape-square-svgrepo-com.svg +4 -0
- data/stuff/glyph/shape-triangle-svgrepo-com.svg +12 -0
- data/stuff/glyph/share-svgrepo-com.svg +4 -0
- data/stuff/glyph/shield-slash-svgrepo-com.svg +13 -0
- data/stuff/glyph/shield-svgrepo-com.svg +4 -0
- data/stuff/glyph/shippingbox-svgrepo-com.svg +7 -0
- data/stuff/glyph/slider-3-horizontal-svgrepo-com.svg +9 -0
- data/stuff/glyph/slider-3-vertical-svgrepo-com.svg +9 -0
- data/stuff/glyph/speaker-svgrepo-com.svg +4 -0
- data/stuff/glyph/speaker-wave-1-svgrepo-com.svg +5 -0
- data/stuff/glyph/speaker-wave-2-svgrepo-com.svg +6 -0
- data/stuff/glyph/speaker-xmark-svgrepo-com.svg +5 -0
- data/stuff/glyph/square-4-grid-svgrepo-com.svg +7 -0
- data/stuff/glyph/square-on-square-svgrepo-com.svg +5 -0
- data/stuff/glyph/star-svgrepo-com.svg +4 -0
- data/stuff/glyph/sun-svgrepo-com.svg +12 -0
- data/stuff/glyph/tag-svgrepo-com.svg +4 -0
- data/stuff/glyph/text-align-center-svgrepo-com.svg +7 -0
- data/stuff/glyph/text-align-justify-svgrepo-com.svg +7 -0
- data/stuff/glyph/text-align-left-svgrepo-com.svg +7 -0
- data/stuff/glyph/text-align-right-svgrepo-com.svg +7 -0
- data/stuff/glyph/text-bold-svgrepo-com.svg +4 -0
- data/stuff/glyph/text-heading-svgrepo-com.svg +4 -0
- data/stuff/glyph/text-italic-svgrepo-com.svg +4 -0
- data/stuff/glyph/text-svgrepo-com.svg +4 -0
- data/stuff/glyph/text-underline-svgrepo-com.svg +5 -0
- data/stuff/glyph/thumbs-down-svgrepo-com.svg +5 -0
- data/stuff/glyph/thumbs-up-svgrepo-com.svg +5 -0
- data/stuff/glyph/trash-svgrepo-com.svg +5 -0
- data/stuff/glyph/tray-svgrepo-com.svg +4 -0
- data/stuff/glyph/umbrela-svgrepo-com.svg +4 -0
- data/stuff/glyph/user-svgrepo-com.svg +5 -0
- data/stuff/glyph/users-svgrepo-com.svg +7 -0
- data/stuff/glyph/video-svgrepo-com.svg +12 -0
- data/stuff/glyph/waveform-ecg-svgrepo-com.svg +4 -0
- data/stuff/glyph/wi-fi-svgrepo-com.svg +7 -0
- data/stuff/glyph/xmark-circle-svgrepo-com.svg +4 -0
- data/stuff/glyph/xmark-small-svgrepo-com.svg +4 -0
- data/stuff/glyph/xmark-svgrepo-com.svg +4 -0
- data/stuff/glyph/zap-svgrepo-com.svg +4 -0
- data/stuff/glyph/zoom-in-svgrepo-com.svg +5 -0
- data/stuff/glyph/zoom-out-svgrepo-com.svg +5 -0
- data/stuff/readme.md +266 -0
- data/stuff/so/libSDL3.so +0 -0
- data/stuff/so/libpastele.so +0 -0
- data/stuff/so/libthorvg-1.so +0 -0
- metadata +427 -0
|
@@ -0,0 +1,358 @@
|
|
|
1
|
+
module Kredki
|
|
2
|
+
module Pads
|
|
3
|
+
# Event with position
|
|
4
|
+
class PositionEvent < Event
|
|
5
|
+
|
|
6
|
+
def initialize x, y, ...
|
|
7
|
+
super(...)
|
|
8
|
+
@x = x
|
|
9
|
+
@y = y
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
# Get X axis offset.
|
|
13
|
+
def x
|
|
14
|
+
@x
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
# Get Y axis offset.
|
|
18
|
+
def y
|
|
19
|
+
@y
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
# Get X and Y axes offset.
|
|
23
|
+
def xy
|
|
24
|
+
[@x, @y]
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
# Get main parameter.
|
|
28
|
+
def param
|
|
29
|
+
xy
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
class MouseButtonClickEvent < Event
|
|
34
|
+
|
|
35
|
+
# Get event button.
|
|
36
|
+
def button
|
|
37
|
+
@source.button
|
|
38
|
+
end
|
|
39
|
+
|
|
40
|
+
# Get main parameter.
|
|
41
|
+
def param
|
|
42
|
+
@source.param
|
|
43
|
+
end
|
|
44
|
+
|
|
45
|
+
# Get binding button code.
|
|
46
|
+
def code
|
|
47
|
+
@source.code
|
|
48
|
+
end
|
|
49
|
+
|
|
50
|
+
# Get position along X axis.
|
|
51
|
+
def x
|
|
52
|
+
@source.x
|
|
53
|
+
end
|
|
54
|
+
|
|
55
|
+
# Get position along Y axis.
|
|
56
|
+
def y
|
|
57
|
+
@source.y
|
|
58
|
+
end
|
|
59
|
+
|
|
60
|
+
# Get click combo.
|
|
61
|
+
def combo
|
|
62
|
+
@combo
|
|
63
|
+
end
|
|
64
|
+
|
|
65
|
+
# Get position along X and Y axes.
|
|
66
|
+
def xy
|
|
67
|
+
[x, y]
|
|
68
|
+
end
|
|
69
|
+
|
|
70
|
+
def timestamp
|
|
71
|
+
@source.timestamp
|
|
72
|
+
end
|
|
73
|
+
|
|
74
|
+
# :section: LEVEL 2
|
|
75
|
+
|
|
76
|
+
attr_writer :combo
|
|
77
|
+
end
|
|
78
|
+
|
|
79
|
+
class KeyClickEvent < Event
|
|
80
|
+
include Keyboard::ModifiersDecoder
|
|
81
|
+
|
|
82
|
+
# Get event key.
|
|
83
|
+
def key
|
|
84
|
+
@source&.key
|
|
85
|
+
end
|
|
86
|
+
|
|
87
|
+
# Get main parameter.
|
|
88
|
+
def param
|
|
89
|
+
@source&.param
|
|
90
|
+
end
|
|
91
|
+
|
|
92
|
+
# Get binding key code.
|
|
93
|
+
def code
|
|
94
|
+
@source&.code
|
|
95
|
+
end
|
|
96
|
+
|
|
97
|
+
# :section: LEVEL 2
|
|
98
|
+
|
|
99
|
+
def modifiers
|
|
100
|
+
@source.modifiers
|
|
101
|
+
end
|
|
102
|
+
end
|
|
103
|
+
|
|
104
|
+
class FocusOfferEvent < Event
|
|
105
|
+
end
|
|
106
|
+
|
|
107
|
+
class VisionOfferEvent < PositionEvent
|
|
108
|
+
|
|
109
|
+
# Get size in the X axis.
|
|
110
|
+
def size_x
|
|
111
|
+
@size_x
|
|
112
|
+
end
|
|
113
|
+
|
|
114
|
+
# Get size in the Y axis.
|
|
115
|
+
def size_y
|
|
116
|
+
@size_y
|
|
117
|
+
end
|
|
118
|
+
|
|
119
|
+
# Get size.
|
|
120
|
+
def size
|
|
121
|
+
[@size_x, @size_y]
|
|
122
|
+
end
|
|
123
|
+
|
|
124
|
+
# :section: LEVEL 2
|
|
125
|
+
|
|
126
|
+
def initialize size_x, size_y, ...
|
|
127
|
+
super(...)
|
|
128
|
+
@size_x = size_x
|
|
129
|
+
@size_y = size_y
|
|
130
|
+
end
|
|
131
|
+
|
|
132
|
+
end
|
|
133
|
+
|
|
134
|
+
module PadEvents
|
|
135
|
+
|
|
136
|
+
def on event_type, early: false, always: false, do: nil, &block
|
|
137
|
+
@event_manager.manager event_type, block || binding.local_variable_get(:do), early, always
|
|
138
|
+
end
|
|
139
|
+
|
|
140
|
+
# Create and attach key pressed event reaction.
|
|
141
|
+
def on_key_press *filtered_keys, early: false, always: false, do: nil, &block
|
|
142
|
+
keycodes = Kredki.keyboard.keycodes filtered_keys
|
|
143
|
+
@event_manager.keyboard_manager KeyboardKeyPressEvent, keycodes, block || binding.local_variable_get(:do), early, always
|
|
144
|
+
end
|
|
145
|
+
|
|
146
|
+
# See #on_key_press.
|
|
147
|
+
def on_key_press= param
|
|
148
|
+
on_key_press do: param
|
|
149
|
+
end
|
|
150
|
+
|
|
151
|
+
# Create and attach key up event reaction.
|
|
152
|
+
def on_key_release *filtered_keys, early: false, always: false, do: nil, &block
|
|
153
|
+
keycodes = Kredki.keyboard.keycodes filtered_keys
|
|
154
|
+
@event_manager.keyboard_manager KeyboardKeyReleaseEvent, keycodes, block || binding.local_variable_get(:do), early, always
|
|
155
|
+
end
|
|
156
|
+
|
|
157
|
+
# See #on_key_release.
|
|
158
|
+
def on_key_release= param
|
|
159
|
+
on_key_release do: param
|
|
160
|
+
end
|
|
161
|
+
|
|
162
|
+
# Create and attach key event reaction.
|
|
163
|
+
def on_key *filtered_keys, early: false, always: false, do: nil, &block
|
|
164
|
+
keycodes = Kredki.keyboard.keycodes filtered_keys
|
|
165
|
+
@event_manager.keyboard_manager KeyClickEvent, keycodes, block || binding.local_variable_get(:do), early, always
|
|
166
|
+
end
|
|
167
|
+
|
|
168
|
+
# See #on_key.
|
|
169
|
+
def on_key= param
|
|
170
|
+
on_key do: param
|
|
171
|
+
end
|
|
172
|
+
|
|
173
|
+
def on_text_input ...
|
|
174
|
+
on(TextInputEvent, ...)
|
|
175
|
+
end
|
|
176
|
+
|
|
177
|
+
# See #on_text_input.
|
|
178
|
+
def on_text_input= param
|
|
179
|
+
on_text_input do: param
|
|
180
|
+
end
|
|
181
|
+
|
|
182
|
+
# Create and attach mouse pressed event reaction.
|
|
183
|
+
def on_mouse_press *filtered_buttons, early: false, always: false, do: nil, &block
|
|
184
|
+
indexes = Kredki.mouse.indexes filtered_buttons
|
|
185
|
+
@event_manager.mouse_manager MouseButtonPressEvent, indexes, block || binding.local_variable_get(:do), early, always
|
|
186
|
+
end
|
|
187
|
+
|
|
188
|
+
# See #on_mouse_press.
|
|
189
|
+
def on_mouse_press= param
|
|
190
|
+
on_mouse_press do: param
|
|
191
|
+
end
|
|
192
|
+
|
|
193
|
+
# Create and attach mouse up event reaction.
|
|
194
|
+
def on_mouse_release *filtered_buttons, early: false, always: false, do: nil, &block
|
|
195
|
+
indexes = Kredki.mouse.indexes filtered_buttons
|
|
196
|
+
@event_manager.mouse_manager MouseButtonReleaseEvent, indexes, block || binding.local_variable_get(:do), early, always
|
|
197
|
+
end
|
|
198
|
+
|
|
199
|
+
# See #on_mouse_release.
|
|
200
|
+
def on_mouse_release= param
|
|
201
|
+
on_mouse_release do: param
|
|
202
|
+
end
|
|
203
|
+
|
|
204
|
+
# Create and attach mouse click event reaction.
|
|
205
|
+
def on_mouse_click *filtered_buttons, early: false, always: false, do: nil, &block
|
|
206
|
+
indexes = Kredki.mouse.indexes filtered_buttons
|
|
207
|
+
@event_manager.mouse_manager MouseButtonClickEvent, indexes, block || binding.local_variable_get(:do), early, always
|
|
208
|
+
end
|
|
209
|
+
|
|
210
|
+
# See #on_mouse_click.
|
|
211
|
+
def on_mouse_click= param
|
|
212
|
+
on_mouse_click do: param
|
|
213
|
+
end
|
|
214
|
+
|
|
215
|
+
# Create and attach mouse enter event reaction.
|
|
216
|
+
def on_mouse_enter ...
|
|
217
|
+
on(MousePointerEnterEvent, ...)
|
|
218
|
+
end
|
|
219
|
+
|
|
220
|
+
# See #on_mouse_enter.
|
|
221
|
+
def on_mouse_enter= param
|
|
222
|
+
on_mouse_enter do: param
|
|
223
|
+
end
|
|
224
|
+
|
|
225
|
+
# Create and attach mouse leave event reaction.
|
|
226
|
+
def on_mouse_leave ...
|
|
227
|
+
on(MousePointerLeaveEvent, ...)
|
|
228
|
+
end
|
|
229
|
+
|
|
230
|
+
# See #on_mouse_leave.
|
|
231
|
+
def on_mouse_leave= param
|
|
232
|
+
on_mouse_leave do: param
|
|
233
|
+
end
|
|
234
|
+
|
|
235
|
+
# Create and attach mouse move event reaction.
|
|
236
|
+
def on_mouse_move ...
|
|
237
|
+
on(MousePointerMoveEvent, ...)
|
|
238
|
+
end
|
|
239
|
+
|
|
240
|
+
# See #on_mouse_move.
|
|
241
|
+
def on_mouse_move= param
|
|
242
|
+
on_mouse_move do: param
|
|
243
|
+
end
|
|
244
|
+
|
|
245
|
+
# Create and attach mouse scroll event reaction.
|
|
246
|
+
def on_mouse_scroll ...
|
|
247
|
+
on(MouseWheelScrollEvent, ...)
|
|
248
|
+
end
|
|
249
|
+
|
|
250
|
+
# See #on_mouse_scroll.
|
|
251
|
+
def on_mouse_scroll= param
|
|
252
|
+
on_mouse_scroll do: param
|
|
253
|
+
end
|
|
254
|
+
|
|
255
|
+
# Create and attach joystick press event reaction.
|
|
256
|
+
def on_joystick_press *buttons, joystick: nil, early: false, always: false, do: nil, &block
|
|
257
|
+
j = Kredki.joystick joystick
|
|
258
|
+
indexes = j.buttons buttons
|
|
259
|
+
j = nil if joystick.nil?
|
|
260
|
+
@event_manager.joystick_manager JoystickButtonPressEvent, j, indexes, block || binding.local_variable_get(:do), early, always
|
|
261
|
+
end
|
|
262
|
+
|
|
263
|
+
# See #on_joystick_press.
|
|
264
|
+
def on_joystick_press= param
|
|
265
|
+
on_joystick_press do: param
|
|
266
|
+
end
|
|
267
|
+
|
|
268
|
+
# Create and attach joystick release event reaction.
|
|
269
|
+
def on_joystick_release *buttons, joystick: nil, early: false, always: false, do: nil, &block
|
|
270
|
+
j = Kredki.joystick joystick
|
|
271
|
+
indexes = j.buttons buttons
|
|
272
|
+
j = nil if joystick.nil?
|
|
273
|
+
@event_manager.joystick_manager JoystickButtonReleaseEvent, j, indexes, block || binding.local_variable_get(:do), early, always
|
|
274
|
+
end
|
|
275
|
+
|
|
276
|
+
# See #on_joystick_release.
|
|
277
|
+
def on_joystick_release= param
|
|
278
|
+
on_joystick_release do: param
|
|
279
|
+
end
|
|
280
|
+
|
|
281
|
+
# Create and attach joystick axis(axes) move event reaction.
|
|
282
|
+
def on_joystick_move *axes, joystick: nil, early: false, always: false, do: nil, &block
|
|
283
|
+
j = Kredki.joystick joystick
|
|
284
|
+
indexes = j.axes axes
|
|
285
|
+
j = nil if joystick.nil?
|
|
286
|
+
@event_manager.joystick_manager JoystickAxisMoveEvent, j, indexes, block || binding.local_variable_get(:do), early, always
|
|
287
|
+
end
|
|
288
|
+
|
|
289
|
+
# See #on_joystick_move.
|
|
290
|
+
def on_joystick_move= reaction
|
|
291
|
+
on_joystick_move do: reaction
|
|
292
|
+
end
|
|
293
|
+
|
|
294
|
+
# Create and attach joystick hat(hats) switch event reaction.
|
|
295
|
+
def on_joystick_switch *hats, joystick: nil, early: false, always: false, do: nil, &block
|
|
296
|
+
j = Kredki.joystick joystick
|
|
297
|
+
indexes = j.hats hats
|
|
298
|
+
j = nil if joystick.nil?
|
|
299
|
+
@event_manager.joystick_manager JoystickHatSwitchEvent, j, indexes, block || binding.local_variable_get(:do), early, always
|
|
300
|
+
end
|
|
301
|
+
|
|
302
|
+
# See #on_joystick_switch.
|
|
303
|
+
def on_joystick_switch= reaction
|
|
304
|
+
on_joystick_switch do: reaction
|
|
305
|
+
end
|
|
306
|
+
|
|
307
|
+
# Create and attach file drop event reaction.
|
|
308
|
+
def on_drop ...
|
|
309
|
+
on(DropEvent, ...)
|
|
310
|
+
end
|
|
311
|
+
|
|
312
|
+
# See #on_drop.
|
|
313
|
+
def on_drop= reaction
|
|
314
|
+
on_drop do: reaction
|
|
315
|
+
end
|
|
316
|
+
|
|
317
|
+
# Create and attach show event reaction.
|
|
318
|
+
def on_show ...
|
|
319
|
+
on(ShowEvent, ...)
|
|
320
|
+
end
|
|
321
|
+
|
|
322
|
+
# See #on_show.
|
|
323
|
+
def on_show= param
|
|
324
|
+
on_show do: param
|
|
325
|
+
end
|
|
326
|
+
|
|
327
|
+
# Create and attach hide event reaction.
|
|
328
|
+
def on_hide ...
|
|
329
|
+
on(HideEvent, ...)
|
|
330
|
+
end
|
|
331
|
+
|
|
332
|
+
# See #on_hide.
|
|
333
|
+
def on_hide= param
|
|
334
|
+
on_hide do: param
|
|
335
|
+
end
|
|
336
|
+
|
|
337
|
+
# Create and attach focus enter event reaction.
|
|
338
|
+
def on_focus_enter ...
|
|
339
|
+
on(FocusEnterEvent, ...)
|
|
340
|
+
end
|
|
341
|
+
|
|
342
|
+
# See #on_focus_enter.
|
|
343
|
+
def on_focus_enter= param
|
|
344
|
+
on_focus_enter do: param
|
|
345
|
+
end
|
|
346
|
+
|
|
347
|
+
# Create and attach focus leave event reaction.
|
|
348
|
+
def on_focus_leave ...
|
|
349
|
+
on(FocusLeaveEvent, ...)
|
|
350
|
+
end
|
|
351
|
+
|
|
352
|
+
# See #on_focus_leave.
|
|
353
|
+
def on_focus_leave= param
|
|
354
|
+
on_focus_leave do: param
|
|
355
|
+
end
|
|
356
|
+
end
|
|
357
|
+
end
|
|
358
|
+
end
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
module Kredki
|
|
2
|
+
module Pads
|
|
3
|
+
# Pad with picture area.
|
|
4
|
+
class PicturePad < Pad
|
|
5
|
+
|
|
6
|
+
# Set a feature recognized by its class.
|
|
7
|
+
def << arg
|
|
8
|
+
case arg
|
|
9
|
+
when String
|
|
10
|
+
set_subject arg
|
|
11
|
+
else
|
|
12
|
+
super
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
# :section: LEVEL 2
|
|
17
|
+
|
|
18
|
+
def initialize_area
|
|
19
|
+
@area = @scene.new_picture
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
def min_size_x_value margin
|
|
23
|
+
case @size_x
|
|
24
|
+
when Ratio
|
|
25
|
+
get_size_y * @area.aspect_ratio
|
|
26
|
+
else super
|
|
27
|
+
end
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
def update_subject subject
|
|
31
|
+
@area.set_content subject, @size_x == Auto && @size_y == Auto
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
def min_size_x_limit limit, margin
|
|
35
|
+
case limit
|
|
36
|
+
when Ratio
|
|
37
|
+
get_size_y * @area.aspect_ratio
|
|
38
|
+
else super
|
|
39
|
+
end
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
def get_size_x_value size_x, reference_size_x, size_y
|
|
43
|
+
case size_x
|
|
44
|
+
when Ratio
|
|
45
|
+
if @ratio
|
|
46
|
+
size_y ||= @area.original_size[1]
|
|
47
|
+
else
|
|
48
|
+
@ratio = true
|
|
49
|
+
size_y ||= get_size_y
|
|
50
|
+
@ratio = false
|
|
51
|
+
end
|
|
52
|
+
size_y * @area.aspect_ratio
|
|
53
|
+
else super
|
|
54
|
+
end
|
|
55
|
+
end
|
|
56
|
+
|
|
57
|
+
def min_size_y_value margin
|
|
58
|
+
case @size_y
|
|
59
|
+
when Ratio
|
|
60
|
+
get_size_x / @area.aspect_ratio
|
|
61
|
+
else super
|
|
62
|
+
end
|
|
63
|
+
end
|
|
64
|
+
|
|
65
|
+
def min_size_y_limit limit, margin
|
|
66
|
+
case limit
|
|
67
|
+
when Ratio
|
|
68
|
+
get_size_x / @area.aspect_ratio
|
|
69
|
+
else super
|
|
70
|
+
end
|
|
71
|
+
end
|
|
72
|
+
|
|
73
|
+
def get_size_y_value size_y, reference_size_y, size_x
|
|
74
|
+
case size_y
|
|
75
|
+
when Ratio
|
|
76
|
+
if @ratio
|
|
77
|
+
size_x ||= @area.original_size[0]
|
|
78
|
+
else
|
|
79
|
+
@ratio = true
|
|
80
|
+
size_x ||= get_size_x
|
|
81
|
+
@ratio = false
|
|
82
|
+
end
|
|
83
|
+
size_x / @area.aspect_ratio
|
|
84
|
+
else super
|
|
85
|
+
end
|
|
86
|
+
end
|
|
87
|
+
end
|
|
88
|
+
end
|
|
89
|
+
end
|
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
module Kredki
|
|
2
|
+
module Pads
|
|
3
|
+
# Pad with rectangle area.
|
|
4
|
+
class RectanglePad < ShapePad
|
|
5
|
+
|
|
6
|
+
# Set X start Y start corner.
|
|
7
|
+
def set_corner_ss corner_ss = @area.corner_ss, clip: :auto
|
|
8
|
+
return send_bundle :set_corner_ss, yield(self.corner_ss) if block_given?
|
|
9
|
+
@area.set_corner_ss(corner_ss) |
|
|
10
|
+
if clip == :auto
|
|
11
|
+
@clip_area.set_corner_ss corner_ss - (@margin_xs + @margin_ys) * 0.5
|
|
12
|
+
elsif clip
|
|
13
|
+
@clip_area.set_corner_ss clip
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
# See #set_corner_ss.
|
|
18
|
+
def corner_ss= param
|
|
19
|
+
send_bundle :set_corner_ss, param
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
# Get X start Y start corner.
|
|
23
|
+
def corner_ss
|
|
24
|
+
@area.corner_ss
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
# Set X end Y start corner.
|
|
28
|
+
def set_corner_es corner_es = @area.corner_es, clip: :auto
|
|
29
|
+
return send_bundle :set_corner_es, yield(self.corner_es) if block_given?
|
|
30
|
+
@area.set_corner_es(corner_es) |
|
|
31
|
+
if clip == :auto
|
|
32
|
+
@clip_area.set_corner_es corner_es - (@margin_xe + @margin_ys) * 0.5
|
|
33
|
+
elsif clip
|
|
34
|
+
@clip_area.set_corner_es clip
|
|
35
|
+
end
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
# See #set_corner_es.
|
|
39
|
+
def corner_es= param
|
|
40
|
+
send_bundle :set_corner_es, param
|
|
41
|
+
end
|
|
42
|
+
|
|
43
|
+
# Get X end Y start corner.
|
|
44
|
+
def corner_es
|
|
45
|
+
@area.corner_es
|
|
46
|
+
end
|
|
47
|
+
|
|
48
|
+
# Set X start Y end corner.
|
|
49
|
+
def set_corner_se corner_se = @area.corner_se, clip: :auto
|
|
50
|
+
return send_bundle :set_corner_se, yield(self.corner_se) if block_given?
|
|
51
|
+
@area.set_corner_se(corner_se) |
|
|
52
|
+
if clip == :auto
|
|
53
|
+
@clip_area.set_corner_se corner_se - (@margin_xs + @margin_ye) * 0.5
|
|
54
|
+
elsif clip
|
|
55
|
+
@clip_area.set_corner_se clip
|
|
56
|
+
end
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
# See #set_corner_se.
|
|
60
|
+
def corner_se= param
|
|
61
|
+
send_bundle :set_corner_se, param
|
|
62
|
+
end
|
|
63
|
+
|
|
64
|
+
# Get X start Y end corner.
|
|
65
|
+
def corner_se
|
|
66
|
+
@area.corner_se
|
|
67
|
+
end
|
|
68
|
+
|
|
69
|
+
# Set X end Y end corner.
|
|
70
|
+
def set_corner_ee corner_ee = @area.corner_ee, clip: :auto
|
|
71
|
+
return send_bundle :set_corner_ee, yield(self.corner_ee) if block_given?
|
|
72
|
+
@area.set_corner_ee(corner_ee) |
|
|
73
|
+
if clip == :auto
|
|
74
|
+
@clip_area.set_corner_ee corner_ee - (@margin_xe + @margin_ye) * 0.5
|
|
75
|
+
elsif clip
|
|
76
|
+
@clip_area.set_corner_ee clip
|
|
77
|
+
end
|
|
78
|
+
end
|
|
79
|
+
|
|
80
|
+
# See #set_corner_ee.
|
|
81
|
+
def corner_ee= param
|
|
82
|
+
send_bundle :set_corner_ee, param
|
|
83
|
+
end
|
|
84
|
+
|
|
85
|
+
# Get X end Y end corner.
|
|
86
|
+
def corner_ee
|
|
87
|
+
@area.corner_ee
|
|
88
|
+
end
|
|
89
|
+
|
|
90
|
+
# Set X start corners.
|
|
91
|
+
def set_corner_xs corner_ss = @area.corner_ss, corner_se = corner_ss, clip: :auto
|
|
92
|
+
return send_bundle :set_corner_xs, yield(self.corner_xs) if block_given?
|
|
93
|
+
set_corner_ss(corner_ss, clip: clip) | set_corner_se(corner_se, clip: clip)
|
|
94
|
+
end
|
|
95
|
+
|
|
96
|
+
# See #set_corner_xs.
|
|
97
|
+
def corner_xs= param
|
|
98
|
+
send_bundle :set_corner_xs, param
|
|
99
|
+
end
|
|
100
|
+
|
|
101
|
+
# Get X start corners.
|
|
102
|
+
def corner_xs
|
|
103
|
+
[corner_ss, corner_se]
|
|
104
|
+
end
|
|
105
|
+
|
|
106
|
+
# Set X end corners.
|
|
107
|
+
def set_corner_xe corner_es = @area.corner_es, corner_ee = corner_es, clip: :auto
|
|
108
|
+
return send_bundle :set_corner_xe, yield(self.corner_xe) if block_given?
|
|
109
|
+
set_corner_es(corner_es, clip: clip) | set_corner_ee(corner_ee, clip: clip)
|
|
110
|
+
end
|
|
111
|
+
|
|
112
|
+
# See #set_corner_xe.
|
|
113
|
+
def corner_xe= param
|
|
114
|
+
send_bundle :set_corner_xe, param
|
|
115
|
+
end
|
|
116
|
+
|
|
117
|
+
# Get X end corners.
|
|
118
|
+
def corner_xe
|
|
119
|
+
[corner_es, corner_ee]
|
|
120
|
+
end
|
|
121
|
+
|
|
122
|
+
# Set Y start corners.
|
|
123
|
+
def set_corner_ys corner_ss = @area.corner_ss, corner_es = corner_ss, clip: :auto
|
|
124
|
+
return send_bundle :set_corner_ys, yield(self.corner_ys) if block_given?
|
|
125
|
+
set_corner_ss(corner_ss, clip: clip) | set_corner_es(corner_es, clip: clip)
|
|
126
|
+
end
|
|
127
|
+
|
|
128
|
+
# See #set_corner_ys.
|
|
129
|
+
def corner_ys= param
|
|
130
|
+
send_bundle :set_corner_ys, param
|
|
131
|
+
end
|
|
132
|
+
|
|
133
|
+
# Get Y start corners.
|
|
134
|
+
def corner_ys
|
|
135
|
+
[corner_ss, corner_es]
|
|
136
|
+
end
|
|
137
|
+
|
|
138
|
+
# Set Y end corners.
|
|
139
|
+
def set_corner_ye corner_se = @area.corner_se, corner_ee = corner_se, clip: :auto
|
|
140
|
+
return send_bundle :set_corner_ye, yield(self.corner_ye) if block_given?
|
|
141
|
+
set_corner_se(corner_se, clip: clip) | set_corner_ee(corner_ee, clip: clip)
|
|
142
|
+
end
|
|
143
|
+
|
|
144
|
+
# See #set_corner_ye.
|
|
145
|
+
def corner_ye= param
|
|
146
|
+
send_bundle :set_corner_ye, param
|
|
147
|
+
end
|
|
148
|
+
|
|
149
|
+
# Get Y end corners.
|
|
150
|
+
def corner_ye
|
|
151
|
+
[corner_se, corner_ee]
|
|
152
|
+
end
|
|
153
|
+
|
|
154
|
+
# Set corners.
|
|
155
|
+
def set_corner corner_ss = @area.corner_ss, corner_es = corner_ss, corner_se = corner_ss, corner_ee = corner_es, clip: :auto, **ka
|
|
156
|
+
return send_bundle :set_corner, yield(self.corner) if block_given?
|
|
157
|
+
set_corner_ss(corner_ss, clip: clip) |
|
|
158
|
+
set_corner_es(corner_es, clip: clip) |
|
|
159
|
+
set_corner_se(corner_se, clip: clip) |
|
|
160
|
+
set_corner_ee(corner_ee, clip: clip) |
|
|
161
|
+
send_branch(__method__, ka)
|
|
162
|
+
end
|
|
163
|
+
|
|
164
|
+
# See #set_corner.
|
|
165
|
+
def corner= param
|
|
166
|
+
send_bundle :set_corner, param
|
|
167
|
+
end
|
|
168
|
+
|
|
169
|
+
# Get corners.
|
|
170
|
+
def corner
|
|
171
|
+
[corner_ss, corner_es, corner_se, corner_ee]
|
|
172
|
+
end
|
|
173
|
+
|
|
174
|
+
# :section: LEVEL 2
|
|
175
|
+
|
|
176
|
+
def initialize_area
|
|
177
|
+
@area = @scene.new_rectangle
|
|
178
|
+
end
|
|
179
|
+
end
|
|
180
|
+
end
|
|
181
|
+
end
|