Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

Source code: com/arranger/jarl/util/WidgetConfigSegment.java


1   package com.arranger.jarl.util;
2   
3   import com.arranger.jarl.base.BaseJarlObjectInfo;
4   import com.arranger.jarl.base.IJarlObjectInfo;
5   import org.w3c.dom.Element;
6   
7   /**
8    * MotionSegment created on Feb 25, 2003
9    */
10  public abstract class WidgetConfigSegment {
11  
12      protected double m_startTimePct;
13      protected double m_endTimePct;
14  
15      public WidgetConfigSegment(Element element) {
16          m_startTimePct = WidgetUtil.normalize(1, element.getAttribute("startTime"));
17          m_endTimePct = WidgetUtil.normalize(1, element.getAttribute("endTime"));
18      }
19  
20      public double getStartTimePct() {
21          return m_startTimePct;
22      }
23  
24      public void setStartTimePct(double startTimePct) {
25          m_startTimePct = startTimePct;
26      }
27  
28      public double getEndTimePct() {
29          return m_endTimePct;
30      }
31  
32      public void setEndTimePct(double endTimePct) {
33          m_endTimePct = endTimePct;
34      }
35  
36      /**
37       * -1, means too small
38       * 0, means correct
39       * 1, means to large
40       */
41      public int checkRange(double currentTimePct) {
42          if (currentTimePct < m_startTimePct) {
43              return -1;
44          }
45          if (m_endTimePct >= currentTimePct) {
46              return 0;
47          }
48          return 1;
49      }
50  
51      public String toString() {
52          return "startTimePct: " + m_startTimePct + " endTimePct" + m_endTimePct;
53      }
54  
55      /**
56       * @return the info for this object
57       */
58      public IJarlObjectInfo getJarlObjectInfo() {
59          IJarlObjectInfo jarlObjectInfo = new BaseJarlObjectInfo(null, null, null);
60          addJarlObjectInfo(jarlObjectInfo);
61          return jarlObjectInfo;
62      }
63  
64      /**
65       * Override this, and for every field that you're using, call {@link #populateInfo}
66       * for example:
67       * <code>
68       *   populateInfo(jarlObjectInfo, "zOrder", "Z-Order", JarlInfoUtil.PRIMITIVE_DISPLAY);
69       * </code>
70       *
71       * @param jarlObjectInfo
72       *
73       * @see JarlInfoUtil#PRIMITIVE_DISPLAY
74       * @see #populateInfo
75       * @see ObjectUtil#initializeField
76       */
77      protected void addJarlObjectInfo(IJarlObjectInfo jarlObjectInfo) {
78          populateInfo(jarlObjectInfo, "startTimePct", "Start Pct", JarlInfoUtil.PCT_DISPLAY);
79          populateInfo(jarlObjectInfo, "endTimePct", "End Pct", JarlInfoUtil.PCT_DISPLAY);
80      }
81  
82      /**
83       * for example:
84       * <code>
85       *   populateInfo(jarlObjectInfo, "zOrder", "Z-Order", JarlInfoUtil.PRIMITIVE_DISPLAY);
86       * </code>
87       *
88       * @param jarlObjectInfo
89       * @param fieldName the name of the field without the m_ prefix
90       * @param displayName
91       * @param jarlObjectDisplay
92       * @return the same jarlObjectInfo
93       */
94      protected IJarlObjectInfo populateInfo(IJarlObjectInfo jarlObjectInfo,
95                                             String fieldName,
96                                             String displayName,
97                                             IJarlObjectInfo.IJarlObjectDisplay jarlObjectDisplay) {
98          return JarlInfoUtil.populateInfo(this, jarlObjectInfo, fieldName, displayName, jarlObjectDisplay);
99      }
100 }