def OnConnect(self, event): """!Connect to the server""" server = self.server.GetValue() if not server: self.btn_import.Enable(False) return # not reachable layers = {} ret = RunCommand('r.in.wms2', quiet = True, parent = self, wms_version = "1.3.0", read = True, flags = 'c', mapserver = server) temp_file = grass.tempfile() if temp_file is None: grass.fatal(_("Unable to create temporary files"))##TOFO temp = open(temp_file, "w") temp.write(ret.encode('utf-8'))#TODO temp.close() if not ret: self.list.LoadData() self.btn_import.Enable(False) return # no layers found try: self.cap = WMSCapabilities(temp_file) except GException as error: GError(error, parent = self) # update list of layers self.list.LoadData(self.cap) if len(layers.keys()) > 0: self.btn_import.Enable(True) else: self.btn_import.Enable(False)