/tutorial/vision/drawing/free_drawing2.e

http://github.com/tybor/Liberty · Specman e · 45 lines · 37 code · 5 blank · 3 comment · 0 complexity · f8bbaceed7deb1355dd22ea63c60b803 MD5 · raw file

  1. class FREE_DRAWING2
  2. -- This example show how to do free style draw, using dedicated
  3. -- layout (DIAGRAM).
  4. inherit
  5. GRAPHIC
  6. creation {ANY}
  7. make
  8. feature {}
  9. make is
  10. local
  11. toplevel_window: TOPLEVEL_WINDOW; diagram: SUB_WINDOW; horizontal_line: HORIZONTAL_LINE
  12. do
  13. create toplevel_window
  14. -- The default layout is column.
  15. create diagram.make_layout(toplevel_window, create {DIAGRAM})
  16. diagram.map
  17. create horizontal_line
  18. toplevel_window.child_attach(horizontal_line)
  19. add_controls(toplevel_window)
  20. toplevel_window.set_title(once "Drawing example")
  21. toplevel_window.set_background_color(white_color)
  22. toplevel_window.set_x_expand(False)
  23. toplevel_window.set_y_expand(False)
  24. toplevel_window.map
  25. vision.start
  26. end
  27. add_controls (w: WINDOW) is
  28. local
  29. controls: CONTAINER; layout: ROW_LAYOUT; quit: BUTTON
  30. do
  31. create layout
  32. create controls.make_layout(w, layout)
  33. controls.set_x_expand(True)
  34. layout.set_border(5)
  35. layout.set_spacing(5)
  36. layout.insert_button_space
  37. create quit.with_label(controls, U"Exit")
  38. quit.when_left_clicked(agent vision.loop_stack.break)
  39. end
  40. end -- class FREE_DRAWING2