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

http://github.com/tybor/Liberty · Specman e · 67 lines · 55 code · 10 blank · 2 comment · 0 complexity · 0fe0ccd2416bd417e2fbb967adf356ff MD5 · raw file

  1. class TEXT_ENTRY
  2. inherit
  3. GTK_ENTRY
  4. redefine
  5. on_activate,
  6. on_backspace,
  7. on_copy_clipboard,
  8. on_cut_clipboard,
  9. on_paste_clipboard,
  10. on_changed
  11. end
  12. creation with_label
  13. feature with_label (a_label: STRING) is
  14. require a_label/=Void
  15. do
  16. make
  17. set_text (a_label)
  18. -- Low level, unsecure signal handling
  19. connect (Current, "changed", $on_changed)
  20. connect (Current, "delete-text", $on_delete)
  21. -- High level, secure signal handling
  22. enable_on_activate
  23. enable_on_backspace
  24. enable_on_copy_clipboard
  25. enable_on_cut_clipboard
  26. enable_on_paste_clipboard
  27. end
  28. feature -- Callbacks
  29. on_changed is
  30. do
  31. print ("Entry has changed; now it contains `") print(text) print ("'%N")
  32. end
  33. on_delete (a_start,an_end: INTEGER) is
  34. do
  35. print ("Deleting text in entry from ") print(a_start.out) print (" to ") print (an_end.out) print("%N")
  36. end
  37. on_activate is
  38. do
  39. print ("on activate%N")
  40. end
  41. on_backspace is
  42. do
  43. print ("on backspace%N")
  44. end
  45. on_copy_clipboard is
  46. do
  47. print ("Text copied to clipboard %N")
  48. end
  49. on_cut_clipboard is
  50. do
  51. print ("Cut to clipboard%N")
  52. end
  53. on_paste_clipboard is
  54. do
  55. print ("Text pasted from clipboard%N")
  56. end
  57. end