Advertisement
Guest User

gtk

a guest
Jun 18th, 2018
73
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.32 KB | None | 0 0
  1. import gi
  2. gi.require_version('Gtk' , '3.0')
  3. from gi.repository import Gtk
  4.  
  5. class Handler:
  6. def onDestroy(self, *args):
  7. Gtk.main_quit()
  8.  
  9. builder = Gtk.Builder()
  10. builder.add_from_file("grep.glade")
  11. builder.connect_signals(Handler())
  12.  
  13. window = builder.get_object("Main_Window")
  14. window.set_title("Grep")
  15.  
  16. #menu
  17. main_menu_bar = Gtk.MenuBar()
  18.  
  19. #rozwijane Menu
  20. file_menu = Gtk.Menu()
  21. file_menu_dropdown = Gtk.MenuItem("Plik")
  22. help_menu = Gtk.Menu()
  23. help_menu_dropdown = Gtk.MenuItem("Pomoc")
  24.  
  25. #file menu items
  26. qtk_main_quit = Gtk.MenuItem("Wyjscie")
  27. qtk_help_about = Gtk.MenuItem("O Programie")
  28.  
  29. file_menu_dropdown.set_submenu(file_menu)
  30. file_menu.append(Gtk.SeparatorMenuItem())
  31. file_menu.append(qtk_main_quit)
  32.  
  33. help_menu_dropdown.set_submenu(help_menu)
  34. help_menu.append(Gtk.SeparatorMenuItem())
  35. help_menu.append(qtk_help_about)
  36.  
  37. main_menu_bar.append(file_menu_dropdown,help_menu_dropdown)
  38.  
  39. #koniec menu
  40.  
  41. labelL = builder.get_object("label15")
  42. labelC = builder.get_object("label13")
  43. labelR = builder.get_object("label16")
  44. checkButtonL = builder.get_object("radiobutton1")
  45. checkButtonC = builder.get_object("radiobutton2")
  46. checkButtonR = builder.get_object("radiobutton3")
  47.  
  48. def onChangeSide(widget):#, event):
  49. tekst = "Grep\nv.0.1 beta"
  50. labelL.set_text(tekst)
  51. if checkButtonL.get_active():
  52. labelL.set_text(tekst)
  53. labelC.set_text('')
  54. labelR.set_text('')
  55. elif checkButtonC.get_active():
  56. labelC.set_text(tekst)
  57. labelL.set_text('')
  58. labelR.set_text('')
  59. elif checkButtonR.get_active():
  60. labelR.set_text(tekst)
  61. labelL.set_text('')
  62. labelC.set_text('')
  63.  
  64. checkButtonL.connect("clicked", onChangeSide)
  65. checkButtonC.connect("clicked", onChangeSide)
  66. checkButtonR.connect("clicked", onChangeSide)
  67.  
  68. textField = builder.get_object("output")
  69.  
  70. textBuffer = Gtk.TextBuffer()
  71. textField.set_buffer(textBuffer)
  72.  
  73. textLink = builder.get_object("entry1")
  74. buttonOk = builder.get_object("button2")
  75.  
  76. def saveToFile(widget, event):
  77. start_iter = textBuffer.get_start_iter()
  78. end_iter = textBuffer.get_end_iter()
  79.  
  80. file = open(textLink.get_text(), "w")
  81. file.write(textBuffer.get_text(start_iter, end_iter, False))
  82. file.close()
  83.  
  84. buttonOk.connect("button_press_event", saveToFile)
  85.  
  86. window.show_all()
  87.  
  88. Gtk.main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement