def __init__(self, urls, entry, modul, *args, **kwargs): super(Preview, self).__init__(*args, **kwargs) self.urls = urls self.entry = entry self.module = modul containerDiv = html5.Div() containerDiv["class"].append("actionbar") self.appendChild(containerDiv) self.urlCb = html5.Select() containerDiv.appendChild(self.urlCb) self.previewFrame = html5.Iframe() self.appendChild(self.previewFrame) btnClose = html5.ext.Button("Close", callback=self.doClose) btnClose["class"].append("icon close") containerDiv.appendChild(btnClose) currentUrl = None for name, url in urls.items(): o = html5.Option() o["value"] = url o.appendChild(html5.TextNode(name)) self.urlCb.appendChild(o) if currentUrl is None: currentUrl = url self.setUrl(currentUrl) self.sinkEvent("onChange") self["class"].append("preview")
def __init__(self, module, handler, actionName, *args, **kwargs): super(ListPreviewAction, self).__init__(*args, **kwargs) self.urlCb = html5.Select() self.appendChild(self.urlCb) btn = html5.ext.Button(translate("Preview"), callback=self.onClick) btn["class"] = "icon preview" self.appendChild(btn) self.urls = None self["disabled"] = True self.isDisabled = True
def __init__(self, extension, view, modul, *args, **kwargs): super(ExtendedSelectMultiSearch, self).__init__(*args, **kwargs) self.view = view self.extension = extension self.module = modul self.filterChangedEvent = EventDispatcher("filterChanged") self.appendChild(html5.TextNode(extension["name"])) self.selectionCb = html5.Select() self.appendChild(self.selectionCb) o = html5.Option() o["value"] = "" o.appendChild(html5.TextNode(translate("Ignore"))) self.selectionCb.appendChild(o) for k, v in extension["values"].items(): o = html5.Option() o["value"] = k o.appendChild(html5.TextNode(v)) self.selectionCb.appendChild(o) self.sinkEvent("onChange")
def __init__(self): super(TaskSelectWidget, self).__init__(title=translate("Select a task")) self.sinkEvent("onChange") div = html5.Div() div["class"] = ["task-selector"] self.appendChild(div) self.select = html5.Select() div.appendChild(self.select) for type in ["server", "client"]: for i, task in enumerate(conf["tasks"][type]): if type == "client": assert task[ "task"], "task-Attribute must be set for client-side tasks" if not "type" in task.keys(): task["type"] = type opt = html5.Option() opt.task = task opt.appendChild(html5.TextNode(task["name"])) if not self.select._children: opt._setSelected(True) self.select.appendChild(opt) self.descr = html5.Div() self.descr["class"] = ["task-description"] self.appendChild(self.descr) self.appendChild(html5.ext.Button(translate("Cancel"), self.close)) self.appendChild(html5.ext.Button(translate("Run"), self.invokeTask)) # Init self.setActiveTask()
def __init__(self, extension, view, module, *args, **kwargs): super(ExtendedBooleanSearch, self).__init__(*args, **kwargs) self.view = view self.extension = extension self.module = module self.filterChangedEvent = EventDispatcher("filterChanged") self.appendChild(html5.TextNode(extension["name"])) self.selectionCb = html5.Select() self.appendChild(self.selectionCb) o = html5.Option() o["value"] = "" o.appendChild(html5.TextNode(translate("Ignore"))) self.selectionCb.appendChild(o) o = html5.Option() o["value"] = "0" o.appendChild(html5.TextNode(translate("No"))) self.selectionCb.appendChild(o) o = html5.Option() o["value"] = "1" o.appendChild(html5.TextNode(translate("Yes"))) self.selectionCb.appendChild(o) self.sinkEvent("onChange")
def __init__(self, widget, *args, **kwargs): super(ExportCsvStarter, self).__init__(title=translate("CSV Export")) self.widget = widget if "viur.defaultlangsvalues" in conf["server"].keys(): self.langSelect = html5.Select() self.langSelect["id"] = "lang-select" lbl = html5.Label(translate("Language selection")) lbl["for"] = "lang-select" div = html5.Div() div.appendChild(lbl) div.appendChild(self.langSelect) div.addClass("bone") self.appendChild(div) for key, value in conf["server"]["viur.defaultlangsvalues"].items( ): opt = html5.Option() opt["value"] = key opt.appendChild(html5.TextNode(value)) if key == conf["currentlanguage"]: opt["selected"] = True self.langSelect.appendChild(opt) else: self.langSelect = None # Encoding self.encodingSelect = html5.Select() self.encodingSelect["id"] = "encoding-select" lbl = html5.Label(translate("Encoding")) lbl["for"] = "encoding-select" div = html5.Div() div.appendChild(lbl) div.appendChild(self.encodingSelect) div.addClass("bone") self.appendChild(div) for i, (k, v) in enumerate([("iso-8859-15", "ISO-8859-15"), ("utf-8", "UTF-8")]): opt = html5.Option() opt["value"] = k if i == 0: opt["selected"] = True opt.appendChild(html5.TextNode(v)) self.encodingSelect.appendChild(opt) div = html5.Div() div.addClass("button-container") self.appendChild(div) self.cancelBtn = html5.ext.Button(translate("Cancel"), self.close) div.appendChild(self.cancelBtn) self.exportBtn = html5.ext.Button(translate("Export"), self.onExportBtnClick) div.appendChild(self.exportBtn)
def __init__(self, prompt, items=None, title=None, okBtn="OK", cancelBtn="Cancel", forceSelect=False, callback=None, *args, **kwargs): super(SelectDialog, self).__init__(title, *args, **kwargs) self["class"].append("selectdialog") self.callback = callback self.items = items assert isinstance(self.items, list) # Prompt if prompt: lbl = html5.Span() lbl["class"].append("prompt") if isinstance(prompt, html5.Widget): lbl.appendChild(prompt) else: html5.utils.textToHtml(lbl, prompt) self.appendChild(lbl) # Items if not forceSelect and len(items) <= 3: for idx, item in enumerate(items): if isinstance(item, dict): title = item.get("title") cssc = item.get("class") elif isinstance(item, tuple): title = item[1] cssc = None else: title = item btn = html5.ext.Button(title, callback=self.onAnyBtnClick) btn.idx = idx if cssc: btn.addClass(cssc) self.appendChild(btn) else: self.select = html5.Select() self.appendChild(self.select) for idx, item in enumerate(items): if isinstance(item, dict): title = item.get("title") elif isinstance(item, tuple): title = item[1] else: title = item opt = html5.Option(title) opt["value"] = str(idx) self.select.appendChild(opt) if okBtn: self.appendChild( html5.ext.Button(okBtn, callback=self.onOkClick)) if cancelBtn: self.appendChild( html5.ext.Button(cancelBtn, callback=self.onCancelClick))