vedeu 0.8.0 → 0.8.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.ruby-version +1 -1
- data/.yardopts +0 -1
- data/README.md +1 -4
- data/docs/api.md +0 -8
- data/docs/borders.md +4 -0
- data/docs/dsl/borders.md +37 -0
- data/docs/dsl/by_method/add_command.md +0 -0
- data/docs/dsl/by_method/add_keypress.md +0 -0
- data/docs/dsl/by_method/all_commands.md +0 -0
- data/docs/dsl/by_method/all_keypresses.md +0 -0
- data/docs/dsl/by_method/background_colours.md +3 -0
- data/docs/dsl/by_method/bind.md +0 -0
- data/docs/dsl/by_method/bind_alias.md +0 -0
- data/docs/dsl/by_method/border.md +7 -0
- data/docs/dsl/by_method/borders.md +0 -0
- data/docs/dsl/by_method/bottom.md +10 -0
- data/docs/dsl/by_method/bottom_horizontal.md +8 -0
- data/docs/dsl/by_method/bottom_left.md +8 -0
- data/docs/dsl/by_method/bottom_right.md +8 -0
- data/docs/dsl/by_method/bound.md +0 -0
- data/docs/dsl/by_method/buffer_update.md +0 -0
- data/docs/dsl/by_method/buffer_write.md +0 -0
- data/docs/dsl/by_method/buffers.md +0 -0
- data/docs/dsl/by_method/caption.md +11 -0
- data/docs/dsl/by_method/clear.md +7 -0
- data/docs/dsl/by_method/clear_by_group.md +0 -0
- data/docs/dsl/by_method/clear_by_name.md +0 -0
- data/docs/dsl/by_method/clear_content_by_name.md +0 -0
- data/docs/dsl/by_method/clock_time.md +0 -0
- data/docs/dsl/by_method/configuration.md +5 -0
- data/docs/dsl/by_method/configure.md +6 -0
- data/docs/dsl/by_method/cursor.md +0 -0
- data/docs/dsl/by_method/cursors.md +0 -0
- data/docs/dsl/by_method/debug.md +4 -0
- data/docs/dsl/by_method/direct_write.md +0 -0
- data/docs/dsl/by_method/disable.md +14 -0
- data/docs/dsl/by_method/documents.md +0 -0
- data/docs/dsl/by_method/drb_restart.md +0 -0
- data/docs/dsl/by_method/drb_start.md +0 -0
- data/docs/dsl/by_method/drb_status.md +0 -0
- data/docs/dsl/by_method/drb_stop.md +0 -0
- data/docs/dsl/by_method/enable.md +14 -0
- data/docs/dsl/by_method/events.md +0 -0
- data/docs/dsl/by_method/exit.md +0 -0
- data/docs/dsl/by_method/focus.md +0 -0
- data/docs/dsl/by_method/focus_by_name.md +0 -0
- data/docs/dsl/by_method/focus_next.md +0 -0
- data/docs/dsl/by_method/focus_previous.md +0 -0
- data/docs/dsl/by_method/focussed.md +0 -0
- data/docs/dsl/by_method/foreground_colours.md +3 -0
- data/docs/dsl/by_method/geometries.md +0 -0
- data/docs/dsl/by_method/geometry.md +0 -0
- data/docs/dsl/by_method/goto.md +6 -0
- data/docs/dsl/by_method/group.md +0 -0
- data/docs/dsl/by_method/groups.md +0 -0
- data/docs/dsl/by_method/height.md +7 -0
- data/docs/dsl/by_method/hide_cursor.md +0 -0
- data/docs/dsl/by_method/hide_group.md +0 -0
- data/docs/dsl/by_method/hide_interface.md +0 -0
- data/docs/dsl/by_method/horizontal.md +6 -0
- data/docs/dsl/by_method/interface.md +0 -0
- data/docs/dsl/by_method/interfaces.md +0 -0
- data/docs/dsl/by_method/keymap.md +0 -0
- data/docs/dsl/by_method/keymaps.md +0 -0
- data/docs/dsl/by_method/keypress.md +0 -0
- data/docs/dsl/by_method/last_command.md +0 -0
- data/docs/dsl/by_method/last_keypress.md +0 -0
- data/docs/dsl/by_method/left.md +10 -0
- data/docs/dsl/by_method/left_vertical.md +8 -0
- data/docs/dsl/by_method/log.md +0 -0
- data/docs/dsl/by_method/log_stderr.md +0 -0
- data/docs/dsl/by_method/log_stdout.md +0 -0
- data/docs/dsl/by_method/log_timestamp.md +0 -0
- data/docs/dsl/by_method/menu.md +0 -0
- data/docs/dsl/by_method/menus.md +0 -0
- data/docs/dsl/by_method/profile.md +6 -0
- data/docs/dsl/by_method/read.md +0 -0
- data/docs/dsl/by_method/ready.md +0 -0
- data/docs/dsl/by_method/refresh.md +3 -0
- data/docs/dsl/by_method/render.md +0 -0
- data/docs/dsl/by_method/render_output.md +0 -0
- data/docs/dsl/by_method/renderer.md +0 -0
- data/docs/dsl/by_method/renderers.md +0 -0
- data/docs/dsl/by_method/renders.md +0 -0
- data/docs/dsl/by_method/resize.md +5 -0
- data/docs/dsl/by_method/right.md +10 -0
- data/docs/dsl/by_method/right_vertical.md +8 -0
- data/docs/dsl/by_method/show_cursor.md +0 -0
- data/docs/dsl/by_method/show_group.md +0 -0
- data/docs/dsl/by_method/show_interface.md +0 -0
- data/docs/dsl/by_method/timer.md +12 -0
- data/docs/dsl/by_method/title.md +12 -0
- data/docs/dsl/by_method/toggle_cursor.md +0 -0
- data/docs/dsl/by_method/toggle_group.md +0 -0
- data/docs/dsl/by_method/toggle_interface.md +0 -0
- data/docs/dsl/by_method/top.md +10 -0
- data/docs/dsl/by_method/top_horizontal.md +8 -0
- data/docs/dsl/by_method/top_left.md +8 -0
- data/docs/dsl/by_method/top_right.md +8 -0
- data/docs/dsl/by_method/trigger.md +0 -0
- data/docs/dsl/by_method/unbind.md +0 -0
- data/docs/dsl/by_method/unbind_alias.md +0 -0
- data/docs/dsl/by_method/vertical.md +7 -0
- data/docs/dsl/by_method/views.md +0 -0
- data/docs/dsl/by_method/width.md +7 -0
- data/docs/dsl/by_method/write.md +0 -0
- data/examples/284_slow_rendering.rb +6 -3
- data/examples/dsl_alignment.rb +16 -14
- data/examples/dsl_colours.rb +17 -14
- data/examples/dsl_demo_groups.rb +3 -0
- data/examples/dsl_editor.rb +13 -10
- data/examples/dsl_hello_worlds.rb +2 -0
- data/examples/dsl_horizontal_alignment.rb +14 -27
- data/examples/dsl_menus.rb +2 -0
- data/examples/dsl_vertical_alignment.rb +35 -27
- data/examples/views/empty_template.rb +3 -1
- data/examples/views/full_screen.rb +100 -0
- data/examples/views/line.rb +5 -2
- data/examples/views/lines.rb +5 -2
- data/examples/views/lines_alignment.rb +5 -2
- data/examples/views/lines_line_stream.rb +14 -18
- data/examples/views/lines_line_streams.rb +5 -3
- data/examples/views/lines_line_streams_stream.rb +16 -21
- data/examples/views/lines_line_streams_stream_stream.rb +5 -8
- data/examples/views/lines_streams.rb +5 -7
- data/examples/views/lines_streams_stream.rb +5 -8
- data/lib/vedeu.rb +16 -0
- data/lib/vedeu/all.rb +11 -8
- data/lib/vedeu/application/application_controller.rb +2 -0
- data/lib/vedeu/application/application_helper.rb +2 -0
- data/lib/vedeu/application/application_view.rb +4 -2
- data/lib/vedeu/application/controller.rb +2 -0
- data/lib/vedeu/application/helper.rb +2 -0
- data/lib/vedeu/application/view.rb +2 -0
- data/lib/vedeu/boolean.rb +2 -0
- data/lib/vedeu/borders/all.rb +2 -1
- data/lib/vedeu/borders/border.rb +5 -3
- data/lib/vedeu/borders/caption.rb +2 -0
- data/lib/vedeu/borders/dsl.rb +37 -160
- data/lib/vedeu/borders/refresh.rb +3 -1
- data/lib/vedeu/borders/repository.rb +8 -2
- data/lib/vedeu/borders/title.rb +3 -1
- data/lib/vedeu/buffers/all.rb +2 -0
- data/lib/vedeu/buffers/buffer.rb +4 -2
- data/lib/vedeu/buffers/empty.rb +2 -0
- data/lib/vedeu/buffers/null.rb +2 -0
- data/lib/vedeu/buffers/refresh.rb +2 -0
- data/lib/vedeu/buffers/repository.rb +2 -0
- data/lib/vedeu/buffers/terminal.rb +6 -14
- data/lib/vedeu/buffers/view.rb +2 -0
- data/lib/vedeu/cells/all.rb +2 -0
- data/lib/vedeu/cells/border.rb +2 -0
- data/lib/vedeu/cells/borders/all.rb +2 -0
- data/lib/vedeu/cells/borders/bottom_horizontal.rb +2 -0
- data/lib/vedeu/cells/borders/bottom_left.rb +2 -0
- data/lib/vedeu/cells/borders/bottom_right.rb +2 -0
- data/lib/vedeu/cells/borders/corner.rb +2 -0
- data/lib/vedeu/cells/borders/horizontal.rb +2 -0
- data/lib/vedeu/cells/borders/left_vertical.rb +2 -0
- data/lib/vedeu/cells/borders/right_vertical.rb +2 -0
- data/lib/vedeu/cells/borders/top_horizontal.rb +2 -0
- data/lib/vedeu/cells/borders/top_left.rb +2 -0
- data/lib/vedeu/cells/borders/top_right.rb +2 -0
- data/lib/vedeu/cells/borders/vertical.rb +2 -0
- data/lib/vedeu/cells/char.rb +2 -0
- data/lib/vedeu/cells/clear.rb +3 -1
- data/lib/vedeu/cells/empty.rb +6 -4
- data/lib/vedeu/cells/escape.rb +4 -2
- data/lib/vedeu/cells/html.rb +2 -0
- data/lib/vedeu/cells/json.rb +2 -0
- data/lib/vedeu/coercers/alignment.rb +2 -0
- data/lib/vedeu/coercers/all.rb +2 -0
- data/lib/vedeu/coercers/colour.rb +3 -1
- data/lib/vedeu/coercers/colour_attributes.rb +2 -0
- data/lib/vedeu/coercers/horizontal_alignment.rb +2 -0
- data/lib/vedeu/coercers/vertical_alignment.rb +2 -0
- data/lib/vedeu/colours/all.rb +2 -0
- data/lib/vedeu/colours/background.rb +3 -1
- data/lib/vedeu/colours/backgrounds.rb +3 -5
- data/lib/vedeu/colours/colour.rb +2 -0
- data/lib/vedeu/colours/foreground.rb +3 -1
- data/lib/vedeu/colours/foregrounds.rb +3 -5
- data/lib/vedeu/colours/repository.rb +2 -0
- data/lib/vedeu/colours/translator.rb +5 -3
- data/lib/vedeu/colours/validator.rb +3 -1
- data/lib/vedeu/common.rb +17 -8
- data/lib/vedeu/configuration/all.rb +4 -2
- data/lib/vedeu/configuration/api.rb +5 -15
- data/lib/vedeu/configuration/configuration.rb +14 -27
- data/lib/vedeu/cursors/all.rb +2 -0
- data/lib/vedeu/cursors/coordinate.rb +4 -2
- data/lib/vedeu/cursors/cursor.rb +7 -5
- data/lib/vedeu/cursors/dsl.rb +2 -0
- data/lib/vedeu/cursors/move.rb +2 -0
- data/lib/vedeu/cursors/refresh.rb +3 -1
- data/lib/vedeu/cursors/reposition.rb +2 -0
- data/lib/vedeu/cursors/repository.rb +2 -0
- data/lib/vedeu/distributed/all.rb +2 -0
- data/lib/vedeu/distributed/client.rb +5 -3
- data/lib/vedeu/distributed/server.rb +17 -15
- data/lib/vedeu/distributed/subprocess.rb +4 -2
- data/lib/vedeu/distributed/test_application.rb +2 -0
- data/lib/vedeu/distributed/uri.rb +3 -1
- data/lib/vedeu/dsl/all.rb +2 -0
- data/lib/vedeu/dsl/attributes.rb +7 -5
- data/lib/vedeu/dsl/border.rb +2 -0
- data/lib/vedeu/dsl/cursors.rb +2 -0
- data/lib/vedeu/dsl/dsl.rb +3 -1
- data/lib/vedeu/dsl/elements.rb +14 -8
- data/lib/vedeu/dsl/geometry.rb +2 -0
- data/lib/vedeu/dsl/presentation.rb +2 -0
- data/lib/vedeu/dsl/string/align.rb +2 -0
- data/lib/vedeu/dsl/string/all.rb +2 -0
- data/lib/vedeu/dsl/string/text.rb +2 -0
- data/lib/vedeu/dsl/string/truncate.rb +2 -0
- data/lib/vedeu/dsl/string/wordwrap.rb +3 -1
- data/lib/vedeu/dsl/use.rb +2 -0
- data/lib/vedeu/dsl/view.rb +5 -3
- data/lib/vedeu/dsl/views.rb +4 -2
- data/lib/vedeu/editor/all.rb +2 -0
- data/lib/vedeu/editor/collection.rb +2 -0
- data/lib/vedeu/editor/cropper.rb +3 -1
- data/lib/vedeu/editor/cursor.rb +4 -2
- data/lib/vedeu/editor/delete.rb +2 -0
- data/lib/vedeu/editor/document.rb +3 -1
- data/lib/vedeu/editor/editor.rb +2 -0
- data/lib/vedeu/editor/insert.rb +16 -6
- data/lib/vedeu/editor/item.rb +2 -0
- data/lib/vedeu/editor/line.rb +2 -0
- data/lib/vedeu/editor/lines.rb +2 -0
- data/lib/vedeu/editor/repository.rb +2 -0
- data/lib/vedeu/error.rb +9 -4
- data/lib/vedeu/esc/actions.rb +17 -15
- data/lib/vedeu/esc/all.rb +2 -0
- data/lib/vedeu/esc/background.rb +36 -34
- data/lib/vedeu/esc/borders.rb +14 -12
- data/lib/vedeu/esc/colours.rb +12 -8
- data/lib/vedeu/esc/esc.rb +16 -14
- data/lib/vedeu/esc/foreground.rb +36 -34
- data/lib/vedeu/esc/mouse.rb +6 -4
- data/lib/vedeu/events/aliases.rb +3 -1
- data/lib/vedeu/events/all.rb +2 -0
- data/lib/vedeu/events/collection.rb +2 -0
- data/lib/vedeu/events/event.rb +21 -9
- data/lib/vedeu/events/repository.rb +2 -0
- data/lib/vedeu/events/trigger.rb +3 -1
- data/lib/vedeu/geometries/all.rb +2 -0
- data/lib/vedeu/geometries/area/all.rb +2 -0
- data/lib/vedeu/geometries/area/area.rb +46 -18
- data/lib/vedeu/geometries/area/dimension.rb +7 -0
- data/lib/vedeu/geometries/area/x_dimension.rb +2 -0
- data/lib/vedeu/geometries/area/y_dimension.rb +2 -0
- data/lib/vedeu/geometries/dsl/all.rb +2 -0
- data/lib/vedeu/geometries/dsl/dsl.rb +2 -0
- data/lib/vedeu/geometries/dsl/grid.rb +2 -0
- data/lib/vedeu/geometries/dsl/validator.rb +6 -4
- data/lib/vedeu/geometries/geometry.rb +4 -2
- data/lib/vedeu/geometries/move.rb +3 -1
- data/lib/vedeu/geometries/position.rb +4 -2
- data/lib/vedeu/geometries/positionable.rb +2 -0
- data/lib/vedeu/geometries/repository.rb +2 -0
- data/lib/vedeu/groups/all.rb +2 -0
- data/lib/vedeu/groups/clear.rb +2 -0
- data/lib/vedeu/groups/dsl.rb +3 -1
- data/lib/vedeu/groups/group.rb +3 -1
- data/lib/vedeu/groups/refresh.rb +4 -2
- data/lib/vedeu/groups/repository.rb +2 -0
- data/lib/vedeu/input/all.rb +2 -0
- data/lib/vedeu/input/capture.rb +4 -2
- data/lib/vedeu/input/dsl.rb +8 -6
- data/lib/vedeu/input/key.rb +3 -1
- data/lib/vedeu/input/keymap.rb +5 -3
- data/lib/vedeu/input/keys.rb +2 -0
- data/lib/vedeu/input/mapper.rb +7 -5
- data/lib/vedeu/input/mouse.rb +4 -2
- data/lib/vedeu/input/raw.rb +2 -0
- data/lib/vedeu/input/read.rb +3 -1
- data/lib/vedeu/input/repository.rb +2 -0
- data/lib/vedeu/input/store.rb +2 -0
- data/lib/vedeu/input/translator.rb +3 -1
- data/lib/vedeu/interfaces/all.rb +2 -0
- data/lib/vedeu/interfaces/clear.rb +7 -5
- data/lib/vedeu/interfaces/dsl.rb +4 -2
- data/lib/vedeu/interfaces/interface.rb +4 -2
- data/lib/vedeu/interfaces/null.rb +2 -0
- data/lib/vedeu/interfaces/repository.rb +2 -0
- data/lib/vedeu/logging/all.rb +2 -1
- data/lib/vedeu/logging/clock_time.rb +2 -0
- data/lib/vedeu/logging/debug.rb +32 -44
- data/lib/vedeu/logging/lockless_log_device.rb +3 -1
- data/lib/vedeu/logging/log.rb +13 -39
- data/lib/vedeu/logging/mono_logger.rb +3 -1
- data/lib/vedeu/logging/timer.rb +7 -19
- data/lib/vedeu/menus/all.rb +2 -0
- data/lib/vedeu/menus/dsl.rb +2 -0
- data/lib/vedeu/menus/menu.rb +3 -1
- data/lib/vedeu/menus/repository.rb +2 -0
- data/lib/vedeu/models/all.rb +2 -0
- data/lib/vedeu/models/focus.rb +7 -5
- data/lib/vedeu/models/page.rb +3 -1
- data/lib/vedeu/models/row.rb +2 -0
- data/lib/vedeu/models/toggleable.rb +2 -0
- data/lib/vedeu/null/all.rb +2 -0
- data/lib/vedeu/null/generic.rb +2 -0
- data/lib/vedeu/output/all.rb +2 -0
- data/lib/vedeu/output/compressor.rb +9 -7
- data/lib/vedeu/output/compressor_cache.rb +3 -1
- data/lib/vedeu/output/output.rb +2 -0
- data/lib/vedeu/output/refresh.rb +3 -1
- data/lib/vedeu/output/viewport.rb +4 -2
- data/lib/vedeu/output/write.rb +2 -0
- data/lib/vedeu/plugins/plugin.rb +5 -3
- data/lib/vedeu/plugins/plugins.rb +5 -3
- data/lib/vedeu/presentation/all.rb +2 -0
- data/lib/vedeu/presentation/background.rb +2 -0
- data/lib/vedeu/presentation/colour.rb +2 -0
- data/lib/vedeu/presentation/foreground.rb +2 -0
- data/lib/vedeu/presentation/presentation.rb +4 -2
- data/lib/vedeu/presentation/style.rb +2 -0
- data/lib/vedeu/presentation/styles.rb +2 -0
- data/lib/vedeu/renderers/all.rb +10 -22
- data/lib/vedeu/renderers/file.rb +4 -2
- data/lib/vedeu/renderers/html.rb +19 -19
- data/lib/vedeu/renderers/json.rb +2 -0
- data/lib/vedeu/renderers/options.rb +2 -0
- data/lib/vedeu/renderers/terminal.rb +2 -0
- data/lib/vedeu/renderers/text.rb +2 -0
- data/lib/vedeu/repositories/all.rb +2 -0
- data/lib/vedeu/repositories/assemblage.rb +2 -0
- data/lib/vedeu/repositories/collection.rb +2 -0
- data/lib/vedeu/repositories/defaults.rb +2 -0
- data/lib/vedeu/repositories/model.rb +3 -1
- data/lib/vedeu/repositories/parent.rb +2 -0
- data/lib/vedeu/repositories/registerable.rb +2 -0
- data/lib/vedeu/repositories/repositories.rb +3 -1
- data/lib/vedeu/repositories/repository.rb +8 -6
- data/lib/vedeu/repositories/store.rb +3 -1
- data/lib/vedeu/runtime/all.rb +2 -0
- data/lib/vedeu/runtime/application.rb +2 -0
- data/lib/vedeu/runtime/bootstrap.rb +10 -8
- data/lib/vedeu/runtime/flags.rb +2 -0
- data/lib/vedeu/runtime/launcher.rb +5 -3
- data/lib/vedeu/runtime/main_loop.rb +3 -1
- data/lib/vedeu/runtime/router.rb +11 -14
- data/lib/vedeu/runtime/traps.rb +2 -0
- data/lib/vedeu/templating/all.rb +2 -0
- data/lib/vedeu/templating/decoder.rb +2 -0
- data/lib/vedeu/templating/encoder.rb +3 -1
- data/lib/vedeu/templating/helpers.rb +5 -3
- data/lib/vedeu/templating/template.rb +4 -2
- data/lib/vedeu/templating/view_template.rb +2 -0
- data/lib/vedeu/terminal/all.rb +2 -0
- data/lib/vedeu/terminal/mode.rb +2 -0
- data/lib/vedeu/terminal/terminal.rb +9 -34
- data/lib/vedeu/version.rb +3 -1
- data/lib/vedeu/views/all.rb +2 -0
- data/lib/vedeu/views/char.rb +5 -7
- data/lib/vedeu/views/chars.rb +3 -1
- data/lib/vedeu/views/composition.rb +2 -0
- data/lib/vedeu/views/default_attributes.rb +4 -2
- data/lib/vedeu/views/html_char.rb +18 -15
- data/lib/vedeu/views/line.rb +2 -0
- data/lib/vedeu/views/lines.rb +3 -1
- data/lib/vedeu/views/stream.rb +2 -0
- data/lib/vedeu/views/streams.rb +3 -1
- data/lib/vedeu/views/value.rb +2 -0
- data/lib/vedeu/views/view.rb +4 -3
- data/lib/vedeu/views/views.rb +2 -0
- data/test/lib/vedeu/application/application_controller_test.rb +2 -0
- data/test/lib/vedeu/application/application_helper_test.rb +2 -0
- data/test/lib/vedeu/application/application_view_test.rb +2 -0
- data/test/lib/vedeu/application/controller_test.rb +2 -0
- data/test/lib/vedeu/application/helper_test.rb +2 -0
- data/test/lib/vedeu/application/view_test.rb +2 -0
- data/test/lib/vedeu/boolean_test.rb +2 -0
- data/test/lib/vedeu/borders/border_test.rb +2 -0
- data/test/lib/vedeu/borders/caption_test.rb +2 -0
- data/test/lib/vedeu/borders/dsl_test.rb +6 -0
- data/test/lib/vedeu/borders/refresh_test.rb +2 -0
- data/test/lib/vedeu/borders/repository_test.rb +2 -0
- data/test/lib/vedeu/borders/title_test.rb +2 -0
- data/test/lib/vedeu/buffers/buffer_test.rb +2 -0
- data/test/lib/vedeu/buffers/empty_test.rb +2 -0
- data/test/lib/vedeu/buffers/null_test.rb +2 -0
- data/test/lib/vedeu/buffers/refresh_test.rb +2 -0
- data/test/lib/vedeu/buffers/repository_test.rb +2 -0
- data/test/lib/vedeu/buffers/terminal_test.rb +2 -0
- data/test/lib/vedeu/buffers/view_test.rb +2 -0
- data/test/lib/vedeu/cells/border_test.rb +2 -0
- data/test/lib/vedeu/cells/borders/bottom_horizontal_test.rb +2 -0
- data/test/lib/vedeu/cells/borders/bottom_left_test.rb +2 -0
- data/test/lib/vedeu/cells/borders/bottom_right_test.rb +2 -0
- data/test/lib/vedeu/cells/borders/corner_test.rb +2 -0
- data/test/lib/vedeu/cells/borders/horizontal_test.rb +2 -0
- data/test/lib/vedeu/cells/borders/left_vertical_test.rb +2 -0
- data/test/lib/vedeu/cells/borders/right_vertical_test.rb +2 -0
- data/test/lib/vedeu/cells/borders/top_horizontal_test.rb +2 -0
- data/test/lib/vedeu/cells/borders/top_left_test.rb +2 -0
- data/test/lib/vedeu/cells/borders/top_right_test.rb +2 -0
- data/test/lib/vedeu/cells/borders/vertical_test.rb +2 -0
- data/test/lib/vedeu/cells/char_test.rb +2 -0
- data/test/lib/vedeu/cells/clear_test.rb +2 -0
- data/test/lib/vedeu/cells/empty_test.rb +2 -0
- data/test/lib/vedeu/cells/escape_test.rb +2 -0
- data/test/lib/vedeu/cells/html_test.rb +2 -0
- data/test/lib/vedeu/cells/json_test.rb +2 -0
- data/test/lib/vedeu/coercers/alignment_test.rb +2 -0
- data/test/lib/vedeu/coercers/colour_attributes_test.rb +2 -0
- data/test/lib/vedeu/coercers/colour_test.rb +2 -0
- data/test/lib/vedeu/coercers/horizontal_alignment_test.rb +2 -0
- data/test/lib/vedeu/coercers/vertical_alignment_test.rb +2 -0
- data/test/lib/vedeu/colours/background_test.rb +2 -0
- data/test/lib/vedeu/colours/backgrounds_test.rb +2 -0
- data/test/lib/vedeu/colours/colour_test.rb +2 -0
- data/test/lib/vedeu/colours/foreground_test.rb +2 -0
- data/test/lib/vedeu/colours/foregrounds_test.rb +2 -0
- data/test/lib/vedeu/colours/repository_test.rb +2 -0
- data/test/lib/vedeu/colours/translator_test.rb +2 -0
- data/test/lib/vedeu/colours/validator_test.rb +2 -0
- data/test/lib/vedeu/common_test.rb +39 -6
- data/test/lib/vedeu/configuration/api_test.rb +37 -18
- data/test/lib/vedeu/configuration/configuration_test.rb +4 -2
- data/test/lib/vedeu/cursors/coordinate_test.rb +2 -0
- data/test/lib/vedeu/cursors/cursor_test.rb +2 -0
- data/test/lib/vedeu/cursors/dsl_test.rb +2 -0
- data/test/lib/vedeu/cursors/move_test.rb +2 -0
- data/test/lib/vedeu/cursors/refresh_test.rb +2 -0
- data/test/lib/vedeu/cursors/reposition_test.rb +2 -0
- data/test/lib/vedeu/cursors/repository_test.rb +2 -0
- data/test/lib/vedeu/distributed/client_test.rb +2 -0
- data/test/lib/vedeu/distributed/server_test.rb +2 -0
- data/test/lib/vedeu/distributed/subprocess_test.rb +2 -0
- data/test/lib/vedeu/distributed/test_application_test.rb +2 -0
- data/test/lib/vedeu/distributed/uri_test.rb +2 -0
- data/test/lib/vedeu/dsl/attributes_test.rb +2 -0
- data/test/lib/vedeu/dsl/border_test.rb +2 -0
- data/test/lib/vedeu/dsl/cursors_test.rb +2 -0
- data/test/lib/vedeu/dsl/dsl_test.rb +2 -0
- data/test/lib/vedeu/dsl/elements_test.rb +2 -0
- data/test/lib/vedeu/dsl/geometry_test.rb +2 -0
- data/test/lib/vedeu/dsl/presentation_test.rb +2 -0
- data/test/lib/vedeu/dsl/string/align_test.rb +2 -0
- data/test/lib/vedeu/dsl/string/text_test.rb +2 -0
- data/test/lib/vedeu/dsl/string/truncate_test.rb +2 -0
- data/test/lib/vedeu/dsl/string/wordwrap_test.rb +2 -0
- data/test/lib/vedeu/dsl/use_test.rb +2 -0
- data/test/lib/vedeu/dsl/view_test.rb +2 -0
- data/test/lib/vedeu/dsl/views_test.rb +2 -0
- data/test/lib/vedeu/editor/collection_test.rb +2 -0
- data/test/lib/vedeu/editor/cropper_test.rb +2 -0
- data/test/lib/vedeu/editor/cursor_test.rb +2 -0
- data/test/lib/vedeu/editor/delete_test.rb +2 -0
- data/test/lib/vedeu/editor/document_test.rb +2 -0
- data/test/lib/vedeu/editor/editor_test.rb +2 -0
- data/test/lib/vedeu/editor/insert_test.rb +2 -0
- data/test/lib/vedeu/editor/item_test.rb +2 -0
- data/test/lib/vedeu/editor/line_test.rb +2 -0
- data/test/lib/vedeu/editor/lines_test.rb +2 -0
- data/test/lib/vedeu/editor/repository_test.rb +2 -0
- data/test/lib/vedeu/error_test.rb +2 -0
- data/test/lib/vedeu/esc/actions_test.rb +2 -0
- data/test/lib/vedeu/esc/background_test.rb +2 -0
- data/test/lib/vedeu/esc/borders_test.rb +2 -0
- data/test/lib/vedeu/esc/colours_test.rb +2 -0
- data/test/lib/vedeu/esc/esc_test.rb +2 -0
- data/test/lib/vedeu/esc/foreground_test.rb +2 -0
- data/test/lib/vedeu/esc/mouse_test.rb +2 -0
- data/test/lib/vedeu/events/aliases_test.rb +2 -0
- data/test/lib/vedeu/events/collection_test.rb +2 -0
- data/test/lib/vedeu/events/event_test.rb +2 -0
- data/test/lib/vedeu/events/repository_test.rb +2 -0
- data/test/lib/vedeu/events/trigger_test.rb +2 -0
- data/test/lib/vedeu/geometries/area/area_test.rb +54 -26
- data/test/lib/vedeu/geometries/area/dimension_test.rb +2 -0
- data/test/lib/vedeu/geometries/area/x_dimension_test.rb +2 -0
- data/test/lib/vedeu/geometries/area/y_dimension_test.rb +2 -0
- data/test/lib/vedeu/geometries/dsl/dsl_test.rb +2 -0
- data/test/lib/vedeu/geometries/dsl/grid_test.rb +2 -0
- data/test/lib/vedeu/geometries/dsl/validator_test.rb +2 -0
- data/test/lib/vedeu/geometries/geometry_test.rb +2 -0
- data/test/lib/vedeu/geometries/move_test.rb +2 -0
- data/test/lib/vedeu/geometries/position_test.rb +2 -0
- data/test/lib/vedeu/geometries/positionable_test.rb +2 -0
- data/test/lib/vedeu/geometries/repository_test.rb +2 -0
- data/test/lib/vedeu/groups/clear_test.rb +2 -0
- data/test/lib/vedeu/groups/dsl_test.rb +2 -0
- data/test/lib/vedeu/groups/group_test.rb +2 -0
- data/test/lib/vedeu/groups/refresh_test.rb +2 -0
- data/test/lib/vedeu/groups/repository_test.rb +2 -0
- data/test/lib/vedeu/input/capture_test.rb +2 -0
- data/test/lib/vedeu/input/dsl_test.rb +2 -0
- data/test/lib/vedeu/input/key_test.rb +2 -0
- data/test/lib/vedeu/input/keymap_test.rb +2 -0
- data/test/lib/vedeu/input/keys_test.rb +2 -0
- data/test/lib/vedeu/input/mapper_test.rb +2 -0
- data/test/lib/vedeu/input/mouse_test.rb +2 -0
- data/test/lib/vedeu/input/raw_test.rb +2 -0
- data/test/lib/vedeu/input/read_test.rb +2 -0
- data/test/lib/vedeu/input/repository_test.rb +2 -0
- data/test/lib/vedeu/input/store_test.rb +2 -0
- data/test/lib/vedeu/input/translator_test.rb +2 -0
- data/test/lib/vedeu/interfaces/clear_test.rb +2 -0
- data/test/lib/vedeu/interfaces/dsl_test.rb +2 -0
- data/test/lib/vedeu/interfaces/interface_test.rb +2 -0
- data/test/lib/vedeu/interfaces/null_test.rb +2 -0
- data/test/lib/vedeu/interfaces/repository_test.rb +2 -0
- data/test/lib/vedeu/logging/clock_time_test.rb +2 -0
- data/test/lib/vedeu/logging/debug_test.rb +37 -9
- data/test/lib/vedeu/logging/lockless_log_device_test.rb +2 -0
- data/test/lib/vedeu/logging/log_test.rb +2 -0
- data/test/lib/vedeu/logging/mono_logger_test.rb +2 -0
- data/test/lib/vedeu/logging/timer_test.rb +2 -0
- data/test/lib/vedeu/menus/dsl_test.rb +2 -0
- data/test/lib/vedeu/menus/menu_test.rb +2 -0
- data/test/lib/vedeu/menus/repository_test.rb +2 -0
- data/test/lib/vedeu/models/focus_test.rb +2 -0
- data/test/lib/vedeu/models/page_test.rb +2 -0
- data/test/lib/vedeu/models/row_test.rb +2 -0
- data/test/lib/vedeu/models/toggleable_test.rb +2 -0
- data/test/lib/vedeu/null/generic_test.rb +2 -0
- data/test/lib/vedeu/output/compressor_cache_test.rb +2 -0
- data/test/lib/vedeu/output/compressor_test.rb +2 -0
- data/test/lib/vedeu/output/output_test.rb +2 -0
- data/test/lib/vedeu/output/refresh_test.rb +2 -0
- data/test/lib/vedeu/output/viewport_test.rb +2 -0
- data/test/lib/vedeu/output/write_test.rb +2 -0
- data/test/lib/vedeu/plugins/plugin_test.rb +2 -0
- data/test/lib/vedeu/plugins/plugins_test.rb +2 -0
- data/test/lib/vedeu/presentation/background_test.rb +2 -0
- data/test/lib/vedeu/presentation/colour_test.rb +2 -0
- data/test/lib/vedeu/presentation/foreground_test.rb +2 -0
- data/test/lib/vedeu/presentation/presentation_test.rb +2 -0
- data/test/lib/vedeu/presentation/style_test.rb +2 -0
- data/test/lib/vedeu/presentation/styles_test.rb +2 -0
- data/test/lib/vedeu/renderers/all_test.rb +4 -95
- data/test/lib/vedeu/renderers/file_test.rb +2 -0
- data/test/lib/vedeu/renderers/html_test.rb +28 -1
- data/test/lib/vedeu/renderers/json_test.rb +2 -0
- data/test/lib/vedeu/renderers/options_test.rb +2 -0
- data/test/lib/vedeu/renderers/terminal_test.rb +2 -0
- data/test/lib/vedeu/renderers/text_test.rb +2 -0
- data/test/lib/vedeu/repositories/assemblage_test.rb +2 -0
- data/test/lib/vedeu/repositories/collection_test.rb +2 -0
- data/test/lib/vedeu/repositories/defaults_test.rb +2 -0
- data/test/lib/vedeu/repositories/model_test.rb +2 -0
- data/test/lib/vedeu/repositories/registerable_test.rb +2 -0
- data/test/lib/vedeu/repositories/repositories_test.rb +2 -0
- data/test/lib/vedeu/repositories/repository_test.rb +2 -0
- data/test/lib/vedeu/repositories/store_test.rb +2 -0
- data/test/lib/vedeu/runtime/application_test.rb +2 -0
- data/test/lib/vedeu/runtime/bootstrap_test.rb +2 -0
- data/test/lib/vedeu/runtime/flags_test.rb +2 -0
- data/test/lib/vedeu/runtime/launcher_test.rb +2 -0
- data/test/lib/vedeu/runtime/main_loop_test.rb +2 -0
- data/test/lib/vedeu/runtime/router_test.rb +2 -0
- data/test/lib/vedeu/runtime/traps_test.rb +2 -0
- data/test/lib/vedeu/templating/decoder_test.rb +2 -0
- data/test/lib/vedeu/templating/encoder_test.rb +2 -0
- data/test/lib/vedeu/templating/helpers_test.rb +2 -0
- data/test/lib/vedeu/templating/template_test.rb +2 -0
- data/test/lib/vedeu/templating/view_template_test.rb +2 -0
- data/test/lib/vedeu/terminal/mode_test.rb +2 -0
- data/test/lib/vedeu/terminal/terminal_test.rb +2 -0
- data/test/lib/vedeu/views/char_test.rb +2 -0
- data/test/lib/vedeu/views/chars_test.rb +2 -0
- data/test/lib/vedeu/views/composition_test.rb +2 -0
- data/test/lib/vedeu/views/default_attributes_test.rb +2 -0
- data/test/lib/vedeu/views/html_char_test.rb +2 -0
- data/test/lib/vedeu/views/line_test.rb +2 -0
- data/test/lib/vedeu/views/lines_test.rb +2 -0
- data/test/lib/vedeu/views/stream_test.rb +2 -0
- data/test/lib/vedeu/views/streams_test.rb +2 -0
- data/test/lib/vedeu/views/value_test.rb +2 -0
- data/test/lib/vedeu/views/view_test.rb +2 -0
- data/test/lib/vedeu/views/views_test.rb +2 -0
- data/test/lib/vedeu_test.rb +21 -3
- data/test/support/examples/material_colours_app.rb +17 -1
- data/test/support/helpers/model_test_class.rb +2 -0
- data/test/support/helpers/presentation_colour_test_class.rb +2 -0
- data/test/test_helper.rb +3 -22
- data/vedeu.gemspec +0 -3
- metadata +105 -52
- data/docs/debugging.md +0 -18
- data/lib/vedeu/borders/set_attribute.rb +0 -73
- data/lib/vedeu/logging/ips.rb +0 -66
- data/test/lib/vedeu/borders/set_attribute_test.rb +0 -62
- data/test/lib/vedeu/logging/ips_test.rb +0 -52
data/lib/vedeu/version.rb
CHANGED
data/lib/vedeu/views/all.rb
CHANGED
data/lib/vedeu/views/char.rb
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
require 'vedeu/geometries/positionable'
|
2
4
|
|
3
5
|
module Vedeu
|
@@ -105,13 +107,9 @@ module Vedeu
|
|
105
107
|
|
106
108
|
# @return [String]
|
107
109
|
def text
|
108
|
-
if border
|
109
|
-
' '.freeze
|
110
|
-
|
111
|
-
else
|
112
|
-
@value
|
110
|
+
return ' ' if border
|
113
111
|
|
114
|
-
|
112
|
+
@value
|
115
113
|
end
|
116
114
|
|
117
115
|
# Returns a Hash of all the values before coercion.
|
@@ -160,7 +158,7 @@ module Vedeu
|
|
160
158
|
parent: nil,
|
161
159
|
position: nil,
|
162
160
|
style: nil,
|
163
|
-
value: ''
|
161
|
+
value: '',
|
164
162
|
}
|
165
163
|
end
|
166
164
|
|
data/lib/vedeu/views/chars.rb
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
module Vedeu
|
2
4
|
|
3
5
|
module Views
|
@@ -43,7 +45,7 @@ module Vedeu
|
|
43
45
|
else
|
44
46
|
fail Vedeu::Error::InvalidSyntax,
|
45
47
|
'Cannot coerce for Vedeu::View::Streams, as collection ' \
|
46
|
-
'unrecognised.'
|
48
|
+
'unrecognised.'
|
47
49
|
|
48
50
|
end
|
49
51
|
end
|
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
module Vedeu
|
2
4
|
|
3
5
|
module Views
|
@@ -57,11 +59,11 @@ module Vedeu
|
|
57
59
|
client: nil,
|
58
60
|
colour: nil,
|
59
61
|
name: nil,
|
60
|
-
pad: ' '
|
62
|
+
pad: ' ',
|
61
63
|
parent: nil,
|
62
64
|
style: nil,
|
63
65
|
truncate: false,
|
64
|
-
value: ''
|
66
|
+
value: '',
|
65
67
|
width: nil,
|
66
68
|
wordwrap: false,
|
67
69
|
}
|
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
module Vedeu
|
2
4
|
|
3
5
|
module Views
|
@@ -29,7 +31,7 @@ module Vedeu
|
|
29
31
|
|
30
32
|
# @return [String]
|
31
33
|
def render
|
32
|
-
"#{start_tag}#{tag_style}>#{tag_value}#{end_tag}"
|
34
|
+
"#{start_tag}#{tag_style}>#{tag_value}#{end_tag}"
|
33
35
|
end
|
34
36
|
|
35
37
|
protected
|
@@ -44,26 +46,27 @@ module Vedeu
|
|
44
46
|
def tag_style
|
45
47
|
return '' unless border || present?(value)
|
46
48
|
|
47
|
-
|
48
|
-
out << tag_style_background unless char.background.empty?
|
49
|
-
out << tag_style_foreground unless char.foreground.empty?
|
50
|
-
out << "'".freeze
|
49
|
+
" style='#{tag_style_background}#{tag_style_foreground}'"
|
51
50
|
end
|
52
51
|
|
53
52
|
# @return [String]
|
54
53
|
def tag_style_background
|
54
|
+
return '' if char.background.empty?
|
55
|
+
|
55
56
|
"border:1px #{char.background.to_html} solid;" \
|
56
|
-
"background:#{char.background.to_html};"
|
57
|
+
"background:#{char.background.to_html};"
|
57
58
|
end
|
58
59
|
|
59
60
|
# @return [String]
|
60
61
|
def tag_style_foreground
|
61
|
-
|
62
|
+
return '' if char.foreground.empty?
|
63
|
+
|
64
|
+
"color:#{char.foreground.to_html};#{border_style}"
|
62
65
|
end
|
63
66
|
|
64
67
|
# @return [String]
|
65
68
|
def tag_value
|
66
|
-
return ' '
|
69
|
+
return ' ' if border || !present?(value)
|
67
70
|
|
68
71
|
value
|
69
72
|
end
|
@@ -75,10 +78,10 @@ module Vedeu
|
|
75
78
|
when :left_vertical then css(:left)
|
76
79
|
when :right_vertical then css(:right)
|
77
80
|
when :bottom_horizontal then css(:bottom)
|
78
|
-
when :top_left then "#{css(:top)}#{css(:left)}"
|
79
|
-
when :top_right then "#{css(:top)}#{css(:right)}"
|
80
|
-
when :bottom_left then "#{css(:bottom)}#{css(:left)}"
|
81
|
-
when :bottom_right then "#{css(:bottom)}#{css(:right)}"
|
81
|
+
when :top_left then "#{css(:top)}#{css(:left)}"
|
82
|
+
when :top_right then "#{css(:top)}#{css(:right)}"
|
83
|
+
when :bottom_left then "#{css(:bottom)}#{css(:left)}"
|
84
|
+
when :bottom_right then "#{css(:bottom)}#{css(:right)}"
|
82
85
|
else
|
83
86
|
''
|
84
87
|
end
|
@@ -87,7 +90,7 @@ module Vedeu
|
|
87
90
|
# @param direction [Symbol]
|
88
91
|
# @return [String]
|
89
92
|
def css(direction)
|
90
|
-
"border-#{direction}:1px #{char.foreground.to_html} solid;"
|
93
|
+
"border-#{direction}:1px #{char.foreground.to_html} solid;"
|
91
94
|
end
|
92
95
|
|
93
96
|
# @return [Symbol|NilClass]
|
@@ -118,8 +121,8 @@ module Vedeu
|
|
118
121
|
# @return [Hash<Symbol => String>]
|
119
122
|
def defaults
|
120
123
|
{
|
121
|
-
start_tag: '<td'
|
122
|
-
end_tag: '</td>'
|
124
|
+
start_tag: '<td',
|
125
|
+
end_tag: '</td>',
|
123
126
|
}
|
124
127
|
end
|
125
128
|
|
data/lib/vedeu/views/line.rb
CHANGED
data/lib/vedeu/views/lines.rb
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
module Vedeu
|
2
4
|
|
3
5
|
module Views
|
@@ -32,7 +34,7 @@ module Vedeu
|
|
32
34
|
else
|
33
35
|
fail Vedeu::Error::InvalidSyntax,
|
34
36
|
'Cannot coerce for Vedeu::View::Lines, as collection ' \
|
35
|
-
'unrecognised.'
|
37
|
+
'unrecognised.'
|
36
38
|
|
37
39
|
end
|
38
40
|
end
|
data/lib/vedeu/views/stream.rb
CHANGED
data/lib/vedeu/views/streams.rb
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
module Vedeu
|
2
4
|
|
3
5
|
module Views
|
@@ -43,7 +45,7 @@ module Vedeu
|
|
43
45
|
else
|
44
46
|
fail Vedeu::Error::InvalidSyntax,
|
45
47
|
'Cannot coerce for Vedeu::View::Streams, as collection ' \
|
46
|
-
'unrecognised.'
|
48
|
+
'unrecognised.'
|
47
49
|
|
48
50
|
end
|
49
51
|
end
|
data/lib/vedeu/views/value.rb
CHANGED
data/lib/vedeu/views/view.rb
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
require 'vedeu/dsl/all'
|
2
4
|
|
3
5
|
module Vedeu
|
@@ -112,8 +114,7 @@ module Vedeu
|
|
112
114
|
# @return [Vedeu::Views::View]
|
113
115
|
def store_deferred
|
114
116
|
fail Vedeu::Error::InvalidSyntax,
|
115
|
-
'Cannot store an interface '
|
116
|
-
'without a name.'.freeze unless present?(name)
|
117
|
+
'Cannot store an interface without a name.' unless present?(name)
|
117
118
|
|
118
119
|
buffer.add(self)
|
119
120
|
|
@@ -142,7 +143,7 @@ module Vedeu
|
|
142
143
|
client: nil,
|
143
144
|
colour: Vedeu::Configuration.colour,
|
144
145
|
cursor_visible: true,
|
145
|
-
name:
|
146
|
+
name: nil,
|
146
147
|
parent: nil,
|
147
148
|
style: :normal,
|
148
149
|
value: [],
|
data/lib/vedeu/views/views.rb
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
require 'test_helper'
|
2
4
|
|
3
5
|
module Vedeu
|
@@ -63,12 +65,16 @@ module Vedeu
|
|
63
65
|
describe '#disable!' do
|
64
66
|
subject { instance.disable! }
|
65
67
|
|
68
|
+
it { instance.must_respond_to(:disabled!) }
|
69
|
+
|
66
70
|
it { subject.must_be_instance_of(FalseClass) }
|
67
71
|
end
|
68
72
|
|
69
73
|
describe '#enable!' do
|
70
74
|
subject { instance.enable! }
|
71
75
|
|
76
|
+
it { instance.must_respond_to(:enabled!) }
|
77
|
+
|
72
78
|
it { subject.must_be_instance_of(TrueClass) }
|
73
79
|
end
|
74
80
|
|