javax.swing.JLayer源码实例Demo

类javax.swing.JLayer源码实例Demo

下面列出了javax.swing.JLayer 类实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: rapidminer-studio   文件: CardCellRenderer.java
/**
 * Creates a {@link CardCellRenderer} that is used by lists containing {@link Card}s.
 */
public CardCellRenderer() {
	setVerticalTextPosition(SwingConstants.BOTTOM);
	setHorizontalTextPosition(SwingConstants.CENTER);
	setHorizontalAlignment(CENTER);
	setOpaque(false);
	layer = new JLayer<>(this, new CardLayerUI());
}
 
源代码2 项目: mars-sim   文件: LoadingPanel.java
public LoadingPanel() {
	JPanel panel = new JPanel() {

		@Override
		public Dimension getPreferredSize() {
			return new Dimension(400, 300);
		}
	};
	JLayer<JPanel> jlayer = new JLayer<>(panel, layerUI);
	frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	frame.add(jlayer);
	frame.pack();
	frame.setVisible(true);
	layerUI.start();
}
 
源代码3 项目: mars-sim   文件: SpotlightLayerUI.java
@Override
public void installUI(JComponent c) {
  super.installUI(c);

  JLayer<?> jlayer = (JLayer<?>)c;
  jlayer.setLayerEventMask(
    AWTEvent.MOUSE_EVENT_MASK |
    AWTEvent.MOUSE_MOTION_EVENT_MASK
  );


}
 
源代码4 项目: mars-sim   文件: SpotlightLayerUI.java
@Override
protected void processMouseMotionEvent(MouseEvent e, JLayer l) {
  Point p = SwingUtilities.convertPoint(e.getComponent(), e.getPoint(), l);
  mX = p.x;
  mY = p.y;
  l.repaint();
}
 
源代码5 项目: mars-sim   文件: WaitLayerUI.java
@Override public void installUI(JComponent c) {
  super.installUI(c);
  ((JLayer)c).setLayerEventMask(
    AWTEvent.MOUSE_EVENT_MASK | AWTEvent.MOUSE_MOTION_EVENT_MASK |
    AWTEvent.MOUSE_WHEEL_EVENT_MASK | AWTEvent.KEY_EVENT_MASK |
    AWTEvent.FOCUS_EVENT_MASK | AWTEvent.COMPONENT_EVENT_MASK);
}
 
@Override
public void paint(Graphics g, JComponent c)
{
	super.paint(g, c);

	JLayer<?> jlayer = (JLayer<?>) c;

	JFormattedTextField jFormattedTextField = (JFormattedTextField) jlayer
			.getView();
	if (jFormattedTextField.getFormatterFactory() != null
			&& !jFormattedTextField.isEditValid())
	{
		Graphics2D g2 = (Graphics2D) g.create();

		// Paint a red X
		g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
				RenderingHints.VALUE_ANTIALIAS_ON);
		int w = c.getWidth();
		int h = c.getHeight();
		// int pad = 4;
		int s = 10;
		int pad = 10;
		int x = w - pad - s;
		int y = (h - s) / 2;
		ImageIcon icon = IconBuilder
				.build(frame.getMessenger().getConfig(),
						IconBuilder.INVALID_FIELD);
		g2.drawImage(icon.getImage(), x, y, null);
		g2.dispose();
	}
}
 
public ProductSceneViewTopComponent(ProductSceneView view, UndoRedo undoRedo) {
        super(view.getRaster());
        this.view = view;
        this.undoRedo = undoRedo != null ? undoRedo : UndoRedo.NONE;
        this.nodeRenameHandler = new NodeRenameHandler();
        this.selection = Selection.EMPTY;
        setToolTipText(view.getRaster().getDescription());
        setIcon(ImageUtilities.loadImage("org/esa/snap/rcp/icons/RsBandAsSwath.gif"));
        updateDisplayName();
        setName(getDisplayName());
/*
        // checkme - this is ugly and not wanted (nf), the node will either passed in or we'll have
        // a central node factory, e.g. via an ExtensionObject
        Node node = null;
        try {
            if (raster instanceof Mask) {
                node = new MNode((Mask) raster, undoRedo);
            } else if (raster instanceof Band) {
                node = new BNode((Band) raster, undoRedo);
            } else if (raster instanceof TiePointGrid) {
                node = new TPGNode((TiePointGrid) raster, undoRedo);
            }
        } catch (IntrospectionException e) {
            Exceptions.printStackTrace(e);
        }
        if (node != null) {
            setActivatedNodes(new Node[]{node});
        }
*/
        setLayout(new BorderLayout());
        add(new JLayer<>(this.view, new ProductSceneViewLayerUI()), BorderLayout.CENTER);
    }
 
