when page added, nscreen item add page info.
nscreen controller add nscreen item for page info.
Change-Id: I88d8ea7303e1ce13b9c245c0e2bd3ff76d0a57c5
Signed-off-by: yonghwan82.jeon <yonghwan82.jeon@samsung.com>
this.enablePages.remove(pageId);
}
- public boolean isEnablePage(String pageID) {
- return this.enablePages.get(pageID);
+ public boolean isEnablePage(String pageId) {
+ return this.enablePages.get(pageId);
}
public void addLink(String pageId, int status) {
--- /dev/null
+
+
+package org.tizen.webuibuilder.model.nscreen;
+
+import java.util.List;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.tizen.webuibuilder.model.app.AppManager;
+import org.tizen.webuibuilder.model.page.IPageDataSetListener;
+import org.tizen.webuibuilder.model.page.PageDataSetEvent;
+
+
+public class NScreenModelController implements IPageDataSetListener {
+ Logger logger = LoggerFactory.getLogger(NScreenModelController.class);
+
+ private AppManager appManager = null;
+ private List<NScreenModel> modelList;
+
+ public NScreenModelController(AppManager appManager) {
+ logger.info("Create Class");
+ this.appManager = appManager;
+ this.modelList = this.appManager.getNScreenModels();
+ this.addListener();
+ }
+
+ public void addListener() {
+ this.appManager.getPageDataSet().addPageListener(this);
+ }
+
+ public void removeListener() {
+ this.appManager.getPageDataSet().removePageListener(this);
+ }
+
+ @Override
+ public void allPagesReseted(PageDataSetEvent e) {
+ }
+
+ @Override
+ public void pagePreDelete(PageDataSetEvent e) {
+ }
+
+ @Override
+ public void pageAdded(PageDataSetEvent e) {
+ logger.info("NScreen add page :"+e.getPageName());
+ for (int i = 0; i < modelList.size(); i++) {
+ NScreenModel model = modelList.get(i);
+ model.addDisablePage(e.getPageName());
+ }
+ }
+
+ @Override
+ public void pageRemoved(PageDataSetEvent e) {
+ logger.info("NScreen remove page : "+e.getPageName());
+ for (int i = 0; i < modelList.size(); i++) {
+ NScreenModel model = modelList.get(i);
+ model.removeEnablePage(e.getPageName());
+ }
+
+ }
+
+ @Override
+ public void pageRenamed(PageDataSetEvent e) {
+ }
+
+ @Override
+ public void pageMoved(PageDataSetEvent e) {
+ }
+
+}
import org.tizen.webuibuilder.model.css.io.CssReader;
import org.tizen.webuibuilder.model.descriptors.DescriptorManager;
import org.tizen.webuibuilder.model.nscreen.NScreenModel;
+import org.tizen.webuibuilder.model.nscreen.NScreenModelController;
import org.tizen.webuibuilder.model.page.IPageDataListener;
import org.tizen.webuibuilder.model.page.PageData;
import org.tizen.webuibuilder.model.page.PageDataEvent;
// private FlyoutPaletteComposite splitter;
private Composite splitter;
+ protected NScreenModelController controller = null;
+
/**
* The width of the palette.
*/
@Override
public void dispose() {
+ if(controller != null){
+ controller.removeListener();
+ }
+
if (appManager != null) {
appManager.removePageListener(this);
}
import org.tizen.webuibuilder.model.css.CssFile;
import org.tizen.webuibuilder.model.html.io.HtmlWriter;
import org.tizen.webuibuilder.model.io.CodeGenerator;
-import org.tizen.webuibuilder.model.nscreen.NScreenModel;
-import org.tizen.webuibuilder.model.nscreen.NScreenModel.NScreenType;
+import org.tizen.webuibuilder.model.nscreen.NScreenModelController;
import org.tizen.webuibuilder.model.page.PageData;
import org.tizen.webuibuilder.model.page.PageDataForHTML;
import org.tizen.webuibuilder.model.project.ProjectManager;
editDomain = new DefaultEditDomain(this);
setEditDomain(editDomain);
+ controller = new NScreenModelController(appManager);
+
setSite(site);
setInput(input);
getCommandStack().addCommandStackListener(this);
CssFile cssFile = loadCssFile(cssPath);
- NScreenModel model = appManager.getCommonNscreen();
- model.setFileName(cssFileName);
+ appManager.getCommonNscreen().setFileName(cssFileName);
pageData.addCssFile(cssFile);