Changeset 138
- Timestamp:
- 02/05/08 20:10:40 (1 year ago)
- Files:
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
MediAnnotate/trunk/src/org/mediannotate/app/MediAnnotater.java
r137 r138 1 1 package org.mediannotate.app; 2 import netscape.javascript.*;3 4 2 import java.awt.GridLayout; 5 3 import java.io.File; 6 import java.net.URLDecoder;7 import java.text.DecimalFormat;8 import java.text.NumberFormat;9 4 import java.util.LinkedList; 10 5 import java.util.List; … … 13 8 import javax.swing.JApplet; 14 9 10 import netscape.javascript.JSObject; 15 11 import quicktime.QTException; 16 12 import quicktime.QTSession; … … 34 30 QTSession.open(); 35 31 } catch (QTException e) { 36 // TODO Auto-generated catch block37 32 e.printStackTrace(); 38 33 } … … 43 38 44 39 public static String getTime() { 45 DecimalFormat d = new DecimalFormat("00");46 String start = d.format(myPlayerPanel.getInTime()/1000/60/60) + ":" +47 d.format((myPlayerPanel.getInTime()%(1000*60*60))/1000/60) + ":" +48 d.format((myPlayerPanel.getInTime()%(1000*60))/1000) + "." +49 d.format((myPlayerPanel.getInTime()%1000)/33.3);40 String timeXML = ""; 41 try { 42 timeXML = "<mediannotate>" + 43 " <start>" + myPlayerPanel.getInTime() + "</start>\n" + 44 " <end>" + myPlayerPanel.getOutTime() + "</end>\n</mediannotate>"; 50 45 51 String end = d.format(myPlayerPanel.getOutTime()/1000/60/60) + ":" +52 d.format((myPlayerPanel.getOutTime()%(1000*60*60))/1000/60) + ":" +53 d.format((myPlayerPanel.getOutTime()%(1000*60))/1000) + "." +54 d.format((myPlayerPanel.getOutTime()%1000)/33.3);55 String timeXML = "<start>" + start + "</start>\n" +56 "<end>" + end + "</end>";46 } catch (Exception e){ 47 e.printStackTrace(); 48 timeXML = "<mediannotate>" + 49 " <start>0</start>\n" + 50 " <end>0</end>\n</mediannotate>"; 51 } 57 52 return timeXML; 58 53 } 59 54 60 55 public static void setTime(String time) { 61 time = time.replace('\n', ' '); //dirty, but effective. Don't want linebreaks screwing this up 62 String inString = time.replaceAll("^.*<start>(.*)</start>.*$", "$1"); 63 String outString = time.replaceAll("^.*<end>(.*)</end>.*$", "$1"); 64 String[] inStrings = inString.split("[:\\.]"); 65 String[] outStrings = outString.split("[:\\.]"); 66 long in = 0; 67 in += Long.parseLong(inStrings[0])*60*60*1000; 68 in += Long.parseLong(inStrings[1])*60*1000; 69 in += Long.parseLong(inStrings[2])*1000; 70 in += Long.parseLong(inStrings[3])*33.3; 71 long out = 0; 72 out += Long.parseLong(outStrings[0])*60*60*1000; 73 out += Long.parseLong(outStrings[1])*60*1000; 74 out += Long.parseLong(outStrings[2])*1000; 75 out += Long.parseLong(outStrings[3])*33.3; 76 myPlayerPanel.setInTime(in); 77 myPlayerPanel.setOutTime(out); 78 myPlayerPanel.setTime(in); 79 myPlayerPanel.getCurrentMovie().setTime(in); 56 try { 57 time = time.replace('\n', ' '); //dirty, but effective. Don't want linebreaks screwing this up 58 long in = Long.parseLong(time.replaceAll("^.*<start>(.*)</start>.*$", "$1")); 59 long out = Long.parseLong(time.replaceAll("^.*<end>(.*)</end>.*$", "$1")); 60 myPlayerPanel.setInTime(in); 61 myPlayerPanel.setOutTime(out); 62 myPlayerPanel.setTime(in); 63 myPlayerPanel.getCurrentMovie().setTime(in); 64 } catch (Exception e) { 65 e.printStackTrace(); 66 } 80 67 } 81 68 82 69 public static void loadMovie(String url) { 83 myController.loadMovie(url); 70 try { 71 myController.loadMovie(url); 72 } catch (Exception e) { 73 e.printStackTrace(); 74 } 84 75 } 85 76 86 77 public static long getDuration() { 87 return myPlayerPanel.getDurationTime().getAllInMilli(); 78 long duration = 0; 79 try { 80 duration = myPlayerPanel.getDurationTime().getAllInMilli(); 81 } catch (Exception e) { 82 e.printStackTrace(); 83 } 84 return duration; 88 85 } 89 86 … … 99 96 System.out.println("QTSession Opened."); 100 97 } catch (QTException e) { 101 // TODO Auto-generated catch block102 98 e.printStackTrace(); 103 99 }
