def __init__(self, left=50, top=50): DialogBox.__init__(self, modal=False) self.setPopupPosition(left, top) self.setText("Preferences") ftable = FlexTable() ftableFormatter = ftable.getFlexCellFormatter() row = 0 try: self.fileLocation = getCookie("fileLocation") except: self.fileLocation = None row += 1 ftable.setWidget(row, 0, Label("Sheet loaded on startup", wordWrap=False)) self.fileLocationInput = TextBox() self.fileLocationInput.addChangeListener(self.checkValid) self.fileLocationInput.addKeyboardListener(self) self.fileLocationInput.setVisibleLength(30) self.fileLocationInput.setText(self.fileLocation) ftable.setWidget(row, 1, self.fileLocationInput) row += 1 hpanel = HorizontalPanel() self.saveBtn = Button("Save", self.onSave) self.saveBtn.setEnabled(False) hpanel.add(self.saveBtn) self.cancelBtn = Button("Cancel", self.onCancel) hpanel.add(self.cancelBtn) ftable.setWidget(row, 0, hpanel) ftableFormatter.setColSpan(row, 0, 2) self.setWidget(ftable)
def show_custom(self): self.dialog = DialogBox(StyleName='custom-dialog') self.dialog.setHTML('Custom Settings') contents = VerticalPanel(StyleName='contents') self.dialog.setWidget(contents) # contents of contents rows = HorizontalPanel() columns = HorizontalPanel() bombs = HorizontalPanel() buttons = HorizontalPanel() ADD(contents, rows, columns, bombs, buttons) self.row = TextBox() ADD(rows, Label('Rows:'), self.row) self.column = TextBox() ADD(columns, Label('Columns:'), self.column) self.bomb = TextBox() ADD(bombs, Label('Bombs:'), self.bomb) ADD(buttons, Button("OK", getattr(self, 'new_game')), \ Button("Cancel", getattr(self, 'close_dialog'))) left = (Window.getClientWidth() - 201) / 2 top = (Window.getClientHeight() - 190) / 2 self.dialog.setPopupPosition(left, top) self.dialog.show()
class EditPanel(AbsolutePanel): def __init__(self, key, title, content): AbsolutePanel.__init__(self) self.edit_header = Label("Edit a Post", StyleName="header_label") self.edit_title_label = Label("Title:") self.edit_title = TextBox() self.edit_title.setMaxLength(255) self.edit_content = TextArea() self.edit_content.setVisibleLines(2) self.edit_button = Button("Save") self.edit_cancel_button = Button("Cancel") self.edit_hidden_key = Hidden() self.error_message_label = Label("", StyleName="error_message_label") edit_contents = VerticalPanel(StyleName="Contents", Spacing=4) edit_contents.add(self.edit_header) edit_contents.add(self.edit_title_label) edit_contents.add(self.edit_title) edit_contents.add(self.edit_content) edit_contents.add(self.edit_button) edit_contents.add(self.edit_cancel_button) edit_contents.add(self.error_message_label) edit_contents.add(self.edit_hidden_key) self.edit_dialog = DialogBox(glass=True) self.edit_dialog.setHTML('<b>Blog Post Form</b>') self.edit_dialog.setWidget(edit_contents) left = (Window.getClientWidth() - 900) / 2 + Window.getScrollLeft() top = (Window.getClientHeight() - 600) / 2 + Window.getScrollTop() self.edit_dialog.setPopupPosition(left, top) self.edit_dialog.hide() def clear_edit_panel(self): self.edit_title.setText("") self.edit_content.setText("") self.error_message_label.setText("")
def draw(self): Popup.draw(self) namePanel = HorizontalPanel() #namePanel.add(Label('Crie um arquivo')) if self.title == 'Abrir': self.enableOkButton(False) namePanel.add(HTML("""<div class=""gwt-Label"" style=""white-space: normal;""> Abra o arquivo salvo, copie<br>e cole aqui o conteudo:</div>""")) self.field = FileUpload() self.field.setName('file') self.field.setID('files') self.center.add(self.field) element = self.field.getElement() JS("""function handleFileSelect(evt) {@{{self}}.enableOkButton(evt.target.files[0]!=null);} @{{element}}.addEventListener('change', handleFileSelect, false);""") #http://www.javascriptkit.com/javatutors/loadjavascriptcss.shtml else: namePanel.add(HTML("""<div class=""gwt-Label"" style=""white-space: normal;""> Crie um arquivo txt e copie<br>e cole o conteudo a seguir:</div>""")) self.textBox = TextBox() self.textBox.setStyleAttribute('marginLeft', 10) namePanel.add(self.textBox) self.center.add(namePanel) self.textBox.addInputListener(self) self.onInput()
def __init__(self, **kwargs): TextBox.__init__(self) self.max_length = kwargs.get('max_length', None) self.min_length = kwargs.get('min_length', None) self.required = kwargs.get('required', None) if kwargs.get('initial'): self.setValue(kwargs['initial'])
def set_variables(self, no_of_vars, x=True): def name(n): return "var" + str(n) def print_scheme(n): return ["\\alpha", "\\beta", "\\gamma", "\\delta", "\\epsilon"][n] def button_click(n): def sopa(): if not self.is_clicked[n]: v = Operation(name(n), 0, self.textbox[n].getText(), name(n), Operation.VARIABLE) self.var[n] = v self.textbox[n].setEnabled(False) self.is_clicked[n] = True self.add_op(self.var[n]) return sopa for i in range(no_of_vars): h = HorizontalPanel() b = Button("variable", button_click(i)) h.add(b) self.is_clicked.append(False) self.var.append(None) t = TextBox() self.textbox.append(t) t.setText(print_scheme(i)) h.add(t) self.add_button(h)
class TestDict: def onModuleLoad(self): self.r = WrapperDict() self.kbox = TextBox() self.addbutton = Button( "Click to look up key value (hello or goodbye)") self.addbutton.addClickListener(self) self.kbox.setText("hello") # default to make life easier RootPanel().add(HTML("Key:")) RootPanel().add(self.kbox) RootPanel().add(self.addbutton) def display_value(self): key = self.kbox.getText() RootPanel().add(HTML("Value using python:")) RootPanel().add(HTML(self.r.python_get_value(key))) RootPanel().add(HTML("Value using javascript:")) RootPanel().add(HTML(self.r.javascript_get_value(key))) def onClick(self, sender): self.display_value()
def addInput(self): self.input = TextBox() self.input.setWidth(20) self.input.addInputListener(self) self.append(self.input) DOM.setBooleanAttribute(self.input.getElement(), "readOnly", True) self.input.addChangeListener(self)
def __init__( self ) : numberOfLoopsPanel=HorizontalPanel() numberOfLoopsPanel.add( HTML("Maximum number of loops") ) self.maximumNumberOfLoops=TextBox() self.maximumNumberOfLoops.setText(10) numberOfLoopsPanel.add( self.maximumNumberOfLoops ) numberOfLoopsPanel.setCellHorizontalAlignment( self.maximumNumberOfLoops, HasHorizontalAlignment.ALIGN_RIGHT ) numberOfLoopsPanel.setWidth("100%") aimPointPanel=HorizontalPanel() aimPointPanel.add( HTML("Aim point") ) self.aimPoint=TextBox() self.aimPoint.setText(127) aimPointPanel.add( self.aimPoint ) aimPointPanel.setCellHorizontalAlignment( self.aimPoint, HasHorizontalAlignment.ALIGN_RIGHT ) aimPointPanel.setWidth("100%") self.start=Button("Start") self.echo=HTML("Initiating...") self.mainPanel = VerticalPanel() self.mainPanel.add( numberOfLoopsPanel ) self.mainPanel.add( aimPointPanel ) self.mainPanel.add( self.start ) self.mainPanel.add( self.echo )
class DirectAdd(HorizontalPanel): def __init__(self): HorizontalPanel.__init__(self, Spacing=4) self.add(Label('Directly add:', StyleName='section')) self.name = TextBox() self.name.setMaxLength(18) self.name.setVisibleLength(18) self.add(self.name) self.update = Button('Add', self) self.add(self.update) self.err = Label() self.add(self.err) def onClick(self, sender): self.err.setText('') name = self.name.getText().strip() if name == '': return else: self.update.setEnabled(False) remote = server.AdminService() id = remote.directAddUser(name, self) if id < 0: self.err.setText('oops: could not add') def onRemoteResponse(self, result, request_info): self.update.setEnabled(True) def onRemoteError(self, code, message, request_info): self.update.setEnabled(True) self.err.setText('Could not add: ' + message['data']['message'])
class WritePanel(AbsolutePanel): def __init__(self, parent): AbsolutePanel.__init__(self) self.post_header = Label("Write a Post", StyleName="header_label") self.post_write_title_label = Label("Title:") self.post_title = TextBox() self.post_content = TextArea() self.post_button = Button("Post") self.cancel_button = Button("Cancel") self.error_message_label = Label("", StyleName="error_message_label") contents = VerticalPanel(StyleName="Contents", Spacing=4) contents.add(self.post_header) contents.add(self.post_write_title_label) contents.add(self.post_title) contents.add(self.post_content) contents.add(self.post_button) contents.add(self.cancel_button) contents.add(self.error_message_label) self.dialog = DialogBox(glass=True) self.dialog.setHTML('<b>Blog Post Form</b>') self.dialog.setWidget(contents) left = (Window.getClientWidth() - 900) / 2 + Window.getScrollLeft() top = (Window.getClientHeight() - 600) / 2 + Window.getScrollTop() self.dialog.setPopupPosition(left, top) self.dialog.hide() def clear_write_panel(self): self.post_title.setText("") self.post_content.setText("") self.error_message_label.setText("")
class TestDict: def onModuleLoad(self): self.r = WrapperDict() self.kbox = TextBox() self.addbutton = Button("Click to look up key value (hello or goodbye)") self.addbutton.addClickListener(self) self.kbox.setText("hello") # default to make life easier RootPanel().add(HTML("Key:")) RootPanel().add(self.kbox) RootPanel().add(self.addbutton) def display_value(self): key = self.kbox.getText() RootPanel().add(HTML("Value using python:" )) RootPanel().add(HTML(self.r.python_get_value(key))) RootPanel().add(HTML("Value using javascript:" )) RootPanel().add(HTML(self.r.javascript_get_value(key))) def onClick(self, sender): self.display_value()
def __init__(self, **kwargs): TextBox.__init__(self) self.max_length = kwargs.get('max_length', None) self.min_length = kwargs.get('min_length', None) self.required = kwargs.get('required', None) if kwargs.get('initial'): self.setValue(kwargs['initial'])
class PreferencesDlg(DialogBox): fileLocation = None def __init__(self, left = 50, top = 50): DialogBox.__init__(self, modal = False) self.setPopupPosition(left, top) self.setText("Preferences") ftable = FlexTable() ftableFormatter = ftable.getFlexCellFormatter() row = 0 self.fileLocation = getCookie("fileLocation") row += 1 ftable.setWidget(row, 0, Label("Sheet loaded on startup", wordWrap=False)) self.fileLocationInput = TextBox() self.fileLocationInput.addChangeListener(self.checkValid) self.fileLocationInput.addKeyboardListener(self) self.fileLocationInput.setVisibleLength(30) self.fileLocationInput.setText(self.fileLocation) ftable.setWidget(row, 1, self.fileLocationInput) row += 1 hpanel = HorizontalPanel() self.saveBtn = Button("Save", self.onSave) self.saveBtn.setEnabled(False) hpanel.add(self.saveBtn) self.cancelBtn = Button("Cancel", self.onCancel) hpanel.add(self.cancelBtn) ftable.setWidget(row, 0, hpanel) ftableFormatter.setColSpan(row, 0, 2) self.setWidget(ftable) def onCancel(self, sender): self.hide() def onSave(self, sender): setCookie("fileLocation", self.fileLocationInput.getText(), 1000000000) self.hide() def checkValid(self, evt=None): if self.fileLocation != self.fileLocationInput.getText(): self.saveBtn.setEnabled(True) else: self.saveBtn.setEnabled(False) def onClick(self, sender): pass def onKeyUp(self, sender, keyCode, modifiers): self.checkValid() def onKeyDown(self, sender, keyCode, modifiers): pass def onKeyPress(self, sender, keyCode, modifiers): pass
def __init__(self): # We need to use old form of inheritance because of pyjamas SimplePanel.__init__(self) self.hpanel = HorizontalPanel(Width='475px') self.hpanel.setVerticalAlignment(HasAlignment.ALIGN_BOTTOM) self.name = TextBox() self.name.setStyleName('form-control') self.status = ListBox() self.status.addItem('Active') self.status.addItem('Inactive') self.status.setVisibleItemCount(0) self.status.setStyleName('form-control input-lg') self.status.setSize('100px', '34px') lbl = Label('', Width='10px') self.add_btn = Button('Add') self.add_btn.setStyleName('btn btn-primary') self.del_btn = Button('Delete') self.del_btn.setStyleName('btn btn-danger') self.hpanel.add(self.name) self.hpanel.add(lbl) self.hpanel.add(self.status) self.hpanel.add(self.add_btn) self.hpanel.add(self.del_btn)
def draw(self): Popup.draw(self) namePanel = HorizontalPanel() namePanel.add(Label(_('Name') + ':')) self.textBox = TextBox() self.textBox.setMaxLength(15) self.textBox.setStyleAttribute('marginLeft', 10) namePanel.add(self.textBox) self.center.add(namePanel) self.choose = ChooseTypeVarPanel() self.center.add(self.choose) self.textBox.addInputListener(self) self.message = Element(Element=DOM.createDiv()) self.message.add(Widget(Element=DOM.createDiv(), StyleName='not_image')) self.message.add( Label(text=_('Name already used'), wordWrap=False, StyleName='not_message')) self.onInput()
def __init__(self): DockPanel.__init__(self) self.setSize('100%', '100%') self.geocoder = Geocoder() # widgets topPanel = HorizontalPanel() self.add(topPanel, DockPanel.NORTH) self.address = TextBox() self.address.setText("Sydney, NSW") self.address.addChangeListener(self.codeAddress) topPanel.add(self.address) button = Button("Geocode") button.addClickListener(self.codeAddress) topPanel.add(button) # now, the map mapPanel = SimplePanel() mapPanel.setSize('600', '400') self.add(mapPanel, DockPanel.CENTER) options = MapOptions(zoom=8, center=LatLng(-34.397, 150.644), mapTypeId=MapTypeId.ROADMAP) self.map = Map(mapPanel.getElement(), options)
def __init__(self): TextBox.__init__(self) self._blurListeners = [] self._invalidListeners = [] self._validListeners = [] self._regex = None
def __init__(self, theorem, **kwargs): DialogWindow.__init__(self, modal=True, close=True) self.theorem = theorem v = VerticalPanel() v.setWidth(300) # v.setHeight(500) self.setText("save") self.setPopupPosition(100, 100) self.setStyleAttribute("background-color", "#ffffff") self.setStyleAttribute("color", "red") self.setStyleAttribute("border-width", "5px") self.setStyleAttribute("border-style", "solid") self.im = Image() self.im.setUrl(latex_to_url(self.theorem.formula.to_latex())) v.add(self.im) h = HorizontalPanel() self.radio = RadioButton("group1", "Existing folder:") h.add(self.radio) self.list = ListBox() self.list.setVisibleItemCount(1) for f in Theorem.get_all_folders(): self.list.addItem(f) h.add(self.list) v.add(h) h = HorizontalPanel() h.add(RadioButton("group1", "New folder:")) self.radio.setChecked(True) self.textbox = TextBox() h.add(self.textbox) v.add(h) v.add(Button("Done", self.done_click)) self.add(v)
def __init__(self, **kwargs): DialogWindow.__init__(self, modal=True, close=True) v = VerticalPanel() v.setWidth(300) # v.setHeight(500) self.setText("definition") self.setPopupPosition(100, 100) self.setStyleAttribute("background-color", "#ffffff") self.setStyleAttribute("color", "#9847a2") self.setStyleAttribute("border-width", "5px") self.setStyleAttribute("border-style", "solid") h = HorizontalPanel() self.textbox_name = TextBox() h.add(Label("name")) h.add(self.textbox_name) v.add(h) h = HorizontalPanel() self.textbox_scheme = TextBox() h.add(Label("print scheme")) h.add(self.textbox_scheme) v.add(h) self.add(v) self.theorems = list() self.radios = list() for t in Theorem.theorems: if t.formula.is_in_unique_form(): self.theorems.append(t) self.radios.append(RadioButton("group1", "")) h = HorizontalPanel() h.add(self.radios[-1]) im = Image() im.setUrl(latex_to_url(t.formula.to_latex())) h.add(im) v.add(h) v.add(Button("Done", self.done_click))
def __init__(self, start_date, can_delete=True): # We need to use old form of inheritance because of pyjamas SimplePanel.__init__(self) self.vpanel = VerticalPanel() desc_panel = VerticalPanel() self.desc_box = TextBox() self.desc_box.setVisibleLength(44) self.desc_box.setStyleName('form-control') desc_lbl = Label('impediment description') desc_lbl.setStyleName('text-muted') desc_panel.add(self.desc_box) desc_panel.add(desc_lbl) # Set to False if loaded from database self.can_delete = can_delete status_panel = VerticalPanel() self.status_lst = ListBox(Height='34px') self.status_lst.setStyleName('form-control input-lg') self.status_lst.addItem('Open') self.status_lst.addItem('Closed') # we put date here self.status_lbl = Label('') self.set_start_date(start_date) self.status_lbl.setStyleName('text-muted') status_panel = VerticalPanel() status_panel.add(self.status_lst) status_panel.add(self.status_lbl) self.comment = Text_Area_Row('', 'why it exists or is being closed') hpanel = HorizontalPanel() hpanel.add(desc_panel) hpanel.add(Label(Width='10px')) hpanel.add(status_panel) self.vpanel.add(hpanel) self.vpanel.add(self.comment.panel())
class TextEditor(Editor): """ Base class for text style editors, which displays an editable text field, containing a text representation of the object trait value. """ # --------------------------------------------------------------------------- # Finishes initializing the editor by creating the underlying toolkit # widget: # --------------------------------------------------------------------------- def init(self, parent): """ Finishes initializing the editor by creating the underlying toolkit widget. """ self.control = TextBox() self.control.setText(self.str_value) self.control.addChangeListener(getattr(self, "update_object")) self.set_tooltip() # --------------------------------------------------------------------------- # Handles the user changing the contents of the edit control: # --------------------------------------------------------------------------- def update_object(self, sender): """ Handles the user changing the contents of the edit control. """ try: self.value = unicode(self.control.getText()) except TraitError, excp: pass
def __init__(self, key, title, content): AbsolutePanel.__init__(self) self.edit_header = Label("Edit a Post", StyleName="header_label") self.edit_title_label = Label("Title:") self.edit_title = TextBox() self.edit_title.setMaxLength(255) self.edit_content = TextArea() self.edit_content.setVisibleLines(2) self.edit_button = Button("Save") self.edit_cancel_button = Button("Cancel") self.edit_hidden_key = Hidden() self.error_message_label = Label("", StyleName="error_message_label") edit_contents = VerticalPanel(StyleName="Contents", Spacing=4) edit_contents.add(self.edit_header) edit_contents.add(self.edit_title_label) edit_contents.add(self.edit_title) edit_contents.add(self.edit_content) edit_contents.add(self.edit_button) edit_contents.add(self.edit_cancel_button) edit_contents.add(self.error_message_label) edit_contents.add(self.edit_hidden_key) self.edit_dialog = DialogBox(glass=True) self.edit_dialog.setHTML('<b>Blog Post Form</b>') self.edit_dialog.setWidget(edit_contents) left = (Window.getClientWidth() - 900) / 2 + Window.getScrollLeft() top = (Window.getClientHeight() - 600) / 2 + Window.getScrollTop() self.edit_dialog.setPopupPosition(left, top) self.edit_dialog.hide()
def __init__(self): SimplePanel.__init__(self) field = TextBox() field.setVisibleLength(20) field.setMaxLength(10) self.add(field)
def __init__(self,parent): AbsolutePanel.__init__(self) ftable = FlexTable() ftable.setWidget(0, 0, Label("First Name", wordWrap=False)) ftableFormatter = ftable.getFlexCellFormatter() self.firstInput = TextBox() self.firstInput.addChangeListener(self.checkValid) self.firstInput.addKeyboardListener(self) ftable.setWidget(0, 1, self.firstInput) ftable.setWidget(1, 0, Label("Last Name", wordWrap=False)) self.lastInput = TextBox() self.lastInput.addChangeListener(self.checkValid) self.lastInput.addKeyboardListener(self) ftable.setWidget(1, 1, self.lastInput) ftable.setWidget(2, 0, Label("Email", wordWrap=False)) self.emailInput = TextBox() self.emailInput.addChangeListener(self.checkValid) self.emailInput.addKeyboardListener(self) ftable.setWidget(2, 1, self.emailInput) ftable.setWidget(3, 0, Label("Username", wordWrap=False)) self.usernameInput = TextBox() self.usernameInput.addChangeListener(self.checkValid) self.usernameInput.addKeyboardListener(self) ftable.setWidget(3, 1, self.usernameInput) ftable.setWidget(4, 0, Label("Password", wordWrap=False)) self.passwordInput = PasswordTextBox() self.passwordInput.addChangeListener(self.checkValid) self.passwordInput.addKeyboardListener(self) ftable.setWidget(4, 1, self.passwordInput) ftable.setWidget(5, 0, Label("Confirm", wordWrap=False)) self.confirmInput = PasswordTextBox() self.confirmInput.addChangeListener(self.checkValid) self.confirmInput.addKeyboardListener(self) ftable.setWidget(5, 1, self.confirmInput) ftable.setWidget(6, 0, Label("Department", wordWrap=False)) self.departmentCombo = ListBox() self.departmentCombo.addChangeListener(self.checkValid) self.departmentCombo.addKeyboardListener(self) ftable.setWidget(6, 1, self.departmentCombo) hpanel = HorizontalPanel() self.addBtn = Button("Add User", self.onAdd) self.addBtn.setEnabled(False) hpanel.add(self.addBtn) self.cancelBtn = Button("Cancel", self.onCancel) hpanel.add(self.cancelBtn) ftable.setWidget(7, 0, hpanel) ftableFormatter.setColSpan(7, 0, 2) self.add(ftable) return
class FormPanelExample: def onModuleLoad(self): # Create a FormPanel and point it at a service. self.form = FormPanel() self.form.setAction("/chat-service/test/") # Because we're going to add a FileUpload widget, we'll need to set the # form to use the POST method, and multipart MIME encoding. self.form.setEncoding(FormPanel.ENCODING_MULTIPART) self.form.setMethod(FormPanel.METHOD_POST) # Create a panel to hold all of the form widgets. panel = VerticalPanel() self.form.setWidget(panel) # Create a TextBox, giving it a name so that it will be submitted. self.tb = TextBox() self.tb.setName("textBoxFormElement") panel.add(self.tb) # Create a ListBox, giving it a name and some values to be associated with # its options. lb = ListBox() lb.setName("listBoxFormElement") lb.addItem("foo", "fooValue") lb.addItem("bar", "barValue") lb.addItem("baz", "bazValue") panel.add(lb) # Create a FileUpload widget. upload = FileUpload() upload.setName("uploadFormElement") panel.add(upload) # Add a 'submit' button. panel.add(Button("Submit", self)) # Add an event handler to the form. self.form.addFormHandler(self) RootPanel().add(self.form) def onClick(self, sender): self.form.submit() def onSubmitComplete(self, event): # When the form submission is successfully completed, this event is # fired. Assuming the service returned a response of type text/plain, # we can get the result text here (see the FormPanel documentation for # further explanation). Window.alert(event.getResults()) def onSubmit(self, event): # This event is fired just before the form is submitted. We can take # this opportunity to perform validation. if self.tb.getText().length == 0: Window.alert("The text box must not be empty") event.setCancelled(True)
class FormPanelExample: def onModuleLoad(self): # Create a FormPanel and point it at a service. self.form = FormPanel() self.form.setAction("/chat-service/test/") # Because we're going to add a FileUpload widget, we'll need to set the # form to use the POST method, and multipart MIME encoding. self.form.setEncoding(FormPanel.ENCODING_MULTIPART) self.form.setMethod(FormPanel.METHOD_POST) # Create a panel to hold all of the form widgets. panel = VerticalPanel() self.form.setWidget(panel) # Create a TextBox, giving it a name so that it will be submitted. self.tb = TextBox() self.tb.setName("textBoxFormElement") panel.add(self.tb) # Create a ListBox, giving it a name and some values to be associated with # its options. lb = ListBox() lb.setName("listBoxFormElement") lb.addItem("foo", "fooValue") lb.addItem("bar", "barValue") lb.addItem("baz", "bazValue") panel.add(lb) # Create a FileUpload widget. upload = FileUpload() upload.setName("uploadFormElement") panel.add(upload) # Add a 'submit' button. panel.add(Button("Submit", self)) # Add an event handler to the form. self.form.addFormHandler(self) RootPanel().add(self.form) def onClick(self, sender): self.form.submit() def onSubmitComplete(self, event): # When the form submission is successfully completed, this event is # fired. Assuming the service returned a response of type text/plain, # we can get the result text here (see the FormPanel documentation for # further explanation). Window.alert(event.getResults()) def onSubmit(self, event): # This event is fired just before the form is submitted. We can take # this opportunity to perform validation. if (len(self.tb.getText()) == 0): Window.alert("The text box must not be empty") event.setCancelled(True)
def onModuleLoad(self): self.remote_py = MyBlogService() # Create a FormPanel and point it at a service. self.form = FormPanel() # Create a panel to hold all of the form widgets. vp=VerticalPanel(BorderWidth=0,HorizontalAlignment=HasAlignment.ALIGN_CENTER,VerticalAlignment=HasAlignment.ALIGN_MIDDLE,Width="100%",Height="150px") self.form.setWidget(vp) header=HTML("<h2>LOGIN TO YOUR ACCOUNT</h2>") part1=header # Create a TextBox, giving it a name so that it will be submitted. self.userName = TextBox() self.userName.setName("userNameFormElement") self.userName.setPlaceholder("User Name") part2=self.userName self.password = PasswordTextBox() self.password.setName("passwordFormElement") self.password.setPlaceholder("Password") part3=self.password self.errorInfoLabel = Label() self.errorInfoLabel.setStyleName('error-info') part4=self.errorInfoLabel part4.setStyleName("errorlabel") # Add a 'submit' button. hpanel = HorizontalPanel(BorderWidth=0,HorizontalAlignment=HasAlignment.ALIGN_CENTER,VerticalAlignment=HasAlignment.ALIGN_MIDDLE,Width="100%",Height="50px") partb=Button("Login", self) partb.setStyleName('btn') image=Label("Don''t have account? Sign up") anchor = Anchor(Widget=image, Href='/signup.html') parta=anchor hpanel.add(partb) hpanel.add(parta) part5=hpanel part5.setStyleName("hpanel") vp.add(part1) vp.add(part2) vp.add(part3) vp.add(part4) vp.add(part5) vp.setStyleName("signup") # Add an event handler to the form. self.form.addFormHandler(self) RootPanel().add(self.form)
class LoginDialgoBox(DialogBox,RPCBase): def __init__(self, app): DialogBox.__init__(self) self.app = app self.table=FlexTable() self.table.setText(0, 0, "Please enter username and password") self.table.getFlexCellFormatter().setColSpan(0, 0, 2) self.table.setText(1, 0, "Username") self.handle = TextBox() h = getCookie('handle') self.handle.setText(h) self.table.setWidget(1, 1, self.handle) self.table.setText(2, 0, "Password") self.pwd = PasswordTextBox() self.table.setWidget(2, 1, self.pwd) self.table.setHTML(3,0,"") self.table.getFlexCellFormatter().setColSpan(3, 0, 2) h = HorizontalPanel() self.table.setWidget(4,0, h) self.table.getFlexCellFormatter().setColSpan(4, 0, 2) h.add(Button("Ok", getattr(self, "onOk"))) h.add(Button("Cancel", getattr(self, "onClose"))) h.setSpacing(4) self.setHTML("<b>Login</b>") self.setWidget(self.table) left = (Window.getClientWidth() - 200) / 2 top = (Window.getClientHeight() - 100) / 2 self.setPopupPosition(left,top) def onRemoteResponse(self, response, request_info): if response == "invalid_cookie": self.show() elif response == None or len(response) < 3: self.table.setHTML(3,0,"<b>Invalid username or password</b>") else: self.app.cookie = response[0] setCookie('cookie',response[0],1000*60*60*24) self.hide() self.app.logininit(response[1],response[2]) def onClose(self,env): Window.getLocation().setHref("http://www.google.com") def onOk(self, env): global gw setCookie('handle',self.handle.getText(),24*60*60*1000) x = self.pwd.getText() x = pwhash(x) gw.login(self.handle.getText(), x, self) def login(self): global gw if not self.app.cookie: self.show() else: gw.validateCookie(self.app.cookie, self)
def onBrowserEvent(self, event): TextBox.onBrowserEvent(self, event) type = DOM.eventGetType(event) if type == "keyup": for _listener in self._blurListeners: if hasattr(_listener, 'onBlur'): _listener.onBlur(self) else: _listener(self)
def __init__(self): self.artist ='' self.start_date = '' self.end_date = '' self.period_search ='' self.search_option = 1 #declare the general interface widgets self.panel = DockPanel(StyleName = 'background') self.ret_area = TextArea() self.ret_area.setWidth("350px") self.ret_area.setHeight("90px") self.options = ListBox() self.search_button = Button("Search", getattr(self, "get_result"), StyleName = 'button') #set up the date search panel; it has different text boxes for #to and from search dates self.date_search_panel = VerticalPanel() self.date_search_start = TextBox() self.date_search_start.addInputListener(self) self.date_search_end = TextBox() self.date_search_end.addInputListener(self) self.date_search_panel.add(HTML("Enter as month/day/year", True, StyleName = 'text')) self.date_search_panel.add(HTML("From:", True, StyleName = 'text')) self.date_search_panel.add(self.date_search_start) self.date_search_panel.add(HTML("To:", True, StyleName = 'text')) self.date_search_panel.add(self.date_search_end) #set up the artist search panel self.artist_search = TextBox() self.artist_search.addInputListener(self) self.artist_search_panel = VerticalPanel() self.artist_search_panel.add(HTML("Enter artist's name:",True, StyleName = 'text')) self.artist_search_panel.add(self.artist_search) #Put together the list timespan search options self.period_search_panel = VerticalPanel() self.period_search_panel.add(HTML("Select a seach period:",True, StyleName = 'text')) self.period_search = ListBox() self.period_search.setVisibleItemCount(1) self.period_search.addItem("last week") self.period_search.addItem("last month") self.period_search.addItem("last year") self.period_search.addItem("all time") self.period_search_panel.add(self.period_search) #add the listeners to the appropriate widgets self.options.addChangeListener(self) self.period_search.addChangeListener(self) self.ret_area_scroll = ScrollPanel() self.search_panel = HorizontalPanel() self.options_panel = VerticalPanel()
def onClick(self, sender): global statusbar, boxes statusbar.setText("Button pressed") pass if sender == self.buttonupdate: self.commobj = AMS.AMS_Comm() statusbar.setText("Updating data: Press Display list button to refesh") if sender == self.button: if AMS.sent > AMS.recv: statusbar.setText("Press button again: sent " + str(AMS.sent) + " recv " + str(AMS.recv)) if ( self.commobj.commname == "No AMS publisher running" or not self.commobj.commname or self.commobj.comm == -1 ): if self.tree: self.panel.remove(self.tree) else: statusbar.setText("Memories for AMS Comm: " + self.commobj.commname) result = self.commobj.get_memory_list() if self.tree: self.panel.remove(self.tree) self.tree = Tree() for i in result: if i == "Stack": continue subtree = TreeItem(i) memory = self.commobj.memory_attach(i) fields = memory.get_field_list() if not isinstance(fields, list): fields = [fields] block = false for j in fields: field = memory.get_field_info(j) if str(field[1]) == "AMS_READ": if j == "Publish Block": if field[4] == "true": block = true else: subtree.addItem(j + " = " + str(field[4])) else: if j == "Block" and not block: continue PN = HorizontalPanel() PN.add(Label(Text=j + " =")) tb = TextBox(Text=str(field[4])) boxes[tb] = [i, j, memory] tb.addChangeListener(self.textboxlistener) PN.add(tb) subtree.addItem(PN) self.tree.addItem(subtree) self.panel.add(self.tree)
def onBrowserEvent(self, event): TextBox.onBrowserEvent(self, event) #Window.alert('was I ever called?') type = DOM.eventGetType(event) if type == "blur": for _listener in self._blurListeners: if hasattr(_listener, 'onBlur'): _listener.onBlur(self) else: _listener(self) if self.controller is not None: self.controller.process_msg(CAL_DATE_MSG, self.cal_ID)
def onFormLoad(self): self.fetch = Button("Retrieve", self) self.search = TextBox() self.submit = Button("Submit", self) self.formsvc = FormService() self.wanted = WantedService() d = {'price': 20, 'name': 'a good car'} self.form = Form(getattr(self.formsvc, "itemform"), data=d, listener=self) #self.describe(['name', 'description']) RootPanel().add(self.form) RootPanel().add(self.search) RootPanel().add(self.fetch)
def onBrowserEvent(self, event): TextBox.onBrowserEvent(self, event) #Window.alert('was I ever called?') type = DOM.eventGetType(event) if type == "blur": for _listener in self._blurListeners: if hasattr(_listener, 'onBlur'): _listener.onBlur(self) else: _listener(self) if self.controller is not None: self.controller.process_msg(CAL_DATE_MSG, self.cal_ID)
def __init__(self, **kwargs): VerticalPanel.__init__(self, **kwargs) info = """<h2>JSON-RPC Example</h2> #<p>This example demonstrates the calling of server services with # <a href="http://json-rpc.org/">JSON-RPC</a>. #</p> #<p>Choose a service below, and press a the "call service" button to initiate it. An echo service simply sends the exact same text back that it receives. # </p>""" self.status = Label() self.dockey = TextBox(Text="12") self.TEXT_WAITING = "Waiting for response..." self.METHOD_ECHO = "Echo" self.METHOD_DOCTYPES = "get doc types" self.METHOD_UPPERCASE = "get schema" self.METHOD_GETINBOX = "get inbox" self.METHOD_GETDOCS = "get documents" self.methods = [ self.METHOD_ECHO, self.METHOD_DOCTYPES, self.METHOD_UPPERCASE, self.METHOD_GETINBOX, self.METHOD_GETDOCS ] self.method_list = ListBox() self.method_list.setName("hello") self.method_list.setVisibleItemCount(1) for method in self.methods: self.method_list.addItem(method) self.method_list.setSelectedIndex(0) method_panel = HorizontalPanel() method_panel.add(HTML("Remote string method to call: ")) method_panel.add(self.method_list) method_panel.setSpacing(8) self.button_action = Button("Call Service", self) buttons = HorizontalPanel() buttons.add(self.button_action) buttons.setSpacing(8) panel = VerticalPanel() panel.add(HTML(info)) panel.add(HTML("Primary key of the patient in the database:")) panel.add(self.dockey) panel.add(method_panel) panel.add(buttons) panel.add(self.status) self.add(panel)
def __init__(self, format='%d-%m-%Y'): DateSelectedHandler.__init__(self) if self.img_base is None: self.img_base = pygwt.getImageBaseURL(True) if self.icon_img is None: self.icon_img = self.img_base + 'icon_calendar.gif' self.format = format self.tbox = TextBox() self.tbox.setVisibleLength(10) # assume valid sep is - / . or nothing if format.find('-') >= 0: self.sep = '-' elif format.find('/') >= 0: self.sep = '/' elif format.find('.') >= 0: self.sep = '.' else: self.sep = '' # self.sep = format[2] # is this too presumptious? self.calendar = Calendar() self.img = Image(self.icon_img) self.img.addStyleName(self.icon_style) self.calendarLink = HyperlinkImage(self.img) self.todayLink = Hyperlink(self.today_text) self.todayLink.addStyleName(self.today_style) # # lay it out # hp = HorizontalPanel() hp.setSpacing(2) vp = VerticalPanel() hp.add(self.tbox) vp.add(self.calendarLink) vp.add(self.todayLink) #vp.add(self.calendar) hp.add(vp) Composite.__init__(self) self.initWidget(hp) # # done with layout, so now set up some listeners # self.tbox.addFocusListener(self) # hook to onLostFocus self.calendar.addSelectedDateListener(getattr(self, "onDateSelected")) self.todayLink.addClickListener(getattr(self, "onTodayClicked")) self.calendarLink.addClickListener(getattr(self, "onShowCalendar")) self.tbox.addChangeListener(getattr(self, "onFieldChanged")) self.tbox.addInputListener(getattr(self, "onFieldChanged")) self._last_date = None
def __init__(self): AbsolutePanel.__init__(self) self.app = CompaniesApp() self.history = [] self.save = Button("save", self) self.selectDepartment = Button("select", self) self.selectEmployee = Button("select", self) self.edit = Button("edit", self) self.cut = Button("cut", self) self.back = Button("back", self) self.name = TextBox() self.address = TextBox() self.manager = TextBox() self.departments = ListBox(Size=("100%"), VisibleItemCount="5") self.employees = ListBox(Size=("100%"), VisibleItemCount="5") self.total = TextBox() self.errors = VerticalPanel() self.grid = Grid() self.allPanels = VerticalPanel() self.allPanels.add(self.grid) self.allPanels.add(self.errors) self.add(self.allPanels) self.initCompanyGUI()
def setup(self, x): edit = self.uid == self.app.uid or self.app.admin if not x: x = {'id': -1, 'handle': '', 'name': '' , 'admin': '', 'email': ''} self.uid = x['id'] self.name = TextBox() self.name.setText(x['name']) self.email = TextBox() self.email.setText(x['email']) self.password = PasswordTextBox() self.passwordRepeat = PasswordTextBox() self.handle = TextBox() self.admin = CheckBox() self.admin.setChecked( x['admin'] ) self.admin.setEnabled( self.app.admin ) self.table.setText(0,0, "ID"); self.table.setText(0,1, x['id']) self.table.setText(1,0, "Handle") if x['id'] == -1: self.table.setWidget(1,1, self.handle) else: self.table.setText(1,1, x['handle']) self.table.setText(2,0, "Name"); if edit: self.table.setWidget(2,1, self.name) else: self.table.setText(2,1, x['name']) self.table.setText(3,0, "Email") if edit: self.table.setWidget(3,1, self.email) else: self.table.setText(3,1, x['email']) self.table.setText(4,0, "Admin"); self.table.setWidget(4,1, self.admin) if edit: self.table.setText(5,0, "Password"); self.table.setWidget(5,1, self.password) self.table.setText(6,0, "Password Repeat"); self.table.setWidget(6,1, self.passwordRepeat) self.saveBtn = Button("Save",self.save) self.table.setWidget(7,1, self.saveBtn) if self.app.admin: self.table.setWidget(8,1, Button("Remove", self.delete)) if self.uid == -1: self.add('New user') else: self.add(x['handle'])
def __init__(self): # We need to use old form of inheritance because of pyjamas SimplePanel.__init__(self) self.hpanel = HorizontalPanel(Width='755px') self.hpanel.setVerticalAlignment(HasAlignment.ALIGN_TOP) self.name = TextBox() self.name.setStyleName('form-control') self.start = Report_Date_Field(cal_ID='start') self.start.getTextBox().setStyleName('form-control') self.start.setRegex(DATE_MATCHER) self.start.appendValidListener(self._display_ok) self.start.appendInvalidListener(self._display_error) self.start.validate(None) self.end = Report_Date_Field(cal_ID='end') self.end.getTextBox().setStyleName('form-control') self.end.setRegex(DATE_MATCHER) self.end.appendValidListener(self._display_ok) self.end.appendInvalidListener(self._display_error) self.end.validate(None) self.status = ListBox() self.status.addItem('Active') self.status.addItem('Inactive') self.status.setVisibleItemCount(0) self.status.setStyleName('form-control input-lg') self.status.setSize('100px', '34px') spacer1 = Label(Width='10px') spacer2 = Label(Width='10px') spacer3 = Label(Width='10px') self.add_btn = Button('Add') self.add_btn.setStyleName('btn btn-primary') self.del_btn = Button('Delete') self.del_btn.setStyleName('btn btn-danger') self.hpanel.add(self.name) self.hpanel.add(spacer1) self.hpanel.add(self.status) self.hpanel.add(spacer2) self.hpanel.add(self.start) #self.hpanel.add(spacer3) self.hpanel.add(self.end) self.hpanel.add(self.add_btn) self.hpanel.add(Label(Width='10px')) self.hpanel.add(self.del_btn)
def __init__(self, **kwargs): ZillaWindow.__init__(self, kwargs) DialogBox.__init__(self, kwargs) self.dockPanel = DockPanel() self.dockPanel.setSpacing(4) self.setText("Logowanie") hpanel1 = HorizontalPanel() login = TextBox() login.setText("Login") #hpanel1.add(login) passwd = TextBox() passwd.setText("Hasło") self.dockPanel.add(login, DockPanel.NORTH) self.dockPanel.add(passwd, DockPanel.NORTH) #hpanel1.add(passwd) #self.add(hpanel1) self.add(login) self.add(passwd)
def onModuleLoad(self): self.r = WrapperDict() self.kbox = TextBox() self.addbutton = Button( "Click to look up key value (hello or goodbye)") self.addbutton.addClickListener(self) self.kbox.setText("hello") # default to make life easier RootPanel().add(HTML("Key:")) RootPanel().add(self.kbox) RootPanel().add(self.addbutton)
def __init__(self, **kwargs): if kwargs.get('input_type', 'text') == 'password': if not kwargs.has_key('Element'): kwargs['Element'] = DOM.createInputPassword() #if not kwargs.has_key('StyleName'): # kwargs['StyleName']="gwt-PasswordTextBox" if not kwargs.has_key('StyleName'): kwargs['StyleName']="textInput" TextBox.__init__(self, **kwargs) self.max_length = kwargs.get('max_length', None) self.min_length = kwargs.get('min_length', None) self.required = kwargs.get('required', None) if kwargs.get('initial'): self.setValue(kwargs['initial'])
def __init__(self, **kwargs): GMWevents.events.addPatientSelectedListener(self) HorizontalPanel.__init__(self, **kwargs) self.patientphoto = Image("images/empty-face-in-bust.png") self.searchbox = TextBox(Text="<search patient here>") self.search_button = Button("Search", self) self.lblcave = Label() self.lblcave.setText("cave") self.allergybox = TextBox(Text="allergies") self.add(self.patientphoto) self.add(self.searchbox) self.add(self.search_button) self.add(self.lblcave) self.add(self.allergybox)
def __init__(self,parent): AbsolutePanel.__init__(self) ftable = FlexTable() ftable.setWidget(0, 0, Label("First Name", wordWrap=False)) ftableFormatter = ftable.getFlexCellFormatter() self.firstInput = TextBox() self.firstInput.addChangeListener(self.checkValid) self.firstInput.addKeyboardListener(self) ftable.setWidget(0, 1, self.firstInput) ftable.setWidget(1, 0, Label("Last Name", wordWrap=False)) self.lastInput = TextBox() self.lastInput.addChangeListener(self.checkValid) self.lastInput.addKeyboardListener(self) ftable.setWidget(1, 1, self.lastInput) ftable.setWidget(2, 0, Label("Email", wordWrap=False)) self.emailInput = TextBox() self.emailInput.addChangeListener(self.checkValid) self.emailInput.addKeyboardListener(self) ftable.setWidget(2, 1, self.emailInput) ftable.setWidget(3, 0, Label("Username", wordWrap=False)) self.usernameInput = TextBox() self.usernameInput.addChangeListener(self.checkValid) self.usernameInput.addKeyboardListener(self) ftable.setWidget(3, 1, self.usernameInput) ftable.setWidget(4, 0, Label("Password", wordWrap=False)) self.passwordInput = PasswordTextBox() self.passwordInput.addChangeListener(self.checkValid) self.passwordInput.addKeyboardListener(self) ftable.setWidget(4, 1, self.passwordInput) ftable.setWidget(5, 0, Label("Confirm", wordWrap=False)) self.confirmInput = PasswordTextBox() self.confirmInput.addChangeListener(self.checkValid) self.confirmInput.addKeyboardListener(self) ftable.setWidget(5, 1, self.confirmInput) ftable.setWidget(6, 0, Label("Department", wordWrap=False)) self.departmentCombo = ListBox() self.departmentCombo.addChangeListener(self.checkValid) self.departmentCombo.addKeyboardListener(self) ftable.setWidget(6, 1, self.departmentCombo) hpanel = HorizontalPanel() self.addBtn = Button("Add User") self.addBtn.setEnabled(False) hpanel.add(self.addBtn) self.cancelBtn = Button("Cancel") hpanel.add(self.cancelBtn) ftable.setWidget(7, 0, hpanel) ftableFormatter.setColSpan(7, 0, 2) self.add(ftable) return
def __init__(self, theorem, **kwargs): DialogWindow.__init__(self, modal=True, close=True) self.theorem=theorem v = VerticalPanel() v.setWidth(300) # v.setHeight(500) self.setText("save") self.setPopupPosition(100, 100) self.setStyleAttribute("background-color", "#ffffff") self.setStyleAttribute("color", "red") self.setStyleAttribute("border-width", "5px") self.setStyleAttribute("border-style", "solid") self.im=Image() self.im.setUrl(latex_to_url(self.theorem.formula.to_latex())) v.add(self.im) h=HorizontalPanel() self.radio=RadioButton("group1", "Existing folder:") h.add(self.radio) self.list = ListBox() self.list.setVisibleItemCount(1) for f in Theorem.get_all_folders(): self.list.addItem(f) h.add(self.list) v.add(h) h=HorizontalPanel() h.add(RadioButton("group1", "New folder:")) self.radio.setChecked(True) self.textbox=TextBox() h.add(self.textbox) v.add(h) v.add(Button("Done",self.done_click)) self.add(v)
def __init__(self, left = 50, top = 50): DialogBox.__init__(self, modal = False) self.setPopupPosition(left, top) self.setText("Preferences") ftable = FlexTable() ftableFormatter = ftable.getFlexCellFormatter() row = 0 try: self.fileLocation = getCookie("fileLocation") except: self.fileLocation = None row += 1 ftable.setWidget(row, 0, Label("Sheet loaded on startup", wordWrap=False)) self.fileLocationInput = TextBox() self.fileLocationInput.addChangeListener(self.checkValid) self.fileLocationInput.addKeyboardListener(self) self.fileLocationInput.setVisibleLength(30) self.fileLocationInput.setText(self.fileLocation) ftable.setWidget(row, 1, self.fileLocationInput) row += 1 hpanel = HorizontalPanel() self.saveBtn = Button("Save", self.onSave) self.saveBtn.setEnabled(False) hpanel.add(self.saveBtn) self.cancelBtn = Button("Cancel", self.onCancel) hpanel.add(self.cancelBtn) ftable.setWidget(row, 0, hpanel) ftableFormatter.setColSpan(row, 0, 2) self.setWidget(ftable)
def __init__(self, app): DialogBox.__init__(self) self.app = app self.table=FlexTable() self.table.setText(0, 0, "Please enter username and password") self.table.getFlexCellFormatter().setColSpan(0, 0, 2) self.table.setText(1, 0, "Username") self.handle = TextBox() h = getCookie('handle') self.handle.setText(h) self.table.setWidget(1, 1, self.handle) self.table.setText(2, 0, "Password") self.pwd = PasswordTextBox() self.table.setWidget(2, 1, self.pwd) self.table.setHTML(3,0,"") self.table.getFlexCellFormatter().setColSpan(3, 0, 2) h = HorizontalPanel() self.table.setWidget(4,0, h) self.table.getFlexCellFormatter().setColSpan(4, 0, 2) h.add(Button("Ok", getattr(self, "onOk"))) h.add(Button("Cancel", getattr(self, "onClose"))) h.setSpacing(4) self.setHTML("<b>Login</b>") self.setWidget(self.table) left = (Window.getClientWidth() - 200) / 2 top = (Window.getClientHeight() - 100) / 2 self.setPopupPosition(left,top)
def __init__(self): Sink.__init__(self) self.fPasswordText = PasswordTextBox() self.fTextArea = TextArea() self.fTextBox = TextBox() panel = VerticalPanel() panel.setSpacing(8) panel.add(HTML("Normal text box:")) panel.add(self.createTextThing(self.fTextBox)) panel.add(HTML("Password text box:")) panel.add(self.createTextThing(self.fPasswordText)) panel.add(HTML("Text area:")) panel.add(self.createTextThing(self.fTextArea)) panel.add( HTML("""Textarea below demos oninput event. oninput allows to detect when the content of an element has changed. This is different from examples above, where changes are detected only if they are made with keyboard. oninput occurs when the content is changed through any user interface(keyboard, mouse, etc.). For example, at first type few chars, but then paste some text to the text areas above and below by selecting 'Paste' command from context menu or by dragging&dropping and see the difference. oninput is similar to onchange event, but onchange event fires only when a text-entry widget loses focus.""")) vp = VerticalPanel() self.echo = HTML() textArea = TextArea() vp.add(textArea) vp.add(self.echo) textArea.addInputListener(self) panel.add(vp) self.initWidget(panel)
def __init__(self): DockPanel.__init__(self) self.setSize('100%', '100%') self.geocoder = Geocoder() # widgets topPanel = HorizontalPanel() self.add(topPanel, DockPanel.NORTH) self.address = TextBox() self.address.setText("Sydney, NSW") self.address.addChangeListener(self.codeAddress) topPanel.add(self.address) button = Button("Geocode") button.addClickListener(self.codeAddress) topPanel.add(button) # now, the map mapPanel = SimplePanel() mapPanel.setSize('600', '400') self.add(mapPanel, DockPanel.CENTER) options = MapOptions(zoom=8, center=LatLng(-34.397, 150.644), mapTypeId=MapTypeId.ROADMAP) self.map = Map(mapPanel.getElement(), options)
def onModuleLoad(self): self.TEXT_WAITING = "Waiting for response..." self.TEXT_ERROR = "Server Error" self.remote = JSONProxy("../api", ["hello"]) self.status = Label() self.text_box = TextBox() self.button_send = Button("Send", self) buttons = HorizontalPanel() buttons.add(self.button_send) buttons.setSpacing(8) info = """<h2>JSON-RPC Example</h2> <p>This example demonstrates the calling of server services with <a href="http://json-rpc.org/">JSON-RPC</a>. </p> <p>Enter your name below.</p>""" panel = VerticalPanel() panel.add(HTML(info)) panel.add(self.text_box) #panel.add(method_panel) panel.add(buttons) panel.add(self.status) RootPanel().add(panel)
def __init__(self, editor): PopupPanel.__init__(self, glass=True) self.m_origAnchorStart = None self.m_origAnchorEnd = None self.m_origTargetText = "" self.m_editor = editor vpanel = VerticalPanel() vpanel.setWidth("350px") self.m_webPageText = TextBox() self.m_webPageText.setText("http:#") self.m_webPageText.setWidth("320px") vpanel.add(self.m_webPageText) lbl = Label("Display:") self.m_targetText = TextBox() self.m_targetText.setWidth("100%") lpanel = HorizontalPanel() lpanel.add(lbl) lpanel.add(self.m_targetText) vpanel.add(lpanel) self.m_fillOutCB = CheckBox("Change entire link") self.m_fillOutCB.setVisible(False) self.m_fillOutCB.addClickListener(self) vpanel.add(self.m_fillOutCB) self.m_okBut = Button("Ok", self) self.m_okBut.addStyleName("float-left") self.m_cancelBut = Button("Cancel", self) self.m_cancelBut.addStyleName("float-left") hpanel = HorizontalPanel() hpanel.add(self.m_okBut) hpanel.add(self.m_cancelBut) vpanel.add(hpanel) self.add(vpanel) self.setStyleName("gwt-DialogBox")
def __init__(self, editor): PopupPanel.__init__(self, glass=True) self.m_origAnchorStart = None self.m_origAnchorEnd = None self.m_origTargetText = "" self.m_editor = editor vpanel = VerticalPanel() vpanel.setWidth("350px") self.m_webPageText = TextBox() self.m_webPageText.setText("http:#") self.m_webPageText.setWidth("320px") vpanel.add(self.m_webPageText) lbl = Label("Display:") self.m_targetText = TextBox() self.m_targetText.setWidth("100%") lpanel = HorizontalPanel() lpanel.add(lbl) lpanel.add(self.m_targetText) vpanel.add(lpanel) self.m_fillOutCB = CheckBox("Change entire link") self.m_fillOutCB.setVisible(False) self.m_fillOutCB.addClickListener(self) vpanel.add(self.m_fillOutCB) self.m_okBut = Button("Ok", self) self.m_okBut.addStyleName("float-left") self.m_cancelBut = Button("Cancel", self) self.m_cancelBut.addStyleName("float-left") hpanel = HorizontalPanel() hpanel.add(self.m_okBut) hpanel.add(self.m_cancelBut) vpanel.add(hpanel) self.add(vpanel) self.setStyleName("gwt-DialogBox")
class Search: def onModuleLoad(self): Window.alert('Loadingg') # Setup JSON RPC self.remote = DataService() parser = JSONParser() #initialize member variables self.mainPanel = VerticalPanel() self.searchPanel = HorizontalPanel() self.resultsPanel = VerticalPanel() self.deptLabel = Label('Department') self.deptBox = TextBox() self.courseNoLabel = Label ('Course Number') self.courseNoBox = TextBox() self.searchButton = Button('Search', self.searchCourses) self.searchPanel = VerticalPanel() # Assemble search panel self.searchPanel.add(self.deptLabel) self.searchPanel.add(self.deptBox) self.searchPanel.add(self.courseNoLabel) self.searchPanel.add(self.courseNoBox) self.searchPanel.add(self.searchButton) # Assemble results panel self.resultsLabel = Label('Results here') self.resultsPanel.add(self.resultsLabel) # Assemble main panel self.mainPanel.add(self.searchPanel) self.mainPanel.add(self.resultsPanel) # Associate mainPanel with the HTML host page RootPanel().add(self.mainPanel) # Move cursor focus to input box self.deptBox.setFocus(True) #Search courses def searchCourses(self): Window.alert('Searching')
def __init__(self, url): self.choicesPopup = PopupPanel(True) self.choices = ListBox() self.items = AutoCompleteURL(url) self.popupAdded = False self.visible = False TextBox.__init__(self) self.addKeyboardListener(self) self.choices.addChangeListener(self) self.setStyleName("AutoCompleteTextBox") self.choicesPopup.add(self.choices) self.choicesPopup.addStyleName("AutoCompleteChoices") self.choices.setStyleName("list") self.url = url
def init(self, parent): """ Finishes initializing the editor by creating the underlying toolkit widget. """ self.control = TextBox() self.control.setText(self.str_value) self.control.addChangeListener(getattr(self, "update_object")) self.set_tooltip()