示例#1
0
文件: main.py 项目: antialize/djudge
    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)
示例#2
0
    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)
示例#3
0
    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)
示例#4
0
 def __init__(self, viewComponent):
     super(MenuMediator, self).__init__(MenuMediator.NAME, viewComponent)
     self.viewComponent.mediator = self
     self.timeProxy = self.facade.retrieveProxy(TimeProxy.NAME)
     self.fileLocation = getCookie("fileLocation")
     if not self.fileLocation:
         self.fileLocation = "timesheet.txt"
     self.onFileOpen(self.fileLocation)
示例#5
0
 def actCircuitTikzSubmit(self, **kwargs):
     id = kwargs.get('id')
     app = 'Circuit'
     sessionId = getCookie('session_id')
     image = 'api/image?app=Diagram&tab=Circuit&Id=%d&Cache=%d'%(id, self._cacheBreaker)
     self.layout.remove(self.display)
     self.display = Image(image)
     self.layout.insert(self.display, 1)
     self._cacheBreaker = self._cacheBreaker + 1
示例#6
0
 def actCircuitTikzSubmit(self, **kwargs):
     id = kwargs.get("id")
     app = "Circuit"
     sessionId = getCookie("session_id")
     image = "api/image?app=Diagram&tab=Circuit&Id=%d&Cache=%d" % (id, self._cacheBreaker)
     self.layout.remove(self.display)
     self.display = Image(image)
     self.layout.insert(self.display, 1)
     self._cacheBreaker = self._cacheBreaker + 1
示例#7
0
文件: main.py 项目: antialize/djudge
 def __init__(self):
     global app
     app = self
     self.vpanel = VerticalPanel()
     self.vpanel.setWidth("100%")
     self.tabs = MyTabPanel()
     RootPanel().add(self.vpanel)
     self.tabs.setWidth("100%")
     self.cookie = getCookie('cookie')
     ld = LoginDialgoBox(self)
     ld.login()
示例#8
0
 def __init__(self, viewComponent):
     Mediator.__init__(self, MenuMediator.NAME, viewComponent)
     viewComponent.mFileOpen.setHandler(self.onFileOpen)
     viewComponent.mFileSaveAs.setHandler(self.onFileSaveAs)
     viewComponent.mFilePreferences.setHandler(self.onFilePreferences)
     viewComponent.mViewEdit.setHandler(self.onViewEdit)
     viewComponent.mViewSummary.setHandler(self.onViewSummary)
     viewComponent.mHelpContents.setHandler(self.onHelpContents)
     viewComponent.mHelpAbout.setHandler(self.onHelpAbout)
     self.timeProxy = self.facade.retrieveProxy(TimeProxy.NAME)
     try:
         fileLocation = getCookie("fileLocation")
     except:
         fileLocation = None
     self.fileLocation = self.checkFileLocation(fileLocation)
     self.onFileOpen(self.fileLocation)
示例#9
0
 def __init__(self, viewComponent):
     Mediator.__init__(self, MenuMediator.NAME, viewComponent)
     viewComponent.mFileOpen.setHandler(self.onFileOpen)
     viewComponent.mFileSaveAs.setHandler(self.onFileSaveAs)
     viewComponent.mFilePreferences.setHandler(self.onFilePreferences)
     viewComponent.mViewEdit.setHandler(self.onViewEdit)
     viewComponent.mViewSummary.setHandler(self.onViewSummary)
     viewComponent.mHelpContents.setHandler(self.onHelpContents)
     viewComponent.mHelpAbout.setHandler(self.onHelpAbout)
     self.timeProxy = self.facade.retrieveProxy(TimeProxy.NAME)
     try:
         fileLocation = getCookie("fileLocation")
     except:
         fileLocation = None
     self.fileLocation = self.checkFileLocation(fileLocation)
     self.onFileOpen(self.fileLocation)
示例#10
0
 def onClick(self, sender):
     """
     Run when any button is clicked
     """
     if sender.getText() == "Set Cookie":
         # clicked the set cookie button
         text = self.text_area.getText()
         # print goes to console.log
         print "setting cookie to:", text
         # Note: this sets the cookie on the top level
         setCookie(COOKIE_NAME, text, 10000, path="/")
     else:
         cookie_text = getCookie(COOKIE_NAME)
         if cookie_text is None:
             print "No Cookie"
         else:
             print "myCookie", cookie_text
             self.status.setText(cookie_text)
示例#11
0
 def onClick(self, sender):
     """
     Run when any button is clicked
     """
     if sender.getText() == "Set Cookie":
         #clicked the set cookie button
         text = self.text_area.getText()
         #print goes to console.log
         print "setting cookie to:", text
         #Note: this sets the cookie on the top level
         setCookie(COOKIE_NAME, text, 10000, path='/')
     else:
         cookie_text = getCookie(COOKIE_NAME)
         if cookie_text is None:
             print "No Cookie"
         else:
             print "myCookie", cookie_text
             self.status.setText(cookie_text)
