Package com.iizigo.project
Class ModuleFolder
- java.lang.Object
- com.iizigo.project.ModuleFolder
public class ModuleFolder extends java.lang.ObjectThe module folder is a separate directory in the module project that stores property containers in files with a predefined file extension, and that only has directories with names that end with the same file extension (in order not to have name collision with properties, i.e. you cannot have the file a.iiziPanel and a directory with the same name in a single directory).- Author:
- Christopher Mindus
Field Summary
Fields Modifier and Type Field Description intcategoryThe Common Navigator category of the module folder.java.lang.StringdescriptionThe description of the folder, displayed in the status bar in Eclipse when the folder is selected.java.lang.StringextensionThe file extension used, including the '.'.org.eclipse.jface.resource.ImageDescriptorfolderImageDescriptorThe image for the folder.booleanisAssetsFlag indicating it's the Assets folder.org.eclipse.jface.resource.ImageDescriptoritemImageDescriptorThe image for the items.java.lang.StringitemTitleThe item title (e.g.java.lang.StringnameThe name of the folder, used for directory and property name.java.lang.StringtitleThe title for the folder, displayed in the IIZI Explorer.
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddAcceptedBaseProperty(java.lang.Class<? extends PropCnr> propertyClass)Adds an accepted class for base properties as files in this folder.org.eclipse.jface.viewers.ViewerFiltercreateFilter()Creates a viewer filter only displaying items of this folder.java.lang.Object[]getCNChildren()Gets the children for the content provider tree viewer for this folder.ModuleFolderPropCnrgetContainer()Gets the property container.org.eclipse.core.resources.IFoldergetDirectory()Gets the IFolder for the folder root directory.java.lang.StringgetDirectoryPath()Gets the directory path relative the project, ending with '/'.org.eclipse.swt.graphics.ImagegetFolderImage()Gets the folder image.PropertyEditorSetupgetFolderSettingsSetup()Gets the folder settings setup.org.eclipse.swt.graphics.ImagegetItemImage()Gets the item image.static ModuleFoldergetModuleFolder(java.util.ArrayList<DesignerProp> list)Gets the Module Folder used for the selected properties.ModuleModelgetModuleModel()Gets the Module Model.org.eclipse.core.resources.IProjectgetProject()Gets the project.ResourceDesignerPropgetPropertyFromResource(org.eclipse.core.resources.IResource resource)Gets a property from a resource located or was located under this folder.booleanisFolderPath(java.lang.String path)Checks if a project-relative path is in this folder.booleanisPropertyClassAccepted(IGProp<?> property)Checks if a property class instance is accepted.
Field Detail
name
public final java.lang.String name
The name of the folder, used for directory and property name.
title
public final java.lang.String title
The title for the folder, displayed in the IIZI Explorer.
description
public final java.lang.String description
The description of the folder, displayed in the status bar in Eclipse when the folder is selected.
folderImageDescriptor
public final org.eclipse.jface.resource.ImageDescriptor folderImageDescriptor
The image for the folder.
itemTitle
public final java.lang.String itemTitle
The item title (e.g. "Panel").
itemImageDescriptor
public final org.eclipse.jface.resource.ImageDescriptor itemImageDescriptor
The image for the items.
extension
public final java.lang.String extension
The file extension used, including the '.'.
isAssets
public final boolean isAssets
Flag indicating it's the Assets folder.
category
public final int category
The Common Navigator category of the module folder.
Method Detail
getModuleFolder
public static ModuleFolder getModuleFolder(java.util.ArrayList<DesignerProp> list)
Gets the Module Folder used for the selected properties. This method returns null when properties of different modules are selected, or if the root or module folder are selected.- Parameters:
list- The selected properties.- Returns:
- The ModuleFolder for the properties, or null if no such can be set.
getFolderSettingsSetup
public PropertyEditorSetup getFolderSettingsSetup()
Gets the folder settings setup.- Returns:
- The setup for folder settings, null for none.
addAcceptedBaseProperty
public void addAcceptedBaseProperty(java.lang.Class<? extends PropCnr> propertyClass)
Adds an accepted class for base properties as files in this folder.- Parameters:
propertyClass- The property class.
isPropertyClassAccepted
public boolean isPropertyClassAccepted(IGProp<?> property)
Checks if a property class instance is accepted.
getModuleModel
public ModuleModel getModuleModel()
Gets the Module Model.- Returns:
- The module model.
getProject
public org.eclipse.core.resources.IProject getProject()
Gets the project.- Returns:
- The project.
getDirectory
public org.eclipse.core.resources.IFolder getDirectory()
Gets the IFolder for the folder root directory.
getDirectoryPath
public java.lang.String getDirectoryPath()
Gets the directory path relative the project, ending with '/'.
getContainer
public ModuleFolderPropCnr getContainer()
Gets the property container.
getFolderImage
public org.eclipse.swt.graphics.Image getFolderImage()
Gets the folder image.
getItemImage
public org.eclipse.swt.graphics.Image getItemImage()
Gets the item image.
isFolderPath
public boolean isFolderPath(java.lang.String path)
Checks if a project-relative path is in this folder.
getPropertyFromResource
public ResourceDesignerProp getPropertyFromResource(org.eclipse.core.resources.IResource resource)
Gets a property from a resource located or was located under this folder.- Parameters:
resource- The resource.- Returns:
- null if not found.
getCNChildren
public java.lang.Object[] getCNChildren()
Gets the children for the content provider tree viewer for this folder. It's just one: the container.
createFilter
public org.eclipse.jface.viewers.ViewerFilter createFilter()
Creates a viewer filter only displaying items of this folder.