def METHOD_NAME(self, parent):
    table = Gtk.Table(n_rows=3, n_columns=3)
    table.set_col_spacings(6)
    table.set_row_spacings(6)
    label = Gtk.Label(label=_("_Port:"), use_underline=True)
    label.set_alignment(0.0, 0.5)
    table.attach(label, 0, 1, 1, 2,
                 xoptions=Gtk.AttachOptions.FILL |
                 Gtk.AttachOptions.SHRINK)
    entry = UndoEntry()
    entry.set_text(str(get_port_num()))
    def validate_port(entry, text, *args):
        try:
            int(text)
        except ValueError:
            entry.stop_emission("insert-text")
    entry.connect("insert-text", validate_port)
    def port_activate(entry, *args):
        try:
            port_num = int(entry.get_text())
        except ValueError as e:
            print_w(e)
        else:
            if get_port_num() != port_num:
                set_port_num(port_num)
                self._refresh()
    entry.connect_after("activate", port_activate)
    entry.connect_after("focus-out-event", port_activate)
    table.attach(entry, 1, 2, 1, 2)
    port_revert = Gtk.Button()
    port_revert.add(Gtk.Image.new_from_icon_name(
        Icons.DOCUMENT_REVERT, Gtk.IconSize.MENU))
    def port_revert_cb(button, entry):
        entry.set_text(str(DEFAULT_PORT))
        entry.emit("activate")
    port_revert.connect("clicked", port_revert_cb, entry)
    table.attach(
        port_revert, 2, 3, 1, 2, xoptions=Gtk.AttachOptions.SHRINK)
    label = Gtk.Label(label=_("Local _IP:"), use_underline=True)
    label.set_alignment(0.0, 0.5)
    table.attach(label, 0, 1, 0, 1,
                 xoptions=Gtk.AttachOptions.FILL |
                 Gtk.AttachOptions.SHRINK)
    label = Gtk.Label(label=_("P_assword:"), use_underline=True)
    label.set_alignment(0.0, 0.5)
    table.attach(label, 0, 1, 2, 3,
                 xoptions=Gtk.AttachOptions.FILL |
                 Gtk.AttachOptions.SHRINK)
    entry = UndoEntry()
    entry.set_text(self.config_get("password"))
    entry.connect('changed', self.config_entry_changed, "password")
    table.attach(entry, 1, 3, 2, 3)
    label = Gtk.Label()
    label.set_padding(6, 6)
    label.set_alignment(0.0, 0.5)
    label.set_selectable(True)
    label.set_label("...")
    table.attach(label, 1, 3, 0, 1)
    cancel = Cancellable()
    label.connect("destroy", lambda *x: cancel.cancel())
    call_async(fetch_local_ip, cancel, label.set_label)
    box = Gtk.VBox(spacing=12)
    clients = Gtk.Label()
    clients.set_padding(6, 6)
    clients.set_markup(u"""\