Changeset 3960


Ignore:
Timestamp:
Mar 15, 2017, 4:31:37 PM (2 years ago)
Author:
daduve
Message:

Fixed bugs: login with spinner

Location:
lliurex-remote-installer/trunk/fuentes/lliurex-remote-installer-gui.install/usr/share/lliurex-remote-installer
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • lliurex-remote-installer/trunk/fuentes/lliurex-remote-installer-gui.install/usr/share/lliurex-remote-installer/Core.py

    r3958 r3960  
    1212        DEBUG=True
    1313        os.chdir(sys.path[0])
     14       
    1415        @classmethod
    1516        def get_core(self):
  • lliurex-remote-installer/trunk/fuentes/lliurex-remote-installer-gui.install/usr/share/lliurex-remote-installer/LliurexRemoteInstaller.py

    r3958 r3960  
    1010import Dialog
    1111import sys
     12import time
    1213import threading
    1314
     
    6465                self.login_msg_label=builder.get_object("login_msg_label")
    6566                self.server_ip_entry=builder.get_object("server_ip_entry")
    66                
     67                self.validate_spinner=builder.get_object("validate_spinner")
    6768       
    6869                self.login_overlay.add_overlay(self.login_box)
    6970                self.login_overlay.show_all()
     71               
    7072               
    7173                #FIN LOGIN
     
    103105                self.main_window.show_all()
    104106                self.show_main_controls(False)
     107                self.validate_spinner.hide()
     108               
    105109               
    106110               
     
    180184               
    181185        #def entries_press_event
    182        
    183         def validate_user_clicked(self,widget):
    184                
    185                 try:
    186                         self.thread=threading.Thread(target=self.validate_user(widget))
    187                         self.thread.daemon=True
    188                         self.thread.start()
    189                        
    190                         main_window=self.core.lri.main_window
    191                         dialog=Dialog.ApplyingChangesDialog(main_window,title="Lliurex Remote Installer",msg="Validating user.......")
    192                         dialog.show()
    193                         GLib.timeout_add(500,self.validate_user_clicked_delete,dialog)
    194                        
    195                 except Exception as e:
    196                         print e
    197                         return False
    198        
    199         #def validate_user_clicked
    200        
    201         def validate_user_clicked_delete (self,dialog):
     186
     187       
     188       
     189        def validate_user_thread(self):
     190               
     191                self.login_ret=self.core.n4d.validate_user(self.user_entry.get_text(),self.password_entry.get_text(),self.server_ip_entry.get_text())
     192               
     193        #def validate_user_thread
     194               
     195       
     196        def validate_user(self,widget):
     197               
     198                self.login_msg_label.hide()
     199                self.validate_spinner.show()
     200               
     201                self.login_button.set_sensitive(False)
     202               
     203                self.thread=threading.Thread(target=self.validate_user_thread)
     204                self.thread.daemon=True
     205                self.thread.start()
     206
     207                GLib.timeout_add(500,self.validate_user_thread_listener)
     208               
     209               
     210        #def validate_user
     211       
     212        def validate_user_thread_listener(self):
    202213               
    203214                if self.thread.is_alive():
    204215                        return True
    205216               
    206                 dialog.destroy()
    207                
    208                 if self.login_ok:
     217                if not self.login_ret[0]:
     218                        self.login_msg_label.set_text("%s"%self.login_ret[1])
     219                        self.validate_spinner.hide()
     220                        self.login_msg_label.show()
     221                        self.login_button.set_sensitive(True)
     222
     223                else:
     224                       
    209225                        self.load_values()
    210                         self.not_validate=False
    211226                        self.stack.set_visible_child_name("apt")
    212227                        self.show_main_controls(True)
    213        
    214         def validate_user(self,widget):
    215                
    216                 self.login_ok=False
    217                 ret=self.core.n4d.validate_user(self.user_entry.get_text(),self.password_entry.get_text(),self.server_ip_entry.get_text())
    218                
    219                 if not ret[0]:
    220                         self.login_msg_label.set_text("%s"%ret[1])
    221                         return False
    222                 else:
    223                         self.login_ok=True
    224                         return True
    225                
    226                
    227         #def validate_user
     228               
     229                return False
     230               
     231               
     232               
     233        #def validate_user_thread
    228234       
    229235        def check_changes(self,widget,event):
  • lliurex-remote-installer/trunk/fuentes/lliurex-remote-installer-gui.install/usr/share/lliurex-remote-installer/N4dManager.py

    r3941 r3960  
    182182                                        return [False,"User is not allowed to use this application"]
    183183                                       
    184                         return [False,"Your user or passwd is bad"]
     184                        return [False,"Wrong user and/or password"]
    185185                       
    186186                except Exception as e:
  • lliurex-remote-installer/trunk/fuentes/lliurex-remote-installer-gui.install/usr/share/lliurex-remote-installer/lliurex-remote-installer.ui

    r3938 r3960  
    472472            </child>
    473473            <child>
    474               <object class="GtkLabel" id="login_msg_label">
     474              <object class="GtkSpinner" id="validate_spinner">
    475475                <property name="visible">True</property>
    476476                <property name="can_focus">False</property>
     477                <property name="margin_top">10</property>
     478                <property name="margin_bottom">5</property>
     479                <property name="active">True</property>
    477480              </object>
    478481              <packing>
    479482                <property name="left_attach">0</property>
    480483                <property name="top_attach">4</property>
     484              </packing>
     485            </child>
     486            <child>
     487              <object class="GtkLabel" id="login_msg_label">
     488                <property name="visible">True</property>
     489                <property name="can_focus">False</property>
     490                <property name="margin_top">5</property>
     491                <property name="margin_bottom">5</property>
     492              </object>
     493              <packing>
     494                <property name="left_attach">0</property>
     495                <property name="top_attach">5</property>
    481496              </packing>
    482497            </child>
Note: See TracChangeset for help on using the changeset viewer.