148 |
148 |
149 self.__repoDir = "" |
149 self.__repoDir = "" |
150 self.__repoIniFile = "" |
150 self.__repoIniFile = "" |
151 self.__defaultConfigured = False |
151 self.__defaultConfigured = False |
152 self.__defaultPushConfigured = False |
152 self.__defaultPushConfigured = False |
|
153 self.__ignoreFile = "" |
153 |
154 |
154 # instantiate the extensions |
155 # instantiate the extensions |
155 self.__extensions = { |
156 self.__extensions = { |
156 "mq": Queues(self, ui=self.__ui), |
157 "mq": Queues(self, ui=self.__ui), |
157 "purge": Purge(self, ui=self.__ui), |
158 "purge": Purge(self, ui=self.__ui), |
233 watcher.fileDeleted.disconnect(self.__iniFileChanged) |
234 watcher.fileDeleted.disconnect(self.__iniFileChanged) |
234 watcher.fileModified.disconnect(self.__iniFileChanged) |
235 watcher.fileModified.disconnect(self.__iniFileChanged) |
235 watcher.removePath(self.__cfgFile) |
236 watcher.removePath(self.__cfgFile) |
236 if self.__repoIniFile: |
237 if self.__repoIniFile: |
237 watcher.removePath(self.__repoIniFile) |
238 watcher.removePath(self.__repoIniFile) |
|
239 if self.__ignoreFile: |
|
240 watcher.removePath(self.__ignoreFile) |
238 |
241 |
239 def initCommand(self, command): |
242 def initCommand(self, command): |
240 """ |
243 """ |
241 Public method to initialize a command arguments list. |
244 Public method to initialize a command arguments list. |
242 |
245 |
2164 if lfMinSize is not None: |
2167 if lfMinSize is not None: |
2165 cfg.write("minsize = {0}\n".format(lfMinSize)) |
2168 cfg.write("minsize = {0}\n".format(lfMinSize)) |
2166 if lfPattern is not None: |
2169 if lfPattern is not None: |
2167 cfg.write("patterns =\n") |
2170 cfg.write("patterns =\n") |
2168 cfg.write(" {0}\n".format("\n ".join(lfPattern))) |
2171 cfg.write(" {0}\n".format("\n ".join(lfPattern))) |
2169 self.__monitorRepoIniFile(repoName) |
2172 self.__monitorRepoConfigFiles(repoName) |
2170 self.__iniFileChanged(cfgFile) |
2173 self.__iniFileChanged(cfgFile) |
2171 self.repoEditor = MiniEditor(cfgFile, "Properties") |
2174 self.repoEditor = MiniEditor(cfgFile, "Properties") |
2172 self.repoEditor.show() |
2175 self.repoEditor.show() |
2173 |
2176 |
2174 def hgVerify(self): |
2177 def hgVerify(self): |
3120 |
3124 |
3121 @param path name of the changed file |
3125 @param path name of the changed file |
3122 @type str |
3126 @type str |
3123 """ |
3127 """ |
3124 if ( |
3128 if ( |
3125 path in (self.__cfgFile, self.__repoIniFile) |
3129 path in (self.__cfgFile, self.__repoIniFile, self.__ignoreFile) |
3126 and not self.__iniFileChangedFlag |
3130 and not self.__iniFileChangedFlag |
3127 ): |
3131 ): |
3128 self.__iniFileChangedFlag = True |
3132 self.__iniFileChangedFlag = True |
3129 if self.__client: |
3133 if self.__client: |
3130 ok, err = self.__client.restartServer() |
3134 ok, err = self.__client.restartServer() |
3136 """<p>The Mercurial Command Server could not be""" |
3140 """<p>The Mercurial Command Server could not be""" |
3137 """ restarted.</p><p>Reason: {0}</p>""" |
3141 """ restarted.</p><p>Reason: {0}</p>""" |
3138 ).format(err), |
3142 ).format(err), |
3139 ) |
3143 ) |
3140 |
3144 |
|
3145 self.restartStatusMonitor(self.__projectHelper.getProject()) |
|
3146 |
3141 self.__getExtensionsInfo() |
3147 self.__getExtensionsInfo() |
3142 |
3148 |
3143 if self.__repoIniFile and path == self.__repoIniFile: |
3149 if self.__repoIniFile and path == self.__repoIniFile: |
3144 self.__checkDefaults() |
3150 self.__checkDefaults() |
3145 |
3151 |
3146 self.iniFileChanged.emit() |
3152 self.iniFileChanged.emit() |
3147 |
3153 |
3148 self.__iniFileChangedFlag = False |
3154 self.__iniFileChangedFlag = False |
3149 |
3155 |
3150 def __monitorRepoIniFile(self, repodir): |
3156 def __monitorRepoConfigFiles(self, repodir): |
3151 """ |
3157 """ |
3152 Private slot to add a repository configuration file to the list of |
3158 Private slot to add some repository configuration files to the list of |
3153 monitored files. |
3159 monitored files. |
3154 |
3160 |
3155 @param repodir directory name of the repository |
3161 @param repodir directory name of the repository |
3156 @type str |
3162 @type str |
3157 """ |
3163 """ |
|
3164 watcher = EricFileSystemWatcher.instance() |
|
3165 |
3158 cfgFile = os.path.join(repodir, self.adminDir, "hgrc") |
3166 cfgFile = os.path.join(repodir, self.adminDir, "hgrc") |
3159 if os.path.exists(cfgFile): |
3167 if os.path.exists(cfgFile): |
3160 watcher = EricFileSystemWatcher.instance() |
|
3161 watcher.addPath(cfgFile) |
3168 watcher.addPath(cfgFile) |
3162 self.__repoIniFile = cfgFile |
3169 self.__repoIniFile = cfgFile |
3163 self.__checkDefaults() |
3170 self.__checkDefaults() |
|
3171 |
|
3172 ignoreFile = os.path.join(repodir, Hg.IgnoreFileName) |
|
3173 if os.path.exists(ignoreFile): |
|
3174 watcher.addPath(ignoreFile) |
|
3175 self.__ignoreFile = ignoreFile |
3164 |
3176 |
3165 ########################################################################### |
3177 ########################################################################### |
3166 ## Methods to handle extensions are below. |
3178 ## Methods to handle extensions are below. |
3167 ########################################################################### |
3179 ########################################################################### |
3168 |
3180 |
3257 self.__projectHelper.setObjects(self, project) |
3269 self.__projectHelper.setObjects(self, project) |
3258 |
3270 |
3259 if repodir: |
3271 if repodir: |
3260 self.__repoDir = repodir |
3272 self.__repoDir = repodir |
3261 self.__createClient(repodir) |
3273 self.__createClient(repodir) |
3262 self.__monitorRepoIniFile(repodir) |
3274 self.__monitorRepoConfigFiles(repodir) |
3263 |
3275 |
3264 return self.__projectHelper |
3276 return self.__projectHelper |
3265 |
3277 |
3266 ########################################################################### |
3278 ########################################################################### |
3267 ## Methods to handle the Mercurial command server are below. |
3279 ## Methods to handle the Mercurial command server are below. |