Ignore:
Timestamp:
Apr 3, 2017, 9:03:32 AM (3 years ago)
Author:
hectorgh
Message:

wip

File:
1 edited

Legend:

Unmodified
Added
Removed
  • lliurex-store/trunk/fuentes/lliurex-store-gui/MainWindow.py

    r3840 r4099  
    2727                self.search_aborted=False
    2828                self.last_search=""
     29                self.path_followed=["main"]
    2930                self.load_gui()
    3031               
     
    4950                self.main_box=builder.get_object("main_box")
    5051                self.header_box=builder.get_object("header_box")
     52                self.go_back_button=builder.get_object("go_back_button")
     53                self.menu_image=builder.get_object("menu_image")
     54               
    5155               
    5256                self.main_menu=self.core.main_menu
     
    104108               
    105109                self.window.show_all()
     110                #self.location_label.hide()
    106111               
    107112        #def load_gui
     
    121126                self.fade_box.set_name("FADE_BOX")
    122127               
     128                self.go_back_button.set_name("BACK_BUTTON")
     129                self.menu_image.set_name("MENU_IMAGE")
     130               
    123131        #def set-css_info       
    124132
     
    131139                self.search_entry.connect("changed",self.search_entry_changed)
    132140                self.search_entry.connect("activate",self.entries_press_event)
     141                self.go_back_button.connect("clicked",self.go_back)
    133142               
    134143        #def connect_signals
     
    148157        # #### STACK FAST ACCESS FUNCTIONS # #################
    149158       
     159        def go_back(self,widget=None):
     160               
     161                if len(self.path_followed)>1:
     162                       
     163                       
     164                        current_txt=self.location_label.get_text().split(" > ")
     165                        current_txt=" > ".join(current_txt[0:-1])
     166                        self.location_label.set_text(current_txt)
     167                        dest=self.path_followed[-2]
     168                        self.stack.set_visible_child_name(dest)
     169                        self.path_followed.pop(-1)
     170                       
     171                        if dest=="main":
     172                                self.search_entry.set_text("")
     173                       
     174                       
     175               
     176        #def go_back
     177       
    150178        def show_loading(self):
    151179               
     
    159187                self.thread_aborted=True
    160188                self.search_aborted=True
     189                current_txt=self.location_label.get_text()
     190                self.location_label.set_text(current_txt + " > " + "Details")
     191                self.path_followed.append("details")
    161192                self.stack.set_visible_child_name("details")
    162193               
     
    168199                self.thread_aborted=True
    169200                self.search_aborted=True
    170                 self.search_entry.set_text("")
     201               
    171202                self.location_label.set_text("Home")
     203                self.path_followed=["main"]
    172204                self.stack.set_visible_child_name("main")
    173205               
     
    176208        def show_search_results(self):
    177209               
    178                 self.location_label.set_text("Search")
     210                current_txt=self.location_label.get_text()
     211                if self.path_followed[-1]!="search":
     212                        self.location_label.set_text(current_txt + " > " + "Search")
     213                        self.path_followed.append("search")
    179214                self.stack.set_visible_child_name("search")
    180215               
     
    235270                self.current_pkg=Package.Package(pkg)
    236271                self.details_box.set_package_info(self.current_pkg)
    237                 self.stack.set_visible_child_name("details")
     272                self.show_details_box()
     273                #self.stack.set_visible_child_name("details")
    238274               
    239275        #def set_data
     
    270306                if self.current_pkg!=None:
    271307                        self.details_box.set_package_info(self.current_pkg)
    272                         self.stack.set_visible_child_name("details")
     308                        self.show_details_box()
     309                        #self.stack.set_visible_child_name("details")
    273310               
    274311                return False
     
    317354               
    318355                self.current_search_id=self.core.get_random_id()
     356                self.counter=0
    319357                self.search_queue=multiprocessing.Queue()
    320358                self.search_process=multiprocessing.Process(target=self.search_package_thread,args=(pkg_id,self.search_queue,))
     359                #self.search_process=threading.Thread(target=self.search_package_thread,args=(pkg_id,self.search_queue,))
    321360               
    322361                self.search_process.daemon=True
     
    340379                '''
    341380               
    342                
    343                
    344381                search_queue.put(ret)
     382               
     383
    345384               
    346385        #def search_package_thread
     
    352391               
    353392                if self.search_aborted:
     393                        self.core.dprint("Search aborted [!]")
    354394                        self.thread_aborted=False
    355395                        return False
    356396               
    357397                if self.search_process.is_alive():
    358                         return True
    359                        
     398                        self.counter+=1
     399                       
     400                        if self.search_queue.empty():
     401                                return True
    360402                       
    361403                search_result=self.search_queue.get()
     404               
     405               
    362406                if search_result!=None:
    363407                        self.core.search_box.populate_search_results(search_result)
Note: See TracChangeset for help on using the changeset viewer.