def createGui( self ): jp = swing.JPanel( java.awt.BorderLayout() ) self.jtp = jtp = swing.JEditorPane( "text/html", "" , editable = 0 ) self.jsp = jsp = swing.JScrollPane( jtp ) jb = self.jsp.getBorder() self.tb = tb = swing.border.TitledBorder( jb ) self.tb2 = tb2 = swing.border.TitledBorder( tb, "", tb.CENTER, tb.BOTTOM ) self.jsp.setBorder( self.tb2 ) jp.add( jsp ) jp2 = swing.JPanel() self.label = swing.JLabel() self._question = question = swing.JButton( "Question" ) question.actionPerformed = self.question self._answer = answer = swing.JButton( "Answer" ) answer.actionPerformed = self.answer self._back = back = swing.JButton( "Back" ) back.actionPerformed = self.back self._next = next = swing.JButton( "Next" ) next.actionPerformed = self.next for z in ( question, answer, back, next ): jp2.add( z ) jp.add( jp2, java.awt.BorderLayout.SOUTH ) return jp
def registerExtenderCallbacks(self, callbacks): self._callbacks = callbacks self._helpers = callbacks.getHelpers() self.context = None callbacks.setExtensionName("quoted-printable Parser") self._jPanel = swing.JPanel() self._jPanel.setLayout( swing.BoxLayout(self._jPanel, swing.BoxLayout.Y_AXIS)) self._jTextIn = swing.JTextArea("Input", 20, 10) self._jTextIn.setLineWrap(True) self._jScrollPaneIn = swing.JScrollPane(self._jTextIn) self._jScrollPaneIn.setVerticalScrollBarPolicy( swing.JScrollPane.VERTICAL_SCROLLBAR_ALWAYS) self._jScrollPaneIn.setPreferredSize(awt.Dimension(20, 10)) self._jTextOut = swing.JTextArea("Output", 20, 10) self._jTextOut.setLineWrap(True) self._jScrollPaneOut = swing.JScrollPane(self._jTextOut) self._jScrollPaneOut.setVerticalScrollBarPolicy( swing.JScrollPane.VERTICAL_SCROLLBAR_ALWAYS) self._jScrollPaneOut.setPreferredSize(awt.Dimension(20, 10)) self._jButtonPanel = swing.JPanel() self._jButtonDecode = swing.JButton('Decode', actionPerformed=self.decode) self._jButtonPanel.add(self._jButtonDecode) self._jPanel.add(self._jScrollPaneIn) self._jPanel.add(self._jButtonPanel) self._jPanel.add(self._jScrollPaneOut) callbacks.customizeUiComponent(self._jPanel) callbacks.addSuiteTab(self) return
def __init__(self): self.myFrame = swing.JFrame.__init__(self, 'Fragments') self.mydlg = EditFragment(self) self.mySession = ActiveSession(_session) self.myListModel = swing.DefaultListModel() self.myList = swing.JList(self.myListModel) myMidPanel = swing.JScrollPane(self.myList) myTopPanel = swing.JPanel() self.myEntry = swing.JTextField(40) myTopPanel.add(self.myEntry) myTopPanel.add(swing.JButton('Add', actionPerformed=self.AddValue)) myTopPanel.add(swing.JButton('Trim', actionPerformed=self.TrimValue)) myTopPanel.add( swing.JButton('[Enter]', actionPerformed=self.EnterValue)) myPanel = swing.JPanel() myPanel.add(swing.JButton('Edit', actionPerformed=self.EditValue)) myPanel.add(swing.JButton('Remove', actionPerformed=self.RemoveValue)) myPanel.add(swing.JButton('Use', actionPerformed=self.UseValue)) myPanel.add( swing.JButton('Refresh', actionPerformed=self.RefreshSessions)) myPanel.add(swing.JButton('Save', actionPerformed=self.SaveValue)) myPanel.add(swing.JButton('Restore', actionPerformed=self.RstValue)) self.contentPane.add(myTopPanel, awt.BorderLayout.NORTH) self.contentPane.add(myMidPanel, awt.BorderLayout.CENTER) self.contentPane.add(myPanel, awt.BorderLayout.SOUTH) self.pack()
def create_ui(self): cpanel = CreatePanle(self._burpColor) self.content_ui = swing.JPanel() content_panel = swing.JPanel() content_panel.setLayout(BorderLayout()) text = swing.JLabel(self.option['text']) if self.option['type'] == 'file_chooser': #fileSelecter button = cpanel.create_button(self.option['funcopt']['FNfilter'], self.option, content_panel) button.setPreferredSize(Dimension(40, 40)) elif self.option['type'] == 'param_list': ui = cpanel.create_table_panel(self.option) content_panel.add(ui) elif self.option['type'] == 'file_loader': button = cpanel.create_button(self.option['funcopt']['FNfilter'], self.option, content_panel) button.setPreferredSize(Dimension(40, 40)) text.setFont(Font("Arial", Font.PLAIN, 12)) content_panel.add(text, BorderLayout.PAGE_START) self.content_ui.setLayout(BorderLayout()) self.content_ui.add(content_panel) if self.option['type'] == 'file_chooser' or self.option[ 'type'] == 'file_loader': self.content_ui.add(button, BorderLayout.SOUTH)
def __init__(self, parent): self.parent = parent Panel = swing.JPanel() Panel.layout = awt.BorderLayout() Panel.border = swing.BorderFactory.createTitledBorder( "Payload Encoder") self.text = swing.JTextField(actionPerformed=self.encodePayload) Panel.add(self.text, Panel.layout.PAGE_START) self.textArea = swing.JTextArea() scrollPane = swing.JScrollPane(self.textArea) Panel.add(scrollPane, Panel.layout.CENTER) Panel1 = swing.JPanel() Panel1.layout = awt.BorderLayout() Panel1.border = swing.BorderFactory.createTitledBorder( "Payload Parser") self.text1 = swing.JTextField(actionPerformed=self.parsePayload) Panel1.add(self.text1, Panel1.layout.PAGE_START) self.textArea1 = swing.JTextArea() scrollPane1 = swing.JScrollPane(self.textArea1) Panel1.add(scrollPane1, Panel1.layout.CENTER) self.splitPane = swing.JSplitPane(swing.JSplitPane.VERTICAL_SPLIT) self.splitPane.setDividerLocation(250) self.splitPane.setLeftComponent(Panel) self.splitPane.setRightComponent(Panel1) self.parent.addTabPanel("Options", self.splitPane)
def __getSVNConnection( self ) : panel = swing.JPanel( java.awt.BorderLayout()) connector = SVNConnector() cpanel = swing.JPanel( java.awt.BorderLayout()) cpanel.add( connector) mlabel = swing.JLabel( "Status:") cpanel.add( mlabel, java.awt.BorderLayout.SOUTH) panel.add( cpanel) #jtf = swing.JTextField( 15 ) #border = jtf.getBorder() #tborder = swing.border.TitledBorder( border) #tborder.setTitle( "SVN Repository Location") #jtf.setBorder( tborder) #panel.add( jtf ) def checkRepository( event ): #location = jtf.getText() if not connector.canConnect(): mlabel.setText( "Can't Reach %s" % connector.getUrl()) return location = connector.getUrl() self.repository = getRepository( location) if self.repository: self.svn = location self.next() jb = swing.JButton( "Connect to Repository") jb.actionPerformed = checkRepository buttonpanel = swing.JPanel() buttonpanel.add( jb ) panel.add( buttonpanel, java.awt.BorderLayout.SOUTH) return panel
def __getRepositoryView( self ): panel = swing.JPanel( java.awt.BorderLayout()) # jtree = swing.JTree() #rmodel = RepositoryModel( self.repository , self.revision) #jtree.setModel( rmodel ) #jsp = swing.JScrollPane( jtree) #panel.add( jsp ) browser = SVNBrowser( self.repository) panel.add( browser ) def setTarget( event ): sp = browser.jtree.getSelectionPath() if sp != None: path = sp.getPath() nwpath = [] for z in path: nwpath.append( z.toString()) self.svn = '/'.join( nwpath) self.revision = browser.getRevision() self.next() jb = swing.JButton( "Select Node To Check Out") jb.actionPerformed = setTarget buttonpanel = swing.JPanel() buttonpanel.add( jb) panel.add( buttonpanel, java.awt.BorderLayout.SOUTH) return panel
def create_labeled_frame(self, parent, caption=None, relief="groove", bd=2, padx=0, pady=0): """Create a labeled frame.""" w = swing.JPanel() parent.add(w) if caption: border = w.getBorder() tborder = sborder.TitledBorder(border) tborder.setTitle(caption) w.setBorder(tborder) sl = swing.SpringLayout() w.setLayout(sl) f = swing.JPanel() w.add(f) sl.putConstraint(sl.NORTH, f, 5, sl.NORTH, w) sl.putConstraint(sl.WEST, f, 5, sl.WEST, w) sl.putConstraint(sl.SOUTH, w, 5, sl.SOUTH, f) sl.putConstraint(sl.EAST, w, 5, sl.EAST, f) return w, f
def getParams(self): # GUI to get future % of subbasin redeveloped, curve number, and release rate # Initialize window for UI frame = swing.JFrame("Set conditions of redeveloped portion of subbasin", layout=awt.BorderLayout()) frame.setDefaultCloseOperation(swing.JFrame.EXIT_ON_CLOSE) # Create panel that includes three text entry fields for % redeveloped, curve number, and release rate futureparams = swing.JPanel(layout=awt.GridLayout(3,2)) inbutton = swing.JPanel() futureparams.add(swing.JLabel('Percent Redevelopment ')) rd = swing.JTextField('', 5) futureparams.add(rd) futureparams.add(swing.JLabel('Future Curve Number ')) cn = swing.JTextField('', 5) futureparams.add(cn) futureparams.add(swing.JLabel('Release Rate ')) rr = swing.JTextField('', 5) futureparams.add(rr) # Create panel for button that stores the values entered setButton = swing.JButton('Set parameters', actionPerformed=(lambda x: self.setParams(rd, cn, rr, frame))) self.setParams(rd, cn, rr, frame) # Add panels to the window and make the window visible frame.add(futureparams, awt.BorderLayout.NORTH) inbutton.add(setButton) frame.add(inbutton, awt.BorderLayout.SOUTH) # setButton.addMouseListener(awt.event.MouseListener.mouseClicked(self, self.setParams(rd, cn, rr, frame))) frame.pack()
def __init__(self): self.frame=swing.JFrame(title="My Frame", size=(300,300)) self.frame.defaultCloseOperation=swing.JFrame.EXIT_ON_CLOSE; self.frame.layout=awt.BorderLayout() self.panel1=swing.JPanel(awt.BorderLayout()) self.panel2=swing.JPanel(awt.GridLayout(4,1)) self.panel2.preferredSize = awt.Dimension(10,100) self.panel3=swing.JPanel(awt.BorderLayout()) self.title=swing.JLabel("Text Rendering") self.button1=swing.JButton("Print Text", actionPerformed=self.printMessage) self.button2=swing.JButton("Clear Text", actionPerformed=self.clearMessage) self.textField=swing.JTextField(30) self.outputText=swing.JTextArea(4,15) self.panel1.add(self.title) self.panel2.add(self.textField) self.panel2.add(self.button1) self.panel2.add(self.button2) self.panel3.add(self.outputText) self.frame.contentPane.add(self.panel1, awt.BorderLayout.PAGE_START) self.frame.contentPane.add(self.panel2, awt.BorderLayout.CENTER) self.frame.contentPane.add(self.panel3, awt.BorderLayout.PAGE_END)
def __init__( self, c ): self.c = c self.browser = browser.WebBrowser() self.base = swing.JPanel( java.awt.BorderLayout() ) self.base.add( self.browser ) bf = swing.JToolBar() path = g.os_path_join( g.app.loadDir,"..","Icons/webbrowser", "left.png" ) ii = swing.ImageIcon( path ) self.bbutton = back = swing.JButton( ii ) back.setText( "Back" ) back.setHorizontalTextPosition( swing.SwingConstants.CENTER ) back.setVerticalTextPosition( swing.SwingConstants.BOTTOM ) back.actionPerformed = lambda event : self.back() bf.add( back ) path = g.os_path_join( g.app.loadDir,"..","Icons/webbrowser", "right.png" ) ii = swing.ImageIcon( path ) self.fbutton = forward = swing.JButton( ii ) forward.setText( "Forward" ) forward.setHorizontalTextPosition( swing.SwingConstants.CENTER ) forward.setVerticalTextPosition( swing.SwingConstants.BOTTOM ) forward.actionPerformed = lambda event: self.forward() bf.add( forward ) path = g.os_path_join( g.app.loadDir,"..","Icons/webbrowser", "reload.png" ) ii = swing.ImageIcon( path ) refresh = swing.JButton( ii ) refresh.setText( "Reload" ) refresh.setHorizontalTextPosition( swing.SwingConstants.CENTER ) refresh.setVerticalTextPosition( swing.SwingConstants.BOTTOM ) refresh.actionPerformed = lambda event: self.browser.refresh() bf.add( refresh ) self.base.add( bf, java.awt.BorderLayout.NORTH ) jp2 = swing.JPanel( java.awt.BorderLayout()) self.jtf = swing.JTextField() CutCopyPaste( self.jtf ) jp2.add( self.jtf ) path = g.os_path_join( g.app.loadDir,"..","Icons", "do-it.gif" ) ii = swing.ImageIcon( path ) self.jb = swing.JButton( ii ) self.jb.actionPerformed = self.go jp2.add( self.jb, java.awt.BorderLayout.EAST ) jp3 = swing.JPanel( java.awt.GridLayout( 2, 1 ) ) jp3.add( jp2 ) jp4 = swing.JPanel() headline = swing.JButton( "Goto Headline" ) headline.actionPerformed = self.goToHeadline jp4.add( headline ) store = swing.JButton( "Store Page In Node" ) store.actionPerformed = self.storePage jp4.add( store ) feed = swing.JButton( "Feed Tree To Browser" ) feed.actionPerformed = self.feedNodesBodyContents jp4.add( feed ) jp3.add( jp4 ) self.base.add( jp3, java.awt.BorderLayout.SOUTH ) self.history = [] self.historypointer = -1 self.ignore = 0 self.enableButtons() self.browser.addWebBrowserListener( self )
def registerExtenderCallbacks(self, callbacks): print "SAML BurpSuite Extension" print "Ben Campbell <eat_meatballs[at]hotmail.co.uk>" print "http://rewtdance.blogspot.co.uk" print "http://github.com/Meatballs1/burp_saml" # keep a reference to our callbacks object self._callbacks = callbacks # obtain an extension helpers object self._helpers = callbacks.getHelpers() # set our extension name callbacks.setExtensionName("SAML Decoder") # Create Tab self._jPanel = swing.JPanel() self._jPanel.setLayout( swing.BoxLayout(self._jPanel, swing.BoxLayout.Y_AXIS)) # SAML Binding Format self._jTextIn = swing.JTextArea("SAML Binding In", 20, 120) self._jTextIn.setLineWrap(True) self._jTextOut = swing.JTextArea("SAML Binding Out", 20, 120) self._jTextOut.setLineWrap(True) self._jButtonPanel = swing.JPanel() self._jButtonEncode = swing.JButton('Encode', actionPerformed=self.encode) self._jButtonDecode = swing.JButton('Decode', actionPerformed=self.decode) self._jButtonPanel.add(self._jButtonEncode) self._jButtonPanel.add(self._jButtonDecode) self._jPanel.add(self._jTextIn) self._jPanel.add(self._jButtonPanel) self._jPanel.add(self._jTextOut) # SAML Artifact Format self._jTextArtIn = swing.JTextArea("SAML Artifact In", 20, 120) self._jTextArtIn.setLineWrap(True) self._jTextArtOut = swing.JTextArea("SAML Artifact Out", 20, 120) self._jTextArtOut.setLineWrap(True) self._jButtonArtPanel = swing.JPanel() self._jButtonArtEncode = swing.JButton('Encode', actionPerformed=self.art_encode) self._jButtonArtDecode = swing.JButton('Decode', actionPerformed=self.art_decode) self._jButtonArtPanel.add(self._jButtonArtEncode) self._jButtonArtPanel.add(self._jButtonArtDecode) self._jPanel.add(self._jTextArtIn) self._jPanel.add(self._jButtonArtPanel) self._jPanel.add(self._jTextArtOut) callbacks.customizeUiComponent(self._jPanel) # register ourselves as a message editor tab factory callbacks.addSuiteTab(self) return
def registerExtenderCallbacks(self, callbacks): print "Install Successful...." # 测试文本 testtext = u''' admin u'\u8fd9\u662f\u4e00\u4e2a\u6d4b\u8bd5\u9875\u9762' root u'\u4f60\u4ee5\u4e3a\u6709\u91cd\u8981\u4fe1\u606f\u4e48\uff1f' \u6211\u662F\u4E00\u4E2A\u7C89\u5237\u5320\uFF0C\u7C89\u5237\u672C\u9886\u5F3A\uFF0C \u6211\u8981\u628A\u90A3\u5C0F\u623F\u5B50\uFF0C\u5237\u7684\u5F88\u6F02\u4EAE\u3002 %u6211%u662F%u4E00%u4E2A%u7C89%u5237%u5320%uFF0C%u7C89%u5237%u672C%u9886%u5F3A%uFF0C %u6211%u8981%u628A%u90A3%u5C0F%u623F%u5B50%uFF0C%u5237%u7684%u5F88%u6F02%u4EAE%u3002 \x31\x2C\x31\x29\x3B\x75\x70\x64\x61\x74\x65\x20\x5B\x64\x76\x5F\x75\x73\x65\x72\x5D\x20\x73\x65\x74\x20\x75\x73\x65\x72\x67\x72\x6F\x75\x70\x69\x64\x3D\x31\x20\x77\x68\x65\x72\x65\x20\x75\x73\x65\x72\x69\x64\x3D\x32\x3B\x2D\x2D\x20 \x75\x73\x65\x72\x69\x64\x3D\x32\x3B\x2D\x2D\x20 0x310x2C0x310x290x3B0x750x700x640x610x740x650x200x5B0x640x760x5F0x750x730x650x720x5D0x200x730x650x740x200x750x730x650x720x670x720x6F0x750x700x690x640x3D0x310x200x770x680x650x720x650x200x750x730x650x720x690x640x3D0x320x3B0x2D0x2D0x20 0x312C31293B757064617465205B64765F757365725D20736574207573657267726F757069643D31207768657265207573657269643D323B2D2D20 闲话不说了,base64模块真正用的上的方法只有8个,分别是encode, decode, ZW5jb2Rlc3RyaW5n, ZGVjb2Rlc3RyaW5n, YjY0ZW5jb2Rl,b64decode, dXJsc2FmZV9iNjRkZWNvZGUsdXJsc2FmZV9iNjRlbmNvZGXjgII=他们8个可以两两分为4组, ZW5jb2RlLGRlY29kZQ==一组,专门用来编码和 解码文件的,也可以对StringIO里的数据做编解码; ZW5jb2Rlc3RyaW5nLGRlY29kZXN0cmluZw==一组,专门用来编码和解码字符串; ''' # 保持对象的引用 self._callbacks = callbacks # 获得扩展辅助对象 self._helpers = callbacks.getHelpers() # 设置Extender里面显示的插件名 callbacks.setExtensionName("DecodeAssistantDev0.2") # 用java的swing库创建一个标签 self._jPanel = swing.JPanel() self._jPanel.setLayout( swing.BoxLayout(self._jPanel, swing.BoxLayout.Y_AXIS)) # 文本框 self._jTextIn = swing.JTextArea(testtext, 20, 120) self._jTextIn.setLineWrap(True) self._jScrollPaneIn = swing.JScrollPane(self._jTextIn) self._jScrollPaneIn.setVerticalScrollBarPolicy( swing.JScrollPane.VERTICAL_SCROLLBAR_ALWAYS) self._jScrollPaneIn.setPreferredSize(awt.Dimension(20, 120)) # 定义2个按钮,编码和解码 self._jButtonPanel = swing.JPanel() self._jButtonEncode = swing.JButton('Encode', actionPerformed=self.encode) self._jButtonDecode = swing.JButton('Decode', actionPerformed=self.decode) self._jButtonPanel.add(self._jButtonEncode) self._jButtonPanel.add(self._jButtonDecode) self._jPanel.add(self._jScrollPaneIn) self._jPanel.add(self._jButtonPanel) callbacks.customizeUiComponent(self._jPanel) # register ourselves as a message editor tab factory callbacks.addSuiteTab(self) return
def createGui( self ): self.jd = jd = swing.JDialog() self.jd.setName( "Leodialog" ) jd.setTitle( "Libraries" ) jdc = jd.getContentPane() self.libs = lib = swing.JList() self.libs.setName( "Autolist" ) lib.setVisibleRowCount( 5 ) view = swing.JScrollPane( lib ) jdc.add( view, awt.BorderLayout.NORTH ) create = swing.JButton( "Create" ) create.actionPerformed = self.create add = swing.JButton( "Add" ) add.actionPerformed = self.add move = swing.JButton( "Move" ) move.actionPerformed = self.move remove = swing.JButton( "Remove" ) remove.actionPerformed = self.remove _open = swing.JButton( "Open" ) _open.actionPerformed = self.open close = swing.JButton( "Close" ) close.actionPerformed = self.close topjp = swing.JPanel() topjp.setLayout( awt.GridLayout( 2, 1 ) ) jdc.add( topjp, awt.BorderLayout.SOUTH ) self.message = swing.JTextField() mp = swing.JPanel() gbl = awt.GridBagLayout() mp.setLayout( gbl ) gbc = awt.GridBagConstraints() gbc.weightx = 1.0 gbc.weighty = 1.0 gbc.fill = 1 gbl.setConstraints( self.message, gbc ) mp.add( self.message ) topjp.add( mp )# , awt.BorderLayout.NORTH ) jp = swing.JPanel() jp.setLayout( awt.GridLayout( 1, 6 ) ) jp.add( create ) jp.add( add ) jp.add( move ) jp.add( remove ) jp.add( _open ) jp.add( close ) topjp.add( jp )#, awt.BorderLayout.SOUTH )
def __init__(self, name, version, about): """# Create and run a modal dialog giving the name, version and description of a plugin. """ root = g.app.root self.top = top = swing.JDialog() #self.top = top = Tk.Toplevel(root) #g.app.gui.attachLeoIcon(self.top) #top.title("About " + name) top.title = "About " + name #top.resizable(0,0) # neither height or width is resizable. #frame = Tk.Frame(top) #frame.pack(side="top") frame = swing.JPanel() top.add(frame) #@ << Create the contents of the about box >> #@+node:EKR.20040517080555.21:<< Create the contents of the about box >> #Tk.Label(frame, text="Version " + version).pack() #Tk.Label(frame, text=about, borderwidth=10,justify="left").pack() l1 = swing.JLabel("Version " + version) frame.add(l1) l2 = swing.JLabel(about) frame.add(l2) #@nonl #@-node:EKR.20040517080555.21:<< Create the contents of the about box >> #@nl #@ << Create the close button >> #@+node:EKR.20040517080555.22:<< Create the close button >> #buttonbox = Tk.Frame(top, borderwidth=5) #buttonbox.pack(side="bottom") buttonbox = swing.JPanel() top.add(buttonbox, java.awt.BorderLayout.SOUTH) #self.button = Tk.Button(buttonbox, text="Close", command=top.destroy) #self.button.pack(side="bottom") self.button = swing.JButton("Close") self.button.actionPerformed = lambda event: top.dispose() buttonbox.add(self.button) #@nonl #@-node:EKR.20040517080555.22:<< Create the close button >> #@nl g.app.gui.center_dialog(top) # Do this after packing.
def friendsList(self, username): self.window = swing.JFrame(username) self.window.layout = awt.BorderLayout() statusPanel = swing.JPanel() statusPanel.layout = awt.GridLayout(4, 1) # Set status placeholder UI statusPanel.border = swing.BorderFactory.createTitledBorder("Status") buttonGroup = swing.ButtonGroup() radioButton = swing.JRadioButton("Away", actionPerformed=self.radioCallback) buttonGroup.add(radioButton) statusPanel.add(radioButton) radioButton = swing.JRadioButton("Here", actionPerformed=self.radioCallback) buttonGroup.add(radioButton) statusPanel.add(radioButton) #Wizard of Oz incoming chat request radioButton = swing.JButton("Page Boss", actionPerformed=self.callBoss) buttonGroup.add(radioButton) statusPanel.add(radioButton) statusPanel.add(self.status) #statusPanel.add(swing.JButton("Update Status", actionPerformed=self.updateStatus)) #Buddy list panel = swing.JPanel() panel.layout = awt.BorderLayout() panel.border = swing.BorderFactory.createTitledBorder("Friends Online") ##TODO: fix threading so that friends load before the window print self.friendsData self.friendsData.append('guest') print '2' self.list = swing.JList(self.friendsData) panel.add("Center", swing.JScrollPane(self.list)) launchChatButton = swing.JButton("Launch chat?", actionPerformed=self.launchChatOut) panel.add("South", launchChatButton) self.window.windowClosing = self.goodbye pane = JScrollPane() pane.getViewport().add(self.list) panel.add(pane) self.window.add("North", statusPanel) self.window.add("South", panel) self.window.pack() self.window.visible = True return self.window
def createGui (self): # build the GUI self.layout = awt.BorderLayout() progB = self.__progressBar = \ swing.JProgressBar(0, 100, stringPainted=1); inf = self.__inputField = swing.JTextField(5) inl = swing.JLabel("Calculate value of:", swing.JLabel.RIGHT) inl.labelFor = inf outf = self.__outputArea = swing.JTextArea() outl = swing.JLabel("Result:", swing.JLabel.RIGHT) outl.labelFor = outf calcb = self.__calcButton = \ swing.JButton("Calculate", actionPerformed=self.doCalc, enabled=1, mnemonic=awtevent.KeyEvent.VK_C) cancelb = self.__cancelButton = \ swing.JButton("Cancel", actionPerformed=self.doCancel, enabled=0, mnemonic=awtevent.KeyEvent.VK_L) vl = ValueLayout(5, 5) inp = swing.JPanel(vl) vl.setLayoutAlignmentX(inp, 0.2) inp.add(inl); inp.add(inf, inl) self.add(inp, awt.BorderLayout.NORTH) vl = ValueLayout(5, 5) outp = swing.JPanel(vl) vl.setLayoutAlignmentX(outp, 0.2) outp.add(outl); outp.add(swing.JScrollPane(outf), outl) xoutp = swing.JPanel(awt.BorderLayout()) xoutp.add(progB, awt.BorderLayout.NORTH) xoutp.add(outp, awt.BorderLayout.CENTER) self.add(xoutp, awt.BorderLayout.CENTER) sp = swing.JPanel(awt.BorderLayout()) bp = swing.JPanel() bp.add(calcb) bp.add(cancelb) sp.add(bp, awt.BorderLayout.NORTH) sl = self.__statusLabel = swing.JLabel(" ") sp.add(sl, awt.BorderLayout.SOUTH) self.add(sp, awt.BorderLayout.SOUTH)
def registerExtenderCallbacks(self, callbacks): print "js-beautifier BurpSuite Extension" print "Ben Campbell <eat_meatballs[at]hotmail.co.uk>" print "http://rewtdance.blogspot.co.uk" print "http://github.com/Meatballs1/burp_jsbeautifier" # keep a reference to our callbacks object self._callbacks = callbacks # obtain an extension helpers object self._helpers = callbacks.getHelpers() # set our extension name callbacks.setExtensionName("Javascript Beautifier") # Don't Auto modify requests by default self._replaceAll = False # Create Tab self._jPanel = swing.JPanel() self._toggleButton = swing.JToggleButton( 'Enable Automatic JavaScript Beautifying', actionPerformed=self.toggleOnOff) self._jPanel.add(self._toggleButton) callbacks.customizeUiComponent(self._jPanel) # register ourselves as a message editor tab factory callbacks.registerMessageEditorTabFactory(self) callbacks.registerHttpListener(self) callbacks.addSuiteTab(self) return
def runAboutLeoDialog(self, version, theCopyright, url, email): """Create and run Leo's About Leo dialog.""" dialog = self._getDialog("About Leo") cpane = dialog.getContentPane() data = "%s\n%s\n\n%s\n\n%s" % (version, theCopyright, url, email) jtc = swing.JTextArea() jtc.setText(data) jtc.setEditable(False) dialog.add(jtc) class cl_act(swing.AbstractAction): def __init__(self, dialog): swing.AbstractAction.__init__(self, "Close") self.dialog = dialog def actionPerformed(self, aE): self.dialog.dispose() button = swing.JButton(cl_act(dialog)) jbp = swing.JPanel() jbp.add(button) dialog.add(jbp, awt.BorderLayout.SOUTH) dialog.pack() w, h = self._calculateCenteredPosition(dialog) dialog.setLocation(w, h) dialog.setAlwaysOnTop(1) dialog.visible = 1
def browse( c ): svnc = SVNConnector() center = swing.JPanel( java.awt.BorderLayout()) center.add( svnc) label = swing.JLabel( "Status:") center.add( label, java.awt.BorderLayout.SOUTH) d = swing.JDialog() d.title = "Browse A Repository" cp = d.getContentPane() cp.setLayout( java.awt.BorderLayout()) cp.add( center ) jb = swing.JButton( "Browse") def view( event ): url = svnc.getUrl() can_connect = svnc.canConnect() if can_connect: repository = getRepository( url) browseRepository( d, repository) else: label.setText( "Status: Cant Connect" ) jb.actionPerformed = view cp.add( jb, java.awt.BorderLayout.SOUTH) d.pack() g.app.gui.center_dialog( d ) d.visible = 1
def __init__(self, localVars, globalVars, windowNumber, varsToFilter): """ Creates the layout of the window. """ self.varsToFilter = set(varsToFilter) now = time.localtime(time.time()) self.title = time.strftime(DEBUG_WINDOW_TITLE, now) self.title = self.title % windowNumber self.size = DEBUG_WINDOW_SIZE self.contentPane.setLayout( swing.BoxLayout(self.contentPane, swing.BoxLayout.Y_AXIS)) # Create panels and button, and place them on the frame closeButton = swing.JButton(CLOSE_BUTTON_CAPTION, actionListener=self) bottomPanel = swing.JPanel() bottomPanel.add(closeButton) localPane = self.buildTablePane(VAR_L_NAME_COL_CAPTION, localVars) globalPane = self.buildTablePane(VAR_G_NAME_COL_CAPTION, globalVars) self.contentPane.add(localPane) self.contentPane.add(globalPane) self.contentPane.add(bottomPanel) self.setDefaultCloseOperation(1) self.setVisible(1)
def __init__(self): self.size = ABOUT_WINDOW_SIZE self.title = ABOUT_TITLE self.setLocationRelativeTo(None) self.contentPane.setLayout( swing.BoxLayout(self.contentPane, swing.BoxLayout.Y_AXIS)) copyrightInfoArea = swing.JTextPane() copyrightInfoArea.setEditable(0) #Load copyright information from the JES copyright file copyrightFile = open(COPYRIGHT_FILE, 'r') copyrightInfoArea.text = copyrightFile.read() copyrightInfoArea.setCaretPosition(0) copyrightFile.close() okButton = swing.JButton(OK_BUTTON_CAPTION, actionListener=self) topPane = swing.JScrollPane(copyrightInfoArea) topPane.setPreferredSize( awt.Dimension(lang.Short.MAX_VALUE, lang.Short.MAX_VALUE)) bottomPanel = swing.JPanel() bottomPanel.add(okButton) self.contentPane.add(topPane) self.contentPane.add(bottomPanel)
def __getPlaceView( self ): panel = swing.JPanel() jfc = swing.JFileChooser() jfc.setFileSelectionMode( jfc.DIRECTORIES_ONLY ) class SelectDirectory( java.awt.event.ActionListener ): def __init__( self, co): self.co = co def actionPerformed( self ,event ): ro = java.lang.String( event.getActionCommand() ) if ro.equals( jfc.APPROVE_SELECTION): self.co.dispose() self.co.ok = True self.co.path = jfc.getSelectedFile().getAbsolutePath() elif ro.equals( jfc.CANCEL_SELECTION): self.co.dispose() self.co.ok = False jfc.addActionListener( SelectDirectory( self )) panel.add( jfc ) return panel
def __init__(self, localVars, globalVars, windowNumber, varsToFilter): import time self.varsToFilter = varsToFilter now = time.localtime(time.time()) self.title = time.strftime(DEBUG_WINDOW_TITLE, now) self.title = self.title % windowNumber self.size = DEBUG_WINDOW_SIZE self.contentPane.setLayout( swing.BoxLayout(self.contentPane, swing.BoxLayout.Y_AXIS)) #Load the variables from varsToDisplay into an array for the JTable #Create panels and button, and place them on the frame closeButton = swing.JButton(CLOSE_BUTTON_CAPTION, actionListener=self) bottomPanel = swing.JPanel() bottomPanel.add(closeButton) (topPane, bottomPane) = self.buildContentPane(localVars, globalVars) self.contentPane.add(topPane) self.contentPane.add(bottomPane) self.contentPane.add(bottomPanel) self.setDefaultCloseOperation(1) self.setVisible(1)
def __init__(self): # Launches the login screen, initializes self.window, the primary frame self.done = False self.friendsData = [''] self.sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) self.chatHistory = {} self.usernameField = JTextField('guest', 20) self.status = JTextField(text='setStatus', editable=True) self.portNumber = "6666" self.IP = "127.0.0.1" self.window = swing.JFrame("Catchy Messenger Name") self.chatWindow = swing.JFrame() self.window.windowClosing = self.goodbye tempPanel = swing.JPanel() tempPanel = awt.BorderLayout() loginPage = JPanel(GridLayout(0, 2)) self.window.add(loginPage) loginPage.add(JLabel("Enter today's username", SwingConstants.RIGHT)) loginPage.add(self.usernameField) textIP = swing.JTextField(text=self.IP, editable=True) #chatHistory = swing.JTextArea(text = "new chat instance!", editable = False, lineWrap = True, size = (300,1)) loginButton = JButton('Log in', actionPerformed=self.login) loginPage.add(JLabel("")) loginPage.add(loginButton) loginPage.add(textIP) loginPage.add(JLabel("Change IP from default?", SwingConstants.LEFT)) loginPage.add(swing.JTextField(text=self.portNumber, editable=True)) loginPage.add(JLabel("Change Port from default?")) self.window.pack() self.window.visible = True return
def initGui(self): self.sigv4ConfigurationTab = swing.JPanel() layout = swing.GroupLayout(self.sigv4ConfigurationTab) self.sigv4ConfigurationTab.setLayout(layout) self.addDomainInfo = swing.JLabel("Domain to test:") self.addDomainInfo.setFont(Font("Tahoma", 1, 12)) self.configurationLoadedInfo = swing.JLabel("") self.configurationLoadedInfo.setFont(Font("Tahoma", 1, 12)) self.isJsonCheck = swing.JCheckBox("JSON") self.isJsonCheck.setFont(Font("Tahoma", 1, 12)) self.parseCredsBtn = swing.JButton('Load configuration', actionPerformed=self.parseCreds) self.credsPanel = swing.JScrollPane() self.credsText = swing.JTextArea("Paste Creds Here.") self.credsText.setLineWrap(True) self.credsPanel.setViewportView(self.credsText) self.scopeUrlField = swing.JTextField("api.example.io") layout.setHorizontalGroup( layout.createParallelGroup(swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addGap(15) .addGroup(layout.createParallelGroup(swing.GroupLayout.Alignment.LEADING) .addComponent(self.isJsonCheck) .addComponent(self.credsPanel, swing.GroupLayout.PREFERRED_SIZE, 525, swing.GroupLayout.PREFERRED_SIZE) .addComponent(self.addDomainInfo) .addComponent(self.scopeUrlField, swing.GroupLayout.PREFERRED_SIZE, 350, swing.GroupLayout.PREFERRED_SIZE) .addGroup(layout.createSequentialGroup() .addGroup(layout.createParallelGroup(swing.GroupLayout.Alignment.TRAILING) .addComponent(self.parseCredsBtn)) .addComponent(self.configurationLoadedInfo) .addPreferredGap(swing.LayoutStyle.ComponentPlacement.UNRELATED)) .addComponent(self.addDomainInfo)) .addContainerGap(26, lang.Short.MAX_VALUE))) layout.setVerticalGroup( layout.createParallelGroup(swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addGap(10) .addComponent(self.isJsonCheck) .addGap(10) .addComponent(self.credsPanel, swing.GroupLayout.PREFERRED_SIZE, 125, swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(swing.LayoutStyle.ComponentPlacement.UNRELATED) .addGroup(layout.createParallelGroup(swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addGap(10) .addComponent(self.addDomainInfo) .addGap(10) .addComponent(self.scopeUrlField, swing.GroupLayout.PREFERRED_SIZE, swing.GroupLayout.DEFAULT_SIZE, swing.GroupLayout.PREFERRED_SIZE) .addGroup(layout.createParallelGroup(swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addGap(10) .addComponent(self.parseCredsBtn) .addGap(10) .addComponent(self.configurationLoadedInfo) .addPreferredGap(swing.LayoutStyle.ComponentPlacement.RELATED) .addPreferredGap(swing.LayoutStyle.ComponentPlacement.RELATED) .addContainerGap(swing.GroupLayout.DEFAULT_SIZE, lang.Short.MAX_VALUE))))))) return
def addSectionReferences(self, parent, editor, sec_references): pstring = parent.bodyString() rejects = [] for z in sec_references: hs = z.headString().strip() spot = pstring.find(hs) if spot != -1: jp = swing.JPanel(java.awt.BorderLayout()) jp.setOpaque(0) jb = swing.JCheckBox() jb.setToolTipText("hide/show") jb.setOpaque(0) jb.setSelected(1) jp.add(jb, java.awt.BorderLayout.NORTH) jtp = swing.JTextPane() jp.add(jtp) jb.actionPerformed = lambda event, jtp=jtp, jp=jp: self.add_remove( jtp, jp) jtp.addKeyListener(self.swingmacs.kcb) doc = jtp.getDocument() jtp.setText(z.bodyString()) doc.addDocumentListener( self.NodeSyncher(z.copy(), jtp, self.swingmacs, self)) self.addBorder(jp, z.headString()) #jtp.setText( z.bodyString() ) self.scanNode(z, jtp) sas = text.SimpleAttributeSet() text.StyleConstants.setComponent(sas, jp) doc = editor.getDocument() doc.setCharacterAttributes(spot, len(hs), sas, 1) #self.scanNode( z, jtp ) else: rejects.append(z) return rejects
def addOptions(self): self.optpanel = swing.JPanel(layout=awt.BorderLayout()) self.add(self.optpanel, awt.BorderLayout.EAST) self.commentcheck = swing.JCheckBox( COMMENTS, horizontalTextPosition=swing.SwingConstants.LEFT) self.commentcheck.setSelected(SHOWCOMMENTS) self.optpanel.add(self.commentcheck, awt.BorderLayout.EAST) # self.grbcheck = swing.JCheckBox('Gurobi:', horizontalTextPosition = swing.SwingConstants.LEFT)#w# # self.grbcheck.setSelected(False)#w# self.LPbox = swing.Box(swing.BoxLayout.LINE_AXIS) self.LPbox.add( swing.Box.createRigidArea(awt.Dimension(2 * BORDERWIDTH, 0))) self.LPbox.add(swing.JLabel(SOLVER)) self.solverbox = swing.JComboBox(Data.Problem.SOLVERS) self.solverbox.addActionListener(self.SolverSwitcher(self)) self.LPbox.add(self.solverbox) self.LPbox.add(swing.Box.createRigidArea(awt.Dimension(BORDERWIDTH, 0))) self.trimcheck = swing.JCheckBox( REDUCE, horizontalTextPosition=swing.SwingConstants.LEFT) self.LPbox.add(self.trimcheck) self.LPbox.add(swing.Box.createRigidArea(awt.Dimension(BORDERWIDTH, 0))) self.optpanel.add(self.LPbox, awt.BorderLayout.WEST) #CENTER->WEST
def initUI(self): self.tab = swing.JPanel() # UI for Output self.outputLabel = swing.JLabel("pMDetector Log:") self.outputLabel.setFont(Font("Tahoma", Font.BOLD, 14)) self.outputLabel.setForeground(Color(255, 102, 52)) self.logPane = swing.JScrollPane() self.outputTxtArea = swing.JTextArea() self.outputTxtArea.setFont(Font("Consolas", Font.PLAIN, 12)) self.outputTxtArea.setLineWrap(True) self.logPane.setViewportView(self.outputTxtArea) self.clearBtn = swing.JButton("Clear Log", actionPerformed=self.clear) self.exportBtn = swing.JButton("Export Log", actionPerformed=self.export) self.parentFrm = swing.JFileChooser() # Layout layout = swing.GroupLayout(self.tab) layout.setAutoCreateGaps(True) layout.setAutoCreateContainerGaps(True) self.tab.setLayout(layout) layout.setHorizontalGroup(layout.createParallelGroup().addGroup( layout.createSequentialGroup().addGroup( layout.createParallelGroup().addComponent( self.outputLabel).addComponent(self.logPane).addComponent( self.clearBtn).addComponent(self.exportBtn)))) layout.setVerticalGroup(layout.createParallelGroup().addGroup( layout.createParallelGroup().addGroup( layout.createSequentialGroup().addComponent( self.outputLabel).addComponent(self.logPane).addComponent( self.clearBtn).addComponent(self.exportBtn))))
def registerExtenderCallbacks(self, callbacks): self.hashes = {} #self._stdout = PrintWriter(callbacks.getStdout(), True) self._callbacks = callbacks self._helpers = callbacks.getHelpers() self._callbacks.setExtensionName("Password Hash Scanner") self._callbacks.registerScannerCheck(self) self._fileLocation = None self._jPanel = swing.JPanel() boxVertical = swing.Box.createVerticalBox() boxHorizontal = swing.Box.createHorizontalBox() getFileButton = swing.JButton('Open hashout.txt', actionPerformed=self.getFile) self._fileText = swing.JTextArea("", 1, 50) boxHorizontal.add(getFileButton) boxHorizontal.add(self._fileText) boxVertical.add(boxHorizontal) boxHorizontal = swing.Box.createHorizontalBox() submitQueryButton = swing.JButton('Parse hash file', actionPerformed=self.hashParse) boxHorizontal.add(submitQueryButton) boxVertical.add(boxHorizontal) boxHorizontal = swing.Box.createHorizontalBox() boxHorizontal.add(swing.JLabel("Output")) boxVertical.add(boxHorizontal) boxHorizontal = swing.Box.createHorizontalBox() self._resultsTextArea = swing.JTextArea() resultsOutput = swing.JScrollPane(self._resultsTextArea) resultsOutput.setPreferredSize(Dimension(500, 200)) boxHorizontal.add(resultsOutput) boxVertical.add(boxHorizontal) self._jPanel.add(boxVertical) # add the custom tab to Burp's UI self._callbacks.addSuiteTab(self) return