Rajout d'un fichier gitignore dans test
[oegtk/easy_starter.git] / test / test.py
1 #!/usr/bin/python3
2 #-*- coding: utf-8 -*-
3
4
5 from gi.repository import Gtk
6
7
8 class GladeWindowManager:
9     builder = Gtk.Builder()
10
11     @classmethod
12     def append(cls, glade_file):
13         cls.builder.add_from_file(glade_file)
14
15     @classmethod
16     def initWindow(cls, window_name, window_instance):
17         cls.builder.connect_signals(window_instance)
18         return cls.builder.get_object(window_name)
19
20
21 class TestMainWindow:
22
23     def on_window_destroy(self, widget, data=None):
24         Gtk.main_quit()
25
26     def __init__(self):
27         self.window = GladeWindowManager.initWindow("main_window", self)
28         self.window.show_all()
29
30     @staticmethod
31     def _get_all_textlines_from_buffer(buffer):
32         start, end = buffer.get_start_iter(), buffer.get_end_iter()
33         return buffer.get_text(start, end, True).splitlines()
34
35     def on_start_button_clicked(self, widget, data=None):
36         # Récupération des widgets utiles à partir du widget général
37         grid = widget.get_children()[0].get_children()[1]
38         widgets = [e.get_children() for e in grid.get_children()
39                                     if type(e) != Gtk.Label]
40         # Récupération des valeurs dans "Scripts"
41         scripts = self._get_all_textlines_from_buffer(
42             widgets[0][0].get_buffer()
43         )
44         # Récupération des valeurs dans "Bases"
45         bases = self._get_all_textlines_from_buffer(
46             widgets[1][0].get_buffer()
47         )
48         # Récupération des valeurs dans "Modules"
49         modules = self._get_all_textlines_from_buffer(
50             widgets[2][0].get_buffer()
51         )
52         # Récupération de la valeur dans "Actions"
53         action = [rb.get_label() for rb in widgets[3] if rb.get_active()][0]
54         print("""Éléments récupérés :
55 modules :
56 %s
57 bases
58 %s
59 scripts
60 %s
61 action
62 %s""" % (modules, bases, scripts, action))
63
64
65 if __name__ == "__main__":
66     GladeWindowManager.append("OpenERPEasyStarter.glade")
67     appli = TestMainWindow()
68     Gtk.main()