def __init__(self, id, name=None, parent=None): Layout.Box.__init__(self, id + "Container", name, parent) self.blockTab = True self.menu = None self.userInput = None self.addChildElement(Inputs.TextBox(id)) self.userInput.attributes['autocomplete'] = "off" self.userInput.addJavascriptEvent('onkeydown', CallBack(self, "jsShowIfActive")) self.userInput.addJavascriptEvent('onkeyup', CallBack(self, "jsShowIfActive")) self.userInput.addClass("WebElementToggle") self.addScript("""if(!document.hasMenuClose){ document.hasMenuClose = true; var AutoCompletePopup = null; var MenuClicked = false; var prevFunction = document.onclick; document.onclick = function CloseLastAutocompletePopup() { if(AutoCompletePopup && !MenuClicked){ JUHideElement(AutoCompletePopup) } if(prevFunction)prevFunction(); MenuClicked = false; } };""")
def __init__(self, id, name=None, parent=None, key=None): BaseField.__init__(self, id, name, parent) self.key = key inputContainer = Layout.Box(id + "_inputContainer", '', self) inputContainer.style['float'] = 'left' inputContainer.style['clear'] = 'none' userInput = Inputs.CheckBox(id, None, self, key=key) self.userInput.addJavascriptEvent('onload', 'CCClickCheckbox(this)') self.userInput.addJavascriptEvent('onclick', CallBack(self, 'toggleChildren')) self.userInput = self.userInput.replaceWith(userInput) self.inputContainer = self.addChildElement(inputContainer) labelContainer = Layout.Box(id + "_labelContainer", '', self) labelContainer.style['float'] = 'left' labelContainer.style['clear'] = 'none' labelContainer.style['margin-top'] = "3px" label = Display.Label(id + "_label", '', self) self.label = labelContainer.addChildElement(label) self.labelContainer = self.addChildElement(labelContainer) self.addChildElement(Layout.LineBreak()) childContainer = Layout.Box(id + "_childContainer", name, self) childContainer.style['display'] = CallBack(self, 'displayValue') self.childContainer = self.addChildElement(childContainer) self.addChildElementsTo = childContainer
def __init__(self, id=None, name=None, parent=None, key=None): InputElement.__init__(self, id, name, parent, key=key) self.addClass("WCheckBox") self._value = False self.attributes['value'] = None self.attributes['type'] = 'checkbox' self.attributes['disabled'] = CallBack(self, 'disabled')
def setGroupData(self, data): """ Sets the groups and the items each group should contain data - a list of groupnames and item lists, for example: [{'name':'fruits, 'value':['apple', 'orange', 'grape']}] """ self.groupSelect.reset() self.itemSelect.reset() self.groups = [] self.items = {} for group in data: newGroup = group['name'] items = group['value'] self.groups.append(newGroup) self.items[newGroup] = items self.groupSelect.addOption(newGroup, newGroup) self.addScript(CallBack(self, "jsGroups")) self.addScript(CallBack(self, "jsPopulateItemSelect"))
def __init__(self, id=None, name=None, parent=None): Layout.Vertical.__init__(self, id + "NestedSelect", name, parent) self.groupLabel = self.addChildElement(Display.Label()) self.groupSelect = self.addChildElement(Inputs.Select(id)) self.groupSelect.addJavascriptEvent( 'onclick', CallBack(self, "jsPopulateItemSelect")) self.groupSelect.connect('selectionChanged', None, self, 'updateItems') self.itemLabel = self.addChildElement(Display.Label()) self.itemSelect = self.addChildElement(Inputs.Select(id + "Items")) self.groups = [] self.items = {}
def __init__(self, id, name=None, parent=None): Base.WebElement.__init__(self, id, name, parent) self.tabs = {} self.selectedTab = None self.layout = self.addChildElement( self.__layoutElement__(id, name, parent)) self.layout.addClass("WebElement" + self.__class__.__name__) self.__tabLabelContainer__ = self.layout.addChildElement( self.__tabLayoutElement__()) self.__tabLabelContainer__.addClass('TabLabels') self.__tabContentContainer__ = self.layout.addChildElement( Layout.Box()) self.__tabContentContainer__.addClass('TabContents') self.addScript(CallBack(self, 'jsInit'))
def __init__(self, id, name=None, parent=None): Layout.Vertical.__init__(self, id, name, parent) self.addClass("WebElementAccordion") self.toggle = self.addChildElement(Layout.Horizontal()) self.toggle.addClass('AccordionToggle') self.toggle.addJavascriptEvent('onclick', CallBack(self, 'jsToggle')) self.toggleImage = self.toggle.addChildElement( Display.Image(id + "Image")) self.toggleImage.addClass('AccordionImage') self.toggleLabel = self.toggle.addChildElement(Display.Label()) self.toggleLabel.addClass('AccordionLabel') self.isOpen = self.toggle.addChildElement( HiddenInputs.HiddenBooleanValue(id + "Value")) self.contentElement = self.addChildElement(Layout.Box(id + "Content")) self.contentElement.addClass('AccordionContent') self.addChildElementsTo = self.contentElement self.isOpen.connect('valueChanged', True, self, 'open') self.isOpen.connect('valueChanged', False, self, 'close') self.close() self.addJSFunctions(Accordion)
def __init__(self, id, name=None, parent=None): Layout.Box.__init__(self, id, name, parent) self.addClass("WBreadCrumb") hiddenData = Inputs.TextBox(id + ':HiddenData') hiddenData.attributes['type'] = 'hidden' self.hiddenData = self.addChildElement(hiddenData) prevLinkClicked = Inputs.TextBox(id + ':LinkClicked') prevLinkClicked.attributes['type'] = 'hidden' self.prevLinkClicked = self.addChildElement(prevLinkClicked) location = Inputs.TextBox(id + ':Location') location.attributes['type'] = 'hidden' self.location = self.addChildElement(location) label = Inputs.TextBox(id + ':Label') label.attributes['type'] = 'hidden' self.label = self.addChildElement(label) key = Inputs.TextBox(id + ':Key') key.attributes['type'] = 'hidden' self.key = self.addChildElement(key) self.currentLocation = '' self.currentText = '' self.formName = "setMe" self.linkCount = 0 self.links = [] self.addLink('Home', 'Home') self.addScript(CallBack(self, 'jsSubmitLink')) self.connect('beforeToHtml', None, self, 'highlightCurrentLink') self.trail = []
def __init__(self, id, name=None, parent=None): TextField.__init__(self, id, name, parent) self.userInput.style['width'] = '7.5em' self.dateFormat = "dd-mmm-yyyy" layout = self.addChildElement(Layout.Horizontal()) layout.addClass("FieldDescription") self.calendarLink = layout.addChildElement( Display.Image(id + "CalendarLink")) self.calendarLink.addClass('Clickable') self.calendarLink.addClass('hidePrint') self.calendarLink.setValue('images/calendar_icon.gif') self.calendarLink.addJavascriptEvent('onclick', CallBack(self, "jsOpenCalendar")) self.calendarTypeLabel = layout.addChildElement(Display.Label()) self.calendarTypeLabel.style['margin-left'] = "4px;" self.calendarTypeLabel.style['margin-right'] = "4px;" self.calendarTypeLabel.style['display'] = "block;" self.setIsZulu(False) self.formatDisplay = layout.addChildElement(Display.Label()) self.connect('beforeToHtml', None, self, '__updateDisplay__')
def __init__(self, id, name=None, parent=None): Layout.Box.__init__(self, id, name, parent) self.searchFieldList = [] self.filters = [ self, ] self.isSubFilter = False filterContainer = Layout.Box(id + ":Container") filterContainer.addClass('Filter') self.filterContainer = self.addChildElement(filterContainer) filterInput = Layout.Box() filterInput.style['float'] = 'left' filterContainer.addChildElement(filterInput) label = Display.Label('filterTermLabel') label.setText('Search for:') filterInput.addChildElement(label) searchTerm = Inputs.TextBox(id + ":SearchTerm", "FilterTerm") searchTerm.addClass("FilterTerm") self.searchTerm = filterInput.addChildElement(searchTerm) label = Display.Label('filterFieldLabel') label.setText('in:') filterInput.addChildElement(label) searchFields = Inputs.Select(id + ":SearchFields", "FilterField") searchFields.addClass("FilterField") self.searchFields = filterInput.addChildElement(searchFields) filterType = Inputs.TextBox(id + ":FilterType", "FilterType") filterType.addClass('filterType') filterType.attributes['type'] = "hidden" filterType.setValue("BaseFilter") self.filterType = filterInput.addChildElement(filterType) removeButton = Buttons.Link(id + ":Remove") removeButton.style['float'] = 'right' removeButton.style['display'] = 'none' removeButton.setText("") removeButton.textBeforeChildren = "<img src='images/close.gif' />" removeButton.addClass('Clickable') removeButton.addClass('RemoveFilter') removeButton.addJavascriptEvent("onclick", CallBack(self, 'jsRemoveFilter')) removeButton.addJavascriptEvent( "onmouseover", """JUAddClass(JUParentElement(this, 'Filter'), 'FilterHighlight');""") removeButton.addJavascriptEvent( "onmouseout", """JURemoveClass(JUParentElement(this, 'Filter'), 'FilterHighlight');""") self.removeButton = filterContainer.addChildElement(removeButton) addFilter = Layout.Box() addFilter.addClass('AddFilter') addFilter.style['clear'] = 'both' addAndFilter = Buttons.ToggleButton(id + ":And") addAndFilter.button.addClass('AddFilterButton') addAndFilter.button.addClass('AddAndFilter') addAndFilter.setValue("And") self.addAndFilter = addFilter.addChildElement(addAndFilter) addOrFilter = Buttons.ToggleButton(id + ":Or") addOrFilter.button.addClass('AddFilterButton') addOrFilter.button.addClass('AddOrFilter') addOrFilter.setValue("Or") self.addOrFilter = addFilter.addChildElement(addOrFilter) self.addFilter = filterContainer.addChildElement(addFilter) subFilter = Layout.Box() subFilter.addClass('subFilter') self.subFilter = self.addChildElement(subFilter) addOrFilter.connect('toggled', True, addAndFilter, 'toggleOff') addOrFilter.connect('jsToggled', None, self, 'jsAddOrFilter') addOrFilter.connect('jsToggled', True, addAndFilter, 'jsToggleOff') addAndFilter.connect('toggled', True, addOrFilter, 'toggleOff') addAndFilter.connect('jsToggled', None, self, 'jsAddAndFilter') addAndFilter.connect('jsToggled', True, addOrFilter, 'jsToggleOff') self.addJSFunctions(self.__class__)
def __init__(self, id, name=None, parent=None, key=None): Base.WebElement.__init__(self, id, name, parent) self.key = key self._value = '' self.attributes['value'] = CallBack(self, 'value')