def __init__(self, app, *args, **kwargs): super().__init__(title=setting._APP_NAME, application=app, *args, **kwargs) self.app = app Gtk.Window.__init__(self, title=setting._APP_NAME, application=app) self.lgr = logging.getLogger('mainwnd') self.def_ico = self.get_icon() if self.def_ico: self.set_default_icon(self.def_ico) self.set_keep_above(True) self.__single_mode = True grid = Gtk.Grid() self.add(grid) self.column_cbox = Gtk.ComboBoxText() self.column_cbox.append_text("ICD") self.column_cbox.append_text("Description") self.column_cbox.set_active(1) # print(self.column_cbox.get_active()) grid.attach(self.column_cbox, 6, 0, 1, 1) self.search_entry = Gtk.SearchEntry() self.search_entry.set_placeholder_text("Enter description") self.search_entry.connect("search-changed", self.search_changed) #self.search_entry.connect("stop-search", self.stop_search) self.search_bar = Gtk.SearchBar() self.search_bar.connect_entry(self.search_entry) self.search_bar.add(self.search_entry) self.search_bar.set_search_mode(True) # self.search_bar.search_mode_enabled(True) self.search_bar.set_show_close_button(False) grid.attach(self.search_bar, 0, 0, 5, 1) self.store = Gtk.ListStore(str, str) self.treev = Gtk.TreeView.new_with_model( self.store) #Gtk.TreeView(self.store) icd_renderer = Gtk.CellRendererText() desc_renderer = Gtk.CellRendererText() column_icd = Gtk.TreeViewColumn("ICD", icd_renderer, text=0) column_desc = Gtk.TreeViewColumn("Description", desc_renderer, text=1) self.treev.append_column(column_icd) self.treev.append_column(column_desc) self.scrollable_treelist = Gtk.ScrolledWindow() self.scrollable_treelist.set_vexpand(True) self.scrollable_treelist.set_policy(Gtk.PolicyType.EXTERNAL, Gtk.PolicyType.AUTOMATIC) self.scrollable_treelist.add(self.treev) grid.attach(self.scrollable_treelist, 0, 1, 7, 7) self.db = ICDdb(DB_PATH) self.db.connect() if not self.db.connected: self.lgr.error('Cannot connect to database') exit(1)