示例#12
0
    def onModuleLoad(self):
        loggedInUser = getCookie("LoggedInUser")
        loggedInUserJsonData = json.loads(loggedInUser)

        self.username = loggedInUserJsonData["username"]

        self.remote_py = MyBlogService()

        dockPanel = DockPanel(BorderWidth=0,
                              Padding=0,
                              HorizontalAlignment=HasAlignment.ALIGN_CENTER,
                              VerticalAlignment=HasAlignment.ALIGN_MIDDLE)

        dockPanel.setSize('100%', '100%')

        headerDockPanel = DockPanel(
            BorderWidth=0,
            Padding=0,
            HorizontalAlignment=HasAlignment.ALIGN_LEFT,
            VerticalAlignment=HasAlignment.ALIGN_CENTER)
        headerDockPanel.setStyleName('header')
        headerDockPanel.setWidth('100%')

        dockPanel.add(headerDockPanel, DockPanel.NORTH)
        dockPanel.setCellHeight(headerDockPanel, '60px')

        self.siteImage = Image("/images/Testware_logo.png")
        self.siteImage.setStyleName('logo-image')
        headerDockPanel.add(self.siteImage, DockPanel.WEST)
        headerDockPanel.setCellWidth(self.siteImage, '30%')

        self.pageTitle = Label('New Blog')
        self.pageTitle.setStyleName('center-header')
        headerDockPanel.add(self.pageTitle, DockPanel.CENTER)
        headerDockPanel.setCellWidth(self.pageTitle, '40%')

        rightHeaderPanel = VerticalPanel(StyleName='right-header')
        headerDockPanel.add(rightHeaderPanel, DockPanel.EAST)
        headerDockPanel.setCellWidth(rightHeaderPanel, '30%')

        welcomeNoteLabel = Label('Hi %s %s!' %
                                 (loggedInUserJsonData["first_name"],
                                  loggedInUserJsonData["last_name"]))
        rightHeaderPanel.add(welcomeNoteLabel)

        logoutAnchor = Anchor(Widget=HTML('Logout'), Href='/', Title='Logout')
        logoutAnchor.setStyleName('logout')
        rightHeaderPanel.add(logoutAnchor)

        panel = HorizontalPanel(StyleName="header2")
        dockPanel.add(panel, DockPanel.NORTH)
        dockPanel.setCellHeight(panel, '50px')

        self.blogTitle = TextBox()
        self.blogTitle.setStyleName('blog-title')
        self.blogTitle.setPlaceholder("Blog Title")
        panel.add(self.blogTitle)

        self.blogContent = TextArea()
        self.blogContent.setStyleName('blog-content')

        dockPanel.add(self.blogContent, DockPanel.CENTER)
        createBlogButton = Button("Create Blog", self)
        createBlogButton.setStyleName('btn')
        panel.add(createBlogButton)

        RootPanel().add(dockPanel)
示例#13
0
 def __init__(self):
     JSONProxy.__init__(self, 'services/', DataService.methods, {'X-CSRFToken': getCookie('csrftoken')})
示例#14
0
文件: home.py 项目: sivapy/MyBlog
    def onModuleLoad(self):

        loggedInUser = getCookie("LoggedInUser")
        self.loggedInUserJsonData = json.loads(loggedInUser)

        self.remote_py = MyBlogService()

        dockPanel = DockPanel(BorderWidth=0,
                              Padding=0,
                              HorizontalAlignment=HasAlignment.ALIGN_LEFT,
                              VerticalAlignment=HasAlignment.ALIGN_TOP)

        dockPanel.setSize('100%', '100%')

        headerDockPanel = DockPanel(
            BorderWidth=0,
            Padding=0,
            HorizontalAlignment=HasAlignment.ALIGN_LEFT,
            VerticalAlignment=HasAlignment.ALIGN_CENTER)
        headerDockPanel.setStyleName('header')
        headerDockPanel.setWidth('100%')

        dockPanel.add(headerDockPanel, DockPanel.NORTH)
        dockPanel.setCellHeight(headerDockPanel, '60px')

        self.siteImage = Image("/images/Testware_logo.png")
        self.siteImage.setStyleName('logo-image')
        headerDockPanel.add(self.siteImage, DockPanel.WEST)
        headerDockPanel.setCellWidth(self.siteImage, '30%')

        self.pageTitle = Label('All Blogs')
        self.pageTitle.setStyleName('center-header')
        headerDockPanel.add(self.pageTitle, DockPanel.CENTER)
        headerDockPanel.setCellWidth(self.pageTitle, '40%')

        rightHeaderPanel = VerticalPanel(StyleName='right-header')
        headerDockPanel.add(rightHeaderPanel, DockPanel.EAST)
        headerDockPanel.setCellWidth(rightHeaderPanel, '30%')

        welcomeNoteLabel = Label('Hi %s %s!' %
                                 (self.loggedInUserJsonData["first_name"],
                                  self.loggedInUserJsonData["last_name"]))
        rightHeaderPanel.add(welcomeNoteLabel)

        logoutAnchor = Anchor(Widget=HTML('Logout'), Href='/', Title='Logout')
        logoutAnchor.setStyleName('logout')
        rightHeaderPanel.add(logoutAnchor)

        newBlogAnchor = Anchor(Widget=HTML('Create New Blog'),
                               Href='/newblog.html',
                               Title='NewBlog')
        newBlogAnchor.setStyleName('logout')
        rightHeaderPanel.add(newBlogAnchor)

        tree = Tree()
        tree.addTreeListener(self)
        tree.setStyleName('side-menu')
        dockPanel.add(tree, DockPanel.WEST)
        dockPanel.setCellWidth(tree, '60px')

        s1 = self.createItem("Blogs")
        allItem = self.createItem("All", value=0)
        self.selectedItem = allItem
        s1.addItem(allItem)
        s1.addItem(self.createItem("Published", value=1))
        s1.addItem(self.createItem("Unpublished", value=2))

        s2 = self.createItem("Other's Blog")

        s1.setState(True, fireEvents=False)

        tree.addItem(s1)
        tree.addItem(s2)

        self.absolultutePanel = AbsolutePanel(StyleName='detail-style')
        dockPanel.add(self.absolultutePanel, DockPanel.CENTER)

        self.blogs = []
        self.g = Grid()

        RootPanel().add(dockPanel)

        self.remote_py.callMethod('getBlogs',
                                  [self.loggedInUserJsonData["username"]],
                                  self)