/** * Sets the button's label to be the specified string. * * @param label the new label, or <code>null</code> * if the button has no label. * @see java.awt.Button#getLabel */ public void setLabel(String label) { boolean testvalid = false; synchronized (this) { if (label != this.label && (this.label == null || !this.label.equals(label))) { this.label = label; ButtonPeer peer = (ButtonPeer)this.peer; if (peer != null) { peer.setLabel(label); } testvalid = true; } } // This could change the preferred size of the Component. if (testvalid) { invalidateIfValid(); } }
public void instrumentPeer() { origPeer = (ButtonPeer) getPeer(); InvocationHandler handler = new InvocationHandler() { public Object invoke(Object proxy, Method method, Object[] args) { if (method.getName().equals("requestFocus")) { Container parent = getParent(); parent.remove(TestButton.this); System.err.println("parent = " + parent); System.err.println("target = " + TestButton.this); System.err.println("new parent = " + TestButton.this.getParent()); } Object ret = null; try { ret = method.invoke(origPeer, args); } catch (IllegalAccessException iae) { throw new Error("Test error.", iae); } catch (InvocationTargetException ita) { throw new Error("Test error.", ita); } return ret; } }; proxiedPeer = (ButtonPeer) Proxy.newProxyInstance(ButtonPeer.class.getClassLoader(), new Class[] {ButtonPeer.class}, handler); setPeer(proxiedPeer); }
void test() { setLabel(""); setLabel(null); setLabel(getLabel()); ((ButtonPeer) getPeer()).setLabel(""); ((ButtonPeer) getPeer()).setLabel(null); ((ButtonPeer) getPeer()).setLabel(getLabel()); setFont(null); setFont(getFont()); getPeer().setFont(getFont()); setBackground(null); setBackground(getBackground()); getPeer().setBackground(getBackground()); setForeground(null); setForeground(getForeground()); getPeer().setForeground(getForeground()); setEnabled(isEnabled()); getPeer().setEnabled(isEnabled()); }
/** * Sets the button's label to be the specified string. * * @param label the new label, or {@code null} * if the button has no label. * @see java.awt.Button#getLabel */ public void setLabel(String label) { boolean testvalid = false; synchronized (this) { if (label != this.label && (this.label == null || !this.label.equals(label))) { this.label = label; ButtonPeer peer = (ButtonPeer)this.peer; if (peer != null) { peer.setLabel(label); } testvalid = true; } } // This could change the preferred size of the Component. if (testvalid) { invalidateIfValid(); } }
/** * Sets the button's label to be the specified string. * * @param label the new label, or <code>null</code> * if the button has no label. * @see java.awt.Button#getLabel */ public void setLabel(String label) { boolean testvalid = false; synchronized (this) { if (label != this.label && (this.label == null || !this.label.equals(label))) { this.label = label; ButtonPeer peer = (ButtonPeer)this.peer; if (peer != null) { peer.setLabel(label); } testvalid = true; } } // This could change the preferred size of the Component. if (testvalid && valid) { invalidate(); } }
public static boolean attachFakePeer(Component comp) { if (comp == null || comp.isDisplayable() || comp instanceof javax.swing.JComponent || comp instanceof javax.swing.RootPaneContainer) return false; FakePeer peer = null; if (comp instanceof Label) peer = getFakePeer(LabelPeer.class, new FakeLabelPeer((Label) comp)); else if (comp instanceof Button) peer = getFakePeer(ButtonPeer.class, new FakeButtonPeer((Button) comp)); else if (comp instanceof Panel) peer = getFakePeer(new Class[] {ContainerPeer.class, PanelPeer.class}, new FakePanelPeer((Panel) comp)); else if (comp instanceof TextField) peer = getFakePeer(new Class[] {TextFieldPeer.class, TextComponentPeer.class}, new FakeTextFieldPeer((TextField) comp)); else if (comp instanceof TextArea) peer = getFakePeer(new Class[] {TextAreaPeer.class, TextComponentPeer.class}, new FakeTextAreaPeer((TextArea) comp)); else if (comp instanceof TextComponent) peer = getFakePeer(TextComponentPeer.class, new FakeTextComponentPeer((TextComponent) comp)); else if (comp instanceof Checkbox) peer = getFakePeer(CheckboxPeer.class, new FakeCheckboxPeer((Checkbox) comp)); else if (comp instanceof Choice) peer = getFakePeer(ChoicePeer.class, new FakeChoicePeer((Choice) comp)); else if (comp instanceof List) peer = getFakePeer(ListPeer.class, new FakeListPeer((List) comp)); else if (comp instanceof Scrollbar) peer = getFakePeer(ScrollbarPeer.class, new FakeScrollbarPeer((Scrollbar) comp)); else if (comp instanceof ScrollPane) peer = getFakePeer(new Class[] {ContainerPeer.class, ScrollPanePeer.class}, new FakeScrollPanePeer((ScrollPane) comp)); else if (comp instanceof Canvas) peer = getFakePeer(CanvasPeer.class, new FakeCanvasPeer((Canvas) comp)); else return false; attachFakePeer(comp, peer); return true; }
public void instrumentPeer() { origPeer = AWTAccessor.getComponentAccessor().getPeer(this); InvocationHandler handler = new InvocationHandler() { public Object invoke(Object proxy, Method method, Object[] args) { if (method.getName().equals("requestFocus")) { Container parent = getParent(); parent.remove(TestButton.this); System.err.println("parent = " + parent); System.err.println("target = " + TestButton.this); System.err.println("new parent = " + TestButton.this.getParent()); } Object ret = null; try { ret = method.invoke(origPeer, args); } catch (IllegalAccessException iae) { throw new Error("Test error.", iae); } catch (InvocationTargetException ita) { throw new Error("Test error.", ita); } return ret; } }; proxiedPeer = (ButtonPeer) Proxy.newProxyInstance( ButtonPeer.class.getClassLoader(), new Class[] {ButtonPeer.class}, handler); setPeer(proxiedPeer); }
/** * Sets the label for this button to the specified value. * * @param label The new label for this button. */ public synchronized void setLabel(String label) { this.label = label; actionCommand = label; if (peer != null) { ButtonPeer bp = (ButtonPeer) peer; bp.setLabel (label); } }
protected ButtonPeer createButton(Button target) { checkHeadLess("No ButtonPeer can be created in an headless" + "graphics environment."); return new SwingButtonPeer(target); }