源代码8 项目: FlatLaf   文件: FlatThemeEditorPane.java
FlatThemeEditorPane() {
		super( new BorderLayout() );

		// register FlatLaf token maker
		AbstractTokenMakerFactory tmf = (AbstractTokenMakerFactory) TokenMakerFactory.getDefaultInstance();
		tmf.putMapping( FLATLAF_STYLE, FlatThemeTokenMaker.class.getName() );

		// create text area
		textArea = new FlatSyntaxTextArea();
		textArea.setSyntaxEditingStyle( FLATLAF_STYLE );
		textArea.setMarkOccurrences( true );
		textArea.addParser( new FlatThemeParser() );
//		textArea.setUseColorOfColorTokens( true );

		// theme
		try {
			Theme theme = Theme.load( getClass().getResourceAsStream( "light.xml" ) );
			theme.apply( textArea );
		} catch( IOException ex ) {
			ex.printStackTrace();
		}

		// use semitransparent token background because token background
		// is painted over mark occurrences background
		SyntaxScheme scheme = textArea.getSyntaxScheme();
		scheme.getStyle( FlatThemeTokenMaker.TOKEN_COLOR ).background = new Color( 0x0a000000, true );
		scheme.getStyle( FlatThemeTokenMaker.TOKEN_VARIABLE ).background = new Color( 0x1800cc00, true );

		// create overlay layer
		JLayer<FlatSyntaxTextArea> overlay = new JLayer<>( textArea, new FlatThemeEditorOverlay() );

		// create scroll pane
		scrollPane = new RTextScrollPane( overlay );
		scrollPane.setLineNumbersEnabled( true );

		// scale fonts
		if( UIScale.getUserScaleFactor() != 1 )
			textArea.setFont( scaleFont( textArea.getFont() ) );

		// use same font for line numbers as in editor
		scrollPane.getGutter().setLineNumberFont( textArea.getFont() );

		add( scrollPane, BorderLayout.CENTER );
	}
 
源代码9 项目: netbeans   文件: HtmlPreviewElement.java
@Override
protected void processMouseEvent( MouseEvent e, JLayer<? extends JPanel> panel ) {
    super.processMouseEvent( e, panel );
    if( e.getButton() == MouseEvent.BUTTON1 )
        e.consume();
}
 
源代码10 项目: rapidminer-studio   文件: ConfigurableDialog.java
/**
 * Initializes the GUI.
 */
private void initGUI() {
	realOuterPanel = new JPanel(new BorderLayout());

	outerLayer = new JLayer<JPanel>(realOuterPanel);
	savingGlassPane = new TransparentGlassPanePanel(WAITING_ICON,
			I18N.getGUILabel("configurable_dialog.saving_configurables"), getBackground(), 0.5f);
	outerLayer.setGlassPane(savingGlassPane);
	savingGlassPane.setVisible(false);

	JPanel pagePanel = new JPanel(new BorderLayout());

	// list of configurables
	JPanel configPanel = createConfigPanel();
	// force size so it does not resize itself depending on entered values
	configPanel.setMinimumSize(CONFIG_LIST_SIZE);
	configPanel.setMaximumSize(CONFIG_LIST_SIZE);
	configPanel.setPreferredSize(CONFIG_LIST_SIZE);
	buttonPanel = createConfigurableButtonPanel();
	// create middle spacer
	JLabel spacer = new JLabel();
	spacer.setMinimumSize(DIMENSION_SPACER_MIDDLE);
	spacer.setMaximumSize(DIMENSION_SPACER_MIDDLE);
	spacer.setPreferredSize(DIMENSION_SPACER_MIDDLE);
	// add both to an outer panel for layout reasons
	JPanel outerConfigPanel = new JPanel(new BorderLayout());
	outerConfigPanel.setBorder(BorderFactory.createMatteBorder(0, 1, 1, 1, Color.LIGHT_GRAY));
	outerConfigPanel.add(configPanel, BorderLayout.CENTER);
	outerConfigPanel.add(buttonPanel, BorderLayout.SOUTH);
	// another panel for layouting
	JPanel outermostConfigPanel = new JPanel(new BorderLayout());
	outermostConfigPanel.add(outerConfigPanel, BorderLayout.CENTER);
	outermostConfigPanel.add(spacer, BorderLayout.EAST);

	// glass pane showed if the user is not able to edit connections due to an old version of
	// the server
	simpleGlassPane = new TransparentGlassPanePanel(null, null, getBackground(), 0.5f);

	// panel displaying the selected configurable
	JPanel paramPanel = createParameterPanel();

	GridBagConstraints c = new GridBagConstraints();
	c.fill = GridBagConstraints.BOTH;
	c.weightx = 1;
	c.weighty = 0.3;
	c.gridwidth = GridBagConstraints.REMAINDER;

	// add panels to page panel
	pagePanel.add(outermostConfigPanel, BorderLayout.WEST);
	pagePanel.add(paramPanel, BorderLayout.CENTER);

	// add page and button panel to outer panel
	realOuterPanel.add(pagePanel, BorderLayout.CENTER);

	layoutDefault(outerLayer, makeSaveButton(), makeCancel());
	new DeprecationWarning("manage_configurables").addToDialog(this);
	setDefaultSize(ButtonDialog.HUGE);
	setLocationRelativeTo(ApplicationFrame.getApplicationFrame());
	setModal(true);
	setDefaultCloseOperation(DO_NOTHING_ON_CLOSE);
	addWindowListener(new WindowAdapter() {

		@Override
		public void windowClosing(WindowEvent e) {
			cancelButton.doClick();
		}
	});

	updateButtonState(true);
}
 
