/*
- * UI Builder
+a * UI Builder
*
* Copyright (c) 2000 - 2014 Samsung Electronics Co., Ltd. All rights reserved.
*
HtmlMetaFileData fileData = new HtmlMetaFileData();
- NodeList elementList = root.getElementsByTagName("document");
+ NodeList elementList = root.getElementsByTagName("document");
for (int i = 0; i < elementList.getLength(); i++) {
parsePart(fileData, (Element) elementList.item(i), partFactory);
}
}
private static void parsePart(HtmlMetaFileData fileData, Element elem, PartFactory partFactory) {
- NodeList elementList = elem.getElementsByTagName("documentInfo");
+ NodeList elementList = elem.getElementsByTagName("documentInfo");
for (int i = 0; i < elementList.getLength(); i++) {
parsePageInfo(fileData, (Element) elementList.item(i));
}
- elementList = elem.getElementsByTagName("documentData");
+ elementList = elem.getElementsByTagName("documentData");
for (int i = 0; i < elementList.getLength(); i++) {
parsePageData(fileData, (Element) elementList.item(i), partFactory);
}
}
private static void parsePageInfo(HtmlMetaFileData fileData, Element elem) {
- NodeList elementList = elem.getElementsByTagName("documentInfo");
+ NodeList elementList = elem.getElementsByTagName("documentInfo");
for (int i = 0; i < elementList.getLength(); i++) {
parsePageInfo(fileData, (Element) elementList.item(i));
}
private static void parsePageData(HtmlMetaFileData fileData, Element elem,
PartFactory partFactory) {
- NodeList elementList = elem.getElementsByTagName("tizen.nscreen");
- for ( int i = 0; i < elementList.getLength(); i++ ) {
- parseNScreen( fileData, (Element) elementList.item( i ) );
+ NodeList elementList = elem.getElementsByTagName("tizen.nscreen");
+ for (int i = 0; i < elementList.getLength(); i++) {
+ parseNScreen(fileData, (Element) elementList.item(i));
}
- elementList = elem.getElementsByTagName("pageData");
- for (int i = 0; i < elementList.getLength(); i++) {
+ elementList = elem.getElementsByTagName("pageData");
+ for (int i = 0; i < elementList.getLength(); i++) {
parsePagePart(fileData, (Element) elementList.item(i), partFactory);
}
- elementList = elem.getElementsByTagName(BuilderConstants.ELEMENT_DATABINDING);
- for (int i = 0; i < elementList.getLength(); i++) {
- parseDataBinding(fileData, (Element) elementList.item(i));
+ elementList = elem.getElementsByTagName(BuilderConstants.ELEMENT_DATABINDING);
+ for (int i = 0; i < elementList.getLength(); i++) {
+ parseDataBinding(fileData, (Element) elementList.item(i));
}
}
-
- private static void parseNScreen( HtmlMetaFileData fileData, Element nscreen ) {
- NodeList elementList2 = nscreen.getElementsByTagName( "screen" );
- for ( int j = 0; j < elementList2.getLength(); j++ ) {
- Element screen = (Element) elementList2.item( j );
+
+ private static void parseNScreen(HtmlMetaFileData fileData, Element nscreen) {
+ NodeList elementList2 = nscreen.getElementsByTagName("screen");
+ for (int j = 0; j < elementList2.getLength(); j++) {
+ Element screen = (Element) elementList2.item(j);
NScreenModel model = new NScreenModel();
- model.setTitle( screen.getAttribute( "title" ) );
-
- if( screen.getAttribute( "device-width" ).length() > 0 ){
- model.setMinDeviceWidth( Integer.parseInt( screen.getAttribute( "device-width" ) ) );
- model.setMaxDeviceWidth( Integer.parseInt( screen.getAttribute( "device-width" ) ) );
- }else{
- model.setMinDeviceWidth( Integer.parseInt( screen.getAttribute( "min-device-width" ) ) );
- model.setMaxDeviceWidth( Integer.parseInt( screen.getAttribute( "max-device-width" ) ) );
+ model.setName(screen.getAttribute("title"));
+
+ if (screen.getAttribute("device-width").length() > 0) {
+ model.setDeviceWidth(Integer.parseInt(screen.getAttribute("device-width")));
}
-
- if( screen.getAttribute( "device-height" ).length() > 0 ){
- model.setMinDeviceHeight( Integer.parseInt( screen.getAttribute( "device-height" ) ) );
- model.setMaxDeviceHeight( Integer.parseInt( screen.getAttribute( "device-height" ) ) );
- }else{
- model.setMinDeviceHeight( Integer.parseInt( screen.getAttribute( "min-device-height" ) ) );
- model.setMaxDeviceHeight( Integer.parseInt( screen.getAttribute( "max-device-height" ) ) );
+
+ if (screen.getAttribute("device-height").length() > 0) {
+ model.setDeviceHeight(Integer.parseInt(screen.getAttribute("device-height")));
}
-
- if ( screen.getAttribute( "color" ).length() > 0 )
- model.setColor( Integer.parseInt( screen.getAttribute( "color" ) ) );
- if ( screen.getAttribute( "color-index" ).length() > 0 )
- model.setColor( Integer.parseInt( screen.getAttribute( "color-index" ) ) );
+ if (screen.getAttribute("device-pixel-ratio").length() > 0) {
+ model.setDevicePixelRatio(Float.parseFloat(screen
+ .getAttribute("device-pixel-ratio")));
+ }
- if ( screen.getAttribute( "grid" ).length() > 0 && screen.getAttribute( "grid" ).equals( "true" ) )
- model.setGrid( true );
+ if (screen.getAttribute("color").length() > 0)
+ model.setColor(Integer.parseInt(screen.getAttribute("color")));
- if ( screen.getAttribute( "monochrome" ).length() > 0 )
- model.setMonochrome( Integer.parseInt( screen.getAttribute( "monochrome" ) ) );
+ if (screen.getAttribute("color-index").length() > 0)
+ model.setColor(Integer.parseInt(screen.getAttribute("color-index")));
- if ( screen.getAttribute( "orientation" ).length() > 0 ) {
- if ( Orientation.LANDSCAPE.toString().toLowerCase().equals( screen.getAttribute( "orientation" ) ) )
- model.setOrientation( Orientation.LANDSCAPE );
+ if (screen.getAttribute("grid").length() > 0
+ && screen.getAttribute("grid").equals("true"))
+ model.setGrid(true);
+
+ if (screen.getAttribute("monochrome").length() > 0)
+ model.setMonochrome(Integer.parseInt(screen.getAttribute("monochrome")));
+
+ if (screen.getAttribute("orientation").length() > 0) {
+ if (Orientation.LANDSCAPE.toString().toLowerCase()
+ .equals(screen.getAttribute("orientation")))
+ model.setOrientation(Orientation.LANDSCAPE);
else
- model.setOrientation( Orientation.PORTRAIT );
+ model.setOrientation(Orientation.PORTRAIT);
}
- if ( screen.getAttribute( "resolution" ).length() > 0 )
- model.setResolution( screen.getAttribute( "resolution" ) );
+ if (screen.getAttribute("resolution").length() > 0)
+ model.setResolution(screen.getAttribute("resolution"));
- if ( screen.getAttribute( "scan" ).length() > 0 ) {
- if ( Scan.PROGRESSIVE.toString().toLowerCase().equals( screen.getAttribute( "scan" ) ) )
- model.setScan( Scan.PROGRESSIVE );
+ if (screen.getAttribute("scan").length() > 0) {
+ if (Scan.PROGRESSIVE.toString().toLowerCase().equals(screen.getAttribute("scan")))
+ model.setScan(Scan.PROGRESSIVE);
else
- model.setScan( Scan.INTERLACE );
- }
-
- if ( screen.getAttribute( "isLinked" ).length() > 0 && Boolean.parseBoolean( screen.getAttribute( "isLinked" ) ) )
- model.setLink( screen.getAttribute( "cssFileName" ) );
- else
- model.setFileName( screen.getAttribute( "cssFileName" ) );
-
- NodeList nodeList = screen.getElementsByTagName( "enablePages" );
-
- for ( int i = 0; i < nodeList.getLength(); i++ ) {
- Node enablePageNode = nodeList.item( i );
- model.addEnablePage( enablePageNode.getTextContent() );
+ model.setScan(Scan.INTERLACE);
}
- fileData.getNscreenModelList().add( model );
+ NodeList nodeList = screen.getElementsByTagName("enablePages");
+
+ for (int i = 0; i < nodeList.getLength(); i++) {
+ Node enablePageNode = nodeList.item(i);
+ model.addEnablePage(enablePageNode.getTextContent());
+ }
+
+ //TODO nscreen : link.
+// if (screen.getAttribute("link").length() > 0
+// && Boolean.parseBoolean(screen.getAttribute("link")))
+// model.setLink(screen.getAttribute("cssFileName"));
+// else
+// model.setFileName(screen.getAttribute("cssFileName"));
+
+ fileData.getNscreenModelList().add(model);
}
}
}
private static void parseUpdateStartUp(HtmlMetaFileData fileData, Element element) {
- NodeList elementList = element.getElementsByTagName(BuilderConstants.ELEMENT_UPDATEONSTARTUP);
+ NodeList elementList =
+ element.getElementsByTagName(BuilderConstants.ELEMENT_UPDATEONSTARTUP);
for (int i = 0; i < elementList.getLength(); i++) {
Element element2 = (Element) elementList.item(i);
}
private static void parseHandlerInfo(HtmlMetaFileData fileData, Element element) {
- NodeList elementList = element.getElementsByTagName(BuilderConstants.ELEMENT_HANDLERINFO);
+ NodeList elementList = element.getElementsByTagName(BuilderConstants.ELEMENT_HANDLERINFO);
for (int i = 0; i < elementList.getLength(); i++) {
- Element element2 = (Element)elementList.item(i);
+ Element element2 = (Element) elementList.item(i);
String name = element2.getAttribute(BuilderConstants.ATTRIBUTE_NAME);
BindingData dataModel = new BindingData(name);
List<String> modelInfo = new ArrayList<String>();
- NodeList elementList2 = element.getElementsByTagName(BuilderConstants.ELEMENT_HANDLERINFO);
+ NodeList elementList2 =
+ element.getElementsByTagName(BuilderConstants.ELEMENT_HANDLERINFO);
for (int j = 0; j < elementList2.getLength(); j++) {
- Element element3 = (Element)elementList2.item(j);
+ Element element3 = (Element) elementList2.item(j);
String childName = element3.getAttribute(BuilderConstants.ATTRIBUTE_NAME);
modelInfo.add(childName);
}
}
private static void parseDataSource(HtmlMetaFileData fileData, Element element) {
- NodeList elementList = element.getElementsByTagName(BuilderConstants.ELEMENT_DATASOURCE);
+ NodeList elementList = element.getElementsByTagName(BuilderConstants.ELEMENT_DATASOURCE);
for (int i = 0; i < elementList.getLength(); i++) {
- Element element2 = (Element)elementList.item(i);
+ Element element2 = (Element) elementList.item(i);
String sourceName = element2.getAttribute(BuilderConstants.ATTRIBUTE_DATASOURCE);
String modelType = element2.getAttribute(BuilderConstants.ATTRIBUTE_MODELTYPE);
- if ((modelType != null) && (modelType.equals(BuilderConstants.DATABINDING_TYPE_REMOTECALL))) {
+ if ((modelType != null)
+ && (modelType.equals(BuilderConstants.DATABINDING_TYPE_REMOTECALL))) {
String url = element2.getAttribute(BuilderConstants.ATTRIBUTE_URL);
String type = element2.getAttribute(BuilderConstants.ATTRIBUTE_TYPE);
String proxy = element2.getAttribute(BuilderConstants.ATTRIBUTE_PROXY);
parseObservableObject(element2, dataModel);
fileData.addDataSource(dataModel);
- } else if ((modelType != null) && (modelType.equals(BuilderConstants.DATABINDING_TYPE_STATIC))) {
+ } else if ((modelType != null)
+ && (modelType.equals(BuilderConstants.DATABINDING_TYPE_STATIC))) {
String jsonData = element2.getAttribute(BuilderConstants.ATTRIBUTE_JSONDATA);
String filePath = element2.getAttribute(BuilderConstants.ATTRIBUTE_FILEPATH);
}
private static void parseViewModel(HtmlMetaFileData fileData, Element element) {
- NodeList elementList = element.getElementsByTagName(BuilderConstants.ELEMENT_VIEWMODEL);
+ NodeList elementList = element.getElementsByTagName(BuilderConstants.ELEMENT_VIEWMODEL);
for (int i = 0; i < elementList.getLength(); i++) {
Element element2 = (Element) elementList.item(i);
}
private static void parseObservableObject(Element element, BindingData dataModel) {
- NodeList elementList = element.getChildNodes();
+ NodeList elementList = element.getChildNodes();
for (int i = 0; i < elementList.getLength(); i++) {
Node element3 = (Node) elementList.item(i);
if (element3.getNodeName().equals(BuilderConstants.ELEMENT_OBSERVABLEOBJECT)) {
- Element element2 = (Element) element3;
+ Element element2 = (Element) element3;
String name = element2.getAttribute(BuilderConstants.ATTRIBUTE_NAME);
String type = element2.getAttribute(BuilderConstants.ATTRIBUTE_TYPE);
String value = element2.getAttribute(BuilderConstants.ATTRIBUTE_VALUE);
BindingObject dataSource = new BindingObject(name, type, value, boolMarked);
parseObservableObject(element2, dataSource);
if (dataModel.getModelType() == null) {
- dataModel.addViewModelObjects(dataSource);
+ dataModel.addViewModelObjects(dataSource);
} else {
- dataModel.addDataSourceObjects(dataSource);
+ dataModel.addDataSourceObjects(dataSource);
}
}
}
}
-
-
+
private static void parseObservableObject(Element element, BindingObject parentObject) {
- NodeList elementList = element.getChildNodes();
- for (int i = 0; i < elementList.getLength(); i++) {
- Node element3 = (Node) elementList.item(i);
+ NodeList elementList = element.getChildNodes();
+ for (int i = 0; i < elementList.getLength(); i++) {
+ Node element3 = (Node) elementList.item(i);
if (element3.getNodeName().equals(BuilderConstants.ELEMENT_OBSERVABLEOBJECT)) {
- Element element2 = (Element) element3;
- String name = element2.getAttribute(BuilderConstants.ATTRIBUTE_NAME);
- String type = element2.getAttribute(BuilderConstants.ATTRIBUTE_TYPE);
- String value = element2.getAttribute(BuilderConstants.ATTRIBUTE_VALUE);
- String isMarked = element2.getAttribute(BuilderConstants.ATTRIBUTE_ISMARKED);
- boolean boolMarked = Boolean.valueOf(isMarked).booleanValue();
-
- BindingObject bindingObject = new BindingObject(name, type, value, boolMarked);
- if (element2.getElementsByTagName(BuilderConstants.ELEMENT_OBSERVABLEOBJECT).getLength() > 0) {
- parseObservableObject(element2, bindingObject);
- }
- parentObject.add(bindingObject);
+ Element element2 = (Element) element3;
+ String name = element2.getAttribute(BuilderConstants.ATTRIBUTE_NAME);
+ String type = element2.getAttribute(BuilderConstants.ATTRIBUTE_TYPE);
+ String value = element2.getAttribute(BuilderConstants.ATTRIBUTE_VALUE);
+ String isMarked = element2.getAttribute(BuilderConstants.ATTRIBUTE_ISMARKED);
+ boolean boolMarked = Boolean.valueOf(isMarked).booleanValue();
+
+ BindingObject bindingObject = new BindingObject(name, type, value, boolMarked);
+ if (element2.getElementsByTagName(BuilderConstants.ELEMENT_OBSERVABLEOBJECT)
+ .getLength() > 0) {
+ parseObservableObject(element2, bindingObject);
+ }
+ parentObject.add(bindingObject);
}
- }
+ }
}
-
+
private static void parsePagePart(HtmlMetaFileData fileData, Element elem,
PartFactory partFactory) {
List<CssSelector> selectors = null;
- NodeList elementList = elem.getElementsByTagName("tizen.css");
+ NodeList elementList = elem.getElementsByTagName("tizen.css");
for (int i = 0; i < elementList.getLength(); i++) {
Element elem2 = (Element) elementList.item(i);
selectors = parseStyle(elem2);
}
- elementList = elem.getElementsByTagName("tizen.doc");
+ elementList = elem.getElementsByTagName("tizen.doc");
for (int i = 0; i < elementList.getLength(); i++) {
Element elem2 = (Element) elementList.item(i);
Part part = parseElement(fileData, elem2, partFactory, selectors);
List<CssSelector> selectors = new ArrayList<CssSelector>();
// Sets selectors.
- NodeList elementList = elem.getElementsByTagName("tizen.selector");
+ NodeList elementList = elem.getElementsByTagName("tizen.selector");
for (int i = 0; i < elementList.getLength(); i++) {
Element element = (Element) elementList.item(i);
-
+
String selectorName = element.getAttribute(BuilderConstants.ATTRIBUTE_NAME);
String partId = element.getAttribute(BuilderConstants.ATTRIBUTE_PARTID);
CssSelector selector = new CssSelector(selectorName, "", partId);
selectors.add(selector);
// Sets styles.
- elementList = elem.getElementsByTagName("tizen.style");
+ elementList = elem.getElementsByTagName("tizen.style");
for (int j = 0; j < elementList.getLength(); j++) {
Element element2 = (Element) elementList.item(j);
if (part == null) {
} else {
if (part.isPagePart()) {
- //fileData.setName(0, elem.getAttribute(BuilderConstants.PROPERTY_ID));
- id = elem.getAttribute(BuilderConstants.PROPERTY_ID);
+ // fileData.setName(0, elem.getAttribute(BuilderConstants.PROPERTY_ID));
+ id = elem.getAttribute(BuilderConstants.PROPERTY_ID);
}
// Sets events and properties.
- NamedNodeMap attrList = elem.getAttributes();
+ NamedNodeMap attrList = elem.getAttributes();
for (int i = 0; i < attrList.getLength(); i++) {
Attr attr = (Attr) attrList.item(i);
// if (BuilderConstants.ATTRIBUTE_EVENT_PREFIX.equals((attr
Part childpart = null;
for (int i = 0; i < elem.getChildNodes().getLength(); i++) {
child = elem.getChildNodes().item(i);
- if(child instanceof Element){
- if (child.getNodeName().equals("event")) {
- attrList = child.getAttributes();
- for (int j = 0; j < attrList.getLength(); j++) {
- Attr eventAttr = (Attr) attrList.item(j);
- part.setEventValue(eventAttr.getName(), eventAttr.getValue());
- }
- } else if (child.getNodeName().equals("gotoPage")) {
- List<String> strList = new ArrayList<String>();
-
- attrList = child.getAttributes();
- for (int j = 0; j < attrList.getLength(); j++) {
- Attr eventAttr = (Attr) attrList.item(j);
- strList.add(eventAttr.getValue());
- }
- part.setGotoPageEventValue(strList.get(0), strList.get(1), strList.get(2));
-
- } else {
- childpart = parseElement(fileData, (Element)child, partFactory, selectors);
- part.addChildWhenPageRead(childpart);
- }
- }
+ if (child instanceof Element) {
+ if (child.getNodeName().equals("event")) {
+ attrList = child.getAttributes();
+ for (int j = 0; j < attrList.getLength(); j++) {
+ Attr eventAttr = (Attr) attrList.item(j);
+ part.setEventValue(eventAttr.getName(), eventAttr.getValue());
+ }
+ } else if (child.getNodeName().equals("gotoPage")) {
+ List<String> strList = new ArrayList<String>();
+
+ attrList = child.getAttributes();
+ for (int j = 0; j < attrList.getLength(); j++) {
+ Attr eventAttr = (Attr) attrList.item(j);
+ strList.add(eventAttr.getValue());
+ }
+ part.setGotoPageEventValue(strList.get(0), strList.get(1), strList.get(2));
+
+ } else {
+ childpart = parseElement(fileData, (Element) child, partFactory, selectors);
+ part.addChildWhenPageRead(childpart);
+ }
+ }
}
}
return part;
}
-
+
}
package org.tizen.webuibuilder.model.app.io;
import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Comparator;
import java.util.List;
import java.util.Map.Entry;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
import org.tizen.webuibuilder.BuilderConstants;
import org.tizen.webuibuilder.model.GotoPageProperty;
import org.tizen.webuibuilder.model.Part;
import org.tizen.webuibuilder.model.page.PageData;
import org.tizen.webuibuilder.ui.views.databinding.model.BindingData;
import org.tizen.webuibuilder.ui.views.databinding.model.BindingObject;
+import org.w3c.dom.Document;
+import org.w3c.dom.Element;
public class HtmlMetaWriter_ver_1 {
// }
public static Element writeNScreen(Document doc, Element nscreenElement, List<NScreenModel> list) {
- Collections.sort(list, new Comparator<NScreenModel>() {
- @Override
- public int compare(NScreenModel o1, NScreenModel o2) {
- int w1 = o1.getMinDeviceWidth();
- int w2 = o2.getMinDeviceWidth();
- if (w1 < w2) {
- return -1;
- } else if (w1 == w2) {
- return 0;
- }
- return 1;
- }
- });
+// Collections.sort(list, new Comparator<NScreenModel>() {
+// @Override
+// public int compare(NScreenModel o1, NScreenModel o2) {
+// int w1 = o1.getMinDeviceWidth();
+// int w2 = o2.getMinDeviceWidth();
+// if (w1 < w2) {
+// return -1;
+// } else if (w1 == w2) {
+// return 0;
+// }
+// return 1;
+// }
+// });
for ( NScreenModel nsModel : list ) {
Element screenElement = doc.createElement( "screen" );
- screenElement.setAttribute( "title", nsModel.getTitle() );
+ screenElement.setAttribute( "title", nsModel.getName() );
- if( nsModel.getMinDeviceWidth() == nsModel.getMaxDeviceWidth() ){
- screenElement.setAttribute( "device-width", String.valueOf( nsModel.getMinDeviceWidth() ) );
- }else{
- screenElement.setAttribute( "min-device-width", String.valueOf( nsModel.getMinDeviceWidth() ) );
- screenElement.setAttribute( "max-device-width", String.valueOf( nsModel.getMaxDeviceWidth() ) );
+ if (nsModel.getDeviceWidth() > -1) {
+ screenElement
+ .setAttribute("device-width", String.valueOf(nsModel.getDeviceWidth()));
}
-
- if( nsModel.getMinDeviceHeight() == nsModel.getMaxDeviceHeight()){
- screenElement.setAttribute( "device-height", String.valueOf( nsModel.getMinDeviceHeight() ) );
- }else{
- screenElement.setAttribute( "min-device-height", String.valueOf( nsModel.getMinDeviceHeight() ) );
- screenElement.setAttribute( "max-device-height", String.valueOf( nsModel.getMaxDeviceHeight() ) );
+
+ if (nsModel.getDeviceHeight() > -1) {
+ screenElement.setAttribute("device-height",
+ String.valueOf(nsModel.getDeviceHeight()));
}
if ( nsModel.getColor() > 0 )
if ( nsModel.getScan() != null )
screenElement.setAttribute( "scan", nsModel.getScan().toString().toLowerCase() );
+
- if ( nsModel.isLinked() )
- screenElement.setAttribute( "isLinked", String.valueOf( true ) );
-
- for ( String enagePage : nsModel.getEnalbePages() ) {
- Element enablePageElement = doc.createElement( "enablePage" );
- enablePageElement.setTextContent( enagePage );
- screenElement.appendChild( enablePageElement );
- }
+ //TODO : nscreen : link
+// for ( String enagePage : nsModel.getEnalbePages() ) {
+// Element enablePageElement = doc.createElement( "enablePage" );
+// enablePageElement.setTextContent( enagePage );
+// screenElement.appendChild( enablePageElement );
+// }
+// if ( nsModel.isLinked() )
+// screenElement.setAttribute( "isLinked", String.valueOf( true ) );
+
screenElement.setAttribute( "cssFileName", nsModel.getFileName() );
nscreenElement.appendChild( screenElement );
package org.tizen.webuibuilder.model.nscreen;
-import java.util.ArrayList;
+import java.util.HashMap;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
public class NScreenModel {
+ Logger logger = LoggerFactory.getLogger(NScreenModel.class);
+
+ public static final int UP = -1;
+ public static final int NONE = 0;
+ public static final int DOWN = 1;
public enum Orientation {
LANDSCAPE, PORTRAIT
COMMON, ORIENTATION, RATIO, DEVICE, CUSTOM
}
- private String title;
-
+ // Nscreen Info
+ private String nscreenName;
+ private NScreenType type = null;
+ private HashMap<String, Boolean> enablePages = new HashMap<String, Boolean>();
+ private HashMap<String, Integer> link = new HashMap<String, Integer>();
+ private String imageName = null;
+
+ // Media Feature
+ private float devicePixelRatio;
+ private int deviceHeight;
+ private int deviceWidth;
private int width;
private int height;
private int color;
private int colorIndex;
- private int minDeviceHeight;
- private int maxDeviceHeight;
- private int minDeviceWidth;
- private int maxDeviceWidth;
private Orientation orientation = null;
private int monochrome;
private String resolution;
private Scan scan = null;
private boolean grid = false;
- private boolean isLink = false;
- private NScreenType type = null;
- private ArrayList<String> enablePages = new ArrayList<String>();
+
+ // TODO : Next Version.
+ // private int minDeviceHeight;
+ // private int maxDeviceHeight;
+ // private int minDeviceWidth;
+ // private int maxDeviceWidth;
private String fileName;
- public NScreenModel(String title, int minDeviceWidth, int maxDeviceWidth, int minDeviceHeight,
- int maxDeviceHeight, NScreenType type) {
- this.title = title;
- this.minDeviceWidth = minDeviceWidth;
- this.maxDeviceWidth = maxDeviceWidth;
- this.minDeviceHeight = minDeviceHeight;
- this.maxDeviceHeight = maxDeviceHeight;
+ public NScreenModel(String name, NScreenType type) {
+ this.nscreenName = name;
this.type = type;
}
public NScreenModel() {
+
}
- public String getTitle() {
- return title;
+ // Nscreen Info
+ public String getName() {
+ return nscreenName;
}
- public void setTitle(String title) {
- this.title = title;
+ public void setName(String name) {
+ this.nscreenName = name;
}
- public int getMinDeviceHeight() {
- return minDeviceHeight;
+ public NScreenType getType() {
+ return type;
}
- public void setMinDeviceHeight(int minDeviceHeight) {
- this.minDeviceHeight = minDeviceHeight;
+ public void setType(NScreenType type) {
+ this.type = type;
}
- public int getMaxDeviceHeight() {
- return maxDeviceHeight;
+ public void addEnablePage(String pageId) {
+ this.enablePages.put(pageId, true);
}
- public void setMaxDeviceHeight(int maxDeviceHeight) {
- this.maxDeviceHeight = maxDeviceHeight;
+ public void addDisablePage(String pageId) {
+ this.enablePages.put(pageId, false);
}
- public int getMinDeviceWidth() {
- return minDeviceWidth;
+ public void removeEnablePage(String pageId) {
+ this.enablePages.remove(pageId);
}
- public void setMinDeviceWidth(int minDeviceWidth) {
- this.minDeviceWidth = minDeviceWidth;
+ public boolean isEnablePage(String pageID) {
+ return this.enablePages.get(pageID);
}
- public int getMaxDeviceWidth() {
- return maxDeviceWidth;
+ public void addLink(String pageId, int status) {
+ if (isValidStatus(status)) {
+ this.link.put(pageId, status);
+ } else {
+ return;
+ }
}
- public void setMaxDeviceWidth(int maxDeviceWidth) {
- this.maxDeviceWidth = maxDeviceWidth;
+ public void removeLink(String pageId) {
+ this.link.remove(pageId);
}
- public String getFileName() {
- return fileName;
+ public int getLink(String pageId) {
+ return this.link.get(pageId);
}
- public void setFileName(String fileName) {
- this.fileName = fileName;
+ public boolean isValidStatus(int status) {
+ boolean checkValue = false;
+
+ switch (status) {
+ case NScreenModel.UP:
+ checkValue = true;
+ break;
+ case NScreenModel.NONE:
+ checkValue = true;
+ break;
+ case NScreenModel.DOWN:
+ checkValue = true;
+ break;
+ default:
+ logger.info("Status is not valid.");
+ break;
+ }
+ return checkValue;
+ }
+
+ public String getImageName() {
+ return imageName;
+ }
+
+ public void setImageName(String imageName) {
+ this.imageName = imageName;
+ }
+
+ // Media Feature
+ public float getDevicePixelRatio() {
+ return devicePixelRatio;
+ }
+
+ public void setDevicePixelRatio(float devicePixelRatio) {
+ this.devicePixelRatio = devicePixelRatio;
+ }
+
+ public int getDeviceHeight() {
+ return deviceHeight;
+ }
+
+ public void setDeviceHeight(int deviceHeight) {
+ this.deviceHeight = deviceHeight;
+ }
+
+ public int getDeviceWidth() {
+ return deviceWidth;
+ }
+
+ public void setDeviceWidth(int deviceWidth) {
+ this.deviceWidth = deviceWidth;
}
public int getColor() {
return reduceRatio(width, height);
}
- public String getMinDeviceAspectRatio() {
- return reduceRatio(minDeviceWidth, minDeviceHeight);
- }
-
- public String getMaxDeviceAspectRatio() {
- return reduceRatio(maxDeviceWidth, maxDeviceHeight);
- }
-
- public void setLink(String fileName) {
- this.fileName = fileName;
- this.isLink = true;
- }
-
- public boolean isLinked() {
- return this.isLink;
- }
-
- public ArrayList<String> getEnalbePages() {
- return this.enablePages;
- }
-
- public void addEnablePage(String enablePageID) {
- this.enablePages.add(enablePageID);
- }
-
- public boolean isEnablePage(String pageID) {
- return this.enablePages.contains(pageID);
+ public String getDeviceAspectRatio() {
+ return reduceRatio(deviceWidth, deviceHeight);
}
public int getWidth() {
return gcd(b, a % b);
}
- public NScreenType getType() {
- return type;
+ public String getFileName() {
+ return fileName;
}
- public void setType(NScreenType type) {
- this.type = type;
+ public void setFileName(String fileName) {
+ this.fileName = fileName;
}
+
}