public RecorderDialog(EditorServer parent) { super(parent, true); setTitle("Recorder Info"); // fieldsPanel JPanel fieldsPanel = new JPanel(); GridBagLayout gbLayout = new GridBagLayout(); GridBagConstraints constraints; // Address/Port/TTL : constraints = new GridBagConstraints(); constraints.anchor = GridBagConstraints.EAST; constraints.insets = new Insets(5, 5, 0, 0); fieldsPanel.setLayout(gbLayout); JLabel AddPTTLabel = new JLabel("Address/Port/TTL :"); gbLayout.setConstraints(AddPTTLabel, constraints); fieldsPanel.add(AddPTTLabel, constraints); constraints = new GridBagConstraints(); constraints.gridwidth = GridBagConstraints.REMAINDER; constraints.insets = new Insets(5, 5, 0, 5); constraints.weightx = 1.0D; addressPortTTL = new JTextField(25); addressPortTTL.setText("224.20.20.20/20002"); gbLayout.setConstraints(addressPortTTL, constraints); fieldsPanel.add(addressPortTTL, constraints); // Outputfile... constraints = new GridBagConstraints(); constraints.anchor = GridBagConstraints.EAST; constraints.insets = new Insets(5, 5, 0, 0); JLabel OFileLabel = new JLabel("Save file as... :"); gbLayout.setConstraints(OFileLabel, constraints); fieldsPanel.add(OFileLabel, constraints); constraints = new GridBagConstraints(); constraints.gridwidth = GridBagConstraints.REMAINDER; constraints.insets = new Insets(5, 5, 0, 5); constraints.weightx = 1.0D; outFile = new JTextField(25); outFile.setText("Placebo.rtp"); gbLayout.setConstraints(outFile, constraints); fieldsPanel.add(outFile, constraints); // Recording time... constraints = new GridBagConstraints(); constraints.anchor = GridBagConstraints.EAST; constraints.insets = new Insets(5, 5, 0, 0); JLabel timeLabel = new JLabel("Recording time (in seconds) : "); gbLayout.setConstraints(timeLabel, constraints); fieldsPanel.add(timeLabel, constraints); constraints = new GridBagConstraints(); constraints.gridwidth = GridBagConstraints.REMAINDER; constraints.insets = new Insets(5, 5, 0, 5); constraints.weightx = 1.0D; durationField = new JTextField(25); durationField.setText("2700"); gbLayout.setConstraints(durationField, constraints); fieldsPanel.add(durationField, constraints); // The buttons... JPanel buttonPanel = new JPanel(); JButton startRecordingButton = new JButton("Start Recording"); startRecordingButton.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent buttonPressed) { // startThread here !!! String apt = addressPortTTL.getText().trim(); String ofile = outFile.getText().trim(); String duration = durationField.getText().trim(); System.out.println( "\napt : *" + apt + "* ofile : *" + ofile + "* duration: *" + duration + "*"); long dur = new Integer(duration).intValue() * 1000; // turned into ms recorder = new Recorder(apt, ofile, dur); recorder.start(); document.resetStartTime(System.currentTimeMillis()); // close dialog Box dispose(); } // }); // endActionListener buttonPanel.add(startRecordingButton); Container dialogContainer = getContentPane(); dialogContainer.setLayout(new BorderLayout()); dialogContainer.add(fieldsPanel, BorderLayout.CENTER); dialogContainer.add(buttonPanel, BorderLayout.SOUTH); pack(); setLocationRelativeTo(parent); }
public DocumentPanel() { super(new BorderLayout()); JLabel lblDocument = new JLabel("Document: " + document.getTitle()); lblDocument.setBorder(new EtchedBorder()); textPane = new JTextPane(document); textPane.setEditable(false); textPane.setMargin(new Insets(5, 20, 5, 5)); textPane.setMaximumSize(new Dimension(364, 1000000000)); textPane.setPreferredSize(new Dimension(364, 400)); textPane.setMinimumSize(new Dimension(364, 10)); textPane.addCaretListener( new CaretListener() { public void caretUpdate(CaretEvent e) { int length = document.getLength(); int offset = e.getDot(); if (e.getDot() == e.getMark()) textPane.getCaret().moveDot(offset + 1); Paragraph p = lockManager.getParFromOffset(offset); int pOffset = p.getOffset(); lblCursor.setText( "Document Length=" + String.valueOf(length) + ", CaretOffset=" + String.valueOf(offset) + ", Paragraph=" + p.toString() + ", Offset in Paragraph=" + String.valueOf(offset - p.getOffset())); } }); Box box = new Box(BoxLayout.X_AXIS); box.add(textPane); box.add(Box.createGlue()); box.setBackground(Color.WHITE); box.setOpaque(true); box.setPreferredSize(new Dimension(600, 10000)); lblCursor = new JLabel("Cursor"); lblCursor.setBorder(new EtchedBorder()); JPanel boxText = new JPanel(new BorderLayout()); boxText.setBorder(new EmptyBorder(5, 5, 5, 5)); boxText.add(lblDocument, BorderLayout.NORTH); boxText.add(new JScrollPane(box), BorderLayout.CENTER); boxText.add(lblCursor, BorderLayout.SOUTH); JLabel lblPars = new JLabel("Paragraphs: "); lblPars.setBorder(new EtchedBorder()); parList = new JList(); parList.setPreferredSize(new Dimension(100, 300)); parList.setEnabled(false); JPanel boxPars = new JPanel(new BorderLayout()); boxPars.setBorder(new EmptyBorder(5, 5, 5, 5)); boxPars.add(lblPars, BorderLayout.NORTH); boxPars.add(new JScrollPane(parList), BorderLayout.CENTER); add(boxText, BorderLayout.CENTER); add(boxPars, BorderLayout.EAST); }