/** * Specifies the menu bar value. * * @deprecated As of Swing version 1.0.3 replaced by <code>setJMenuBar(JMenuBar menu)</code>. * @param menu the <code>JMenuBar</code> to add. */ @Deprecated public void setMenuBar(JMenuBar menu) { if (menuBar != null && menuBar.getParent() == layeredPane) layeredPane.remove(menuBar); menuBar = menu; if (menuBar != null) layeredPane.add(menuBar, JLayeredPane.FRAME_CONTENT_LAYER); }
public FenetrePrincipale(PlanSalle modele) { super(); this.modele = modele; this.setTitle(modele.getNom() + " - OSE"); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.creerBarreMenus(); this.creerMenuContextuel(); JLayeredPane lp = new JLayeredPane(); lp.setPreferredSize( new Dimension( Parametres.NB_TRAVEES * Parametres.LARGEUR_TRAVEE, Parametres.NB_RANGEES * Parametres.HAUTEUR_RANGEE)); lePlan = new Plan(modele); lePlan.setBounds( 0, 0, Parametres.NB_TRAVEES * Parametres.LARGEUR_TRAVEE, Parametres.NB_RANGEES * Parametres.HAUTEUR_RANGEE); lp.add(lePlan, new Integer(0)); Container conteneur = this.getContentPane(); conteneur.setLayout(new FlowLayout()); conteneur.add(lp); this.pack(); this.setLocationRelativeTo(null); this.setVisible(true); }
/** * Sets the content pane -- the container that holds the components parented by the root pane. * * <p>Swing's painting architecture requires an opaque <code>JComponent</code> in the containment * hierarchy. This is typically provided by the content pane. If you replace the content pane it * is recommended you replace it with an opaque <code>JComponent</code>. * * @param content the <code>Container</code> to use for component-contents * @exception java.awt.IllegalComponentStateException (a runtime exception) if the content pane * parameter is <code>null</code> */ public void setContentPane(Container content) { if (content == null) throw new IllegalComponentStateException("contentPane cannot be set to null."); if (contentPane != null && contentPane.getParent() == layeredPane) layeredPane.remove(contentPane); contentPane = content; layeredPane.add(contentPane, JLayeredPane.FRAME_CONTENT_LAYER); }
protected final void showProgress(String message) { myProgressMessage.setText(message); if (myProgressPanel.getParent() == null) { myGlassLayer.setEnabled(false); myProgressIcon.resume(); myLayeredPane.add(myProgressPanel, LAYER_PROGRESS); myLayeredPane.repaint(); } }
private void construct() { setTitle("JPokemon (ver 0.1)"); setIconImage(Tools.findImage("main-icon")); setSize(720, 457); // WIDTH, HEIGHT setUndecorated(true); setDefaultCloseOperation(DISPOSE_ON_CLOSE); // Using JLayeredPane so my buttons can sit on the picture p = new JLayeredPane(); ImageIcon bg; // Add Splash if (pref.getBoolean("beat", false)) bg = new ImageIcon(Tools.findImage("splashalt")); else bg = new ImageIcon(Tools.findImage("splash")); s.setIcon(bg); s.setBounds(10, 10, 700, 437); p.add(s, new Integer(-1)); // Load Button LoadButton l = new LoadButton(this); l.setBounds(550, 100, 110, 30); // 10px border on all sides p.add(l, new Integer(0)); // New Game Button NewButton n = new NewButton(this); n.setBounds(550, 60, 110, 30); p.add(n, new Integer(0)); // Exit Game Button QuitButton q = new QuitButton(this); q.setBounds(550, 140, 110, 30); p.add(q, new Integer(0)); // OPTIONAL: Reset Splash logon if (pref.getBoolean("beat", false)) { r = new ResetButton(); r.setBounds(550, 180, 110, 30); p.add(r, new Integer(0)); } add(p); setLocationRelativeTo(null); }
/** * The constructor for the class It's going to set the dimension of the program to 600x600, the * background is going to be white (in order to blend in with the vor image), and it is going to * add in the VOR radar and a radial indicator that will let the user know which radial he/she is * on */ public finalVORGUI(int r) { deg = r; this.vor = new VorReceiver(deg, ".- -... -.-."); this.vor.setOBS(90); // set the OBS to 30 JLayeredPane lp = new JLayeredPane(); lp.setPreferredSize(new Dimension(WIDTH, HEIGHT)); setBackground(Color.white); lp.setLayout(null); lp.setFocusable(true); degrees = deg; // r is intended radial CurrentRadial = new JLabel( "Intended Radial: " + deg); // A string that is always going to be above the radar. it's going to let // the user know the current radial CurrentRadial.setBounds(220, 18, 200, 200); MorseCode = new JLabel("Station: TO ENTER HERE"); MorseCode.setBounds(200, 500, 200, 50); MorseCode.setText("Station: " + this.vor.getMorse()); // vor.printVorStatus_v1(); rotationPanel = new JPanel(); rotationPanel = new TurningCanvas(); rotationPanel.setBounds( 157, 125, rotationPanel.getPreferredSize().width, rotationPanel.getPreferredSize().height); needle = new JPanel(); needle = new DrawAttributes(); needle.setBounds(100, 0, needle.getPreferredSize().width, needle.getPreferredSize().height); OBS = new JPanel(); OBS = new AddButtons(); OBS.setBounds(110, 350, 200, 100); lp.add(rotationPanel, Integer.valueOf(1)); lp.add(needle, Integer.valueOf(2)); lp.add(OBS, Integer.valueOf(3)); lp.add(CurrentRadial, Integer.valueOf(4)); lp.add(MorseCode, Integer.valueOf(5)); add(lp); x = 172; // x is the location of the needle y1 = 155; y2 = 330; }
private void processDrag(final MouseEvent e) { if (myDragCancelled) return; if (!isDraggingNow()) { if (myPressedPoint == null) return; if (isWithinDeadZone(e)) return; myDragPane = findLayeredPane(e); if (myDragPane == null) return; final BufferedImage image = new BufferedImage(getWidth(), getHeight(), BufferedImage.TYPE_INT_ARGB); paint(image.getGraphics()); myDragButtonImage = new JLabel(new ImageIcon(image)) { public String toString() { return "Image for: " + StripeButton.this.toString(); } }; myDragPane.add(myDragButtonImage, JLayeredPane.POPUP_LAYER); myDragButtonImage.setSize(myDragButtonImage.getPreferredSize()); setVisible(false); myPane.startDrag(); myDragKeyEventDispatcher = new DragKeyEventDispatcher(); KeyboardFocusManager.getCurrentKeyboardFocusManager() .addKeyEventDispatcher(myDragKeyEventDispatcher); } if (!isDraggingNow()) return; Point xy = SwingUtilities.convertPoint(e.getComponent(), e.getPoint(), myDragPane); if (myPressedPoint != null) { xy.x -= myPressedPoint.x; xy.y -= myPressedPoint.y; } myDragButtonImage.setLocation(xy); SwingUtilities.convertPointToScreen(xy, myDragPane); final Stripe stripe = myPane.getStripeFor(new Rectangle(xy, myDragButtonImage.getSize()), (Stripe) getParent()); if (stripe == null) { if (myLastStripe != null) { myLastStripe.resetDrop(); } } else { if (myLastStripe != null && myLastStripe != stripe) { myLastStripe.resetDrop(); } stripe.processDropButton(this, myDragButtonImage, xy); } myLastStripe = stripe; }
/** * Sets the window title pane -- the JComponent used to provide a plaf a way to override the * native operating system's window title pane with one whose look and feel are controlled by the * plaf. The plaf creates and sets this value; the default is null, implying a native operating * system window title pane. * * @param content the <code>JComponent</code> to use for the window title pane. */ private void setTitlePane(JRootPane root, JComponent titlePane) { JLayeredPane layeredPane = root.getLayeredPane(); JComponent oldTitlePane = getTitlePane(); if (oldTitlePane != null) { oldTitlePane.setVisible(false); layeredPane.remove(oldTitlePane); } if (titlePane != null) { layeredPane.add(titlePane, JLayeredPane.FRAME_CONTENT_LAYER); titlePane.setVisible(true); } this.titlePane = titlePane; }
/** * This method adds the panels to the window and organises them using a GridBagLayout and a * JLayeredPane. */ private void populateFrame(Container frame) { frame.setLayout(new GridBagLayout()); GridBagConstraints layoutConstraints = new GridBagConstraints(); JLayeredPane dungeonArea = new JLayeredPane(); dungeonArea.setPreferredSize(new Dimension(448, 448)); dungeonArea.add(dungeonPanel, JLayeredPane.DEFAULT_LAYER); // the DungeonPanel is added underneath dungeonArea.add(dungeonPanelOverlay, JLayeredPane.PALETTE_LAYER); // the mostly transparent DungeonPanelOverlay is added on top in the same position layoutConstraints.gridx = 0; layoutConstraints.gridy = 0; layoutConstraints.gridwidth = 7; layoutConstraints.gridheight = 7; frame.add(dungeonArea, layoutConstraints); layoutConstraints.gridx = 7; layoutConstraints.gridwidth = 1; frame.add(serverSettings, layoutConstraints); layoutConstraints.gridx = 0; layoutConstraints.gridy = 7; layoutConstraints.gridwidth = 8; layoutConstraints.gridheight = 1; frame.add(chatPanel, layoutConstraints); }
public void setVisible(boolean visible) { if (!visible && myView != null) { disposeAndUpdate(false); } else if (visible && myView == null) { Window owner = UIUtil.getWindow(myOwner); if (owner != null) { if (myHeavyWeight) { Window view = pop(owner); if (view == null) { view = new JWindow(owner); setPopupType(view); } setAlwaysOnTop(view, myAlwaysOnTop); setWindowFocusable(view, myWindowFocusable); setWindowShadow(view, myWindowShadow); myView = view; } else if (owner instanceof RootPaneContainer) { JLayeredPane parent = ((RootPaneContainer) owner).getLayeredPane(); if (parent != null) { JPanel view = new JPanel(new BorderLayout()); view.setVisible(false); parent.add(view, JLayeredPane.POPUP_LAYER, 0); myView = view; } } } if (myView != null) { myView.add(myContent); Component parent = myView instanceof Window ? null : myView.getParent(); if (parent != null) { Point location = myViewBounds.getLocation(); SwingUtilities.convertPointFromScreen(location, parent); myViewBounds.setLocation(location); } myView.setBackground(UIUtil.getLabelBackground()); myView.setBounds(myViewBounds); myView.setVisible(true); myViewBounds = null; } } }
public void init(Object parent) { glass = new BlurGlass(); glass.setLayout(null); this.setLayout(null); setOpaque(false); // getContentPane().setOpaque(false); this.getLayeredPane().setOpaque(false); this.getRootPane().setOpaque(false); // putClientProperty("Synthetica.opaque", Boolean.FALSE); JParent = parent; glass.setOpaque(false); MouseInputAdapter adapter = new MouseInputAdapter() {}; glass.addMouseListener(adapter); glass.addMouseMotionListener(adapter); try { if (parent instanceof JFrame) { layer = ((JFrame) parent).getLayeredPane(); } else if (parent instanceof JInternalFrame) { layer = ((JInternalFrame) parent).getLayeredPane(); } glass.setBounds(layer.getBounds()); } catch (NullPointerException err) { Dialogos.error("Error interno en Dialogo interno modal", err); } try { glass.add(this); layer.add(glass, JLayeredPane.DEFAULT_LAYER); } catch (NullPointerException err) { Dialogos.error("Error interno en dialogo modal interno", err); } }
public ifAccountTool(ImageIcon head, String name, int usingsp, int totalsp) { super("AccountTool", false, false, false, false); setLayout(null); lp_layer = this.getLayeredPane(); head = ImageProcess.scaleImage(head, 230, ImageProcess.Auto); head = ImageProcess.cutImage(head, 0, 0, 230, 230); ifAT_iclblHead = new JLabel(head); ifAT_iclblHead.setBorder(BorderFactory.createLineBorder(Color.BLUE)); ifAT_iclblHead.setBounds(20, 20, 230, 230); ifAT_iclblHead.setBackground(Color.BLACK); getContentPane().add(ifAT_iclblHead); lblName_ftName = new Font("微軟正黑體", Font.BOLD, 20); ifAT_lblName = new JLabel(name, JLabel.CENTER); ifAT_lblName.setFont(lblName_ftName); ifAT_lblName.setBounds(20, 210, 230, 130); getContentPane().add(ifAT_lblName); ifAT_pbSpace = new JProgressBar(); ifAT_pbSpace.setMaximum(totalsp); ifAT_pbSpace.setMinimum(0); ifAT_pbSpace.setValue(usingsp); ifAT_pbSpace.setBorderPainted(true); ifAT_pbSpace.setStringPainted(true); ifAT_pbSpace.setBounds(20, 300, 230, 20); getContentPane().add(ifAT_pbSpace); ifAT_toolbar = new ToolBar(); ifAT_toolbar.AddTool("aEdit", null); ifAT_toolbar.AddTool("Plus", null); ifAT_toolbar.AddTool("Logout", null); lp_layer.setLayout(new BorderLayout()); lp_layer.add(ifAT_toolbar, BorderLayout.SOUTH, new Integer(2550)); setVisible(true); getContentPane().setBackground(Color.WHITE); }
private void manageSearchPopup(@Nullable SearchPopup searchPopup) { final Project project; if (ApplicationManager.getApplication() != null && !ApplicationManager.getApplication().isDisposed()) { project = PlatformDataKeys.PROJECT.getData(DataManager.getInstance().getDataContext(myComponent)); } else { project = null; } if (mySearchPopup != null) { myPopupLayeredPane.remove(mySearchPopup); myPopupLayeredPane.validate(); myPopupLayeredPane.repaint(); myPopupLayeredPane = null; if (project != null) { ((ToolWindowManagerEx) ToolWindowManager.getInstance(project)) .removeToolWindowManagerListener(myWindowManagerListener); } } else if (searchPopup != null) { FeatureUsageTracker.getInstance().triggerFeatureUsed("ui.tree.speedsearch"); } if (!myComponent.isShowing()) { mySearchPopup = null; } else { mySearchPopup = searchPopup; } fireStateChanged(); if (mySearchPopup == null || !myComponent.isDisplayable()) return; if (project != null) { ((ToolWindowManagerEx) ToolWindowManager.getInstance(project)) .addToolWindowManagerListener(myWindowManagerListener); } JRootPane rootPane = myComponent.getRootPane(); if (rootPane != null) { myPopupLayeredPane = rootPane.getLayeredPane(); } else { myPopupLayeredPane = null; } if (myPopupLayeredPane == null) { LOG.error(toString() + " in " + String.valueOf(myComponent)); return; } myPopupLayeredPane.add(mySearchPopup, JLayeredPane.POPUP_LAYER); if (myPopupLayeredPane == null) return; // See # 27482. Somewho it does happen... Point lPaneP = myPopupLayeredPane.getLocationOnScreen(); Point componentP = getComponentLocationOnScreen(); Rectangle r = getComponentVisibleRect(); Dimension prefSize = mySearchPopup.getPreferredSize(); Window window = (Window) SwingUtilities.getAncestorOfClass(Window.class, myComponent); Point windowP; if (window instanceof JDialog) { windowP = ((JDialog) window).getContentPane().getLocationOnScreen(); } else if (window instanceof JFrame) { windowP = ((JFrame) window).getContentPane().getLocationOnScreen(); } else { windowP = window.getLocationOnScreen(); } int y = r.y + componentP.y - lPaneP.y - prefSize.height; y = Math.max(y, windowP.y - lPaneP.y); mySearchPopup.setLocation(componentP.x - lPaneP.x + r.x, y); mySearchPopup.setSize(prefSize); mySearchPopup.setVisible(true); mySearchPopup.validate(); }
public DocumentationComponent( final DocumentationManager manager, final AnAction[] additionalActions) { myManager = manager; myIsEmpty = true; myIsShown = false; myEditorPane = new JEditorPane(UIUtil.HTML_MIME, "") { @Override public Dimension getPreferredScrollableViewportSize() { if (getWidth() == 0 || getHeight() == 0) { setSize(MAX_WIDTH, MAX_HEIGHT); } Insets ins = myEditorPane.getInsets(); View rootView = myEditorPane.getUI().getRootView(myEditorPane); rootView.setSize( MAX_WIDTH, MAX_HEIGHT); // Necessary! Without this line, size will not increase then you go // from small page to bigger one int prefHeight = (int) rootView.getPreferredSpan(View.Y_AXIS); prefHeight += ins.bottom + ins.top + myScrollPane.getHorizontalScrollBar().getMaximumSize().height; return new Dimension(MAX_WIDTH, Math.max(MIN_HEIGHT, Math.min(MAX_HEIGHT, prefHeight))); } { enableEvents(AWTEvent.KEY_EVENT_MASK); } @Override protected void processKeyEvent(KeyEvent e) { KeyStroke keyStroke = KeyStroke.getKeyStrokeForEvent(e); ActionListener listener = myKeyboardActions.get(keyStroke); if (listener != null) { listener.actionPerformed(new ActionEvent(DocumentationComponent.this, 0, "")); e.consume(); return; } super.processKeyEvent(e); } @Override protected void paintComponent(Graphics g) { GraphicsUtil.setupAntialiasing(g); super.paintComponent(g); } }; DataProvider helpDataProvider = new DataProvider() { @Override public Object getData(@NonNls String dataId) { return PlatformDataKeys.HELP_ID.is(dataId) ? DOCUMENTATION_TOPIC_ID : null; } }; myEditorPane.putClientProperty(DataManager.CLIENT_PROPERTY_DATA_PROVIDER, helpDataProvider); myText = ""; myEditorPane.setEditable(false); myEditorPane.setBackground(HintUtil.INFORMATION_COLOR); myEditorPane.setEditorKit(UIUtil.getHTMLEditorKit()); myScrollPane = new JBScrollPane(myEditorPane) { @Override protected void processMouseWheelEvent(MouseWheelEvent e) { if (!EditorSettingsExternalizable.getInstance().isWheelFontChangeEnabled() || !EditorUtil.isChangeFontSize(e)) { super.processMouseWheelEvent(e); return; } int change = Math.abs(e.getWheelRotation()); boolean increase = e.getWheelRotation() <= 0; EditorColorsManager colorsManager = EditorColorsManager.getInstance(); EditorColorsScheme scheme = colorsManager.getGlobalScheme(); FontSize newFontSize = scheme.getQuickDocFontSize(); for (; change > 0; change--) { if (increase) { newFontSize = newFontSize.larger(); } else { newFontSize = newFontSize.smaller(); } } if (newFontSize == scheme.getQuickDocFontSize()) { return; } scheme.setQuickDocFontSize(newFontSize); applyFontSize(); setFontSizeSliderSize(newFontSize); } }; myScrollPane.setBorder(null); myScrollPane.putClientProperty(DataManager.CLIENT_PROPERTY_DATA_PROVIDER, helpDataProvider); final MouseAdapter mouseAdapter = new MouseAdapter() { @Override public void mousePressed(MouseEvent e) { myManager.requestFocus(); myShowSettingsButton.hideSettings(); } }; myEditorPane.addMouseListener(mouseAdapter); Disposer.register( this, new Disposable() { @Override public void dispose() { myEditorPane.removeMouseListener(mouseAdapter); } }); final FocusAdapter focusAdapter = new FocusAdapter() { @Override public void focusLost(FocusEvent e) { Component previouslyFocused = WindowManagerEx.getInstanceEx() .getFocusedComponent(manager.getProject(getElement())); if (!(previouslyFocused == myEditorPane)) { if (myHint != null && !myHint.isDisposed()) myHint.cancel(); } } }; myEditorPane.addFocusListener(focusAdapter); Disposer.register( this, new Disposable() { @Override public void dispose() { myEditorPane.removeFocusListener(focusAdapter); } }); setLayout(new BorderLayout()); JLayeredPane layeredPane = new JBLayeredPane() { @Override public void doLayout() { final Rectangle r = getBounds(); for (Component component : getComponents()) { if (component instanceof JScrollPane) { component.setBounds(0, 0, r.width, r.height); } else { int insets = 2; Dimension d = component.getPreferredSize(); component.setBounds(r.width - d.width - insets, insets, d.width, d.height); } } } @Override public Dimension getPreferredSize() { Dimension editorPaneSize = myEditorPane.getPreferredScrollableViewportSize(); Dimension controlPanelSize = myControlPanel.getPreferredSize(); return new Dimension( Math.max(editorPaneSize.width, controlPanelSize.width), editorPaneSize.height + controlPanelSize.height); } }; layeredPane.add(myScrollPane); layeredPane.setLayer(myScrollPane, 0); mySettingsPanel = createSettingsPanel(); layeredPane.add(mySettingsPanel); layeredPane.setLayer(mySettingsPanel, JLayeredPane.POPUP_LAYER); add(layeredPane, BorderLayout.CENTER); setOpaque(true); myScrollPane.setViewportBorder(JBScrollPane.createIndentBorder()); final DefaultActionGroup actions = new DefaultActionGroup(); final BackAction back = new BackAction(); final ForwardAction forward = new ForwardAction(); actions.add(back); actions.add(forward); actions.add(myExternalDocAction = new ExternalDocAction()); back.registerCustomShortcutSet(CustomShortcutSet.fromString("LEFT"), this); forward.registerCustomShortcutSet(CustomShortcutSet.fromString("RIGHT"), this); myExternalDocAction.registerCustomShortcutSet(CustomShortcutSet.fromString("UP"), this); if (additionalActions != null) { for (final AnAction action : additionalActions) { actions.add(action); } } myToolBar = ActionManager.getInstance() .createActionToolbar(ActionPlaces.JAVADOC_TOOLBAR, actions, true); myControlPanel = new JPanel(); myControlPanel.setLayout(new BorderLayout()); myControlPanel.setBorder(IdeBorderFactory.createBorder(SideBorder.BOTTOM)); JPanel dummyPanel = new JPanel(); myElementLabel = new JLabel(); dummyPanel.setLayout(new BorderLayout()); dummyPanel.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 5)); dummyPanel.add(myElementLabel, BorderLayout.EAST); myControlPanel.add(myToolBar.getComponent(), BorderLayout.WEST); myControlPanel.add(dummyPanel, BorderLayout.CENTER); myControlPanel.add(myShowSettingsButton = new MyShowSettingsButton(), BorderLayout.EAST); myControlPanelVisible = false; final HyperlinkListener hyperlinkListener = new HyperlinkListener() { @Override public void hyperlinkUpdate(HyperlinkEvent e) { HyperlinkEvent.EventType type = e.getEventType(); if (type == HyperlinkEvent.EventType.ACTIVATED) { manager.navigateByLink(DocumentationComponent.this, e.getDescription()); } } }; myEditorPane.addHyperlinkListener(hyperlinkListener); Disposer.register( this, new Disposable() { @Override public void dispose() { myEditorPane.removeHyperlinkListener(hyperlinkListener); } }); registerActions(); updateControlState(); }
private void createDesignerCard() { myLayeredPane = new MyLayeredPane(); mySurfaceArea = new ComponentEditableArea(myLayeredPane) { @Override protected void fireSelectionChanged() { super.fireSelectionChanged(); myLayeredPane.revalidate(); myLayeredPane.repaint(); } @Override public RadComponent findTarget(int x, int y, @Nullable ComponentTargetFilter filter) { if (myRootComponent != null) { FindComponentVisitor visitor = new FindComponentVisitor(myLayeredPane, filter, x, y); myRootComponent.accept(visitor, false); return visitor.getResult(); } return null; } @Override public InputTool findTargetTool(int x, int y) { return myDecorationLayer.findTargetTool(x, y); } @Override public void showSelection(boolean value) { myDecorationLayer.showSelection(value); } @Override public ComponentDecorator getRootSelectionDecorator() { return DesignerEditorPanel.this.getRootSelectionDecorator(); } @Nullable public EditOperation processRootOperation(OperationContext context) { return DesignerEditorPanel.this.processRootOperation(context); } @Override public FeedbackLayer getFeedbackLayer() { return myFeedbackLayer; } @Override public RadComponent getRootComponent() { return myRootComponent; } }; myPaletteListener = new ListSelectionListener() { @Override public void valueChanged(ListSelectionEvent e) { if (DesignerToolWindowManager.getInstance(getProject()).getActiveDesigner() == DesignerEditorPanel.this) { Item paletteItem = (Item) PaletteManager.getInstance(getProject()).getActiveItem(); if (paletteItem != null) { myToolProvider.setActiveTool( new CreationTool(true, createCreationFactory(paletteItem))); } else if (myToolProvider.getActiveTool() instanceof CreationTool) { myToolProvider.loadDefaultTool(); } } } }; myToolProvider = new ToolProvider() { @Override public void loadDefaultTool() { setActiveTool(new SelectionTool()); } @Override public void setActiveTool(InputTool tool) { if (getActiveTool() instanceof CreationTool && !(tool instanceof CreationTool)) { PaletteManager.getInstance(getProject()).clearActiveItem(); } super.setActiveTool(tool); } @Override public boolean execute( final ThrowableRunnable<Exception> operation, String command, final boolean updateProperties) { final boolean[] is = {true}; CommandProcessor.getInstance() .executeCommand( getProject(), new Runnable() { public void run() { is[0] = DesignerEditorPanel.this.execute(operation, updateProperties); } }, command, null); return is[0]; } @Override public void execute(final List<EditOperation> operations, String command) { CommandProcessor.getInstance() .executeCommand( getProject(), new Runnable() { public void run() { DesignerEditorPanel.this.execute(operations); } }, command, null); } @Override public void showError(@NonNls String message, Throwable e) { DesignerEditorPanel.this.showError(message, e); } }; myGlassLayer = new GlassLayer(myToolProvider, mySurfaceArea); myLayeredPane.add(myGlassLayer, LAYER_GLASS); myDecorationLayer = new DecorationLayer(mySurfaceArea); myLayeredPane.add(myDecorationLayer, LAYER_DECORATION); myFeedbackLayer = new FeedbackLayer(); myLayeredPane.add(myFeedbackLayer, LAYER_FEEDBACK); JPanel content = new JPanel(new GridBagLayout()); GridBagConstraints gbc = new GridBagConstraints(); gbc.gridx = 0; gbc.gridy = 1; gbc.fill = GridBagConstraints.VERTICAL; myVerticalCaption = new CaptionPanel(this, false); content.add(myVerticalCaption, gbc); gbc.gridx = 1; gbc.gridy = 0; gbc.fill = GridBagConstraints.HORIZONTAL; myHorizontalCaption = new CaptionPanel(this, true); content.add(myHorizontalCaption, gbc); gbc.gridx = 1; gbc.gridy = 1; gbc.weightx = 1; gbc.weighty = 1; gbc.fill = GridBagConstraints.BOTH; myScrollPane = ScrollPaneFactory.createScrollPane(myLayeredPane); myScrollPane.setBackground(Color.WHITE); content.add(myScrollPane, gbc); myHorizontalCaption.attachToScrollPane(myScrollPane); myVerticalCaption.attachToScrollPane(myScrollPane); myActionPanel = new DesignerActionPanel(this, myGlassLayer); myDesignerCard = new JPanel(new FillLayout()); myDesignerCard.add(myActionPanel.getToolbarComponent()); myDesignerCard.add(content); add(myDesignerCard, DESIGNER_CARD); PaletteManager.getInstance(getProject()).addSelectionListener(myPaletteListener); mySourceSelectionListener = new ComponentSelectionListener() { @Override public void selectionChanged(EditableArea area) { storeSourceSelectionState(); } }; mySurfaceArea.addSelectionListener(mySourceSelectionListener); }
/** * Shows the hint in the layered pane. Coordinates <code>x</code> and <code>y</code> are in <code> * parentComponent</code> coordinate system. Note that the component appears on 250 layer. */ @Override public void show( @NotNull final JComponent parentComponent, final int x, final int y, final JComponent focusBackComponent, @NotNull final HintHint hintHint) { myParentComponent = parentComponent; myHintHint = hintHint; myFocusBackComponent = focusBackComponent; LOG.assertTrue(myParentComponent.isShowing()); myEscListener = new MyEscListener(); myComponent.registerKeyboardAction( myEscListener, KeyStroke.getKeyStroke(KeyEvent.VK_ESCAPE, 0), JComponent.WHEN_IN_FOCUSED_WINDOW); myComponent.registerKeyboardAction( myEscListener, KeyStroke.getKeyStroke(KeyEvent.VK_ESCAPE, 0), JComponent.WHEN_FOCUSED); final JLayeredPane layeredPane = parentComponent.getRootPane().getLayeredPane(); myComponent.validate(); if (!myForceShowAsPopup && (myForceLightweightPopup || fitsLayeredPane( layeredPane, myComponent, new RelativePoint(parentComponent, new Point(x, y)), hintHint))) { beforeShow(); final Dimension preferredSize = myComponent.getPreferredSize(); if (hintHint.isAwtTooltip()) { IdeTooltip tooltip = new IdeTooltip( hintHint.getOriginalComponent(), hintHint.getOriginalPoint(), myComponent, hintHint, myComponent) { @Override protected boolean canAutohideOn(TooltipEvent event) { if (event.getInputEvent() instanceof MouseEvent) { return !(hintHint.isContentActive() && event.isIsEventInsideBalloon()); } else if (event.getAction() != null) { return false; } else { return true; } } @Override protected void onHidden() { fireHintHidden(); TooltipController.getInstance().resetCurrent(); } @Override public boolean canBeDismissedOnTimeout() { return false; } }.setToCenterIfSmall(hintHint.isMayCenterTooltip()) .setPreferredPosition(hintHint.getPreferredPosition()) .setHighlighterType(hintHint.isHighlighterType()) .setTextForeground(hintHint.getTextForeground()) .setTextBackground(hintHint.getTextBackground()) .setBorderColor(hintHint.getBorderColor()) .setBorderInsets(hintHint.getBorderInsets()) .setFont(hintHint.getTextFont()) .setCalloutShift(hintHint.getCalloutShift()) .setPositionChangeShift( hintHint.getPositionChangeX(), hintHint.getPositionChangeY()) .setExplicitClose(hintHint.isExplicitClose()) .setHint(true); myComponent.validate(); myCurrentIdeTooltip = IdeTooltipManager.getInstance() .show(tooltip, hintHint.isShowImmediately(), hintHint.isAnimationEnabled()); } else { final Point layeredPanePoint = SwingUtilities.convertPoint(parentComponent, x, y, layeredPane); myComponent.setBounds( layeredPanePoint.x, layeredPanePoint.y, preferredSize.width, preferredSize.height); layeredPane.add(myComponent, JLayeredPane.POPUP_LAYER); myComponent.validate(); myComponent.repaint(); } } else { myIsRealPopup = true; Point actualPoint = new Point(x, y); JComponent actualComponent = new OpaquePanel(new BorderLayout()); actualComponent.add(myComponent, BorderLayout.CENTER); if (isAwtTooltip()) { fixActualPoint(actualPoint); int inset = BalloonImpl.getNormalInset(); actualComponent.setBorder(new LineBorder(hintHint.getTextBackground(), inset)); actualComponent.setBackground(hintHint.getTextBackground()); actualComponent.validate(); } myPopup = JBPopupFactory.getInstance() .createComponentPopupBuilder(actualComponent, myFocusRequestor) .setRequestFocus(myFocusRequestor != null) .setFocusable(myFocusRequestor != null) .setResizable(myResizable) .setMovable(myTitle != null) .setTitle(myTitle) .setModalContext(false) .setShowShadow(isRealPopup() && !isForceHideShadow()) .setCancelKeyEnabled(false) .setCancelOnClickOutside(myCancelOnClickOutside) .setCancelCallback( new Computable<Boolean>() { @Override public Boolean compute() { onPopupCancel(); return true; } }) .setCancelOnOtherWindowOpen(myCancelOnOtherWindowOpen) .createPopup(); beforeShow(); myPopup.show(new RelativePoint(myParentComponent, new Point(actualPoint.x, actualPoint.y))); } }
/** Initializes the layout and the ribbon. */ private void initRibbon() { this.setLayout(new RibbonFrameLayout()); this.ribbon = new JRibbon(this); this.add(this.ribbon, BorderLayout.NORTH); // this.keyTipManager = new KeyTipManager(this); Toolkit.getDefaultToolkit() .addAWTEventListener( new AWTEventListener() { private boolean prevAltModif = false; @Override public void eventDispatched(AWTEvent event) { Object src = event.getSource(); if (src instanceof Component) { Component c = (Component) src; if ((c == JRibbonFrame.this) || (SwingUtilities.getWindowAncestor(c) == JRibbonFrame.this)) { if (event instanceof KeyEvent) { KeyEvent keyEvent = (KeyEvent) event; // System.out.println(keyEvent.getID() + ":" // + keyEvent.getKeyCode()); switch (keyEvent.getID()) { case KeyEvent.KEY_PRESSED: // if (keyEvent.getKeyCode() == // KeyEvent.VK_ESCAPE) { // keyTipManager.showPreviousChain(); // } break; case KeyEvent.KEY_RELEASED: boolean wasAltModif = prevAltModif; prevAltModif = keyEvent.getModifiersEx() == InputEvent.ALT_DOWN_MASK; if (wasAltModif && keyEvent.getKeyCode() == KeyEvent.VK_ALT) break; char keyChar = keyEvent.getKeyChar(); if (Character.isLetter(keyChar) || Character.isDigit(keyChar)) { // System.out.println("Will handle key press " // + keyChar); KeyTipManager.defaultManager().handleKeyPress(keyChar); } if ((keyEvent.getKeyCode() == KeyEvent.VK_ALT) || (keyEvent.getKeyCode() == KeyEvent.VK_F10)) { if (keyEvent.getModifiers() != 0 || keyEvent.getModifiersEx() != 0) break; boolean hadPopups = !PopupPanelManager.defaultManager().getShownPath().isEmpty(); PopupPanelManager.defaultManager().hidePopups(null); if (hadPopups || KeyTipManager.defaultManager().isShowingKeyTips()) { KeyTipManager.defaultManager().hideAllKeyTips(); } else { KeyTipManager.defaultManager().showRootKeyTipChain(JRibbonFrame.this); } } if (keyEvent.getKeyCode() == KeyEvent.VK_ESCAPE) { // System.out.println("In KTM"); KeyTipManager.defaultManager().showPreviousChain(); } break; } } if (event instanceof MouseEvent) { MouseEvent mouseEvent = (MouseEvent) event; switch (mouseEvent.getID()) { case MouseEvent.MOUSE_CLICKED: case MouseEvent.MOUSE_DRAGGED: case MouseEvent.MOUSE_PRESSED: case MouseEvent.MOUSE_RELEASED: KeyTipManager.defaultManager().hideAllKeyTips(); } } } } } }, AWTEvent.KEY_EVENT_MASK | AWTEvent.MOUSE_EVENT_MASK); final KeyTipLayer keyTipLayer = new KeyTipLayer(); JRootPane rootPane = this.getRootPane(); JLayeredPane layeredPane = rootPane.getLayeredPane(); final LayoutManager currLM = rootPane.getLayout(); rootPane.setLayout( new LayoutManager() { @Override public void addLayoutComponent(String name, Component comp) { currLM.addLayoutComponent(name, comp); } @Override public void layoutContainer(Container parent) { currLM.layoutContainer(parent); JRibbonFrame ribbonFrame = JRibbonFrame.this; if (ribbonFrame.getRootPane().getWindowDecorationStyle() != JRootPane.NONE) keyTipLayer.setBounds(ribbonFrame.getRootPane().getBounds()); else keyTipLayer.setBounds(ribbonFrame.getRootPane().getContentPane().getBounds()); } @Override public Dimension minimumLayoutSize(Container parent) { return currLM.minimumLayoutSize(parent); } @Override public Dimension preferredLayoutSize(Container parent) { return currLM.preferredLayoutSize(parent); } @Override public void removeLayoutComponent(Component comp) { currLM.removeLayoutComponent(comp); } }); // layeredPane.setLayout(new OverlayLayout(layeredPane)); layeredPane.add(keyTipLayer, (Integer) (JLayeredPane.DEFAULT_LAYER + 60)); this.addWindowListener( new WindowAdapter() { @Override public void windowDeactivated(WindowEvent e) { // hide all key tips on window deactivation KeyTipManager keyTipManager = KeyTipManager.defaultManager(); if (keyTipManager.isShowingKeyTips()) { keyTipManager.hideAllKeyTips(); } } }); KeyTipManager.defaultManager() .addKeyTipListener( new KeyTipManager.KeyTipListener() { @Override public void keyTipsHidden(KeyTipEvent event) { if (event.getSource() == JRibbonFrame.this) keyTipLayer.setVisible(false); } @Override public void keyTipsShown(KeyTipEvent event) { if (event.getSource() == JRibbonFrame.this) keyTipLayer.setVisible(true); } }); ToolTipManager.sharedInstance().setLightWeightPopupEnabled(false); JPopupMenu.setDefaultLightWeightPopupEnabled(false); super.setIconImages(Arrays.asList(FlamingoUtilities.getBlankImage(16, 16))); }
public Principal() { setResizable(false); setForeground(UIManager.getColor("CheckBoxMenuItem.selectionBackground")); setFont(new Font("Andalus", 1, 12)); setTitle("CEREAIS PEGER LTDA - EMISSOR DE RECIBO"); setIconImage( Toolkit.getDefaultToolkit() .getImage("img\\Super Collection\\Applications\\Script Editor.png")); setDefaultCloseOperation(0); setBounds(100, 100, 566, 497); JPanel contentPane = new JPanel(); contentPane.setBorder(new EmptyBorder(5, 5, 5, 5)); setContentPane(contentPane); contentPane.setLayout(new BorderLayout(0, 0)); JLayeredPane layeredPane = new JLayeredPane(); layeredPane.setBorder( new CompoundBorder( new LineBorder(new Color(0, 0, 0), 3), new BevelBorder(1, null, null, null, null))); contentPane.add(layeredPane, "Center"); JButton btEmiteRecibo = new JButton("Emitir Recibo"); btEmiteRecibo.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent arg0) { new Recibo().setVisible(true); } }); btEmiteRecibo.setIcon(new ImageIcon("img\\PNG-48\\Modify.png")); btEmiteRecibo.setFont(new Font("Tahoma", 1, 12)); btEmiteRecibo.setBackground(UIManager.getColor("Button.focus")); btEmiteRecibo.setBounds(74, 212, 181, 56); layeredPane.add(btEmiteRecibo); JButton btRelatorio = new JButton("Relatórios"); btRelatorio.setIcon(new ImageIcon("img\\PNG-48\\Load.png")); btRelatorio.setFont(new Font("Tahoma", 1, 12)); btRelatorio.setBackground(SystemColor.inactiveCaptionBorder); btRelatorio.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent e) { new Relatorios().setVisible(true); } }); btRelatorio.setBounds(74, 279, 181, 56); layeredPane.add(btRelatorio); JButton btInfo = new JButton("Informações"); btInfo.setIcon(new ImageIcon("img\\PNG-48\\Info.png")); btInfo.setFont(new Font("Tahoma", 1, 12)); btInfo.setBackground(SystemColor.inactiveCaptionBorder); btInfo.setBounds(304, 279, 181, 56); layeredPane.add(btInfo); btInfo.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent arg0) { (new Informacoes()).setVisible(true); } }); JButton btSair = new JButton("Sair"); btSair.setIcon(new ImageIcon("img\\PNG-32\\Exit.png")); btSair.setFont(new Font("Tahoma", 1, 13)); btSair.setBackground(SystemColor.controlShadow); btSair.setBounds(379, 368, 106, 41); layeredPane.add(btSair); btSair.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent arg0) { if (JOptionPane.showConfirmDialog( null, "Deseja Encerrar o programa?", "ATENÇÃO !!! ", 0) == 0) System.exit(EXIT_ON_CLOSE); } }); JButton btfornecedores = new JButton("Fornecedores"); btfornecedores.setIcon(new ImageIcon("img\\PNG-48\\Profile.png")); btfornecedores.setFont(new Font("Tahoma", 1, 12)); btfornecedores.setBackground(SystemColor.inactiveCaptionBorder); btfornecedores.setBounds(304, 212, 181, 56); layeredPane.add(btfornecedores); btfornecedores.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent arg0) { new CrudFornecedores().setVisible(true); } }); JPanel panelRecibo = new JPanel(); panelRecibo.setForeground(UIManager.getColor("Button.disabledShadow")); panelRecibo.setBackground(UIManager.getColor("CheckBoxMenuItem.foreground")); panelRecibo.setBorder(UIManager.getBorder("DesktopIcon.border")); panelRecibo.setBounds(10, 11, 530, 77); layeredPane.add(panelRecibo); JLabel LabelRecibo = new JLabel("Emissor de Recibo Eletrônico"); LabelRecibo.setForeground(UIManager.getColor("Button.background")); LabelRecibo.setHorizontalAlignment(2); LabelRecibo.setIcon(new ImageIcon("img\\PNG-48\\Modify.png")); LabelRecibo.setFont(new Font("Tahoma", 3, 18)); panelRecibo.add(LabelRecibo); JPanel panel = new JPanel(); panel.setBackground(UIManager.getColor("CheckBox.foreground")); panel.setBounds(45, 420, 457, 26); layeredPane.add(panel); JLabel lblAnthonyTailerCopy = new JLabel(" Anthony Tailer Copyright © "); lblAnthonyTailerCopy.setForeground(UIManager.getColor("Button.background")); panel.add(lblAnthonyTailerCopy); JLabel lblNewLabel = new JLabel(""); lblNewLabel.setIcon(new ImageIcon("img\\LOGO PEGER 2.png")); lblNewLabel.setBounds(165, 99, 234, 88); layeredPane.add(lblNewLabel); }
/** * Instantiates a new movie information panel. * * @param movieSelectionModel the movie selection model */ public MovieInformationPanel(MovieSelectionModel movieSelectionModel) { this.movieSelectionModel = movieSelectionModel; setLayout( new FormLayout( new ColumnSpec[] { ColumnSpec.decode("450px:grow"), }, new RowSpec[] { RowSpec.decode("fill:default:grow"), })); splitPaneVertical = new JSplitPane(); splitPaneVertical.setBorder(null); splitPaneVertical.setResizeWeight(0.9); splitPaneVertical.setContinuousLayout(true); splitPaneVertical.setOneTouchExpandable(true); splitPaneVertical.setOrientation(JSplitPane.VERTICAL_SPLIT); add(splitPaneVertical, "1, 1, fill, fill"); panelTop = new JPanel(); panelTop.setBorder(null); splitPaneVertical.setTopComponent(panelTop); panelTop.setLayout( new FormLayout( new ColumnSpec[] { FormFactory.RELATED_GAP_COLSPEC, ColumnSpec.decode("200px:grow"), FormFactory.RELATED_GAP_COLSPEC, FormFactory.DEFAULT_COLSPEC, }, new RowSpec[] { RowSpec.decode("fill:default"), RowSpec.decode("top:pref:grow"), })); JPanel panelMovieHeader = new JPanel(); panelTop.add(panelMovieHeader, "2, 1, 3, 1, fill, top"); panelMovieHeader.setBorder(null); panelMovieHeader.setLayout(new BorderLayout(0, 0)); JPanel panelMovieTitle = new JPanel(); panelMovieHeader.add(panelMovieTitle, BorderLayout.NORTH); panelMovieTitle.setLayout(new BorderLayout(0, 0)); lblMovieName = new JLabel(""); TmmFontHelper.changeFont(lblMovieName, 1.33, Font.BOLD); panelMovieTitle.add(lblMovieName); JPanel panelRatingTagline = new JPanel(); panelMovieHeader.add(panelRatingTagline, BorderLayout.CENTER); panelRatingTagline.setLayout( new FormLayout( new ColumnSpec[] { FormFactory.DEFAULT_COLSPEC, FormFactory.DEFAULT_COLSPEC, FormFactory.DEFAULT_COLSPEC, FormFactory.UNRELATED_GAP_COLSPEC, ColumnSpec.decode("25px:grow"), }, new RowSpec[] { FormFactory.LINE_GAP_ROWSPEC, RowSpec.decode("24px"), FormFactory.DEFAULT_ROWSPEC, })); lblRating = new JLabel(""); panelRatingTagline.add(lblRating, "2, 2, left, center"); lblVoteCount = new JLabel(""); panelRatingTagline.add(lblVoteCount, "3, 2, left, center"); panelRatingStars = new StarRater(10, 1); panelRatingTagline.add(panelRatingStars, "1, 2, left, top"); panelRatingStars.setEnabled(false); lblTop250 = new JLabel(""); panelRatingTagline.add(lblTop250, "5, 2, left, default"); lblTagline = new JLabel(); panelRatingTagline.add(lblTagline, "1, 3, 5, 1, default, center"); panelMovieLogos = new JPanel(); panelMovieHeader.add(panelMovieLogos, BorderLayout.EAST); lblCertificationImage = new JLabel(); panelMovieLogos.add(lblCertificationImage); JLayeredPane layeredPaneImages = new JLayeredPane(); panelTop.add(layeredPaneImages, "1, 2, 4, 1, fill, fill"); layeredPaneImages.setLayout( new FormLayout( new ColumnSpec[] { ColumnSpec.decode("max(10px;default)"), ColumnSpec.decode("left:120px:grow"), ColumnSpec.decode("default:grow(10)"), }, new RowSpec[] { RowSpec.decode("max(10px;default)"), RowSpec.decode("top:180px:grow"), RowSpec.decode("fill:80px:grow(3)"), })); lblMovieBackground = new ImageLabel(false, true); lblMovieBackground.setAlternativeText(BUNDLE.getString("image.notfound.fanart")); // $NON-NLS-1$ lblMovieBackground.enableLightbox(); layeredPaneImages.add(lblMovieBackground, "1, 1, 3, 3, fill, fill"); lblMoviePoster = new ImageLabel(); lblMoviePoster.setAlternativeText(BUNDLE.getString("image.notfound.poster")); // $NON-NLS-1$ lblMoviePoster.enableLightbox(); layeredPaneImages.setLayer(lblMoviePoster, 1); layeredPaneImages.add(lblMoviePoster, "2, 2, fill, fill"); lblWatchedImage = new JLabel(); lblWatchedImage.setOpaque(false); layeredPaneImages.setLayer(lblWatchedImage, 2); layeredPaneImages.add(lblWatchedImage, "2, 2, left, top"); JPanel panelGenres = new MovieGenresPanel(movieSelectionModel); layeredPaneImages.setLayer(panelGenres, 2); layeredPaneImages.add(panelGenres, "2, 2, 2, 2, right, bottom"); JPanel panelLogos = new JPanel(); panelLogos.setOpaque(false); layeredPaneImages.setLayer(panelLogos, 2); layeredPaneImages.add(panelLogos, "2, 2, 2, 2, right, top"); panelLogos.setLayout(new FlowLayout(FlowLayout.CENTER, 5, 5)); lblMediaLogoResolution = new JLabel(""); panelLogos.add(lblMediaLogoResolution); lblMediaLogoVideoCodec = new JLabel(""); panelLogos.add(lblMediaLogoVideoCodec); lblMediaLogoAudio = new JLabel(""); panelLogos.add(lblMediaLogoAudio); JPanel panelBottom = new JPanel(); panelBottom.setLayout( new FormLayout( new ColumnSpec[] { ColumnSpec.decode("300px:grow"), }, new RowSpec[] { FormFactory.LINE_GAP_ROWSPEC, RowSpec.decode("fill:min:grow"), })); tabbedPaneMovieDetails = new JTabbedPane(JTabbedPane.TOP); panelBottom.add(tabbedPaneMovieDetails, "1, 2, fill, fill"); splitPaneVertical.setBottomComponent(panelBottom); panelDetails = new MovieDetailsPanel(movieSelectionModel); tabbedPaneMovieDetails.addTab( BUNDLE.getString("metatag.details"), null, panelDetails, null); // $NON-NLS-1$ panelOverview = new JPanel(); tabbedPaneMovieDetails.addTab( BUNDLE.getString("metatag.plot"), null, panelOverview, null); // $NON-NLS-1$ panelOverview.setLayout( new FormLayout( new ColumnSpec[] { ColumnSpec.decode("200px:grow"), }, new RowSpec[] { FormFactory.LINE_GAP_ROWSPEC, RowSpec.decode("fill:default:grow"), })); // panelMovieDetails.add(tabbedPaneMovieDetails, "2, 3, fill, fill"); JScrollPane scrollPaneOverview = new JScrollPane(); scrollPaneOverview.setBorder(null); panelOverview.add(scrollPaneOverview, "1, 2, fill, fill"); tpOverview = new JTextPane(); tpOverview.setOpaque(false); tpOverview.setEditable(false); scrollPaneOverview.setViewportView(tpOverview); panelMovieCrew = new MovieCrewPanel(movieSelectionModel); tabbedPaneMovieDetails.addTab( BUNDLE.getString("metatag.crew"), null, panelMovieCrew, null); // $NON-NLS-1$ MovieActorPanel panelMovieActors = new MovieActorPanel(movieSelectionModel); tabbedPaneMovieDetails.addTab( BUNDLE.getString("metatag.cast"), null, panelMovieActors, null); // $NON-NLS-1$ panelMediaInformation = new MovieMediaInformationPanel(movieSelectionModel); tabbedPaneMovieDetails.addTab( BUNDLE.getString("metatag.mediainformation"), null, panelMediaInformation, null); //$NON-NLS-1$ panelMediaFiles = new MovieMediaFilesPanel(movieSelectionModel); tabbedPaneMovieDetails.addTab( BUNDLE.getString("metatag.mediafiles"), null, panelMediaFiles, null); // $NON-NLS-1$ final List<MediaFile> mediaFiles = new ArrayList<MediaFile>(); final ImagePanel panelArtwork = new ImagePanel(mediaFiles); tabbedPaneMovieDetails.addTab( BUNDLE.getString("metatag.artwork"), null, panelArtwork, null); // $NON-NLS-1$ panelMovieTrailer = new MovieTrailerPanel(movieSelectionModel); tabbedPaneMovieDetails.addTab( BUNDLE.getString("metatag.trailer"), null, panelMovieTrailer, null); // $NON-NLS-1$ // beansbinding init initDataBindings(); // manual coded binding PropertyChangeListener propertyChangeListener = new PropertyChangeListener() { public void propertyChange(PropertyChangeEvent propertyChangeEvent) { String property = propertyChangeEvent.getPropertyName(); Object source = propertyChangeEvent.getSource(); // react on selection of a movie and change of a movie if (source instanceof MovieSelectionModel || (source instanceof Movie && MEDIA_FILES.equals(property))) { Movie movie = null; if (source instanceof MovieSelectionModel) { movie = ((MovieSelectionModel) source).getSelectedMovie(); } if (source instanceof Movie) { movie = (Movie) source; } if (movie != null) { if (movie.getTop250() > 0) { lblTop250.setText("Top 250: #" + movie.getTop250()); } else { lblTop250.setText(""); } lblMovieBackground.setImagePath(movie.getArtworkFilename(MediaFileType.FANART)); lblMoviePoster.setImagePath(movie.getArtworkFilename(MediaFileType.POSTER)); synchronized (mediaFiles) { mediaFiles.clear(); for (MediaFile mediafile : movie.getMediaFiles()) { if (mediafile.isGraphic()) { mediaFiles.add(mediafile); } } panelArtwork.rebuildPanel(); } } } if ((source.getClass() == Movie.class && FANART.equals(property))) { Movie movie = (Movie) source; lblMovieBackground.clearImage(); lblMovieBackground.setImagePath(movie.getArtworkFilename(MediaFileType.FANART)); } if ((source.getClass() == Movie.class && POSTER.equals(property))) { Movie movie = (Movie) source; lblMoviePoster.clearImage(); lblMoviePoster.setImagePath(movie.getArtworkFilename(MediaFileType.POSTER)); } if ((source.getClass() == Movie.class && TOP250.equals(property))) { Movie movie = (Movie) source; if (movie.getTop250() > 0) { lblTop250.setText( BUNDLE.getString("metatag.top250") + ": #" + movie.getTop250()); // $NON-NLS-1$ } else { lblTop250.setText(""); } } } }; movieSelectionModel.addPropertyChangeListener(propertyChangeListener); }
public TestPanel(Player p) { super(); player = p; layeredPane.setPreferredSize(new Dimension(300, 300)); money = new JLabel("Money: $" + player.getMoney()); product = new JLabel("Product: " + player.getProduct()); risk = new JLabel("Risk: " + getRisk() + "%"); JButton buy = new JButton("Buy RV"); buy.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent e) { buy(); } }); JButton sell = new JButton("Sell RV"); sell.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent e) { sell(); } }); JButton collect = new JButton("Collect"); collect.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent e) { collect(); } }); JButton cook = new JButton("cook"); cook.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent e) { cook(); } }); layeredPane.add(money, new Integer(0)); money.setBounds(0, 0, 100, 20); layeredPane.add(product, new Integer(0)); product.setBounds(0, 20, 100, 20); layeredPane.add(risk, new Integer(0)); risk.setBounds(0, 40, 100, 20); layeredPane.add(buy, new Integer(0)); buy.setBounds(100, 0, 101, 30); layeredPane.add(sell, new Integer(0)); sell.setBounds(100, 30, 101, 30); layeredPane.add(collect, new Integer(0)); collect.setBounds(100, 60, 101, 30); layeredPane.add(cook, new Integer(0)); cook.setBounds(100, 90, 101, 30); add(layeredPane); (new Thread(new StartGame())).start(); }