modify src/core.py - first approximation
[findit] / src / core.py
1 #!/usr/bin/env python
2 # -*-coding: utf-8 -*-
3 # vim: sw=4 ts=4 expandtab ai
4
5 import gtk
6 import gobject
7
8 class Core_Control(object):
9     def __init__(self):
10         from config.py import Config_Control
11         config = Config_Control()
12         
13         from searchfile import Search_File_Control
14         search = Search_File_Control()
15         
16         elem_list = []
17         elem_list.append(vvod.get_ui())
18         elem_list.append(output.get_ui())
19         elem_list.append(search.get_ui())
20         core_present = Core_Presentation(575, 345, elem_list)
21         main = Core_Abstraction(config, core_present, 
22
23                 
24 class Core_Abstraction(object):
25     def __init__(self, config, ui, vvod, search, output):
26         self.config = config
27         self.ui = ui
28         self.vvod = vvod
29         self.search = search
30         self.output = output
31         self.ui.run()
32
33     def start_search(self):
34         data = self.vvod.get_data()
35         query = self.search.run(self.config, data)
36         self.output.show(query)
37
38         
39 class Core_Presentation(gtk.Window):
40         """Main window class."""
41 ### Window initialization ##################################################
42     def __init__(self, win_width, win_height, elem_list):
43         gtk.Window.__init__(self)
44         self.set_default_size(win_width, win_height)
45         self.set_border_width(4)
46         self.fullscreen = False
47         self.connect('delete_event', gtk.main_quit)
48         self.set_wmclass('GtkWindow', 'FindIT')
49
50         main_vbox = gtk.VBox(False, 4)
51         for elem in elem_list:
52             main_vbox.pack_start(elem, False, False, 5)
53
54         self.add(main_vbox)
55
56     def show_mw(self):
57         self.show_all()
58         gtk.main()
59