1 /*-------------------------------------------------------------------------- 2 * Copyright 2007 utgenome.org 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 *--------------------------------------------------------------------------*/ 16 //-------------------------------------- 17 // GenomeBrowser Project 18 // 19 // TrackGroupPropertyChange.java 20 // Since: Jun 12, 2007 21 // 22 // $URL$ 23 // $Author$ 24 //-------------------------------------- 25 package org.utgenome.gwt.utgb.client.track; 26 27 import java.util.Set; 28 29 /** 30 * Notification of TrackGroupProperty change 31 * 32 * @author leo 33 * 34 */ 35 public interface TrackGroupPropertyChange extends TrackGroupProperty { 36 /** 37 * Test whether the property of the given key has been changed 38 * 39 * @param key 40 * property key 41 * @return true if the property of the given key has been changed, otherwise false 42 */ 43 boolean contains(String key); 44 45 /** 46 * Test at least one of properties among the given key set has changed 47 * 48 * @param keySet 49 * a set of keys to test 50 * @return true if keySet contains a key of changed properties, otherwise false 51 */ 52 boolean containsOneOf(String[] keySet); 53 54 boolean containsOneOf(Iterable<String> keyList); 55 56 /** 57 * Get the key set of the changed property keys 58 * 59 * @return 60 */ 61 Set<String> changedKeySet(); 62 63 }