Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
GUI fixes.
  • Loading branch information
ajt06004 committed Jul 5, 2018
1 parent 82808cf commit 6340f8b
Show file tree
Hide file tree
Showing 4 changed files with 179 additions and 4 deletions.
7 changes: 4 additions & 3 deletions src/edu/uconn/tripoint/pathwayimport/GraphiteImport.java
Expand Up @@ -57,9 +57,10 @@ public class GraphiteImport {
String pathwayname = c.parseAndEval("names(cpathwaylist)["+rindex+"]").asString();
c.parseAndEval("curpath = cpathwaylist[["+rindex+"]]");
c.parseAndEval("ed <- edges(curpath)");
String[] sources = c.parseAndEval("ed[,2]").asStrings();
String[] destinations = c.parseAndEval("ed[,4]").asStrings();
String[] edgetype = c.parseAndEval("ed[,6]").asStrings();

String[] sources = c.parseAndEval("ed$src").asStrings();
String[] destinations = c.parseAndEval("ed$dest").asStrings();
String[] edgetype = c.parseAndEval("ed$type").asStrings();

System.out.println("Loading "+pathwayname);
Pathway p = new Pathway(pathwaylibrary+":"+pathwayname);
Expand Down
41 changes: 41 additions & 0 deletions src/edu/uconn/tripoint/ui/CommandOutputPanel.java
@@ -0,0 +1,41 @@
package edu.uconn.tripoint.ui;

import java.awt.BorderLayout;
import java.awt.Font;

import javax.swing.BoxLayout;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;

@SuppressWarnings("serial")
public class CommandOutputPanel extends JPanel {

private JTextArea _ota;

public CommandOutputPanel(Font font){
setLayout(new BoxLayout(this, BoxLayout.Y_AXIS));

JLabel sol = new JLabel("Command Line Output:");
sol.setHorizontalAlignment(JLabel.LEFT);
sol.setFont(font);
_ota = new JTextArea(15, 35);
_ota.setEditable(false);
JScrollPane osp = new JScrollPane(_ota);
osp.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
osp.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
JPanel opanel = new JPanel(new BorderLayout());
opanel.add(sol, BorderLayout.NORTH);
opanel.add(osp, BorderLayout.CENTER);

add(opanel);
}

public void addLine(String s){
_ota.append(s+"\n");
revalidate();
repaint();
}

}
131 changes: 131 additions & 0 deletions src/edu/uconn/tripoint/ui/CommandRunner.java
@@ -0,0 +1,131 @@
package edu.uconn.tripoint.ui;


import java.awt.BorderLayout;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.PipedInputStream;
import java.io.PipedOutputStream;
import java.io.PrintStream;

import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JProgressBar;
import javax.swing.SwingWorker;

public class CommandRunner {

private JFrame _frame;
private Font _labelfont;
private Process _p;
private String _title;

public CommandRunner(JFrame frame, String title){
_frame = frame;
_title = title;
}



public void run() {
final JOptionPane pane = new JOptionPane();

final CommandOutputPanel op = new CommandOutputPanel(_labelfont);

final JProgressBar jpb = new JProgressBar();
jpb.setSize(500, 10);
jpb.setIndeterminate(true);

final JButton cancel = new JButton("Cancel");
final JButton finish = new JButton("Finish");


final JPanel cp = new JPanel(new BorderLayout());
cp.add(jpb, BorderLayout.CENTER);
cp.add(cancel, BorderLayout.EAST);

final JPanel combinedpanel = new JPanel(new BorderLayout());
combinedpanel.add(op, BorderLayout.NORTH);
combinedpanel.add(cp, BorderLayout.SOUTH);


pane.setMessage(combinedpanel);
pane.setOptions(new Object[]{});

final JDialog dialog = pane.createDialog(_frame, _title);

finish.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent e) {
dialog.dispose();
}

});

cancel.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent e) {
if(_p != null){
_p.destroy();
}
dialog.dispose();
}
});


SwingWorker<Void, Void> sw = new SwingWorker<Void, Void>(){

@Override
protected Void doInBackground() throws Exception {

try {
PipedOutputStream pout = new PipedOutputStream();
System.setOut(new PrintStream(pout));
PipedInputStream pin = new PipedInputStream();

BufferedReader stdin = new BufferedReader(new InputStreamReader(pin));
System.out.println("Test");
String s = null;
while((s = stdin.readLine()) != null){
op.addLine(s);
op.revalidate();
op.repaint();
}

stdin.close();

} catch (IOException e1) {
e1.printStackTrace();
}
return null;
}

@Override
protected void done(){
cp.remove(jpb);
cp.remove(cancel);
cp.add(finish, BorderLayout.EAST);
dialog.setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);
dialog.revalidate();
dialog.repaint();
}

};

sw.execute();


dialog.setDefaultCloseOperation(JDialog.DO_NOTHING_ON_CLOSE);
dialog.setVisible(true);

}

}
4 changes: 3 additions & 1 deletion src/edu/uconn/tripoint/ui/TriPOINT.java
Expand Up @@ -138,7 +138,9 @@ public class TriPOINT {

}
else{

final CommandRunner ppcr = new CommandRunner(_frame, "Run TriPOINT");
//JOptionPane.showMessageDialog(_frame, iv.getErrorMessages().toString(),"Run TriPOINT");

}
}

Expand Down

0 comments on commit 6340f8b

Please sign in to comment.