controls/UriLocationEditor.py
changeset 2330 8c18b1a3e2bf
parent 2329 e5703dc8848e
child 2331 91ae5a11a462
--- a/controls/UriLocationEditor.py	Thu Nov 08 09:39:06 2018 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,79 +0,0 @@
-from __future__ import absolute_import
-
-import wx
-from connectors import ConnectorSchemes, EditorClassFromScheme
-
-
-[ID_URIWIZARDDIALOG, ID_URITYPECHOICE] = [wx.NewId() for _init_ctrls in range(2)]
-
-class UriLocationEditor(wx.Dialog):
-    def _init_ctrls(self, parent):
-        self.UriTypeChoice = wx.Choice(parent=self, id=ID_URIWIZARDDIALOG, choices=self.URITYPES)
-        self.UriTypeChoice.SetSelection(0)
-        self.Bind(wx.EVT_CHOICE, self.OnTypeChoice, self.UriTypeChoice)
-        self.editor_sizer = wx.BoxSizer(wx.HORIZONTAL)
-        self.ButtonSizer = self.CreateButtonSizer(wx.OK | wx.CANCEL)
-
-    def _init_sizers(self):
-        self.mainSizer = wx.BoxSizer(wx.VERTICAL)
-        typeSizer = wx.BoxSizer(wx.HORIZONTAL)
-        typeSizer.Add(wx.StaticText(self, wx.ID_ANY, _("Scheme :")), border=5, flag=wx.ALIGN_CENTER_VERTICAL | wx.ALL)
-        typeSizer.Add(self.UriTypeChoice, border=5, flag=wx.ALL)
-        self.mainSizer.Add(typeSizer)
-
-        self.mainSizer.Add(self.editor_sizer, border=5, flag=wx.ALL)
-        self.mainSizer.Add(self.ButtonSizer, border=5, flag=wx.BOTTOM | wx.ALIGN_CENTER_HORIZONTAL)
-        self.SetSizer(self.mainSizer)
-        self.Layout()
-        self.Fit()
-
-    def __init__(self, parent, uri):
-        wx.Dialog.__init__(self, id=ID_URIWIZARDDIALOG,
-                           name='UriLocationEditor', parent=parent,
-                           title=_('URI Editor'))
-        self.URITYPES = [_("- Select URI Scheme -")] + ConnectorSchemes()
-        self._init_ctrls(parent)
-        self._init_sizers()
-        self.scheme = None
-        self.scheme_editor = None
-        self.SetURI(uri)
-        self.CenterOnParent()
-
-    def OnTypeChoice(self, event):
-        index = event.GetSelection()
-        self._replaceSchemeEditor(event.GetString() if index > 0 else None)
-
-    def SetURI(self, uri):
-        try:
-            scheme, loc = uri.strip().split("://",1)
-        except:
-            return None
-        scheme = scheme.upper()
-        if scheme in ConnectorSchemes():
-            self.UriTypeChoice.SetStringSelection(scheme)
-            self._replaceSchemeEditor(scheme)
-            self.scheme_editor.SetLoc(loc)
-
-    def GetURI(self):
-        if self.scheme_editor is None:
-            return None
-        else:
-            return self.scheme+"://"+self.scheme_editor.GetLoc()
-
-    def _replaceSchemeEditor(self, scheme):
-        self.scheme = scheme
-       
-        if self.scheme_editor is not None:
-            self.editor_sizer.Detach(self.scheme_editor)
-            self.scheme_editor.Destroy()
-            self.scheme_editor = None
-
-        EditorClass = EditorClassFromScheme(scheme)
-        if EditorClass is not None:
-            self.scheme_editor = EditorClass(scheme,self)
-            self.editor_sizer.Add(self.scheme_editor)
-            self.scheme_editor.Refresh()
-        self.editor_sizer.Layout()
-        self.mainSizer.Layout()
-        self.Fit()
-