源代码11 项目: rapidminer-studio   文件: ConfigurableDialog.java
/**
 * Updates the parameter panel for the selected {@link Configurable}.
 */
private void updateParameterPanel(Configurable config) {
	parameterPanel.removeAll();

	// save previously edited parameters
	updateModel();
	if (config != null) {
		try {
			// stripped text depending on the size of the panel
			String text = SwingTools.getStrippedJComponentText(outerPanel, config.getName(), outerPanel.getWidth() - 100,
					0);
			nameLabel.setText("<html><b>" + text + "</b></html>");

			// Get parameters based on Configurator implementation
			Parameters parameters = ConfigurationManager.getInstance().getAbstractConfigurator(config.getTypeId())
					.getParameterHandler(config).getParameters();

			// fill in real values of configurable
			for (String key : config.getParameters().keySet()) {
				parameters.setParameter(key, config.getParameters().get(key));
			}
			// init param panel with real values
			configParamPanel = new ConfiguratorParameterPanel(this, parameters);

			parameterLayer = new JLayer<JPanel>(configParamPanel);
			parameterLayer.setGlassPane(simpleGlassPane);
			simpleGlassPane.setVisible(false);

			// add it to wrapper panel
			parameterPanel.add(parameterLayer, BorderLayout.CENTER);

			boolean editingAllowed = true;
			boolean editingPossible = true;

			if (config.getSource() != null) {
				if (config.getSource().isConnected()) {
					if (!remoteControllers.get(config.getSource().getName()).getModel().hasAdminRights()) {
						editingAllowed = false;
					}
					// only interesting if we want to edit remote connections
					editingPossible = remoteControllers.get(config.getSource().getName()).getModel().isEditingPossible();
				}
			}

			if (!editingPossible) {

				SwingTools.setEnabledRecursive(configParamPanel, false);
				simpleGlassPane.setVisible(true);

			} else {
				if (!editingAllowed) {

					SwingTools.setEnabledRecursive(configParamPanel, false);
					simpleGlassPane.setVisible(true);
					renameButton.setVisible(false);
					removeButton.setVisible(false);
					actionPanel.setVisible(false);

				} else {

					if (!configParamPanel.isEnabled()) {
						SwingTools.setEnabledRecursive(configParamPanel, true);
					}

					if (simpleGlassPane.isVisible()) {
						simpleGlassPane.setVisible(false);
					}

					// make editing components visible
					renameButton.setVisible(true);
					removeButton.setVisible(true);
					actionPanel.setVisible(true);
				}
			}
		} catch (Exception e) {
			LogService.getRoot().log(Level.WARNING,
					"com.rapidminer.tools.config.gui.ConfigurableDialog.error_setting_parameters", e);

			// display error in GUI
			parameterPanel.removeAll();

			JLabel errorLabel = new JLabel(
					I18N.getGUIMessage(I18N
							.getGUIMessage("gui.dialog.configurable_dialog.error.display_stored_configurable.label")),
					FAILURE_ICON, SwingConstants.LEADING);
			errorLabel.setHorizontalAlignment(SwingConstants.CENTER);
			parameterPanel.add(errorLabel, BorderLayout.CENTER);
		}
	}
	updateButtonState(true);
	parameterPanel.revalidate();
	parameterPanel.repaint();
}
 
