Exemplo n.º 1
0
        def __init__(self, aModelEditor, aDuration):
            self.theModelEditor = aModelEditor
            # Sets the return number

            self.___num = utils.CANCEL_PRESSED
            self.__off = False
  
            self.win = gtk.Dialog('AutosaveWindow' , None)
            self.win.connect("destroy",self.destroy)

            # Sets size and position
            self.win.set_border_width(2)
            self.win.set_default_size(300,75)
            self.win.set_position(gtk.WIN_POS_MOUSE)

            # appends ok button
            ok_button = gtk.Button("  OK  ")
            self.win.action_area.pack_start(ok_button,False,False,)
            ok_button.set_flags(gtk.CAN_DEFAULT)
            ok_button.grab_default()
            ok_button.show()
            ok_button.connect("clicked",self.okButtonClicked)

            # appends cancel button
            cancel_button = gtk.Button(" Cancel ")
            self.win.action_area.pack_start(cancel_button,False,False)
            cancel_button.show()
            cancel_button.connect("clicked",self.cancelButtonClicked)

            # Sets title
            self.win.set_title('Preferences')
        
           
            self.ViewComponentObject = ViewComponent( self.win.vbox, 'attachment_box',  'AutosaveWindow.glade' )
            self.ViewComponentObject['duration']
          
            aPixbuf16 = gtk.gdk.pixbuf_new_from_file(
                os.path.join( config.glade_dir, "modeleditor.png" ) )
            aPixbuf32 = gtk.gdk.pixbuf_new_from_file(
                os.path.join( config.glade_dir, "modeleditor32.png" ) )
            self.win.set_icon_list( aPixbuf16, aPixbuf32 )
        
            self.win.show_all()
            self.__setAutosaveDuration ( aDuration )
            self.ViewComponentObject.addHandlers({ "on_duration_toggled" : self.__buttonChosen,                "on_operations_toggled" : self.__buttonChosen,
"on_turn_off_toggled" : self.__buttonChosen })
            gtk.main()
Exemplo n.º 2
0
class AutosaveWindow:
        def __init__(self, aModelEditor, aDuration):
            self.theModelEditor = aModelEditor
            # Sets the return number

            self.___num = utils.CANCEL_PRESSED
            self.__off = False
  
            self.win = gtk.Dialog('AutosaveWindow' , None)
            self.win.connect("destroy",self.destroy)

            # Sets size and position
            self.win.set_border_width(2)
            self.win.set_default_size(300,75)
            self.win.set_position(gtk.WIN_POS_MOUSE)

            # appends ok button
            ok_button = gtk.Button("  OK  ")
            self.win.action_area.pack_start(ok_button,False,False,)
            ok_button.set_flags(gtk.CAN_DEFAULT)
            ok_button.grab_default()
            ok_button.show()
            ok_button.connect("clicked",self.okButtonClicked)

            # appends cancel button
            cancel_button = gtk.Button(" Cancel ")
            self.win.action_area.pack_start(cancel_button,False,False)
            cancel_button.show()
            cancel_button.connect("clicked",self.cancelButtonClicked)

            # Sets title
            self.win.set_title('Preferences')
        
           
            self.ViewComponentObject = ViewComponent( self.win.vbox, 'attachment_box',  'AutosaveWindow.glade' )
            self.ViewComponentObject['duration']
          
            aPixbuf16 = gtk.gdk.pixbuf_new_from_file(
                os.path.join( config.glade_dir, "modeleditor.png" ) )
            aPixbuf32 = gtk.gdk.pixbuf_new_from_file(
                os.path.join( config.glade_dir, "modeleditor32.png" ) )
            self.win.set_icon_list( aPixbuf16, aPixbuf32 )
        
            self.win.show_all()
            self.__setAutosaveDuration ( aDuration )
            self.ViewComponentObject.addHandlers({ "on_duration_toggled" : self.__buttonChosen,                "on_operations_toggled" : self.__buttonChosen,
"on_turn_off_toggled" : self.__buttonChosen })
            gtk.main()
        
            
        def __setAutosaveDuration ( self, aDuration ):
            if aDuration[0]>0:
                self.ViewComponentObject['set_duration'].set_active(True)
                self.ViewComponentObject['duration'].set_text(str(aDuration[0]))
                self.ViewComponentObject['operations'].set_sensitive(False)
                self.ViewComponentObject['duration'].set_sensitive(True)
            elif aDuration[1]>0:
                self.ViewComponentObject['set_operations'].set_active(True)
                self.ViewComponentObject['operations'].set_text(str(aDuration[1]))
                self.ViewComponentObject['operations'].set_sensitive(True)
                self.ViewComponentObject['duration'].set_sensitive(False) 
            else:
                self.ViewComponentObject['turn_off'].set_active( True)
                self.ViewComponentObject['duration'].set_sensitive(False)
                self.ViewComponentObject['operations'].set_sensitive(False)

        def cancelButtonClicked( self, *arg ):
            """
            If Cancel button clicked or the return pressed, this method is called.
            """
            # set the return number
            self.___num = None
            self.destroy()

   
        def destroy( self, *arg ):
            """destroy dialog
            """
        
            self.win.hide()
            gtk.main_quit()

        def __saveAutosaveDuration ( self ):
              
            aDuration = [1000,5]
            if self.__off == True:
                aDuration = [0,0]
                          
            else:
                #radiobutton(set_duration) is selected              
                if self.ViewComponentObject['set_duration'].get_active() == True:      
                    try:
                
                        num = self.ViewComponentObject['duration'].get_text()
                        aDuration[0] = int(num)
                        if aDuration[0]<1:
                            a=1/0
                        aDuration[1] = 0
                    except:
                        utils.showPopupMessage(
                            utils.OK_MODE, 
                            "Please enter a positive integer value for " + \
                            "time duration", ME_ERROR )
                        return None
                else:
                    try:
                
                               
                        num = self.ViewComponentObject['operations'].get_text()
                        aDuration[1] = int(num)
                    
                        if aDuration[1]<0:
                            a=1/0  
                        aDuration[0] = 0
                    except:
                        utils.showPopupMessage(
                            utils.OK_MODE,
                            "Please enter a positive integer for number of "
                            + "operations", ME_ERROR )
                        return None    
                        

            return aDuration
                

        def okButtonClicked ( self, *arg ):
            aDuration = self.__saveAutosaveDuration()
            if aDuration == None:
                return
            self.___num = aDuration
            self.destroy()
            
        
        def return_result( self ):
            """Returns result
            """
            return self.___num

        def __buttonChosen(self, *args):
            aName = args[0].get_name()
            if aName == "turn_off":
                self.__off = True
                self.ViewComponentObject['duration'].set_sensitive(False)
                self.ViewComponentObject['operations'].set_sensitive(False)
                
            else:    
                
                self.__off = False
                if aName == "set_duration":
                    self.ViewComponentObject['duration'].set_sensitive(True)
                    self.ViewComponentObject['operations'].set_sensitive(False)
                else:
                    self.ViewComponentObject['duration'].set_sensitive(False)
                    self.ViewComponentObject['operations'].set_sensitive(True)