src/eric7/Preferences/ConfigurationDialog.py

branch
eric7
changeset 9485
0f3620304d7a
parent 9482
a2bc06a54d9d
child 9497
8beca4047c53
equal deleted inserted replaced
9484:d2eb8f0a5bf0 9485:0f3620304d7a
7 Module implementing a dialog for the configuration of eric. 7 Module implementing a dialog for the configuration of eric.
8 """ 8 """
9 9
10 import contextlib 10 import contextlib
11 import enum 11 import enum
12 import importlib
12 import os 13 import os
13 import time 14 import time
14 import types 15 import types
15 16
16 from PyQt6.QtCore import QMetaObject, QRect, Qt, pyqtSignal, pyqtSlot 17 from PyQt6.QtCore import QMetaObject, QRect, Qt, pyqtSignal, pyqtSlot
1115 Private method to import a configuration page module. 1116 Private method to import a configuration page module.
1116 1117
1117 @param name name of the configuration page module (string) 1118 @param name name of the configuration page module (string)
1118 @return reference to the configuration page module 1119 @return reference to the configuration page module
1119 """ 1120 """
1120 modName = "eric7.Preferences.ConfigurationPages.{0}".format(name)
1121 try: 1121 try:
1122 mod = __import__(modName) 1122 mod = importlib.import_module(
1123 components = modName.split(".") 1123 "eric7.Preferences.ConfigurationPages.{0}".format(name)
1124 for comp in components[1:]: 1124 )
1125 mod = getattr(mod, comp)
1126 return mod 1125 return mod
1127 except ImportError: 1126 except ImportError:
1128 EricMessageBox.critical( 1127 EricMessageBox.critical(
1129 self, 1128 self,
1130 self.tr("Configuration Page Error"), 1129 self.tr("Configuration Page Error"),

eric ide

mercurial