X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=blobdiff_plain;f=bundles%2Forg.simantics.g2d%2Fsrc%2Forg%2Fsimantics%2Fg2d%2Fchassis%2FTooltip.java;fp=bundles%2Forg.simantics.g2d%2Fsrc%2Forg%2Fsimantics%2Fg2d%2Fchassis%2FTooltip.java;h=9ddf5eb3529eb9f0a61080051e5a97e51ff719ff;hb=0ae2b770234dfc3cbb18bd38f324125cf0faca07;hp=3211c39a6d66a3b45f5c0c3189897a0d6ba35ce2;hpb=24e2b34260f219f0d1644ca7a138894980e25b14;p=simantics%2Fplatform.git diff --git a/bundles/org.simantics.g2d/src/org/simantics/g2d/chassis/Tooltip.java b/bundles/org.simantics.g2d/src/org/simantics/g2d/chassis/Tooltip.java index 3211c39a6..9ddf5eb35 100644 --- a/bundles/org.simantics.g2d/src/org/simantics/g2d/chassis/Tooltip.java +++ b/bundles/org.simantics.g2d/src/org/simantics/g2d/chassis/Tooltip.java @@ -1,102 +1,102 @@ -/******************************************************************************* - * Copyright (c) 2007, 2011 Association for Decentralized Information Management in - * Industry THTH ry. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * VTT Technical Research Centre of Finland - initial API and implementation - *******************************************************************************/ -package org.simantics.g2d.chassis; - -import java.awt.BorderLayout; -import java.awt.Color; -import java.awt.Component; -import java.awt.GridLayout; -import java.awt.MouseInfo; -import java.awt.Point; -import java.awt.event.MouseAdapter; -import java.awt.event.MouseListener; - -import javax.swing.BorderFactory; -import javax.swing.JFrame; -import javax.swing.JLabel; -import javax.swing.JPanel; - -public class Tooltip extends JFrame { - - JPanel panel; - - Tooltip() { - super(); - panel = new JPanel(); - panel.setBorder(BorderFactory.createLineBorder(Color.black)); - add(panel); - - addMouseListener( ml ); - // Mouse Capture -// long eventMask = AWTEvent.MOUSE_MOTION_EVENT_MASK + AWTEvent.MOUSE_EVENT_MASK; -// Toolkit.getDefaultToolkit().addAWTEventListener( new AWTEventListener() -// { -// public void eventDispatched(AWTEvent e) -// { -// System.out.println(e); -// } -// }, eventMask); - - setFocusableWindowState(false); - setUndecorated(true); - - setAlwaysOnTop(true); - Color c = new Color(255, 255, 220); - panel.setBackground( c ); - setFocusable(false); - Point mouse = MouseInfo.getPointerInfo().getLocation(); - setLocation( mouse ); - setResizable(false); - - pack(); - setVisible( true ); - } - - public Tooltip( String...tips ) - { - this(); - GridLayout gl = new GridLayout(tips.length, 1, 5, 5); -// Insets i = new Insets(3, 3, 3, 3); - panel.setLayout( gl ); - for (String tip : tips) { - JLabel label = new JLabel( tip ); - panel.add( label ); - } - pack(); - setVisible( true ); - } - - public Tooltip( Component component ) - { - this(); - setContent( component ); - } - - void setContent( Component component ) { - panel.add( component, BorderLayout.CENTER ); - pack(); - setVisible( true ); - } - - MouseListener ml = new MouseAdapter() { - public void mouseExited(java.awt.event.MouseEvent e) { - if (e.getSource() == Tooltip.this) { - Tooltip.this.dispose(); - } - }; - - public void mouseClicked(java.awt.event.MouseEvent e) { - Tooltip.this.dispose(); - }; - }; - -} +/******************************************************************************* + * Copyright (c) 2007, 2011 Association for Decentralized Information Management in + * Industry THTH ry. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * VTT Technical Research Centre of Finland - initial API and implementation + *******************************************************************************/ +package org.simantics.g2d.chassis; + +import java.awt.BorderLayout; +import java.awt.Color; +import java.awt.Component; +import java.awt.GridLayout; +import java.awt.MouseInfo; +import java.awt.Point; +import java.awt.event.MouseAdapter; +import java.awt.event.MouseListener; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JPanel; + +public class Tooltip extends JFrame { + + JPanel panel; + + Tooltip() { + super(); + panel = new JPanel(); + panel.setBorder(BorderFactory.createLineBorder(Color.black)); + add(panel); + + addMouseListener( ml ); + // Mouse Capture +// long eventMask = AWTEvent.MOUSE_MOTION_EVENT_MASK + AWTEvent.MOUSE_EVENT_MASK; +// Toolkit.getDefaultToolkit().addAWTEventListener( new AWTEventListener() +// { +// public void eventDispatched(AWTEvent e) +// { +// System.out.println(e); +// } +// }, eventMask); + + setFocusableWindowState(false); + setUndecorated(true); + + setAlwaysOnTop(true); + Color c = new Color(255, 255, 220); + panel.setBackground( c ); + setFocusable(false); + Point mouse = MouseInfo.getPointerInfo().getLocation(); + setLocation( mouse ); + setResizable(false); + + pack(); + setVisible( true ); + } + + public Tooltip( String...tips ) + { + this(); + GridLayout gl = new GridLayout(tips.length, 1, 5, 5); +// Insets i = new Insets(3, 3, 3, 3); + panel.setLayout( gl ); + for (String tip : tips) { + JLabel label = new JLabel( tip ); + panel.add( label ); + } + pack(); + setVisible( true ); + } + + public Tooltip( Component component ) + { + this(); + setContent( component ); + } + + void setContent( Component component ) { + panel.add( component, BorderLayout.CENTER ); + pack(); + setVisible( true ); + } + + MouseListener ml = new MouseAdapter() { + public void mouseExited(java.awt.event.MouseEvent e) { + if (e.getSource() == Tooltip.this) { + Tooltip.this.dispose(); + } + }; + + public void mouseClicked(java.awt.event.MouseEvent e) { + Tooltip.this.dispose(); + }; + }; + +}