源代码12 项目: mars-sim   文件: SpotlightLayerUI.java
@Override
 public void uninstallUI(JComponent c) {
JLayer<?> jlayer = (JLayer<?>)c;
   jlayer.setLayerEventMask(0);
   super.uninstallUI(c);
 }
 
源代码13 项目: mars-sim   文件: SpotlightLayerUI.java
@Override
protected void processMouseEvent(MouseEvent e, JLayer l) {
  if (e.getID() == MouseEvent.MOUSE_ENTERED) mActive = true;
  if (e.getID() == MouseEvent.MOUSE_EXITED) mActive = false;
}
 
源代码14 项目: mars-sim   文件: TableWaitLayer.java
public JComponent makeUI() {
	startButton.setAction(new AbstractAction("start") {
		@Override
		public void actionPerformed(ActionEvent e) {
			layerUI.start();
			startButton.setEnabled(false);
			SwingWorker<String, Object[]> worker = new SwingWorker<String, Object[]>() {
				@Override
				public String doInBackground() {
					int current = 0, lengthOfTask = 120;
					while (current < lengthOfTask && !isCancelled()) {
						try {
							Thread.sleep(50);
						} catch (InterruptedException ie) {
							return "Interrupted";
						}
						publish(new Object[] { "aaa", current++, false });
					}
					return "Done";
				}

				@Override
				protected void process(java.util.List<Object[]> chunks) {
					for (Object[] array : chunks) {
						model.addRow(array);
					}
					table.scrollRectToVisible(table.getCellRect(model.getRowCount() - 1, 0, true));
				}

				@Override
				public void done() {
					layerUI.stop();
					startButton.setEnabled(true);
					String text = null;
					if (isCancelled()) {
						text = "Cancelled";
					} else {
						try {
							text = get();
						} catch (Exception ex) {
							ex.printStackTrace();
							text = "Exception";
						}
					}
				}
			};
			worker.execute();
		}
	});
	JPanel p = new JPanel(new BorderLayout());
	p.add(new JButton("dummy"), BorderLayout.NORTH);
	p.add(new JLayer<JComponent>(new JScrollPane(table), layerUI));
	p.add(startButton, BorderLayout.SOUTH);
	return p;
}
 
源代码15 项目: mars-sim   文件: SettlementWindow.java
/**
	 * Constructor.
	 * 
	 * @param desktop the main desktop panel.
	 */
	public SettlementWindow(MainDesktopPane desktop) {
		// Use ToolWindow constructor
		super(NAME, desktop);
		this.desktop = desktop;
		
		if (marsClock == null)
			marsClock = Simulation.instance().getMasterClock().getMarsClock();

//			// setTitleName(null);
//			// Remove title bar
//			putClientProperty("JInternalFrame.isPalette", Boolean.TRUE);
//			getRootPane().setWindowDecorationStyle(JRootPane.NONE);
//			BasicInternalFrameUI bi = (BasicInternalFrameUI) super.getUI();
//			bi.setNorthPane(null);
//			setBorder(null);

		setDefaultCloseOperation(WindowConstants.HIDE_ON_CLOSE);

		// getRootPane().setOpaque(false);
		// getRootPane().setBackground(new Color(0,0,0,128));

		setBackground(Color.BLACK);
		// setOpaque(false);
		// setBackground(new Color(0,0,0,128));

		WebPanel mainPanel = new WebPanel(new BorderLayout());
		// mainPanel.setOpaque(false);
		// mainPanel.setBackground(new Color(0,0,0,128));
		setContentPane(mainPanel);

		// Creates the status bar for showing the x/y coordinates and population
        statusBar = new WebStatusBar();//JStatusBar(3, 3, 18);
        mainPanel.add(statusBar, BorderLayout.SOUTH);

		Font font = new Font("Times New Roman", Font.BOLD, 12);

        popLabel = new WebStyledLabel(StyleId.styledlabelShadow);
        popLabel.setFont(font);
        popLabel.setForeground(Color.GRAY);
	    buildingXYLabel = new WebStyledLabel(StyleId.styledlabelShadow);
	    buildingXYLabel.setFont(font);
	    buildingXYLabel.setForeground(Color.GRAY);
	    mapXYLabel = new WebStyledLabel(StyleId.styledlabelShadow);
	    mapXYLabel.setFont(font);
	    mapXYLabel.setForeground(Color.GRAY);
	    
//        statusBar.addLeftComponent(mapXYLabel, false);  
//        statusBar.addCenterComponent(popLabel, false);
//        statusBar.addRightComponent(buildingXYLabel, false);
//		statusBar.addRightCorner();
        statusBar.add(mapXYLabel);  
        statusBar.addToMiddle(popLabel);
        statusBar.addToEnd(buildingXYLabel);
//		statusBar.addRightCorner();
		
        // Create subPanel for housing the settlement map
		subPanel = new WebPanel(new BorderLayout());
		mainPanel.add(subPanel, BorderLayout.CENTER);
		// subPanel.setOpaque(false);
		// subPanel.setBackground(new Color(0,0,0,128));
		subPanel.setBackground(Color.BLACK);

		mapPanel = new SettlementMapPanel(desktop, this);
		mapPanel.createUI();
		
		// Added SpotlightLayerUI
		LayerUI<WebPanel> layerUI = new SpotlightLayerUI(mapPanel);
		JLayer<WebPanel> jlayer = new JLayer<WebPanel>(mapPanel, layerUI);
		subPanel.add(jlayer, BorderLayout.CENTER);
		// subPanel.add(mapPanel, BorderLayout.CENTER);
		
		setSize(new Dimension(HORIZONTAL, VERTICAL));
		setPreferredSize(new Dimension(HORIZONTAL, VERTICAL));
		setMinimumSize(new Dimension(HORIZONTAL / 2, VERTICAL / 2));
		setClosable(true);
		setResizable(false);
		setMaximizable(true);

		setVisible(true);

		pack();

	}
 
