class SynaptiksConfigDialog(KConfigDialog): """ Configuration dialog used by the system tray application. """ DIALOG_NAME = 'synaptiks-configuration' def __init__(self, touchpad, touchpad_manager, tray_config, parent=None): KConfigDialog.__init__(self, parent, self.DIALOG_NAME, tray_config) self.touchpad_config = TouchpadConfiguration(touchpad) self.management_config = ManagerConfiguration(touchpad_manager) self.setFaceType(self.List) self.touchpad_config_widget = TouchpadConfigurationWidget( self.touchpad_config, self) self.management_config_widget = TouchpadManagementWidget( self.management_config, self) self.config_widgets = [ self.touchpad_config_widget, self.management_config_widget ] for widget in self.config_widgets: widget.configurationChanged.connect(self.settingsChangedSlot) pages = [(self.management_config_widget, 'configure'), (self.touchpad_config_widget, 'synaptiks')] for page_widget, page_icon_name in pages: page = self.addPage(page_widget, page_widget.windowTitle()) page.setIcon(KIcon(page_icon_name)) def hasChanged(self): return (KConfigDialog.hasChanged(self) or any(w.is_configuration_changed for w in self.config_widgets)) def isDefault(self): return (KConfigDialog.isDefault(self) and any(w.shows_defaults() for w in self.config_widgets)) def updateWidgetsDefault(self): KConfigDialog.updateWidgetsDefault(self) for widget in self.config_widgets: widget.load_defaults() def updateWidgets(self): KConfigDialog.updateWidgets(self) for widget in self.config_widgets: widget.load_configuration() def updateSettings(self): KConfigDialog.updateSettings(self) for widget in self.config_widgets: widget.apply_configuration() self.touchpad_config.save() self.management_config.save()
class SynaptiksConfigDialog(KConfigDialog): """ Configuration dialog used by the system tray application. """ DIALOG_NAME = 'synaptiks-configuration' def __init__(self, touchpad, touchpad_manager, tray_config, parent=None): KConfigDialog.__init__(self, parent, self.DIALOG_NAME, tray_config) self.touchpad_config = TouchpadConfiguration(touchpad) self.management_config = ManagerConfiguration(touchpad_manager) self.setFaceType(self.List) self.touchpad_config_widget = TouchpadConfigurationWidget( self.touchpad_config, self) self.management_config_widget = TouchpadManagementWidget( self.management_config, self) self.config_widgets = [self.touchpad_config_widget, self.management_config_widget] for widget in self.config_widgets: widget.configurationChanged.connect(self.settingsChangedSlot) pages = [(self.management_config_widget, 'configure'), (self.touchpad_config_widget, 'synaptiks')] for page_widget, page_icon_name in pages: page = self.addPage(page_widget, page_widget.windowTitle()) page.setIcon(KIcon(page_icon_name)) def hasChanged(self): return (KConfigDialog.hasChanged(self) or any(w.is_configuration_changed for w in self.config_widgets)) def isDefault(self): return (KConfigDialog.isDefault(self) and any(w.shows_defaults() for w in self.config_widgets)) def updateWidgetsDefault(self): KConfigDialog.updateWidgetsDefault(self) for widget in self.config_widgets: widget.load_defaults() def updateWidgets(self): KConfigDialog.updateWidgets(self) for widget in self.config_widgets: widget.load_configuration() def updateSettings(self): KConfigDialog.updateSettings(self) for widget in self.config_widgets: widget.apply_configuration() self.touchpad_config.save() self.management_config.save()
def main(): about = KAboutData( b'synaptiks', '', ki18n('synaptiks'), str(synaptiks.__version__), ki18n('touchpad management and configuration application'), KAboutData.License_BSD, ki18n('Copyright (C) 2009, 2010 Sebastian Wiesner')) about.addAuthor(ki18n('Sebastian Wiesner'), ki18n('Maintainer'), '*****@*****.**') about.addCredit( ki18n('Valentyn Pavliuchenko'), ki18n('Debian packaging, russian translation, ' 'bug reporting and testing'), '*****@*****.**') about.setHomepage('http://synaptiks.lunaryorn.de/') about.setOrganizationDomain('synaptiks.lunaryorn.de') KCmdLineArgs.init(sys.argv, about) app = KApplication() window = KMainWindow() touchpad = Touchpad.find_first(Display.from_qt()) config = TouchpadConfiguration(touchpad) config_widget = TouchpadConfigurationWidget(config) config_widget.configurationChanged.connect( partial(print, 'config changed?')) window.setCentralWidget(config_widget) window.show() app.exec_()
def __init__(self, touchpad, touchpad_manager, tray_config, parent=None): KConfigDialog.__init__(self, parent, self.DIALOG_NAME, tray_config) self.touchpad_config = TouchpadConfiguration(touchpad) self.management_config = ManagerConfiguration(touchpad_manager) self.setFaceType(self.List) self.touchpad_config_widget = TouchpadConfigurationWidget( self.touchpad_config, self) self.management_config_widget = TouchpadManagementWidget( self.management_config, self) self.config_widgets = [self.touchpad_config_widget, self.management_config_widget] for widget in self.config_widgets: widget.configurationChanged.connect(self.settingsChangedSlot) pages = [(self.management_config_widget, 'configure'), (self.touchpad_config_widget, 'synaptiks')] for page_widget, page_icon_name in pages: page = self.addPage(page_widget, page_widget.windowTitle()) page.setIcon(KIcon(page_icon_name))
def make_kcm_widget(component_data, parent=None): """ Create a KCModule object to configure the touchpad. This function tries to find a touchpad on this system and get the configuration of this touchpad. If this succeeds, a :class:`TouchpadConfigurationKCM` is returned, allowing the user to configure the touchpad. Otherwise a :class:`TouchpadErrorKCM` is returned, which gives the user a description of the error and its cause. """ from synaptiks.x11 import Display from synaptiks.touchpad import Touchpad from synaptiks.config import TouchpadConfiguration try: touchpad = Touchpad.find_first(Display.from_qt()) config = TouchpadConfiguration(touchpad) return TouchpadConfigurationKCM(config, component_data, parent) except Exception as error: return TouchpadErrorKCM(error, component_data, parent)