List of usage examples for java.awt Dimension getHeight
public double getHeight()
From source file:jhplot.HChart.java
/** * Resize the pad given by the inxX and indxY. It calculates the original * pad sizes, and then scale it by a given factor. In this case, the pad * sizes can be different.// ww w . ja v a 2 s.com * * @param n1 * the location of the plot in x * @param n2 * the location of the plot in y * * @param widthScale * scale factor applied to the width of the current pad * @param heightScale * scale factor applied the height of the current pad. */ public void resizePad(int n1, int n2, double widthScale, double heightScale) { Dimension dim = cp[n1][n2].getSize(); double h = dim.getHeight(); double w = dim.getWidth(); cp[n1][n2].setPreferredSize(new Dimension((int) (w * widthScale), (int) (h * heightScale))); cp[n1][n2].setMinimumSize(new Dimension((int) (w * widthScale), (int) (h * heightScale))); cp[n1][n2].setSize(new Dimension((int) (w * widthScale), (int) (h * heightScale))); }
From source file:jhplot.HChart.java
/** * Resize the current pad. It calculates the original pad sizes, and then * scale it by a given factor. In this case, the pad sizes can be different. * //w w w. j a va 2 s . co m * @param widthScale * scale factor applied to the width of the current pad * @param heightScale * scale factor applied the height of the current pad. */ public void resizePad(double widthScale, double heightScale) { Dimension dim = cp[N1][N2].getSize(); double h = dim.getHeight(); double w = dim.getWidth(); cp[N1][N2].setPreferredSize(new Dimension((int) (w * widthScale), (int) (h * heightScale))); cp[N1][N2].setMinimumSize(new Dimension((int) (w * widthScale), (int) (h * heightScale))); cp[N1][N2].setSize(new Dimension((int) (w * widthScale), (int) (h * heightScale))); }
From source file:com.centurylink.mdw.designer.pages.ExportHelper.java
public void printImagePdf(String filename, DesignerCanvas canvas, Dimension graphsize) { try {//from w w w . j av a 2s.c o m DefaultFontMapper mapper = new DefaultFontMapper(); FontFactory.registerDirectories(); mapper.insertDirectory("c:\\winnt\\fonts"); // mapper.insertDirectory("c:\\windows\\fonts"); // we create a template and a Graphics2D object that corresponds // with it int margin = 72; // 1 inch float scale = 0.5f; boolean multiple_page = true; Rectangle page_size; if (multiple_page) { page_size = PageSize.LETTER.rotate(); } else { page_size = new Rectangle((int) (graphsize.getWidth() * scale) + margin, (int) (graphsize.getHeight() * scale) + margin); } Document document = new Document(page_size); DocWriter writer = PdfWriter.getInstance(document, new FileOutputStream(filename)); document.open(); document.setPageSize(page_size); int image_w = (int) page_size.getWidth() - margin; int image_h = (int) page_size.getHeight() - margin; boolean edsave = canvas.editable; canvas.editable = false; Color bgsave = canvas.getBackground(); canvas.setBackground(Color.white); if (multiple_page) { int horizontal_pages = (int) (graphsize.width * scale) / image_w + 1; int vertical_pages = (int) (graphsize.height * scale) / image_h + 1; for (int i = 0; i < horizontal_pages; i++) { for (int j = 0; j < vertical_pages; j++) { Image img; PdfContentByte cb = ((PdfWriter) writer).getDirectContent(); PdfTemplate tp = cb.createTemplate(image_w, image_h); Graphics2D g2 = tp.createGraphics(image_w, image_h, mapper); tp.setWidth(image_w); tp.setHeight(image_h); g2.scale(scale, scale); g2.translate(-i * image_w / scale, -j * image_h / scale); canvas.paintComponent(g2); g2.dispose(); img = new ImgTemplate(tp); document.add(img); } } } else { Image img; PdfContentByte cb = ((PdfWriter) writer).getDirectContent(); PdfTemplate tp = cb.createTemplate(image_w, image_h); Graphics2D g2 = tp.createGraphics(image_w, image_h, mapper); tp.setWidth(image_w); tp.setHeight(image_h); g2.scale(scale, scale); canvas.paintComponent(g2); g2.dispose(); img = new ImgTemplate(tp); document.add(img); } canvas.setBackground(bgsave); canvas.editable = edsave; document.close(); } catch (Exception e) { e.printStackTrace(); } }
From source file:org.apache.fop.render.pcl.PCLGenerator.java
private RenderedImage getMask(RenderedImage img, Dimension targetDim) { ColorModel cm = img.getColorModel(); if (cm.hasAlpha()) { BufferedImage alpha = new BufferedImage(img.getWidth(), img.getHeight(), BufferedImage.TYPE_BYTE_GRAY); Raster raster = img.getData(); GraphicsUtil.copyBand(raster, cm.getNumColorComponents(), alpha.getRaster(), 0); BufferedImageOp op1 = new LookupOp(new ByteLookupTable(0, THRESHOLD_TABLE), null); BufferedImage alphat = op1.filter(alpha, null); BufferedImage mask;// w ww .j av a 2 s . co m if (true) { mask = new BufferedImage(targetDim.width, targetDim.height, BufferedImage.TYPE_BYTE_BINARY); } else { byte[] arr = { (byte) 0, (byte) 0xff }; ColorModel colorModel = new IndexColorModel(1, 2, arr, arr, arr); WritableRaster wraster = Raster.createPackedRaster(DataBuffer.TYPE_BYTE, targetDim.width, targetDim.height, 1, 1, null); mask = new BufferedImage(colorModel, wraster, false, null); } Graphics2D g2d = mask.createGraphics(); try { AffineTransform at = new AffineTransform(); double sx = targetDim.getWidth() / img.getWidth(); double sy = targetDim.getHeight() / img.getHeight(); at.scale(sx, sy); g2d.drawRenderedImage(alphat, at); } finally { g2d.dispose(); } /* try { BatchDiffer.saveAsPNG(alpha, new java.io.File("D:/out-alpha.png")); BatchDiffer.saveAsPNG(mask, new java.io.File("D:/out-mask.png")); } catch (IOException e) { e.printStackTrace(); }*/ return mask; } else { return null; } }
From source file:net.pms.newgui.components.WindowProperties.java
/** * Creates a new instance using the specified parameters. * * @param window the {@link Window} whose properties to keep track of. * @param standardSize the standard size of {@code window}. * @param mimimumSize the minimum size of {@code window}. * @param windowConfiguration the {@link WindowPropertiesConfiguration} * instance for reading and writing the window properties. *//*from w w w .j av a 2 s . c o m*/ public WindowProperties(@Nonnull Window window, @Nullable Dimension standardSize, @Nullable Dimension mimimumSize, @Nullable WindowPropertiesConfiguration windowConfiguration) { if (window == null) { throw new IllegalArgumentException("window cannot be null"); } this.window = window; this.minimumSize = mimimumSize; if (mimimumSize != null) { window.setMinimumSize(mimimumSize); } this.windowConfiguration = windowConfiguration; if (windowConfiguration != null) { getConfiguration(); GraphicsConfiguration windowGraphicsConfiguration = window.getGraphicsConfiguration(); if (windowBounds != null && effectiveScreenBounds != null && graphicsDevice != null && graphicsDevice.equals(windowGraphicsConfiguration.getDevice().getIDstring()) && screenBounds != null && screenBounds.equals(windowGraphicsConfiguration.getBounds())) { setWindowBounds(); } else { Rectangle screen = effectiveScreenBounds != null ? effectiveScreenBounds : windowGraphicsConfiguration.getBounds(); if (standardSize != null && screen.width >= standardSize.width && screen.height >= standardSize.height) { window.setSize(standardSize); } else if (mimimumSize != null && (window.getWidth() < mimimumSize.width || window.getHeight() < mimimumSize.getHeight())) { window.setSize(mimimumSize); } window.setLocationByPlatform(true); } if (window instanceof Frame) { // Set maximized state int maximizedState = windowState & Frame.MAXIMIZED_BOTH; if (maximizedState != 0) { ((Frame) window).setExtendedState(((Frame) window).getExtendedState() | maximizedState); } } } window.addWindowListener(this); window.addComponentListener(this); }
From source file:it.cnr.icar.eric.client.ui.swing.RegistryBrowser.java
/** * Creates a new RegistryBrowser object. *///from w ww.j a va 2s . c om @SuppressWarnings("unchecked") private RegistryBrowser() { instance = this; classLoader = getClass().getClassLoader(); // new // JAXRBrowserClassLoader(getClass().getClassLoader()); Thread.currentThread().setContextClassLoader(classLoader); /* * try { classLoader.loadClass("javax.xml.soap.SOAPMessage"); } catch * (ClassNotFoundException e) { * log.error("Could not find class javax.xml.soap.SOAPMessage", e); } */ UIManager.addPropertyChangeListener(new UISwitchListener(getRootPane())); // add listener for 'locale' bound property addPropertyChangeListener(PROPERTY_LOCALE, this); menuBar = new JMenuBar(); fileMenu = new JMenu(); editMenu = new JMenu(); viewMenu = new JMenu(); helpMenu = new JMenu(); JSeparator JSeparator1 = new JSeparator(); newItem = new JMenuItem(); importItem = new JMenuItem(); saveItem = new JMenuItem(); saveAsItem = new JMenuItem(); exitItem = new JMenuItem(); cutItem = new JMenuItem(); copyItem = new JMenuItem(); pasteItem = new JMenuItem(); aboutItem = new JMenuItem(); setJMenuBar(menuBar); setTitle(resourceBundle.getString("title.registryBrowser.java")); setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE); getContentPane().setLayout(new BorderLayout(0, 0)); // Scale window to be centered using 70% of screen Dimension dim = Toolkit.getDefaultToolkit().getScreenSize(); setBounds((int) (dim.getWidth() * .15), (int) (dim.getHeight() * .1), (int) (dim.getWidth() * .7), (int) (dim.getHeight() * .75)); setVisible(false); saveFileDialog.setMode(FileDialog.SAVE); saveFileDialog.setTitle(resourceBundle.getString("dialog.save.title")); GridBagLayout gb = new GridBagLayout(); topPanel.setLayout(gb); getContentPane().add("North", topPanel); GridBagConstraints c = new GridBagConstraints(); toolbarPanel.setLayout(new FlowLayout(FlowLayout.LEADING, 0, 0)); toolbarPanel.setBounds(0, 0, 488, 29); discoveryToolBar = createDiscoveryToolBar(); toolbarPanel.add(discoveryToolBar); // c.gridx = 0; c.gridy = 0; c.gridwidth = 1; c.gridheight = 1; c.weightx = 0.5; c.weighty = 0.5; c.fill = GridBagConstraints.HORIZONTAL; c.anchor = GridBagConstraints.LINE_START; c.insets = new Insets(0, 0, 0, 0); gb.setConstraints(toolbarPanel, c); topPanel.add(toolbarPanel); // Panel containing context info like registry location and user context JPanel contextPanel = new JPanel(); GridBagLayout gb1 = new GridBagLayout(); contextPanel.setLayout(gb1); locationLabel = new JLabel(resourceBundle.getString("label.registryLocation")); // locationLabel.setPreferredSize(new Dimension(80, 23)); // c.gridx = 0; c.gridy = 0; c.gridwidth = 1; c.gridheight = 1; c.weightx = 0.0; c.weighty = 0.5; c.fill = GridBagConstraints.NONE; c.anchor = GridBagConstraints.LINE_START; c.insets = new Insets(0, 5, 0, 0); gb1.setConstraints(locationLabel, c); // contextPanel.setBackground(Color.green); contextPanel.add(locationLabel); selectAnItemText = new ItemText(selectAnItem); registryCombo.addItem(selectAnItemText.toString()); ConfigurationType uiConfigurationType = UIUtility.getInstance().getConfigurationType(); RegistryURIListType urlList = uiConfigurationType.getRegistryURIList(); List<String> urls = urlList.getRegistryURI(); Iterator<String> urlsIter = urls.iterator(); while (urlsIter.hasNext()) { ItemText url = new ItemText(urlsIter.next()); registryCombo.addItem(url.toString()); } registryCombo.setEditable(true); registryCombo.setEnabled(true); registryCombo.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { final String url = (String) registryCombo.getSelectedItem(); if ((url == null) || (url.equals(selectAnItem))) { return; } // Clean tabbedPaneParent. Will create new content tabbedPaneParent.removeAll(); conceptsTreeDialog = null; ConceptsTreeDialog.clearCache(); // design: // 1. connect and construct tabbedPane in a now swing thread // 2. add tabbedPane in swing thread // 3. call reloadModel that should use WingWorkers final SwingWorker worker1 = new SwingWorker(RegistryBrowser.this) { public Object doNonUILogic() { try { // Try to connect if (connectToRegistry(url)) { return new JBTabbedPane(); } } catch (JAXRException e1) { displayError(e1); } return null; } public void doUIUpdateLogic() { tabbedPane = (JBTabbedPane) get(); if (tabbedPane != null) { tabbedPaneParent.add(tabbedPane, BorderLayout.CENTER); tabbedPane.reloadModel(); try { // DBH 1/30/04 - Add the submissions panel if // the user is authenticated. ConnectionImpl connection = RegistryBrowser.client.connection; boolean newValue = connection.isAuthenticated(); firePropertyChange(PROPERTY_AUTHENTICATED, false, newValue); getRootPane().updateUI(); } catch (JAXRException e1) { displayError(e1); } } } }; worker1.start(); } }); // c.gridx = 1; c.gridy = 0; c.gridwidth = 1; c.gridheight = 1; c.weightx = 0.9; c.weighty = 0.5; c.fill = GridBagConstraints.HORIZONTAL; c.anchor = GridBagConstraints.CENTER; c.insets = new Insets(0, 0, 5, 0); gb1.setConstraints(registryCombo, c); contextPanel.add(registryCombo); JLabel currentUserLabel = new JLabel(resourceBundle.getString("label.currentUser"), SwingConstants.TRAILING); c.gridx = 2; c.gridy = 0; c.gridwidth = 1; c.gridheight = 1; c.weightx = 0.0; c.weighty = 0.0; c.fill = GridBagConstraints.NONE; c.anchor = GridBagConstraints.LINE_START; c.insets = new Insets(0, 5, 5, 0); gb1.setConstraints(currentUserLabel, c); // contextPanel.add(currentUserLabel); currentUserText.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) { @SuppressWarnings("unused") String text = currentUserText.getText(); } }); currentUserText.setEditable(false); c.gridx = 3; c.gridy = 0; c.gridwidth = 1; c.gridheight = 1; c.weightx = 0.9; c.weighty = 0.5; c.fill = GridBagConstraints.HORIZONTAL; c.anchor = GridBagConstraints.LINE_START; c.insets = new Insets(0, 0, 5, 5); gb1.setConstraints(currentUserText, c); // contextPanel.add(currentUserText); c.gridx = 0; c.gridy = 1; c.gridwidth = 1; c.gridheight = 1; c.weightx = 0.9; c.weighty = 0.5; c.fill = GridBagConstraints.HORIZONTAL; c.anchor = GridBagConstraints.CENTER; c.insets = new Insets(0, 0, 0, 0); gb.setConstraints(contextPanel, c); topPanel.add(contextPanel, c); tabbedPaneParent.setBorder(BorderFactory.createBevelBorder(BevelBorder.LOWERED)); tabbedPaneParent.setLayout(new BorderLayout()); tabbedPaneParent.setToolTipText(resourceBundle.getString("tabbedPane.tip")); getContentPane().add("Center", tabbedPaneParent); fileMenu.setText(resourceBundle.getString("menu.file")); fileMenu.setActionCommand("File"); fileMenu.setMnemonic((int) 'F'); menuBar.add(fileMenu); saveItem.setHorizontalTextPosition(SwingConstants.TRAILING); saveItem.setText(resourceBundle.getString("menu.save")); saveItem.setActionCommand("Save"); saveItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S, Event.CTRL_MASK)); saveItem.setMnemonic((int) 'S'); // fileMenu.add(saveItem); fileMenu.add(JSeparator1); importItem.setText(resourceBundle.getString("menu.import")); importItem.setActionCommand("Import"); importItem.setMnemonic((int) 'I'); importItem.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { RegistryBrowser.setWaitCursor(); importFromFile(); RegistryBrowser.setDefaultCursor(); } }); fileMenu.add(importItem); exitItem.setText(resourceBundle.getString("menu.exit")); exitItem.setActionCommand("Exit"); exitItem.setMnemonic((int) 'X'); fileMenu.add(exitItem); editMenu.setText(resourceBundle.getString("menu.edit")); editMenu.setActionCommand("Edit"); editMenu.setMnemonic((int) 'E'); // menuBar.add(editMenu); cutItem.setHorizontalTextPosition(SwingConstants.TRAILING); cutItem.setText(resourceBundle.getString("menu.cut")); cutItem.setActionCommand("Cut"); cutItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_X, Event.CTRL_MASK)); cutItem.setMnemonic((int) 'T'); editMenu.add(cutItem); copyItem.setHorizontalTextPosition(SwingConstants.TRAILING); copyItem.setText(resourceBundle.getString("menu.copy")); copyItem.setActionCommand("Copy"); copyItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_C, Event.CTRL_MASK)); copyItem.setMnemonic((int) 'C'); editMenu.add(copyItem); pasteItem.setHorizontalTextPosition(SwingConstants.TRAILING); pasteItem.setText(resourceBundle.getString("menu.paste")); pasteItem.setActionCommand("Paste"); pasteItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_V, Event.CTRL_MASK)); pasteItem.setMnemonic((int) 'P'); editMenu.add(pasteItem); viewMenu.setText(resourceBundle.getString("menu.view")); viewMenu.setActionCommand("view"); viewMenu.setMnemonic((int) 'V'); themeMenu = new MetalThemeMenu(resourceBundle.getString("menu.theme"), themes); viewMenu.add(themeMenu); menuBar.add(viewMenu); helpMenu.setText(resourceBundle.getString("menu.help")); helpMenu.setActionCommand("Help"); helpMenu.setMnemonic((int) 'H'); menuBar.add(helpMenu); aboutItem.setHorizontalTextPosition(SwingConstants.TRAILING); aboutItem.setText(resourceBundle.getString("menu.about")); aboutItem.setActionCommand("About..."); aboutItem.setMnemonic((int) 'A'); aboutItem.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { Object[] aboutArgs = { BROWSER_VERSION }; MessageFormat form = new MessageFormat(resourceBundle.getString("dialog.about.text")); JOptionPane.showMessageDialog(RegistryBrowser.this, form.format(aboutArgs), resourceBundle.getString("dialog.about.title"), JOptionPane.INFORMATION_MESSAGE); } }); helpMenu.add(aboutItem); // REGISTER_LISTENERS SymWindow aSymWindow = new SymWindow(); this.addWindowListener(aSymWindow); SymAction lSymAction = new SymAction(); saveItem.addActionListener(lSymAction); exitItem.addActionListener(lSymAction); SwingUtilities.updateComponentTreeUI(getContentPane()); SwingUtilities.updateComponentTreeUI(menuBar); SwingUtilities.updateComponentTreeUI(fileChooser); // Auto select the registry that is configured to connect to by default String selectedIndexStr = ProviderProperties.getInstance() .getProperty("jaxr-ebxml.registryBrowser.registryLocationCombo.initialSelectionIndex", "0"); int index = Integer.parseInt(selectedIndexStr); try { registryCombo.setSelectedIndex(index); } catch (IllegalArgumentException e) { Object[] invalidIndexArguments = { new Integer(index) }; MessageFormat form = new MessageFormat(resourceBundle.getString("message.error.invalidIndex")); displayError(form.format(invalidIndexArguments), e); } }
From source file:org.yccheok.jstock.gui.charting.ChartJDialog.java
/** Creates new form ChartJDialog */ public ChartJDialog(java.awt.Frame parent, String title, boolean modalNotUsed, StockHistoryServer stockHistoryServer) { super(title); this.parent = parent; this.parent.addWindowListener(this); this.setIconImage(parent.getIconImage()); initComponents();/*w w w . ja va 2 s . c o m*/ initKeyBindings(); // Must initialized first before any other operations. Our objective // is to show this chart as fast as possible. Hence, we will pass in // null first, till we sure what are we going to create. this.chartPanel = new ChartPanel(null, true, true, true, true, true); this.stockHistoryServer = stockHistoryServer; final ChartJDialogOptions chartJDialogOptions = JStock.instance().getChartJDialogOptions(); this.changeInterval(chartJDialogOptions.getInterval()); // Yellow box and chart resizing (#2969416) // // paradoxoff : // If the available size for a ChartPanel exceeds the dimensions defined // by the maximumDrawWidth and maximumDrawHeight attributes, the // ChartPanel will draw the chart in a Rectangle defined by the maximum // sizes and then scale it to fill the available size. // All you need to do is to avoid that scaling by using sufficiently // large values for the maximumDrawWidth and maximumDrawHeight, e. g. // by using the Dimension returned from // Toolkit.getDefaultToolkit().getScreenSize() // http://www.jfree.org/phpBB2/viewtopic.php?f=3&t=30059 final Dimension dimension = Toolkit.getDefaultToolkit().getScreenSize(); this.chartPanel.setMaximumDrawWidth((int) Math.round(dimension.getWidth())); this.chartPanel.setMaximumDrawHeight((int) Math.round(dimension.getHeight())); // Make chartPanel able to receive key event. // So that we may use arrow key to move around yellow information box. this.chartPanel.setFocusable(true); this.chartPanel.requestFocus(); final org.jdesktop.jxlayer.JXLayer<ChartPanel> layer = new org.jdesktop.jxlayer.JXLayer<ChartPanel>( this.chartPanel); this.chartLayerUI = new ChartLayerUI<ChartPanel>(this); layer.setUI(this.chartLayerUI); // Call after JXLayer has been initialized. changeType assumes JXLayer // is ready. this.changeType(chartJDialogOptions.getType()); getContentPane().add(layer, java.awt.BorderLayout.CENTER); // Handle resize. this.addComponentListener(new java.awt.event.ComponentAdapter() { @Override public void componentResized(ComponentEvent e) { ChartJDialog.this.chartLayerUI.updateTraceInfos(); } }); // Update GUI. if (JStock.instance().getJStockOptions().getChartTheme() == JStockOptions.ChartTheme.Light) { this.jRadioButtonMenuItem3.setSelected(true); } else { this.jRadioButtonMenuItem4.setSelected(true); } }
From source file:com.isti.traceview.common.TraceViewChartPanel.java
/** * Paints the component by drawing the chart to fill the entire component, but allowing for the * insets (which will be non-zero if a border has been set for this component). To increase * performance (at the expense of memory), an off-screen buffer image can be used. * //w w w . j a v a 2 s .c o m * @param g * the graphics device for drawing on. */ public void paintComponent(Graphics g) { super.paintComponent(g); if (this.chart == null) { return; } Graphics2D g2 = (Graphics2D) g.create(); // first determine the size of the chart rendering area... Dimension size = getSize(); Insets insets = getInsets(); Rectangle2D available = new Rectangle2D.Double(insets.left, insets.top, size.getWidth() - insets.left - insets.right, size.getHeight() - insets.top - insets.bottom); // work out if scaling is required... boolean scale = false; double drawWidth = available.getWidth(); double drawHeight = available.getHeight(); this.scaleX = 1.0; this.scaleY = 1.0; if (drawWidth < this.minimumDrawWidth) { this.scaleX = drawWidth / this.minimumDrawWidth; drawWidth = this.minimumDrawWidth; scale = true; } else if (drawWidth > this.maximumDrawWidth) { this.scaleX = drawWidth / this.maximumDrawWidth; drawWidth = this.maximumDrawWidth; scale = true; } if (drawHeight < this.minimumDrawHeight) { this.scaleY = drawHeight / this.minimumDrawHeight; drawHeight = this.minimumDrawHeight; scale = true; } else if (drawHeight > this.maximumDrawHeight) { this.scaleY = drawHeight / this.maximumDrawHeight; drawHeight = this.maximumDrawHeight; scale = true; } Rectangle2D chartArea = new Rectangle2D.Double(0.0, 0.0, drawWidth, drawHeight); // are we using the chart buffer? if (this.useBuffer) { // do we need to resize the buffer? if ((this.chartBuffer == null) || (this.chartBufferWidth != available.getWidth()) || (this.chartBufferHeight != available.getHeight())) { this.chartBufferWidth = (int) available.getWidth(); this.chartBufferHeight = (int) available.getHeight(); this.chartBuffer = new BufferedImage(this.chartBufferWidth, this.chartBufferHeight, BufferedImage.TYPE_INT_RGB); //this.chartBuffer = createImage(this.chartBufferWidth, this.chartBufferHeight); -by Max // GraphicsConfiguration gc = g2.getDeviceConfiguration(); // this.chartBuffer = gc.createCompatibleImage( // this.chartBufferWidth, this.chartBufferHeight, // Transparency.TRANSLUCENT); this.refreshBuffer = true; } // do we need to redraw the buffer? if (this.refreshBuffer) { Rectangle2D bufferArea = new Rectangle2D.Double(0, 0, this.chartBufferWidth, this.chartBufferHeight); Graphics2D bufferG2 = (Graphics2D) this.chartBuffer.getGraphics(); if (scale) { AffineTransform saved = bufferG2.getTransform(); AffineTransform st = AffineTransform.getScaleInstance(this.scaleX, this.scaleY); bufferG2.transform(st); this.chart.draw(bufferG2, chartArea, this.anchor, this.info); bufferG2.setTransform(saved); } else { this.chart.draw(bufferG2, bufferArea, this.anchor, this.info); } this.refreshBuffer = false; } // zap the buffer onto the panel... g2.drawImage(this.chartBuffer, insets.left, insets.top, this); } // or redrawing the chart every time... else { AffineTransform saved = g2.getTransform(); g2.translate(insets.left, insets.top); if (scale) { AffineTransform st = AffineTransform.getScaleInstance(this.scaleX, this.scaleY); g2.transform(st); } this.chart.draw(g2, chartArea, this.anchor, this.info); g2.setTransform(saved); } // Redraw the zoom rectangle (if present) drawZoomRectangle(g2); g2.dispose(); this.anchor = null; this.verticalTraceLine = null; this.horizontalTraceLine = null; }
From source file:gui.GW2EventerGui.java
/** * Creates new form GW2EventerGui// w w w . j a v a 2s. co m */ public GW2EventerGui() { this.guiIcon = new ImageIcon(ClassLoader.getSystemResource("media/icon.png")).getImage(); if (System.getProperty("os.name").startsWith("Windows")) { this.OS = "Windows"; this.isWindows = true; } else { this.OS = "Other"; this.isWindows = false; } if (this.isWindows == true) { this.checkIniDir(); } initComponents(); this.speakQueue = new LinkedList(); this.speakRunnable = new Runnable() { @Override public void run() { String path = System.getProperty("user.home") + "\\.gw2eventer"; File f; String sentence; while (!speakQueue.isEmpty()) { f = new File(path + "\\tts.vbs"); if (!f.exists() && !f.isDirectory()) { sentence = (String) speakQueue.poll(); try { Writer writer = new OutputStreamWriter( new FileOutputStream( System.getProperty("user.home") + "\\.gw2eventer\\tts.vbs"), "ISO-8859-15"); BufferedWriter fout = new BufferedWriter(writer); fout.write("Dim Speak"); fout.newLine(); fout.write("Set Speak=CreateObject(\"sapi.spvoice\")"); fout.newLine(); fout.write("Speak.Speak \"" + sentence + "\""); fout.close(); Runtime rt = Runtime.getRuntime(); try { if (sentence.length() > 0) { Process p = rt.exec(System.getProperty("user.home") + "\\.gw2eventer\\tts.bat"); } } catch (IOException ex) { Logger.getLogger(GW2EventerGui.class.getName()).log(Level.SEVERE, null, ex); } } catch (FileNotFoundException ex) { Logger.getLogger(GW2EventerGui.class.getName()).log(Level.SEVERE, null, ex); } catch (IOException ex) { Logger.getLogger(GW2EventerGui.class.getName()).log(Level.SEVERE, null, ex); } try { Thread.sleep(3000); } catch (InterruptedException ex) { Logger.getLogger(GW2EventerGui.class.getName()).log(Level.SEVERE, null, ex); } } else { try { Thread.sleep(1000); } catch (InterruptedException ex) { Logger.getLogger(GW2EventerGui.class.getName()).log(Level.SEVERE, null, ex); } } } } }; this.matchIds = new HashMap(); this.matchId = "2-6"; this.matchIdColor = "green"; this.jLabelNewVersion.setVisible(false); this.updateInformed = false; Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); this.setLocation(screenSize.width / 2 - this.getSize().width / 2, (screenSize.height / 2 - this.getSize().height / 2) - 20); double width = screenSize.getWidth(); double height = screenSize.getHeight(); if ((width == 1280) && (height == 720 || height == 768 || height == 800)) { this.setExtendedState(this.MAXIMIZED_BOTH); //this.setLocation(0, 0); } JSpinner.NumberEditor jsEditor = (JSpinner.NumberEditor) this.jSpinnerRefreshTime.getEditor(); DefaultFormatter formatter = (DefaultFormatter) jsEditor.getTextField().getFormatter(); formatter.setAllowsInvalid(false); /* jsEditor = (JSpinner.NumberEditor)this.jSpinnerOverlayX.getEditor(); formatter = (DefaultFormatter) jsEditor.getTextField().getFormatter(); formatter.setAllowsInvalid(false); jsEditor = (JSpinner.NumberEditor)this.jSpinnerOverlayY.getEditor(); formatter = (DefaultFormatter) jsEditor.getTextField().getFormatter(); formatter.setAllowsInvalid(false); */ this.workingButton = this.jButtonRefresh; this.refreshSelector = this.jCheckBoxAutoRefresh; this.addWindowListener(new WindowAdapter() { @Override public void windowClosing(WindowEvent e) { apiManager.saveSettingstoFile(); System.exit(0); } }); this.pushGui = new PushGui(this, true, "", ""); this.pushGui.setIconImage(guiIcon); this.donateGui = new DonateGui(this, true); this.donateGui.setIconImage(guiIcon); this.infoGui = new InfoGui(this, true); this.infoGui.setIconImage(guiIcon); this.feedbackGui = new FeedbackGui(this, true); this.feedbackGui.setIconImage(guiIcon); this.overlayGui = new OverlayGui(this); this.initOverlayGui(); this.settingsOverlayGui = new SettingsOverlayGui(this); this.initSettingsOverlayGui(); this.wvwOverlayGui = new WvWOverlayGui(this); this.initWvwOverlayGui(); this.language = "en"; this.worldID = "2206"; //Millersund [DE] this.setTranslations(); this.eventLabels = new ArrayList(); this.eventLabelsTimer = new ArrayList(); this.homeWorlds = new HashMap(); this.preventSystemSleep = true; for (int i = 1; i <= EVENT_COUNT; i++) { try { Field f = getClass().getDeclaredField("labelEvent" + i); JLabel l = (JLabel) f.get(this); l.setPreferredSize(new Dimension(70, 28)); //l.setToolTipText(""); //int width2 = l.getX(); //int height2 = l.getY(); //System.out.println("$coords .= \"{\\\"x\\\": \\\""+ width2 + "\\\", \\\"y\\\": \\\""+ height2 + "\\\"},\\n\";"); this.eventLabels.add(l); final int ii = i; l.addMouseListener(new java.awt.event.MouseAdapter() { @Override public void mousePressed(java.awt.event.MouseEvent evt) { showSoundSelector(ii); } }); f = getClass().getDeclaredField("labelTimer" + i); l = (JLabel) f.get(this); l.setEnabled(true); l.setVisible(false); l.setForeground(Color.green); //int width2 = l.getX(); //int height2 = l.getY(); //System.out.println("$coords2 .= \"{\\\"x\\\": \\\""+ width2 + "\\\", \\\"y\\\": \\\""+ height2 + "\\\"},\\n\";"); this.eventLabelsTimer.add(l); } catch (NoSuchFieldException | SecurityException | IllegalArgumentException | IllegalAccessException ex) { Logger.getLogger(GW2EventerGui.class.getName()).log(Level.SEVERE, null, ex); } } int[] disabledEvents = { 6, 8, 11, 12, 17, 18, 19, 20, 21, 22 }; for (int i = 0; i < disabledEvents.length; i++) { Field f; JLabel l; try { f = getClass().getDeclaredField("labelEvent" + disabledEvents[i]); l = (JLabel) f.get(this); l.setEnabled(false); l.setVisible(false); f = getClass().getDeclaredField("labelTimer" + disabledEvents[i]); l = (JLabel) f.get(this); l.setEnabled(false); l.setVisible(false); } catch (NoSuchFieldException | SecurityException | IllegalArgumentException | IllegalAccessException ex) { Logger.getLogger(GW2EventerGui.class.getName()).log(Level.SEVERE, null, ex); } } this.lastPush = new Date(); if (this.apiManager == null) { this.apiManager = new ApiManager(this, this.jSpinnerRefreshTime, this.jCheckBoxAutoRefresh.isSelected(), this.eventLabels, this.language, this.worldID, this.homeWorlds, this.jComboBoxHomeWorld, this.jLabelServer, this.jLabelWorking, this.jCheckBoxPlaySounds.isSelected(), this.workingButton, this.refreshSelector, this.eventLabelsTimer, this.jComboBoxLanguage, this.overlayGui, this.jCheckBoxWvWOverlay); } //this.wvwMatchReader = new WvWMatchReader(this.matchIds, this.jCheckBoxWvW); //this.wvwMatchReader.start(); this.preventSleepMode(); this.runUpdateService(); this.runPushService(); this.runTips(); //this.runTest(); }
From source file:org.gtdfree.GTDFree.java
private void flashMessage(String string, Point location) { if (flasher == null) { flasher = new JWindow(); flasher.addMouseListener(new MouseAdapter() { @Override//from ww w .j a va2s. c o m public void mouseClicked(MouseEvent e) { flasher.setVisible(false); } }); flasher.setContentPane(flasherText = new JLabel()); flasherText.setBorder(new Border() { Insets insets = new Insets(5, 11, 5, 11); @Override public void paintBorder(Component c, Graphics g, int x, int y, int width, int height) { // } @Override public boolean isBorderOpaque() { return false; } @Override public Insets getBorderInsets(Component c) { return insets; } }); flasherText.setBackground(new Color(0xf3f3ad)); flasherText.setOpaque(true); } flasher.setVisible(false); flasherText.setText(string); flasher.pack(); flasher.setLocation(location.x - flasher.getWidth() / 2, location.y - flasher.getHeight()); if (flasher.getLocation().x < 0) { flasher.setLocation(0, flasher.getLocation().y); } if (flasher.getLocation().y < 0) { flasher.setLocation(flasher.getLocation().x, 0); } Dimension d = Toolkit.getDefaultToolkit().getScreenSize(); if (flasher.getLocation().x + flasher.getWidth() > d.getWidth()) { flasher.setLocation((int) (d.getWidth() - flasher.getWidth()), flasher.getLocation().y); } if (flasher.getLocation().y + flasher.getHeight() > d.getHeight()) { flasher.setLocation(flasher.getLocation().x, (int) (d.getHeight() - flasher.getHeight())); } flasher.setVisible(true); new Thread() { @Override public synchronized void run() { try { wait(3000); } catch (InterruptedException e) { Logger.getLogger(this.getClass()).debug("Internal error.", e); //$NON-NLS-1$ } flasher.setVisible(false); } }.start(); }