xml.schema/test/qa-functional/src/org/netbeans/test/xml/schema/abe/DVNodeOperator.java
2 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
4 * Copyright 2009-2017 Oracle and/or its affiliates. All rights reserved.
6 * Oracle and Java are registered trademarks of Oracle and/or its affiliates.
7 * Other names may be trademarks of their respective owners.
9 * The contents of this file are subject to the terms of either the GNU
10 * General Public License Version 2 only ("GPL") or the Common
11 * Development and Distribution License("CDDL") (collectively, the
12 * "License"). You may not use this file except in compliance with the
13 * License. You can obtain a copy of the License at
14 * http://www.netbeans.org/cddl-gplv2.html
15 * or nbbuild/licenses/CDDL-GPL-2-CP. See the License for the
16 * specific language governing permissions and limitations under the
17 * License. When distributing the software, include this License Header
18 * Notice in each file and include the License file at
19 * nbbuild/licenses/CDDL-GPL-2-CP. Oracle designates this
20 * particular file as subject to the "Classpath" exception as provided
21 * by Oracle in the GPL Version 2 section of the License file that
22 * accompanied this code. If applicable, add the following below the
23 * License Header, with the fields enclosed by brackets [] replaced by
24 * your own identifying information:
25 * "Portions Copyrighted [year] [name of copyright owner]"
29 * The Original Software is NetBeans. The Initial Developer of the Original
30 * Software is Sun Microsystems, Inc. Portions Copyright 2009-2010 Sun
31 * Microsystems, Inc. All Rights Reserved.
33 * If you wish your version of this file to be governed by only the CDDL
34 * or only the GPL Version 2, indicate your decision by adding
35 * "[Contributor] elects to include this software in this distribution
36 * under the [CDDL or GPL Version 2] license." If you do not indicate a
37 * single choice of license, a recipient has the option to distribute
38 * your version of this file under either the CDDL, the GPL Version 2 or
39 * to extend the choice of license to its licensees as provided above.
40 * However, if you add GPL Version 2 code and therefore, elected the GPL
41 * Version 2 license, then the option applies only if the new code is
42 * made subject to such option by the copyright holder.
45 * To change this template, choose Tools | Templates
46 * and open the template in the editor.
49 package org.netbeans.test.xml.schema.abe;
51 import org.netbeans.test.xml.schema.*;
52 import java.awt.Container;
53 import java.awt.event.KeyEvent;
54 import org.netbeans.jemmy.operators.ContainerOperator;
55 import org.netbeans.jemmy.operators.JPopupMenuOperator;
56 import org.netbeans.modules.xml.schema.abe.ElementPanel;
57 import org.netbeans.test.xml.schema.lib.util.Helpers;
61 * @author Mikhail Matveev
63 public class DVNodeOperator extends DVGenericNodeOperator{
65 private ElementPanel m_panel=null;
67 public DVNodeOperator(Container comp){
69 m_panel=(ElementPanel)comp;
72 public DVNodeOperator(ContainerOperator parent, String text){
74 this(parent,text,null);
77 public DVNodeOperator(ContainerOperator parent, String text, boolean ce, boolean ccs){
79 this(parent,text,new DefaultStringComparator(ce,ccs));
82 public DVNodeOperator(ContainerOperator parent, String text, StringComparator comparator){
84 super(parent,text,comparator);
85 m_panel=(ElementPanel)m_label.getSource().getParent().getParent();
88 public boolean isExpanded() {
89 return m_panel.isExpanded();
92 public void setExpanded(boolean value) {
93 m_panel.setExpanded(value);
95 m_panel.expandChild();
99 public ElementPanel getElementPanel() {
103 public void renameRefactor(String name){
104 clickForPopupRobot();
105 Helpers.waitNoEvent();
106 new JPopupMenuOperator().pushMenuNoBlock("Refactor|Rename...");
107 Helpers.waitNoEvent();
108 new RefactoringDialogOperator(name).refactorImmediately();
111 public void deleteRefactor(){
112 clickForPopupRobot();
113 Helpers.waitNoEvent();
114 new JPopupMenuOperator().pushMenuNoBlock("Refactor|Safe Delete...");
115 Helpers.waitNoEvent();
116 new RefactoringDialogOperator(null).refactorImmediately();
119 public void delete(){
120 clickForPopupRobot();
121 Helpers.waitNoEvent();
122 new JPopupMenuOperator().pushMenuNoBlock("Delete");
123 Helpers.waitNoEvent();
124 new RefactoringDialogOperator(null).refactorImmediately();
127 public DVGenericNodeOperator addAttribute(String name){
128 clickForPopupRobot();
129 new JPopupMenuOperator().pushMenu("Add|Attribute");
131 DVGenericNodeOperator res=new DVGenericNodeOperator(this, DesignViewOperator.defaultAttributeName, true, true);
132 res.getLabel().setText(name);
133 res.pushKey(KeyEvent.VK_ENTER);