源代码16 项目: mars-sim   文件: WaitLayerUI.java
@Override
public void applyPropertyChange(PropertyChangeEvent pce, JLayer<? extends JComponent> l) {
	if ("tick".equals(pce.getPropertyName())) {
		l.repaint();
	}
}
 
源代码17 项目: mars-sim   文件: WaitLayerUI.java
@Override public void uninstallUI(JComponent c) {
  ((JLayer)c).setLayerEventMask(0);
  super.uninstallUI(c);
}
 
源代码18 项目: mars-sim   文件: WaitLayerUI.java
public void eventDispatched(AWTEvent e, JLayer<? extends JComponent> l) {
  if(mIsRunning && e instanceof InputEvent) {
    ((InputEvent)e).consume();
  }
}
 
源代码19 项目: mars-sim   文件: WaitLayerUIPanel.java
@Override
public void applyPropertyChange(PropertyChangeEvent pce, JLayer l) {
	if ("tick".equals(pce.getPropertyName())) {
		l.repaint();
	}
}
 
源代码20 项目: quickfix-messenger   文件: GroupPanel.java
private void initComponents()
{
	setLayout(new GridBagLayout());

	layerUI = new FieldValidationLayerUI(getFrame());

	groupLabel = new JLabel(getMember().toString());
	groupLabel.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));
	groupLabel.addMouseListener(new LinkMouseAdapter(this));
	groupLabel.setToolTipText("Double-click to look-up in FIXwiki");
	if (isRequired)
	{
		groupLabel.setForeground(Color.BLUE);
	}

	JPanel groupValuePanel = new JPanel();
	groupValuePanel.setLayout(new BoxLayout(groupValuePanel,
			BoxLayout.X_AXIS));

	groupTextField = new JFormattedTextField(
			NumberFormat.getIntegerInstance());
	groupTextField.setFocusLostBehavior(JFormattedTextField.COMMIT);
	if (initialNoOfGroups > 0)
	{
		groupTextField.setText(String.valueOf(initialNoOfGroups));
	}
	setButton = new JButton("Set");
	setButton.addActionListener(new ActionListener()
	{
		@Override
		public void actionPerformed(ActionEvent e)
		{
			getFrame().displayMainPanel();
		}
	});

	groupValuePanel.add(new JLayer<JFormattedTextField>(groupTextField,
			layerUI));
	groupValuePanel.add(setButton);

	groupPanels = new JPanel();
	groupPanels.setLayout(new GridBagLayout());

	loadMembers();

	add(groupLabel, createGridBagConstraints());
	add(groupValuePanel, createGridBagConstraints());
	add(groupPanels, createGridBagConstraints());
}
 
源代码21 项目: rapidminer-studio   文件: PerspectivesPanelBar.java
/**
 * Factory to create a perspectives panel bar which is covered by a JLayer.
 *
 * @param perspectives
 * @return
 */
@SuppressWarnings("deprecation")
public static final JLayer<JPanel> getPerspecitvesPanelBar(Perspectives perspectives) {
	PerspectivesPanelBar view = new PerspectivesPanelBar(perspectives);
	return new JLayer<>(view, new PerspectivesLayerUI(view));
}
 
源代码评论
动弹
沙发等你来抢
 类所在包
 类方法
 同包方法