blob: 81ebb3733dc7bcc74970f182e1b1a28ac2060aeb (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
|
/*******************************************************************************
* Copyright (c) 2004 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* IBM Corporation - initial API and implementation
*******************************************************************************/
package org.eclipse.wst.css.core.internal.contentmodel;
import java.util.Enumeration;
import java.util.Hashtable;
import java.util.Vector;
/**
*
*/
public class PropCMSubProperty extends PropCMProperty {
// static fields
private static java.util.Hashtable instances = null;
public final static String PSUB_BG_POSITION_X = "background-positionH";//$NON-NLS-1$
public final static String PSUB_BG_POSITION_Y = "background-positionV";//$NON-NLS-1$
public final static String PSUB_CLIP_TOP = "clipTop";//$NON-NLS-1$
public final static String PSUB_CLIP_RIGHT = "clipRight";//$NON-NLS-1$
public final static String PSUB_CLIP_BOTTOM = "clipBottom";//$NON-NLS-1$
public final static String PSUB_CLIP_LEFT = "clipLeft";//$NON-NLS-1$
/**
*
*/
protected PropCMSubProperty(String name) {
super(name);
}
/**
*
*/
public PropCMProperty getContainer() {
return shorthandContainerAt(0);
}
/**
*
*/
public static PropCMProperty getInstanceOf(String name) {
// initialize
if (instances == null)
instances = new Hashtable(10);
// Initialize of DB
if (isNeedInitialize())
PropCMNode.initPropertyCM();
// query
Object node = instances.get(name);
if (node != null)
return (PropCMProperty) node;
// register
if (PropCMNode.isLoading()) {
node = new PropCMSubProperty(name);
instances.put(name, node);
}
return (PropCMProperty) node;
}
/**
*
*/
public static Enumeration getNameEnum() {
// Initialize of DB
if (isNeedInitialize())
PropCMNode.initPropertyCM();
return instances.keys();
}
/**
*
*/
public static Enumeration getPropertyEnum() {
// Initialize of DB
if (isNeedInitialize())
PropCMNode.initPropertyCM();
return instances.elements();
}
/**
*
*/
public short getType() {
return VAL_SUBPROPERTY;
}
/**
*
*/
public static Vector names() {
// Initialize of DB
if (isNeedInitialize())
PropCMNode.initPropertyCM();
return new Vector(instances.keySet());
}
/**
*
*/
public void setContainer(PropCMProperty prop) {
if (containers == null)
containers = new Vector();
containers.clear();
containers.add(prop);
}
}
|