/src/wrappers/gtk/examples/entries/entries_window.e

http://github.com/tybor/Liberty · Specman e · 60 lines · 52 code · 5 blank · 3 comment · 0 complexity · 0a5ee1364f135c6db33616c5effe8a0d MD5 · raw file

  1. class ENTRIES_WINDOW
  2. inherit
  3. GTK_WINDOW redefine make, on_destroy end
  4. insert
  5. G_SIGNALS
  6. GTK
  7. creation make
  8. feature make is
  9. do
  10. Precursor
  11. check is_entries_window_a_g_object: g_is_object (handle) /= 0 end
  12. set_title (title_string)
  13. midscreen
  14. create vbox.make (True,10)
  15. create entry_box.make (True,10)
  16. create integer_spin_box.make (True,10)
  17. create real_spin_box.make (True,10)
  18. vbox.add (entry_box)
  19. vbox.add (integer_spin_box)
  20. vbox.add (real_spin_box)
  21. add (vbox)
  22. -- Setting entry
  23. create entry_label.with_label ("My entry")
  24. entry_label.set_angle (25.0)
  25. entry_box.pack_start_defaults (entry_label)
  26. create entry.with_label ("What a nice entry!")
  27. entry_box.pack_start_defaults (entry)
  28. -- Setting integer spin button
  29. create integer_spin_label.with_label ("Number of Eiffel projects")
  30. create integer_spin.make
  31. integer_spin_box.pack_start_defaults (integer_spin_label)
  32. integer_spin_box.pack_start_defaults (integer_spin)
  33. -- Setting integer spin button
  34. create real_spin_label.with_label ("Amount of non-Eiffel code (percent)")
  35. create real_spin.make
  36. real_spin_box.pack_start_defaults (real_spin_label)
  37. real_spin_box.pack_start_defaults (real_spin)
  38. enable_on_destroy
  39. end
  40. feature -- labels
  41. title_string: STRING is "Entries demo"
  42. feature -- Widgets
  43. vbox: GTK_VBOX
  44. entry_box, integer_spin_box, real_spin_box: GTK_HBOX
  45. entry_label, integer_spin_label, real_spin_label: GTK_LABEL
  46. entry: TEXT_ENTRY
  47. integer_spin: INTEGER_SPIN
  48. real_spin: REAL_SPIN
  49. feature -- Callbacks
  50. on_destroy is
  51. do
  52. print ("Entries demo ending%N")
  53. gtk.quit
  54. end
  55. end