def addToProfileMenu(profileSelection, profileType, repository): 'Add a profile menu.' pluginFileNames = skeinforge_profile.getPluginFileNames() craftTypeName = skeinforge_profile.getCraftTypeName() pluginModule = skeinforge_profile.getCraftTypePluginModule() profilePluginSettings = settings.getReadRepository(pluginModule.getNewRepository()) for pluginFileName in pluginFileNames: skeinforge_profile.ProfileTypeMenuRadio().getFromMenuButtonDisplay(profileType, pluginFileName, repository, craftTypeName == pluginFileName) for profileName in profilePluginSettings.profileList.value: skeinforge_profile.ProfileSelectionMenuRadio().getFromMenuButtonDisplay(profileSelection, profileName, repository, profileName == profilePluginSettings.profileListbox.value)
def addToProfileMenu( profileSelection, profileType, repository ): "Add a profile menu." pluginFileNames = skeinforge_profile.getPluginFileNames() craftTypeName = skeinforge_profile.getCraftTypeName() pluginModule = skeinforge_profile.getCraftTypePluginModule() profilePluginSettings = settings.getReadRepository( pluginModule.getNewRepository() ) for pluginFileName in pluginFileNames: skeinforge_profile.ProfileTypeMenuRadio().getFromMenuButtonDisplay( profileType, pluginFileName, repository, craftTypeName == pluginFileName ) for profileName in profilePluginSettings.profileList.value: skeinforge_profile.ProfileSelectionMenuRadio().getFromMenuButtonDisplay( profileSelection, profileName, repository, profileName == profilePluginSettings.profileListbox.value )
def addSubmenus( craftTypeName, menu, pluginFileName, pluginPath, profileRadioVar ): "Add a tool plugin menu." submenu = settings.Tkinter.Menu( menu, tearoff = 0 ) menu.add_cascade( label = pluginFileName.capitalize(), menu = submenu ) settings.ToolDialog().addPluginToMenu( submenu, pluginPath ) submenu.add_separator() pluginModule = skeinforge_profile.getCraftTypePluginModule( pluginFileName ) profilePluginSettings = settings.getReadRepository( pluginModule.getNewRepository() ) isSelected = ( craftTypeName == pluginFileName ) for profileName in profilePluginSettings.profileList.value: value = isSelected and profileName == profilePluginSettings.profileListbox.value ProfileMenuRadio( pluginFileName, submenu, profileName, profileRadioVar, value )
def addSubmenus( craftTypeName, menu, pluginFileName, pluginPath, profileRadioVar ): "Add a tool plugin menu." submenu = settings.Tkinter.Menu( menu, tearoff = 0 ) menu.add_cascade( label = pluginFileName.capitalize(), menu = submenu ) settings.ToolDialog().addPluginToMenu( submenu, pluginPath ) submenu.add_separator() pluginModule = skeinforge_profile.getCraftTypePluginModule( pluginFileName ) profilePluginSettings = settings.getReadRepository( pluginModule.getNewRepository() ) isSelected = ( craftTypeName == pluginFileName ) for profileName in profilePluginSettings.profileList.value: value = isSelected and profileName == profilePluginSettings.profileListbox.value ProfileMenuRadio( pluginFileName, submenu, profileName, profileRadioVar, value )
def clickRadio(self): "Workaround for Tkinter bug, invoke and set the value when clicked." if not self.activate: return self.radioVar.set( self.profileJoinName ) pluginModule = skeinforge_profile.getCraftTypePluginModule( self.profilePluginFileName ) profilePluginSettings = settings.getReadRepository( pluginModule.getNewRepository() ) profilePluginSettings.profileListbox.value = self.name settings.writeSettings( profilePluginSettings ) profileSettings = skeinforge_profile.getReadProfileRepository() plugins = profileSettings.craftRadios for plugin in plugins: plugin.value = ( plugin.name == self.profilePluginFileName ) settings.writeSettings( profileSettings ) skeinforge_profile.updateProfileSaveListeners()
def clickRadio(self): "Workaround for Tkinter bug, invoke and set the value when clicked." if not self.activate: return self.radioVar.set( self.profileJoinName ) pluginModule = skeinforge_profile.getCraftTypePluginModule( self.profilePluginFileName ) profilePluginSettings = settings.getReadRepository( pluginModule.getNewRepository() ) profilePluginSettings.profileListbox.value = self.name settings.writeSettings( profilePluginSettings ) profileSettings = skeinforge_profile.getReadProfileRepository() plugins = profileSettings.craftRadios for plugin in plugins: plugin.value = ( plugin.name == self.profilePluginFileName ) settings.writeSettings( profileSettings ) skeinforge_profile.updateProfileSaveListeners()
def setRadioButtons(self): "Profile has been saved and craft radio plugins should be updated." craftSequence = skeinforge_profile.getCraftTypePluginModule().getCraftSequence() gridPosition = self.gridPosition.getCopy() maximumValue = False activeRadioPlugins = [] for radioPlugin in self.radioPlugins: if radioPlugin.name in craftSequence: activeRadioPlugins.append( radioPlugin ) radioPlugin.incrementGridPosition( gridPosition ) maximumValue = max( radioPlugin.value, maximumValue ) else: radioPlugin.radiobutton.grid_remove() if not maximumValue: selectedRadioPlugin = settings.getSelectedRadioPlugin( self.repository.importantFileNames + [ activeRadioPlugins[0].name ], activeRadioPlugins ).setSelect() self.repository.pluginFrame.update()
def setRadioButtons(self): "Profile has been saved and craft radio plugins should be updated." craftSequence = skeinforge_profile.getCraftTypePluginModule().getCraftSequence() gridPosition = self.gridPosition.getCopy() maximumValue = False activeRadioPlugins = [] for radioPlugin in self.radioPlugins: if radioPlugin.name in craftSequence: activeRadioPlugins.append( radioPlugin ) radioPlugin.incrementGridPosition( gridPosition ) maximumValue = max( radioPlugin.value, maximumValue ) else: radioPlugin.radiobutton.grid_remove() if not maximumValue: selectedRadioPlugin = settings.getSelectedRadioPlugin( self.repository.importantFileNames + [ activeRadioPlugins[0].name ], activeRadioPlugins ).setSelect() self.repository.pluginFrame.update()
def setRadioButtons(self): "Profile has been saved and craft radio plugins should be updated." activeRadioPlugins = [] craftSequence = skeinforge_profile.getCraftTypePluginModule().getCraftSequence() gridPosition = self.gridPosition.getCopy() isRadioPluginSelected = False settings.getReadRepository(self.repository) for radioPlugin in self.radioPlugins: if radioPlugin.name in craftSequence: activeRadioPlugins.append(radioPlugin) radioPlugin.incrementGridPosition(gridPosition) if radioPlugin.value: radioPlugin.setSelect() isRadioPluginSelected = True else: radioPlugin.radiobutton.grid_remove() if not isRadioPluginSelected: radioPluginNames = self.repository.importantFileNames + [activeRadioPlugins[0].name] settings.getSelectedRadioPlugin(radioPluginNames , activeRadioPlugins).setSelect() self.repository.pluginFrame.update()
def getReadCraftSequence(): "Get profile sequence." return skeinforge_profile.getCraftTypePluginModule().getCraftSequence()
def getReadCraftSequence(): "Get profile sequence." return skeinforge_profile.getCraftTypePluginModule().getCraftSequence()