javax.swing.JDialog#isDefaultLookAndFeelDecorated ( )源码实例Demo

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

源代码1 项目: osp   文件: OSPTableInspector.java
private void createGUI() {
  setSize(400, 300);
  setContentPane(new JPanel(new BorderLayout()));
  JScrollPane scrollpane = new JScrollPane(table);
  scrollpane.createHorizontalScrollBar();
  getContentPane().add(scrollpane, BorderLayout.CENTER);
  if(!JDialog.isDefaultLookAndFeelDecorated()) {
    return;
  }
  JPanel panel = new JPanel(new FlowLayout());
  JButton closeButton = new JButton(ControlsRes.getString("OSPTableInspector.OK")); //$NON-NLS-1$
  panel.add(closeButton);
  getContentPane().add(panel, BorderLayout.SOUTH);
  closeButton.addActionListener(new ActionListener() {
    public void actionPerformed(ActionEvent e) {
      setVisible(false);
      dispose();
    }

  });
}
 
源代码2 项目: FlatLaf   文件: JBRCustomDecorations.java
static void install( Window window ) {
	if( !isSupported() )
		return;

	// do not enable JBR decorations if LaF provides decorations
	if( UIManager.getLookAndFeel().getSupportsWindowDecorations() )
		return;

	if( window instanceof JFrame ) {
		JFrame frame = (JFrame) window;

		// do not enable JBR decorations if JFrame should use system window decorations
		// and if not forced to use JBR decorations
		if( !JFrame.isDefaultLookAndFeelDecorated() &&
			!FlatSystemProperties.getBoolean( FlatSystemProperties.USE_JETBRAINS_CUSTOM_DECORATIONS, false ))
		  return;

		// do not enable JBR decorations if frame is undecorated
		if( frame.isUndecorated() )
			return;

		// enable JBR custom window decoration for window
		setHasCustomDecoration( frame );

		// enable Swing window decoration
		frame.getRootPane().setWindowDecorationStyle( JRootPane.FRAME );

	} else if( window instanceof JDialog ) {
		JDialog dialog = (JDialog) window;

		// do not enable JBR decorations if JDialog should use system window decorations
		// and if not forced to use JBR decorations
		if( !JDialog.isDefaultLookAndFeelDecorated() &&
			!FlatSystemProperties.getBoolean( FlatSystemProperties.USE_JETBRAINS_CUSTOM_DECORATIONS, false ))
		  return;

		// do not enable JBR decorations if dialog is undecorated
		if( dialog.isUndecorated() )
			return;

		// enable JBR custom window decoration for window
		setHasCustomDecoration( dialog );

		// enable Swing window decoration
		dialog.getRootPane().setWindowDecorationStyle( JRootPane.PLAIN_DIALOG );
	}
}
 
源代码3 项目: FlatLaf   文件: FlatLaf.java
@Override
public void initialize() {
	if( SystemInfo.IS_MAC )
		initializeAqua();

	super.initialize();

	// install popup factory
	oldPopupFactory = PopupFactory.getSharedInstance();
	PopupFactory.setSharedInstance( new FlatPopupFactory() );

	// install mnemonic handler
	mnemonicHandler = new MnemonicHandler();
	mnemonicHandler.install();

	// listen to desktop property changes to update UI if system font or scaling changes
	if( SystemInfo.IS_WINDOWS ) {
		// Windows 10 allows increasing font size independent of scaling:
		//   Settings > Ease of Access > Display > Make text bigger (100% - 225%)
		desktopPropertyName = "win.messagebox.font";
	} else if( SystemInfo.IS_LINUX ) {
		// Linux/Gnome allows changing font in "Tweaks" app
		desktopPropertyName = "gnome.Gtk/FontName";

		// Linux/Gnome allows extra scaling and larger text:
		//   Settings > Devices > Displays > Scale (100% or 200%)
		//   Settings > Universal access > Large Text (off or on, 125%)
		//   "Tweaks" app > Fonts > Scaling Factor (0,5 - 3)
		desktopPropertyName2 = "gnome.Xft/DPI";
	}
	if( desktopPropertyName != null ) {
		desktopPropertyListener = e -> {
			String propertyName = e.getPropertyName();
			if( desktopPropertyName.equals( propertyName ) || propertyName.equals( desktopPropertyName2 ) )
				reSetLookAndFeel();
			else if( DESKTOPFONTHINTS.equals( propertyName ) ) {
				if( UIManager.getLookAndFeel() instanceof FlatLaf ) {
					putAATextInfo( UIManager.getLookAndFeelDefaults() );
					updateUILater();
				}
			}
		};
		Toolkit toolkit = Toolkit.getDefaultToolkit();
		toolkit.addPropertyChangeListener( desktopPropertyName, desktopPropertyListener );
		if( desktopPropertyName2 != null )
			toolkit.addPropertyChangeListener( desktopPropertyName2, desktopPropertyListener );
		toolkit.addPropertyChangeListener( DESKTOPFONTHINTS, desktopPropertyListener );
	}

	// Following code should be ideally in initialize(), but needs color from UI defaults.
	// Do not move this code to getDefaults() to avoid side effects in the case that
	// getDefaults() is directly invoked from 3rd party code. E.g. `new FlatLightLaf().getDefaults()`.
	postInitialization = defaults -> {
		// update link color in HTML text
		Color linkColor = defaults.getColor( "Component.linkColor" );
		if( linkColor != null ) {
			new HTMLEditorKit().getStyleSheet().addRule(
				String.format( "a { color: #%06x; }", linkColor.getRGB() & 0xffffff ) );
		}
	};

	// enable/disable window decorations, but only if system property is either
	// "true" or "false"; in other cases it is not changed
	Boolean useWindowDecorations = FlatSystemProperties.getBooleanStrict( FlatSystemProperties.USE_WINDOW_DECORATIONS, null );
	if( useWindowDecorations != null ) {
		oldFrameWindowDecorated = JFrame.isDefaultLookAndFeelDecorated();
		oldDialogWindowDecorated = JDialog.isDefaultLookAndFeelDecorated();
		JFrame.setDefaultLookAndFeelDecorated( useWindowDecorations );
		JDialog.setDefaultLookAndFeelDecorated( useWindowDecorations );
	}
}