List of usage examples for java.awt GraphicsEnvironment getLocalGraphicsEnvironment
public static GraphicsEnvironment getLocalGraphicsEnvironment()
From source file:Filter3dTest.java
/** * Creates a new ScreenManager object./*from ww w. j a va 2s . c o m*/ */ public ScreenManager() { GraphicsEnvironment environment = GraphicsEnvironment.getLocalGraphicsEnvironment(); device = environment.getDefaultScreenDevice(); }
From source file:com._17od.upm.gui.MainWindow.java
/** * Convenience method to iterate over all graphics configurations. *//*from ww w . j a v a 2s . c o m*/ private static ArrayList getConfigs() { ArrayList result = new ArrayList(); GraphicsEnvironment env = GraphicsEnvironment.getLocalGraphicsEnvironment(); GraphicsDevice[] devices = env.getScreenDevices(); for (int i = 0; i < devices.length; i++) { GraphicsConfiguration[] configs = devices[i].getConfigurations(); result.addAll(Arrays.asList(configs)); } return result; }
From source file:com._17od.upm.gui.MainWindow.java
/** * Utility function for restoreWindowBounds *///w w w .ja v a 2 s . c o m private GraphicsConfiguration getGraphicsConfigurationContaining(int x, int y) { ArrayList configs = new ArrayList(); GraphicsEnvironment env = GraphicsEnvironment.getLocalGraphicsEnvironment(); GraphicsDevice[] devices = env.getScreenDevices(); for (int i = 0; i < devices.length; i++) { GraphicsConfiguration[] gconfigs = devices[i].getConfigurations(); configs.addAll(Arrays.asList(gconfigs)); } for (int i = 0; i < configs.size(); i++) { GraphicsConfiguration config = ((GraphicsConfiguration) configs.get(i)); Rectangle bounds = config.getBounds(); if (bounds.contains(x, y)) { return config; } } return null; }
From source file:org.rdv.ui.MainPanel.java
private void leaveFullScreenMode() { GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment(); GraphicsDevice[] devices = ge.getScreenDevices(); for (int i = 0; i < devices.length; i++) { GraphicsDevice device = devices[i]; if (device.isFullScreenSupported() && device.getFullScreenWindow() == frame) { log.info("Leaving full screen mode."); frame.setVisible(false);// w w w .j a v a 2 s . c om device.setFullScreenWindow(null); frame.dispose(); frame.setUndecorated(false); frame.setVisible(true); break; } } }
From source file:ffx.ui.MainPanel.java
/** * <p>//from ww w . ja va 2 s . com * initialize</p> */ public void initialize() { if (init) { return; } init = true; String dir = System.getProperty("user.dir", FileSystemView.getFileSystemView().getDefaultDirectory().getAbsolutePath()); setCWD(new File(dir)); locale = new FFXLocale("en", "US"); JDialog splashScreen = null; ClassLoader loader = getClass().getClassLoader(); if (!GraphicsEnvironment.isHeadless()) { // Splash Screen JFrame.setDefaultLookAndFeelDecorated(true); splashScreen = new JDialog(frame, false); ImageIcon logo = new ImageIcon(loader.getResource("ffx/ui/icons/splash.png")); JLabel ffxLabel = new JLabel(logo); ffxLabel.setBorder(BorderFactory.createEtchedBorder(EtchedBorder.RAISED)); Container contentpane = splashScreen.getContentPane(); contentpane.setLayout(new BorderLayout()); contentpane.add(ffxLabel, BorderLayout.CENTER); splashScreen.setUndecorated(true); splashScreen.pack(); Dimension screenDimension = getToolkit().getScreenSize(); Dimension splashDimension = splashScreen.getSize(); splashScreen.setLocation((screenDimension.width - splashDimension.width) / 2, (screenDimension.height - splashDimension.height) / 2); splashScreen.setResizable(false); splashScreen.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE); splashScreen.setVisible(true); // Make all pop-up Menus Heavyweight so they play nicely with Java3D JPopupMenu.setDefaultLightWeightPopupEnabled(false); } // Create the Root Node dataRoot = new MSRoot(); Border bb = BorderFactory.createEtchedBorder(EtchedBorder.RAISED); statusLabel = new JLabel(" "); JLabel stepLabel = new JLabel(" "); stepLabel.setHorizontalAlignment(JLabel.RIGHT); JLabel energyLabel = new JLabel(" "); energyLabel.setHorizontalAlignment(JLabel.RIGHT); JPanel statusPanel = new JPanel(new GridLayout(1, 3)); statusPanel.setBorder(bb); statusPanel.add(statusLabel); statusPanel.add(stepLabel); statusPanel.add(energyLabel); if (!GraphicsEnvironment.isHeadless()) { GraphicsConfigTemplate3D template3D = new GraphicsConfigTemplate3D(); template3D.setDoubleBuffer(GraphicsConfigTemplate.PREFERRED); GraphicsConfiguration gc = GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice() .getBestConfiguration(template3D); graphicsCanvas = new GraphicsCanvas(gc, this); graphicsPanel = new GraphicsPanel(graphicsCanvas, statusPanel); } // Initialize various Panels hierarchy = new Hierarchy(this); hierarchy.setStatus(statusLabel, stepLabel, energyLabel); keywordPanel = new KeywordPanel(this); modelingPanel = new ModelingPanel(this); JPanel treePane = new JPanel(new BorderLayout()); JScrollPane scrollPane = new JScrollPane(hierarchy, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS); treePane.add(scrollPane, BorderLayout.CENTER); tabbedPane = new JTabbedPane(); ImageIcon graphicsIcon = new ImageIcon(loader.getResource("ffx/ui/icons/monitor.png")); ImageIcon keywordIcon = new ImageIcon(loader.getResource("ffx/ui/icons/key.png")); ImageIcon modelingIcon = new ImageIcon(loader.getResource("ffx/ui/icons/cog.png")); tabbedPane.addTab(locale.getValue("Graphics"), graphicsIcon, graphicsPanel); tabbedPane.addTab(locale.getValue("KeywordEditor"), keywordIcon, keywordPanel); tabbedPane.addTab(locale.getValue("ModelingCommands"), modelingIcon, modelingPanel); tabbedPane.addChangeListener(this); splitPane = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, false, treePane, tabbedPane); /* splitPane = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, false, treePane, graphicsPanel); */ splitPane.setResizeWeight(0.25); splitPane.setOneTouchExpandable(true); setLayout(new BorderLayout()); add(splitPane, BorderLayout.CENTER); if (!GraphicsEnvironment.isHeadless()) { mainMenu = new MainMenu(this); add(mainMenu.getToolBar(), BorderLayout.NORTH); getModelingShell(); loadPrefs(); SwingUtilities.updateComponentTreeUI(SwingUtilities.getRoot(this)); splashScreen.dispose(); } }
From source file:com.sikulix.core.SX.java
private static void globalGetMonitors() { if (!isHeadless()) { genv = GraphicsEnvironment.getLocalGraphicsEnvironment(); gdevs = genv.getScreenDevices(); nMonitors = gdevs.length;/* w ww. ja v a 2s . c o m*/ if (nMonitors == 0) { terminate(1, "globalGetMonitors: GraphicsEnvironment has no ScreenDevices"); } monitorBounds = new Rectangle[nMonitors]; rAllMonitors = null; Rectangle currentBounds; for (int i = 0; i < nMonitors; i++) { currentBounds = new Rectangle(gdevs[i].getDefaultConfiguration().getBounds()); if (null != rAllMonitors) { rAllMonitors = rAllMonitors.union(currentBounds); } else { rAllMonitors = currentBounds; } if (currentBounds.contains(new Point())) { if (mainMonitor < 0) { mainMonitor = i; debug("globalGetMonitors: 1#ScreenDevice %d has (0,0) --- will be primary Screen(0)", i); } else { debug("globalGetMonitors: 2#ScreenDevice %d too contains (0,0)!", i); } } debug("globalGetMonitors: Monitor %d: (%d, %d) %d x %d", i, currentBounds.x, currentBounds.y, currentBounds.width, currentBounds.height); monitorBounds[i] = currentBounds; } if (mainMonitor < 0) { debug("globalGetMonitors: No ScreenDevice has (0,0) --- using 0 as primary: %s", monitorBounds[0]); mainMonitor = 0; } } else { error("running in headless environment"); } }
From source file:self.philbrown.javaQuery.$.java
/** * Animates the selected views out of its parent by sliding it down, past its bottom * @param options use to modify the behavior of the animation *//*from w w w . j a v a2 s. com*/ @SuppressWarnings("unchecked") public void slideDown(final AnimationOptions options) { for (final Component view : this.views) { Component parent = view.getParent(); float y = 0; if (parent != null) { y = parent.getHeight(); } else { Rectangle display = GraphicsEnvironment.getLocalGraphicsEnvironment().getMaximumWindowBounds(); y = display.height; } $.with(view).animate(QuickMap.qm(QuickEntry.qe("y", y)), options); } }
From source file:edu.ku.brc.specify.tasks.ReportsBaseTask.java
/** * @param model/*from w w w . j a va 2 s . co m*/ * @return * @throws Exception */ public DynamicReport buildReport(final TableModel model, final PageSetupDlg pageSetupDlg) throws Exception { // Find a Sans Serif Font on the System String fontName = null; GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment(); for (java.awt.Font font : ge.getAllFonts()) { String fName = font.getFamily().toLowerCase(); if (StringUtils.contains(fName, "sansserif") || StringUtils.contains(fName, "arial") || StringUtils.contains(fName, "verdana")) { fontName = font.getFamily(); } } if (fontName == null) { fontName = Font._FONT_TIMES_NEW_ROMAN; } /** * Creates the DynamicReportBuilder and sets the basic options for the report */ FastReportBuilder drb = new FastReportBuilder(); Style columDetail = new Style(); //columDetail.setBorder(Border.THIN); Style columDetailWhite = new Style(); //columDetailWhite.setBorder(Border.THIN); columDetailWhite.setBackgroundColor(Color.WHITE); columDetailWhite.setFont(new Font(10, fontName, true)); columDetailWhite.setHorizontalAlign(HorizontalAlign.CENTER); columDetailWhite.setBlankWhenNull(true); Style columDetailWhiteBold = new Style(); //columDetailWhiteBold.setBorder(Border.THIN); columDetailWhiteBold.setBackgroundColor(Color.WHITE); Style titleStyle = new Style(); titleStyle.setFont(new Font(14, fontName, true)); /*Style numberStyle = new Style(); numberStyle.setHorizontalAlign(HorizontalAlign.RIGHT); Style amountStyle = new Style(); amountStyle.setHorizontalAlign(HorizontalAlign.RIGHT); amountStyle.setBackgroundColor(Color.cyan); amountStyle.setTransparency(Transparency.OPAQUE);*/ //Font dataRowFont = new Font(10, Font._FONT_VERDANA, true); // Odd Row Style Style oddRowStyle = new Style(); //oddRowStyle.setBorder(Border.NO_BORDER); //oddRowStyle.setFont(dataRowFont); oddRowStyle.setHorizontalAlign(HorizontalAlign.CENTER); Color veryLightGrey = new Color(240, 240, 240); oddRowStyle.setBackgroundColor(veryLightGrey); oddRowStyle.setTransparency(Transparency.OPAQUE); // Event Row Style //Style evenRowStyle = new Style(); //evenRowStyle.setBorder(Border.NO_BORDER); //evenRowStyle.setFont(dataRowFont); // Create Column Headers for the Report for (int i = 0; i < model.getColumnCount(); i++) { String colName = model.getColumnName(i); Class<?> dataClass = model.getColumnClass(i); if (dataClass == Object.class) { if (model.getRowCount() > 0) { Object data = model.getValueAt(0, i); if (data != null) { dataClass = data.getClass(); } else { // Column in first row was null so search down the rows // for a non-empty cell for (int j = 1; j < model.getRowCount(); j++) { data = model.getValueAt(j, i); if (dataClass != null) { dataClass = data.getClass(); break; } } if (dataClass == null) { dataClass = String.class; } } } } ColumnBuilder colBldr = ColumnBuilder.getInstance().setColumnProperty(colName, dataClass.getName()); int bracketInx = colName.indexOf('['); if (bracketInx > -1) { colName = colName.substring(0, bracketInx - 1); } colBldr.setTitle(colName); //colBldr.setWidth(new Integer(100)); colBldr.setStyle(columDetailWhite); //colBldr.setHeaderStyle(columDetailWhite); AbstractColumn column = colBldr.build(); drb.addColumn(column); Style headerStyle = new Style(); headerStyle.setFont(new Font(12, fontName, true)); //headerStyle.setBorder(Border.THIN); headerStyle.setHorizontalAlign(HorizontalAlign.CENTER); headerStyle.setVerticalAlign(VerticalAlign.MIDDLE); headerStyle.setBackgroundColor(new Color(80, 80, 80)); headerStyle.setTransparency(Transparency.OPAQUE); headerStyle.setTextColor(new Color(255, 255, 255)); column.setHeaderStyle(headerStyle); } drb.setTitle(pageSetupDlg.getPageTitle()); drb.setTitleStyle(titleStyle); //drb.setTitleHeight(new Integer(30)); //drb.setSubtitleHeight(new Integer(20)); //drb.setDetailHeight(new Integer(15)); //drb.setDefaultStyles(null, null, null, evenRowStyle); drb.setLeftMargin(20); drb.setRightMargin(20); drb.setTopMargin(10); drb.setBottomMargin(10); drb.setPrintBackgroundOnOddRows(true); drb.setOddRowBackgroundStyle(oddRowStyle); drb.setColumnsPerPage(new Integer(1)); drb.setUseFullPageWidth(true); drb.setColumnSpace(new Integer(5)); // This next line causes an exception // Event with DynamicReport 3.0.12 and JasperReposrts 3.7.3 //drb.addAutoText(AutoText.AUTOTEXT_PAGE_X_OF_Y, AutoText.POSITION_FOOTER, AutoText.ALIGMENT_CENTER); Page[] pageSizes = new Page[] { Page.Page_Letter_Portrait(), Page.Page_Legal_Portrait(), Page.Page_A4_Portrait(), Page.Page_Letter_Landscape(), Page.Page_Legal_Landscape(), Page.Page_A4_Landscape() }; int pageSizeInx = pageSetupDlg.getPageSize() + (pageSetupDlg.isPortrait() ? 0 : 3); drb.setPageSizeAndOrientation(pageSizes[pageSizeInx]); DynamicReport dr = drb.build(); return dr; }
From source file:self.philbrown.javaQuery.$.java
/** * Animates the selected views out of its parent by sliding it right, past its edge * @param options use to modify the behavior of the animation *//* ww w.ja va 2s. c om*/ @SuppressWarnings("unchecked") public void slideRight(final AnimationOptions options) { for (final Component view : this.views) { Component parent = view.getParent(); float x = 0; if (parent != null) { x = parent.getWidth(); } else { Rectangle display = GraphicsEnvironment.getLocalGraphicsEnvironment().getMaximumWindowBounds(); x = display.height; } $.with(view).animate(QuickMap.qm($.entry("x", x)), options); } }
From source file:base.BasePlayer.Main.java
public Main() { super(new GridBagLayout()); try {// w w w . j a v a2 s. c om //UIManager.put("PopupMenu.border", BorderFactory.createMatteBorder(0, 20, 0, 0, new Color(230,230,230))); //URL fontUrl = new URL("http://www.webpagepublicity.com/" + // "free-fonts/a/Airacobra%20Condensed.ttf"); // URL fontUrl = new URL("C:/HY-Data/RKATAINE/WinPython-64bit-3.5.3.1Qt5/python-3.5.3.amd64/share/numdifftools/docs/_build/html/_static/fonts/Inconsolata-Regular.ttf"); // URL fonturl = this.getClass().getResource("OpenSans-Regular.ttf"); // menuFont = Font.createFont(Font.TRUETYPE_FONT, new File(fonturl.getFile())); // C:\HY-Data\RKATAINE\WinPython-64bit-3.5.3.1Qt5\python-3.5.3.amd64\Lib\site-packages\reportlab\fonts Launcher.fromMain = true; Launcher.main(args); VariantHandler.main(argsit); glass = Toolkit.getDefaultToolkit().getImage(getClass().getResource("icons/glass.jpg")); ToolTipManager.sharedInstance().setInitialDelay(100); // ToolTipManager.sharedInstance().setDismissDelay(2000); UIManager.put("ToolTip.background", new Color(255, 255, 214)); UIManager.put("ToolTip.border", BorderFactory.createCompoundBorder( UIManager.getBorder("ToolTip.border"), BorderFactory.createEmptyBorder(4, 4, 4, 4))); lineseparator = System.getProperty("line.separator"); proxysettings = new ProxySettings(); panel = new JPanel(new GridBagLayout()); //menuFont = menuFont.deriveFont(Font.PLAIN,12); Draw.defaultFont = menuFont; gd = GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice(); width = gd.getDisplayMode().getWidth(); height = gd.getDisplayMode().getHeight(); if (Launcher.fontSize.equals("")) { if (width < 1500) { defaultFontSize = 11; buttonHeight = Main.defaultFontSize * 2; buttonWidth = Main.defaultFontSize * 6; } else if (width < 2000) { defaultFontSize = 12; buttonHeight = Main.defaultFontSize * 2 + 4; buttonWidth = Main.defaultFontSize * 6 + 4; } else if (width < 3000) { defaultFontSize = 15; buttonHeight = Main.defaultFontSize * 2 + 4; buttonWidth = Main.defaultFontSize * 6 + 4; } else { defaultFontSize = 19; buttonHeight = Main.defaultFontSize * 2 + 4; buttonWidth = Main.defaultFontSize * 6 + 4; } } else { try { defaultFontSize = Integer.parseInt(Launcher.fontSize); } catch (Exception e) { defaultFontSize = 12; } } menuFont = new Font("SansSerif", Font.PLAIN, Main.defaultFontSize); menuFontBold = new Font("SansSerif", Font.BOLD, Main.defaultFontSize); // menuFont = new Font("SansSerif", Font.BOLD, Main.defaultFontSize); } catch (Exception e) { e.printStackTrace(); } FileSystemView fsv = FileSystemView.getFileSystemView(); File[] paths = File.listRoots(); for (File path : paths) { if (fsv.getSystemDisplayName(path).contains("merit")) { pleiades = true; } } screenSize = new Dimension(width, height); drawHeight = (int) (screenSize.getHeight() * 0.6); sidebarWidth = (int) (screenSize.getWidth() * 0.1); drawWidth = (int) (screenSize.getWidth() - sidebarWidth); thisMainListener = this; try { htsjdk.samtools.util.Log.setGlobalLogLevel(htsjdk.samtools.util.Log.LogLevel.ERROR); /* for(int i=0;i<snow.length; i++) { snow[i][0] = (height*Math.random()); snow[i][1] = (4*Math.random() +1); snow[i][2] = (12*Math.random() -6); snow[i][3] = (2*Math.random() +1); }*/ frame.addWindowListener(new java.awt.event.WindowAdapter() { @Override public void windowClosing(java.awt.event.WindowEvent windowEvent) { /*if (JOptionPane.showConfirmDialog(frame, "Are you sure to close this window?", "Really Closing?", JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE) == JOptionPane.YES_OPTION){ System.exit(0); }*/ if (configChanged) { try { BufferedWriter fileWriter = new BufferedWriter(new FileWriter(Launcher.configfile)); for (int i = 0; i < Launcher.config.size(); i++) { fileWriter.write(Launcher.config.get(i) + lineseparator); } fileWriter.close(); } catch (Exception e) { e.printStackTrace(); } } } }); baseMap.put((byte) 'A', 1); baseMap.put((byte) 'C', 2); baseMap.put((byte) 'G', 3); baseMap.put((byte) 'T', 4); baseMap.put((byte) 'N', 5); baseMap.put((byte) 'I', 6); baseMap.put((byte) 'D', 7); mutTypes.put("TA", 0); mutTypes.put("AT", 0); mutTypes.put("TC", 1); mutTypes.put("AG", 1); mutTypes.put("TG", 2); mutTypes.put("AC", 2); mutTypes.put("CA", 3); mutTypes.put("GT", 3); mutTypes.put("CG", 4); mutTypes.put("GC", 4); mutTypes.put("CT", 5); mutTypes.put("GA", 5); getBase.put((byte) 'A', "A"); getBase.put((byte) 'C', "C"); getBase.put((byte) 'G', "G"); getBase.put((byte) 'T', "T"); getBase.put((byte) 'N', "N"); getBase.put((byte) 'a', "A"); getBase.put((byte) 'c', "C"); getBase.put((byte) 'g', "G"); getBase.put((byte) 't', "T"); getBase.put((byte) 'n', "N"); java.net.URL imgUrl = getClass().getResource("icons/save.gif"); save = new ImageIcon(imgUrl); imgUrl = getClass().getResource("icons/open.gif"); open = new ImageIcon(imgUrl); imgUrl = getClass().getResource("icons/settings.png"); settingsIcon = new ImageIcon(imgUrl); userDir = new File(Main.class.getProtectionDomain().getCodeSource().getLocation().getPath()).getParent() .replace("%20", " "); settings = new JMenuItem("Settings", settingsIcon); // Average.frame.setVisible(false); try { savedir = Launcher.defaultSaveDir; path = Launcher.defaultDir; gerp = Launcher.gerpfile; defaultGenome = Launcher.defaultGenome; defaultAnnotation = Launcher.defaultAnnotation; isProxy = Launcher.isProxy; proxyHost = Launcher.proxyHost; proxyPort = Launcher.proxyPort; proxyType = Launcher.proxyType; if (isProxy) { ProxySettings.useProxy.setSelected(true); } if (!proxyHost.equals("")) { ProxySettings.hostField.setText(proxyHost); } if (!proxyPort.equals("")) { ProxySettings.portField.setText(proxyPort); } if (!Launcher.proxyType.equals("")) { ProxySettings.proxytypes.setSelectedItem(proxyType); } if (Launcher.backColor.equals("")) { Draw.backColor = new Color(90, 90, 90); } else { Draw.backColor = new Color(Integer.parseInt(Launcher.backColor), Integer.parseInt(Launcher.backColor), Integer.parseInt(Launcher.backColor)); Settings.graySlider.setValue(Integer.parseInt(Launcher.backColor)); } if (Launcher.genomeDir.equals("")) { genomeDir = new File(userDir + "/genomes/"); } else { if (new File(Launcher.genomeDir).exists()) { genomeDir = new File(Launcher.genomeDir); } else { genomeDir = new File(userDir + "/genomes/"); } } annotationfile = defaultAnnotation; controlDir = Launcher.ctrldir; trackDir = Launcher.trackDir; projectDir = Launcher.projectDir; downloadDir = Launcher.downloadDir; } catch (Exception e) { e.printStackTrace(); } File[] genomes = genomeDir.listFiles(new FilenameFilter() { public boolean accept(File dir, String name) { return !name.contains(".txt") && !name.startsWith("."); } }); chromHeight = (int) (drawHeight * 0.1); drawDimensions = new Dimension(drawWidth, drawHeight - chromHeight); bedDimensions = new Dimension(drawWidth, bedHeight); chromDimensions = new Dimension(drawWidth - Main.sidebarWidth - 1, drawHeight); drawCanvas = new Draw((int) drawDimensions.getWidth(), (int) drawDimensions.getHeight()); controlDraw = new ControlCanvas((int) bedDimensions.getWidth(), (int) bedDimensions.getHeight()); iconImage = Toolkit.getDefaultToolkit().getImage(getClass().getResource("icons/icon.png")); frame.setIconImage(iconImage); /* if(args.length > 0) { for(int i = 0; i<args.length; i++) { if(args[i].startsWith("-opendir")) { path = args[i].substring(9).replace(" ", ""); } else if(args[i].startsWith("-ctrldir")) { Control.path = args[i].substring(9).replace(" ", ""); } } }*/ // BGZIPInputStream in = this.getClass().getResourceAsStream("SELEX_1505_representative_matrices.bedhead.gz"); searchField.getDocument().addDocumentListener(new DocumentListener() { private String searchstring; public void changedUpdate(DocumentEvent e) { if (searchField.getText().contains(";")) { searchList = searchField.getText().split(";"); for (int i = 0; i < searchList.length; i++) { warn(searchList[i].replace(" ", "")); } } else { warn(searchField.getText().replace(" ", "")); } } public void removeUpdate(DocumentEvent e) { if (searchField.getText().contains(";")) { searchList = searchField.getText().split(";"); for (int i = 0; i < searchList.length; i++) { warn(searchList[i].replace(" ", "")); } } else { warn(searchField.getText().replace(" ", "")); } } public void insertUpdate(DocumentEvent e) { if (searchField.getText().contains(";")) { searchList = searchField.getText().split(";"); for (int i = 0; i < searchList.length; i++) { warn(searchList[i].replace(" ", "")); } } else { warn(searchField.getText().replace(" ", "")); } } public void warn(String searchtext) { if (searchTable.containsKey(searchtext.toUpperCase())) { if (searchTable.get(searchtext.toUpperCase())[0] .equals(Main.chromosomeDropdown.getSelectedItem())) { searchChrom = searchTable.get(searchtext.toUpperCase())[0]; searchStart = Integer.parseInt(searchTable.get(searchtext.toUpperCase())[1]); searchEnd = Integer.parseInt(searchTable.get(searchtext.toUpperCase())[2]); } else { chromDraw.repaint(); searchStart = -1; searchEnd = -1; } chromDraw.repaint(); searchField.setForeground(Color.black); } else if (searchField.getText().toUpperCase().matches("CHR.{1,2}(?!:)")) { if (Main.chromnamevector.contains(searchtext.toUpperCase().substring(3))) { searchField.setForeground(Color.black); } else { chromDraw.repaint(); searchField.setForeground(Color.red); } } else if (searchtext.toUpperCase().replace(",", "").matches("(CHR)?(.+:)?\\d+(-\\d+)?")) { searchField.setForeground(Color.black); if (searchtext.contains(":")) { searchstring = searchtext.substring(searchtext.indexOf(":") + 1).replace(",", ""); } else { chromDraw.repaint(); searchstring = searchtext.replace(",", ""); } if (!searchstring.contains("-")) { try { searchStart = Integer.parseInt(searchstring); } catch (Exception ex) { } searchEnd = -1; } else { try { searchStart = Integer .parseInt(searchstring.substring(0, searchstring.indexOf("-"))); searchEnd = Integer.parseInt(searchstring.substring(searchstring.indexOf("-") + 1)); } catch (Exception ex) { } } chromDraw.repaint(); } else { chromDraw.repaint(); searchField.setForeground(Color.red); searchStart = -1; searchEnd = -1; } } }); try { A = Toolkit.getDefaultToolkit().getImage(getClass().getResource("SELEX/A.png")); C = Toolkit.getDefaultToolkit().getImage(getClass().getResource("SELEX/C.png")); G = Toolkit.getDefaultToolkit().getImage(getClass().getResource("SELEX/G.png")); T = Toolkit.getDefaultToolkit().getImage(getClass().getResource("SELEX/T.png")); } catch (Exception e) { e.printStackTrace(); } ErrorLog.main(args); this.setBackground(Color.black); UIManager.put("FileChooser.readOnly", Boolean.TRUE); panel.setBackground(Draw.sidecolor); panel.setBorder(BorderFactory.createLineBorder(Color.white)); searchField.addKeyListener(this); frame.addKeyListener(this); frame.getContentPane().setBackground(Color.black); glassPane.addMouseListener(this); glassPane.addMouseMotionListener(new MouseMotionListener() { @Override public void mouseDragged(MouseEvent arg0) { } @Override public void mouseMoved(MouseEvent event) { // g.drawRect(drawScroll.getWidth()/2-Main.canceltextwidth/2-Main.defaultFontSize/2, Main.drawScroll.getViewport().getHeight()*2/3+Draw.loadingFont.getSize()*3-Main.defaultFontSize/4, Main.canceltextwidth+Main.defaultFontSize, Draw.loadingFont.getSize()+Main.defaultFontSize/2); if (drawCanvas.loading && event.getX() > drawScroll.getWidth() / 2 - Main.canceltextwidth / 2 - Main.defaultFontSize / 2 && event.getX() < drawScroll.getWidth() / 2 + Main.canceltextwidth / 2 + Main.defaultFontSize / 2 && event.getY() > frame.getHeight() * 1 / 3 + Draw.loadingFont.getSize() * 3 - Main.defaultFontSize / 4 && event.getY() < frame.getHeight() * 1 / 3 + Draw.loadingFont.getSize() * 4 + Main.defaultFontSize / 2) { if (!Main.cancelhover) { Main.cancelhover = true; Main.glassPane.requestFocus(); } } else { if (Main.cancelhover) { Main.cancelhover = false; Main.glassPane.requestFocus(false); } } } }); background.put((byte) 'A', 0.3); background.put((byte) 'C', 0.2); background.put((byte) 'G', 0.2); background.put((byte) 'T', 0.3); bases = new Hashtable<String, String>(); bases.put("A", "A"); bases.put("C", "C"); bases.put("G", "G"); bases.put("T", "T"); bases.put("N", "N"); bases.put("delA", "delA"); bases.put("delC", "delC"); bases.put("delG", "delG"); bases.put("delT", "delT"); bases.put("insA", "insA"); bases.put("insC", "insC"); bases.put("insG", "insG"); bases.put("insT", "insT"); chromDraw = new ChromDraw(drawWidth, chromHeight); VariantCaller.main(argsit); PeakCaller.main(argsit); tablebrowser = new TableBrowser(); bedconverter = new BEDconvert(); try { File annodir; File[] annotations; addGenome.addMouseListener(this); genome = new JMenu("Genomes"); genome.setName("genomeMenu"); genome.add(addGenome); genome.addComponentListener(this); File[] fastadir; String[] empty = {}; refModel = new DefaultComboBoxModel<String>(empty); refDropdown = new SteppedComboBox(refModel); refDropdown.addMouseListener(this); String[] emptygenes = {}; refDropdown.addActionListener(refDropActionListener); geneModel = new DefaultComboBoxModel<String>(emptygenes); geneDropdown = new SteppedComboBox(geneModel); geneDropdown.addMouseListener(this); if (genomes != null) { for (int i = 0; i < genomes.length; i++) { if (!genomes[i].isDirectory()) { continue; } annodir = new File(genomes[i].getAbsolutePath() + "/annotation/"); if (genomes[i].isDirectory()) { fastadir = genomes[i].listFiles(); for (int f = 0; f < fastadir.length; f++) { if (fastadir[f].isDirectory()) { continue; } if (fastadir[f].getName().contains(".fai")) { continue; } else if (fastadir[f].getName().contains(".fa")) { fastahash.put(genomes[i].getName(), fastadir[f]); } } } annotations = annodir.listFiles(); genomehash.put(genomes[i].getName(), new ArrayList<File>()); refModel.addElement(genomes[i].getName()); if (genomes[i].getName().length() > reflength) { reflength = genomes[i].getName().length(); } JMenu addMenu = new JMenu(genomes[i].getName()); addMenu.addMouseListener(this); addMenu.setName(genomes[i].getName()); JMenuItem addAnnotation = new JMenuItem("Add new annotation file..."); addAnnotation.addMouseListener(this); addAnnotation.setName("add_annotation"); addMenu.add(addAnnotation); JLabel addLabel = new JLabel(" Select annotation: "); labels.add(addLabel); addMenu.add(addLabel); addMenu.add(new JSeparator()); genome.add(addMenu); addMenu.addComponentListener(this); if (annotations != null) { for (int j = 0; j < annotations.length; j++) { annofiles = annotations[j].listFiles(); for (int f = 0; f < annofiles.length; f++) { if (annofiles[f].getName().endsWith(".bed.gz")) { if (annofiles[f].getName() .substring(0, annofiles[f].getName().indexOf(".bed.gz")) .length() > annolength) { annolength = annofiles[f].getName().length(); } genomehash.get(genomes[i].getName()).add(annofiles[f].getAbsoluteFile()); JMenuItem additem = new JMenuItem(annofiles[f].getName().substring(0, annofiles[f].getName().indexOf(".bed.gz"))); additem.setName(annofiles[f].getName().substring(0, annofiles[f].getName().indexOf(".bed.gz"))); additem.addMouseListener(this); addMenu.add(additem); additem.addComponentListener(this); break; } } } } } refModel.addElement("Add new reference..."); } if (genomes.length == 0) { /*if(Launcher.firstStart) { Main.writeToConfig("FirstStart=false"); }*/ AddGenome.createAndShowGUI(); AddGenome.frame.setTitle("Add new genome"); AddGenome.remove.setEnabled(false); AddGenome.download.setEnabled(false); AddGenome.frame.setLocation((int) (screenSize.getWidth() / 2 - AddGenome.frame.getWidth() / 2), (int) (screenSize.getHeight() / 6)); AddGenome.frame.setState(JFrame.NORMAL); AddGenome.frame.setVisible(true); AddGenome.frame.setAlwaysOnTop(true); /* WelcomeScreen.main(args); WelcomeScreen.frame.setVisible(true); WelcomeScreen.frame.setLocation(frame.getLocationOnScreen().x+frame.getWidth()/2 - WelcomeScreen.frame.getWidth()/2, frame.getLocationOnScreen().y+frame.getHeight()/6); */ if (genomes.length != 0) { if (!genomehash.containsKey(defaultGenome)) { setChromDrop(genomes[0].getName()); defaultGenome = genomes[0].getName(); } else { setChromDrop(defaultGenome); } getBands(); getExons(); } else { setChromDrop(null); } } else { if (!genomehash.containsKey(defaultGenome)) { setChromDrop(genomes[0].getName()); defaultGenome = genomes[0].getName(); } else { setChromDrop(defaultGenome); } getBands(); getExons(); } if (Launcher.firstStart) { WelcomeScreen.createAndShowGUI(); WelcomeScreen.frame.setLocation( (int) (screenSize.getWidth() / 2 - WelcomeScreen.frame.getWidth() / 2), (int) (screenSize.getHeight() / 6)); WelcomeScreen.frame.setVisible(true); } setMenuBar(); setButtons(); Settings.main(args); // Settings.main(args); frame.requestFocus(); drawCanvas.addKeyListener(this); bedCanvas.addKeyListener(this); setFonts(); chromLabel.setText("Chromosome " + chromosomeDropdown.getSelectedItem().toString()); CheckUpdates check = new CheckUpdates(); check.execute(); // Main.drawCanvas.loading("test"); Main.drawCanvas.splits.get(0) .setCytoImage(Main.chromDraw.createBands(Main.drawCanvas.splits.get(0))); } catch (Exception e) { e.printStackTrace(); } } catch (Exception ex) { ex.printStackTrace(); Main.showError(ex.getMessage(), "Error"); } }