~ubuntu-branches/ubuntu/quantal/netbeans/quantal

« back to all changes in this revision

Viewing changes to graph/examples/src/test/resize/ResizeControlPointResolverTest.java

  • Committer: Bazaar Package Importer
  • Author(s): Marek Slama
  • Date: 2008-01-29 14:11:22 UTC
  • Revision ID: james.westby@ubuntu.com-20080129141122-fnzjbo11ntghxfu7
Tags: upstream-6.0.1
ImportĀ upstreamĀ versionĀ 6.0.1

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
 * The contents of this file are subject to the terms of the Common Development
 
3
 * and Distribution License (the License). You may not use this file except in
 
4
 * compliance with the License.
 
5
 *
 
6
 * You can obtain a copy of the License at http://www.netbeans.org/cddl.html
 
7
 * or http://www.netbeans.org/cddl.txt.
 
8
 *
 
9
 * When distributing Covered Code, include this CDDL Header Notice in each file
 
10
 * and include the License file at http://www.netbeans.org/cddl.txt.
 
11
 * If applicable, add the following below the CDDL Header, with the fields
 
12
 * enclosed by brackets [] replaced by your own identifying information:
 
13
 * "Portions Copyrighted [year] [name of copyright owner]"
 
14
 *
 
15
 * The Original Software is NetBeans. The Initial Developer of the Original
 
16
 * Software is Sun Microsystems, Inc. Portions Copyright 1997-2007 Sun
 
17
 * Microsystems, Inc. All Rights Reserved.
 
18
 */
 
19
package test.resize;
 
20
 
 
21
import test.SceneSupport;
 
22
import org.netbeans.api.visual.widget.LabelWidget;
 
23
import org.netbeans.api.visual.widget.Scene;
 
24
import org.netbeans.api.visual.widget.Widget;
 
25
import org.netbeans.api.visual.action.ActionFactory;
 
26
import org.netbeans.api.visual.action.ResizeControlPointResolver;
 
27
import org.netbeans.api.visual.action.ResizeProvider;
 
28
import org.netbeans.api.visual.border.BorderFactory;
 
29
 
 
30
import java.awt.*;
 
31
 
 
32
/**
 
33
 * @author David Kaspar
 
34
 */
 
35
public class ResizeControlPointResolverTest extends Scene {
 
36
 
 
37
    public ResizeControlPointResolverTest () {
 
38
        LabelWidget widget = new LabelWidget (this, "Only bottom-right corner allows the label resizing");
 
39
 
 
40
        widget.setOpaque (true);
 
41
        widget.setBackground (Color.LIGHT_GRAY);
 
42
        widget.setBorder (BorderFactory.createResizeBorder (8));
 
43
 
 
44
        widget.getActions ().addAction (ActionFactory.createResizeAction (null, new MyResizeControlPointResolver (), null));
 
45
 
 
46
        addChild (widget);
 
47
    }
 
48
 
 
49
    public static void main (String[] args) {
 
50
        SceneSupport.show (new ResizeControlPointResolverTest ());
 
51
    }
 
52
 
 
53
    private static class MyResizeControlPointResolver implements ResizeControlPointResolver {
 
54
 
 
55
        public ResizeProvider.ControlPoint resolveControlPoint (Widget widget, Point point) {
 
56
            Rectangle bounds = widget.getBounds ();
 
57
            Insets insets = widget.getBorder ().getInsets ();
 
58
            if (new Rectangle (bounds.x + bounds.width - insets.right, bounds.y + bounds.height - insets.bottom, insets.right, insets.bottom).contains (point))
 
59
                return ResizeProvider.ControlPoint.BOTTOM_RIGHT;
 
60
            return null;
 
61
        }
 
62
    }
 
63
 
 
64
}