From: <se...@us...> - 2008-05-13 16:49:10
|
Revision: 135 http://acmcontester.svn.sourceforge.net/acmcontester/?rev=135&view=rev Author: sem62 Date: 2008-05-13 09:49:15 -0700 (Tue, 13 May 2008) Log Message: ----------- Added unknown item model for correct operations with courses, generated with third party editors. Modified Paths: -------------- WebEditor/src/edu/lnu/FireFly/WebEditor/GUI/CourseTreePopupMenu.java WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/Chapter/ChapterModel.java WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/ItemModel.java WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/ItemModels.java WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/Lecture/LectureModel.java WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/OrganizationModel.java WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/ResourcedItemModel.java WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/SimpleQuestion/SimpleQuestionModel.java WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/SummaryPageModel/SummaryPageModel.java WebEditor/src/edu/lnu/FireFly/WebEditor/WebEditor.java Added Paths: ----------- WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/UnknownItemModel.java Modified: WebEditor/src/edu/lnu/FireFly/WebEditor/GUI/CourseTreePopupMenu.java =================================================================== --- WebEditor/src/edu/lnu/FireFly/WebEditor/GUI/CourseTreePopupMenu.java 2008-05-12 21:39:55 UTC (rev 134) +++ WebEditor/src/edu/lnu/FireFly/WebEditor/GUI/CourseTreePopupMenu.java 2008-05-13 16:49:15 UTC (rev 135) @@ -202,7 +202,7 @@ .getShowOnSummaryPageMenuVisible()); limitConditionsMenu.setVisible(model - .getLimitConditionsMenuVisible()); + .getLimitConditionsMenuVisible(manifestItem)); showSummaryPageMenuItem.setVisible(model .getShowSummaryPageMenuVisible()); Modified: WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/Chapter/ChapterModel.java =================================================================== --- WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/Chapter/ChapterModel.java 2008-05-12 21:39:55 UTC (rev 134) +++ WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/Chapter/ChapterModel.java 2008-05-13 16:49:15 UTC (rev 135) @@ -1,7 +1,6 @@ package edu.lnu.FireFly.WebEditor.ItemModels.Chapter; import edu.lnu.FireFly.FFManifest.TreeItem; -import edu.lnu.FireFly.FFManifest.item.Item; import edu.lnu.FireFly.WebEditor.Data.SummaryPageManager; import edu.lnu.FireFly.WebEditor.GUI.TreeDataModel; import edu.lnu.FireFly.WebEditor.GUI.Dialogs.ChapterPropertiestsDlg; @@ -59,7 +58,7 @@ } @Override - public boolean getLimitConditionsMenuVisible() { + public boolean getLimitConditionsMenuVisible(TreeItem anItem) { return false; } @@ -87,21 +86,6 @@ } @Override - public boolean isApplaingForItem(TreeItem treeItem) { - if (treeItem.getClass() != Item.class) { - return false; - } - - Item item = (Item) treeItem; - if (item.parameters != null - && item.parameters.contains("pageType=Chapter")) { - return true; - } - - return false; - } - - @Override public boolean isRemovable() { return true; } @@ -110,7 +94,7 @@ public void remove(TreeItem aChapter) { if (!canDeleteChapter(aChapter)) { System.out - .print("This chapter contain items. Please, remove all childs and try again.\n"); + .print("This chapter contains items. Please, remove all childs and try again.\n"); return; } @@ -152,13 +136,6 @@ return result; } - @Override - public void rename(TreeItem item, String newTitle) { - ((Item) item).title = newTitle; - - TreeDataModel.getInstance().treeNodesChanged(item); - } - public void setShowSummaryPage(TreeItem anItem, boolean state) { ChapterItemData itemData = getData(anItem); Modified: WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/ItemModel.java =================================================================== --- WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/ItemModel.java 2008-05-12 21:39:55 UTC (rev 134) +++ WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/ItemModel.java 2008-05-13 16:49:15 UTC (rev 135) @@ -16,6 +16,7 @@ import edu.lnu.FireFly.FFManifest.resource.Resource; import edu.lnu.FireFly.WebEditor.WebEditor; import edu.lnu.FireFly.WebEditor.Data.ManifestFactory; +import edu.lnu.FireFly.WebEditor.GUI.TreeDataModel; import edu.lnu.FireFly.WebEditor.ItemModels.SummaryPageModel.SummaryPageModel; public abstract class ItemModel { @@ -132,23 +133,38 @@ } } - public abstract boolean isApplaingForItem(TreeItem treeItem); + public boolean isApplaingForItem(TreeItem treeItem) { + if (treeItem.getClass() != Item.class) { + return false; + } + Item item = (Item) treeItem; + if (item.parameters != null + && item.parameters.contains("pageType=" + modelName)) { + return true; + } + + return false; + } + public final boolean isContainer() { return isContainerItem; } public abstract boolean isRemovable(); - public abstract void remove(TreeItem item); + public abstract void remove(TreeItem anItem); - public abstract void rename(TreeItem item, String newTitle); + public void rename(TreeItem item, String newTitle) { + ((Item) item).title = newTitle; + TreeDataModel.getInstance().treeNodesChanged(item); + } public abstract boolean synchronizeItemWithResource(TreeItem anItem, String location); public abstract boolean updateItemResource(TreeItem item, boolean updateSummaryPages); - public abstract boolean getLimitConditionsMenuVisible(); + public abstract boolean getLimitConditionsMenuVisible(TreeItem anItem); public abstract boolean getShowOnSummaryPageMenuVisible(); Modified: WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/ItemModels.java =================================================================== --- WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/ItemModels.java 2008-05-12 21:39:55 UTC (rev 134) +++ WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/ItemModels.java 2008-05-13 16:49:15 UTC (rev 135) @@ -5,10 +5,23 @@ import edu.lnu.FireFly.FFManifest.Organization; import edu.lnu.FireFly.FFManifest.TreeItem; import edu.lnu.FireFly.WebEditor.ItemModels.Chapter.ChapterModel; +import edu.lnu.FireFly.WebEditor.ItemModels.Lecture.LectureModel; +import edu.lnu.FireFly.WebEditor.ItemModels.SimpleQuestion.SimpleQuestionModel; +import edu.lnu.FireFly.WebEditor.ItemModels.SummaryPageModel.SummaryPageModel; public class ItemModels { protected static ArrayList<ItemModel> registeredModels = new ArrayList<ItemModel>(); + + private static UnknownItemModel unknownModel = null; + public static UnknownItemModel getUnknownModel() { + if (unknownModel == null){ + unknownModel = new UnknownItemModel(); + } + + return unknownModel; + } + public static void registerModel(ItemModel model) { if (!registeredModels.contains(model)) { registeredModels.add(model); @@ -35,7 +48,7 @@ return registeredModels.get(i); } } - return null; + return getUnknownModel(); } public static void synchronizeAllItemDatas(TreeItem root) { @@ -65,4 +78,13 @@ public static void clear() { registeredModels.clear(); } + + static { + ItemModels.clear(); + ItemModels.registerModel(new LectureModel()); + ItemModels.registerModel(new SimpleQuestionModel()); + ItemModels.registerModel(new ChapterModel()); + ItemModels.registerModel(new OrganizationModel()); + ItemModels.registerModel(new SummaryPageModel()); + } } Modified: WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/Lecture/LectureModel.java =================================================================== --- WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/Lecture/LectureModel.java 2008-05-12 21:39:55 UTC (rev 134) +++ WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/Lecture/LectureModel.java 2008-05-13 16:49:15 UTC (rev 135) @@ -22,7 +22,7 @@ } @Override - public boolean getLimitConditionsMenuVisible() { + public boolean getLimitConditionsMenuVisible(TreeItem anItem) { return true; } Modified: WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/OrganizationModel.java =================================================================== --- WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/OrganizationModel.java 2008-05-12 21:39:55 UTC (rev 134) +++ WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/OrganizationModel.java 2008-05-13 16:49:15 UTC (rev 135) @@ -2,7 +2,6 @@ import edu.lnu.FireFly.FFManifest.Organization; import edu.lnu.FireFly.FFManifest.TreeItem; -import edu.lnu.FireFly.WebEditor.GUI.TreeDataModel; import edu.lnu.FireFly.WebEditor.ItemModels.Chapter.ChapterModel; public class OrganizationModel extends ChapterModel{ @@ -41,13 +40,6 @@ } @Override - public void rename(TreeItem item, String newTitle) { - ((Organization)item).title = newTitle; - - TreeDataModel.getInstance().treeNodesChanged(item); - } - - @Override public boolean isRemovable() { return false; } Modified: WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/ResourcedItemModel.java =================================================================== --- WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/ResourcedItemModel.java 2008-05-12 21:39:55 UTC (rev 134) +++ WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/ResourcedItemModel.java 2008-05-13 16:49:15 UTC (rev 135) @@ -59,29 +59,14 @@ } @Override - public boolean isApplaingForItem(TreeItem treeItem) { - if (treeItem.getClass() != Item.class) { - return false; - } - - Item item = (Item) treeItem; - if (item.parameters != null - && item.parameters.contains("pageType=" + modelName)) { - return true; - } - - return false; - } - - @Override public boolean isRemovable() { return true; } @Override public void remove(TreeItem anItem) { - TreeDataModel.getInstance().treeNodesDeleted(anItem); anItem.getParent().removeChild(anItem); + TreeDataModel.getInstance().treeNodesDeleted(anItem); deleteResource(anItem); } @@ -108,12 +93,6 @@ return true; } - @Override - public void rename(TreeItem item, String newTitle) { - ((Item) item).title = newTitle; - TreeDataModel.getInstance().treeNodesChanged(item); - } - public final boolean synchronizeItemWithResource(TreeItem anItem, String location) { String res = loadResource(location, anItem); Modified: WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/SimpleQuestion/SimpleQuestionModel.java =================================================================== --- WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/SimpleQuestion/SimpleQuestionModel.java 2008-05-12 21:39:55 UTC (rev 134) +++ WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/SimpleQuestion/SimpleQuestionModel.java 2008-05-13 16:49:15 UTC (rev 135) @@ -19,7 +19,7 @@ } @Override - public boolean getLimitConditionsMenuVisible() { + public boolean getLimitConditionsMenuVisible(TreeItem anItem) { return true; } @@ -58,31 +58,10 @@ } @Override - public boolean isApplaingForItem(TreeItem treeItem) { - if (treeItem.getClass() != Item.class) { - return false; - } - - Item item = (Item) treeItem; - if (item.parameters != null - && item.parameters.contains("pageType=SimpleQuestion")) { - return true; - } - - return false; - } - - @Override public boolean isRemovable() { return true; } - @Override - public void rename(TreeItem item, String newTitle) { - ((Item) item).title = newTitle; - TreeDataModel.getInstance().treeNodesChanged(item); - } - protected ItemData createItemDataInstance() { return new SimpleQuestionData(); } Modified: WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/SummaryPageModel/SummaryPageModel.java =================================================================== --- WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/SummaryPageModel/SummaryPageModel.java 2008-05-12 21:39:55 UTC (rev 134) +++ WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/SummaryPageModel/SummaryPageModel.java 2008-05-13 16:49:15 UTC (rev 135) @@ -21,7 +21,7 @@ } @Override - public boolean getLimitConditionsMenuVisible() { + public boolean getLimitConditionsMenuVisible(TreeItem anItem) { return false; } Added: WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/UnknownItemModel.java =================================================================== --- WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/UnknownItemModel.java (rev 0) +++ WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/UnknownItemModel.java 2008-05-13 16:49:15 UTC (rev 135) @@ -0,0 +1,81 @@ +package edu.lnu.FireFly.WebEditor.ItemModels; + +import edu.lnu.FireFly.FFManifest.TreeItem; +import edu.lnu.FireFly.FFManifest.item.Item; +import edu.lnu.FireFly.WebEditor.GUI.TreeDataModel; + +public class UnknownItemModel extends ItemModel { + + @Override + public void ConfigureItem(TreeItem item) { + System.out.println("Can't doing this operation with unknown item model"); + } + + @Override + public void addItem(TreeItem parent) { + System.out.println("Can't doing this operation with unknown item model"); + } + + @Override + public boolean canAddToItem(TreeItem parent) { + return false; + } + + @Override + public boolean canConvertItem(TreeItem parent) { + return false; + } + + @Override + protected ItemData createItemDataInstance() { + System.out.println("Can't doing this operation with unknown item model"); + return null; + } + + @Override + protected String getDefaultTitle() { + return "Unknown"; + } + + @Override + public boolean getLimitConditionsMenuVisible(TreeItem anItem) { + return anItem.getChildCount() == 0; + } + + @Override + public boolean getShowOnSummaryPageMenuVisible() { + return false; + } + + @Override + public boolean getShowSummaryPageMenuVisible() { + return false; + } + + @Override + protected void initializeDataForItem(Item anItem) { + System.out.println("Can't doing this operation with unknown item model"); + } + + @Override + public boolean isRemovable() { + return true; + } + + @Override + public void remove(TreeItem anItem) { + anItem.getParent().removeChild(anItem); + TreeDataModel.getInstance().treeNodesDeleted(anItem); + } + + @Override + public boolean synchronizeItemWithResource(TreeItem anItem, String location) { + return false; + } + + @Override + public boolean updateItemResource(TreeItem item, boolean updateSummaryPages) { + return false; + } + +} Modified: WebEditor/src/edu/lnu/FireFly/WebEditor/WebEditor.java =================================================================== --- WebEditor/src/edu/lnu/FireFly/WebEditor/WebEditor.java 2008-05-12 21:39:55 UTC (rev 134) +++ WebEditor/src/edu/lnu/FireFly/WebEditor/WebEditor.java 2008-05-13 16:49:15 UTC (rev 135) @@ -25,10 +25,6 @@ import edu.lnu.FireFly.WebEditor.GUI.TreeDataModel; import edu.lnu.FireFly.WebEditor.ItemModels.ItemModels; import edu.lnu.FireFly.WebEditor.ItemModels.OrganizationModel; -import edu.lnu.FireFly.WebEditor.ItemModels.Chapter.ChapterModel; -import edu.lnu.FireFly.WebEditor.ItemModels.Lecture.LectureModel; -import edu.lnu.FireFly.WebEditor.ItemModels.SimpleQuestion.SimpleQuestionModel; -import edu.lnu.FireFly.WebEditor.ItemModels.SummaryPageModel.SummaryPageModel; import edu.lnu.FireFly.WebEditor.WSClients.WebEditorServiceClient; public class WebEditor extends AppletWithWYSIWYGEditor implements @@ -111,12 +107,6 @@ threadForAautoSave.start(); initMenu(); - ItemModels.clear(); - ItemModels.registerModel(new LectureModel()); - ItemModels.registerModel(new SimpleQuestionModel()); - ItemModels.registerModel(new ChapterModel()); - ItemModels.registerModel(new OrganizationModel()); - ItemModels.registerModel(new SummaryPageModel()); try { openManifest(); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |