WindowDriver.java revision 13978:1993af50385d
1264391Snwhitehorn/*
2264391Snwhitehorn * Copyright (c) 1997, 2016, Oracle and/or its affiliates. All rights reserved.
3264925Simp * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4264391Snwhitehorn *
5264391Snwhitehorn * This code is free software; you can redistribute it and/or modify it
6264391Snwhitehorn * under the terms of the GNU General Public License version 2 only, as
7264391Snwhitehorn * published by the Free Software Foundation.
8264391Snwhitehorn *
9264391Snwhitehorn * This code is distributed in the hope that it will be useful, but WITHOUT
10264391Snwhitehorn * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11264391Snwhitehorn * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
12264391Snwhitehorn * version 2 for more details (a copy is included in the LICENSE file that
13264391Snwhitehorn * accompanied this code).
14264391Snwhitehorn *
15264391Snwhitehorn * You should have received a copy of the GNU General Public License version
16264391Snwhitehorn * 2 along with this work; if not, write to the Free Software Foundation,
17264391Snwhitehorn * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18264391Snwhitehorn *
19264391Snwhitehorn * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20280950Sandrew * or visit www.oracle.com if you need additional information or have any
21280950Sandrew * questions.
22264391Snwhitehorn */
23264391Snwhitehornpackage org.netbeans.jemmy.drivers;
24264391Snwhitehorn
25264403Snwhitehornimport org.netbeans.jemmy.operators.ComponentOperator;
26280950Sandrew
27264391Snwhitehorn/**
28264391Snwhitehorn * Defines how to work with windows.
29264975Snwhitehorn */
30264391Snwhitehornpublic interface WindowDriver {
31264391Snwhitehorn
32280950Sandrew    /**
33264391Snwhitehorn     * Activates a window.
34264391Snwhitehorn     *
35264391Snwhitehorn     * @param oper Window operator.
36264391Snwhitehorn     */
37264391Snwhitehorn    public void activate(ComponentOperator oper);
38264391Snwhitehorn
39264391Snwhitehorn    /**
40264391Snwhitehorn     * Requests a window to close.
41264391Snwhitehorn     *
42280950Sandrew     * @param oper Window operator.
43264391Snwhitehorn     */
44264391Snwhitehorn    public void requestClose(ComponentOperator oper);
45264391Snwhitehorn
46264391Snwhitehorn    /**
47264391Snwhitehorn     * Closes a window by requesting it to close and then hiding it.
48264391Snwhitehorn     *
49264391Snwhitehorn     * @param oper Window operator.
50264391Snwhitehorn     */
51264391Snwhitehorn    public void requestCloseAndThenHide(ComponentOperator oper);
52264391Snwhitehorn
53264391Snwhitehorn    /**
54276146Semaste     * Closes a window by requesting it to close and then hiding it.
55264391Snwhitehorn     *
56264414Snwhitehorn     * @param oper Window operator.
57264414Snwhitehorn     * @deprecated Use requestClose(ComponentOperator) instead.
58264975Snwhitehorn     */
59264975Snwhitehorn    @Deprecated
60264975Snwhitehorn    public void close(ComponentOperator oper);
61264975Snwhitehorn
62264975Snwhitehorn    /**
63264975Snwhitehorn     * Change window location.
64264975Snwhitehorn     *
65264975Snwhitehorn     * @param oper Window operator.
66264975Snwhitehorn     * @param x New x coordinate
67264975Snwhitehorn     * @param y New y coordinate
68264975Snwhitehorn     */
69264975Snwhitehorn    public void move(ComponentOperator oper, int x, int y);
70264975Snwhitehorn
71264975Snwhitehorn    /**
72264391Snwhitehorn     * Change window size.
73264391Snwhitehorn     *
74264391Snwhitehorn     * @param oper Window operator.
75264391Snwhitehorn     * @param width New window width.
76264391Snwhitehorn     * @param height New window height.
77264391Snwhitehorn     */
78268975Ssbruno    public void resize(ComponentOperator oper, int width, int height);
79264391Snwhitehorn}
80264391Snwhitehorn