| | 315 | class ApplySettingsSameMode(OnDemandActionNameMixin, SelectAction): |
| | 316 | """Apply view settings to all tabs""" |
| | 317 | name = "As Defaults for %s Mode" |
| | 318 | default_menu = ("View/Apply Settings", 100) |
| | 319 | |
| | 320 | def getMenuItemName(self): |
| | 321 | """Override in subclass to provide the menu item name.""" |
| | 322 | return self.name % self.mode.keyword |
| | 323 | |
| | 324 | def action(self, index=-1, multiplier=1): |
| | 325 | locals = {} |
| | 326 | locals[self.mode.__class__] = self.mode.classprefsDictFromLocals() |
| | 327 | Publisher().sendMessage('peppy.preferences.changed', locals) |
| | 328 | # Make the local values the defaults so that they'll become persistent |
| | 329 | # by getting saved in the configuration file |
| | 330 | self.mode.classprefsCopyFromLocals() |
| | 331 | |
| | 332 | |
| | 333 | class ApplySettingsAll(SelectAction): |
| | 334 | """Apply view settings to editors""" |
| | 335 | name = "As Defaults for All Modes" |
| | 336 | default_menu = ("View/Apply Settings", 110) |
| | 337 | |
| | 338 | def action(self, index=-1, multiplier=1): |
| | 339 | msg_data = {} |
| | 340 | settings = self.mode.classprefsDictFromLocals() |
| | 341 | msg_data[FundamentalMode] = settings |
| | 342 | msg_data['subclass'] = FundamentalMode |
| | 343 | Publisher().sendMessage('peppy.preferences.changed', msg_data) |
| | 344 | |
| | 345 | FundamentalMode.classprefsOverrideSubclassDefaults(settings) |
| | 346 | |
| | 347 | |