Package com.biglybt.ui.swt.views
Class ViewManagerSWT
- java.lang.Object
-
- com.biglybt.ui.swt.views.ViewManagerSWT
-
public class ViewManagerSWT extends java.lang.Object
-
-
Field Summary
Fields Modifier and Type Field Description private static AEMonitor
class_mon
private static ViewManagerSWT
instance
private java.util.List<UISWTInstanceImpl.SWTViewListener>
listSWTViewListeners
private java.util.Map<java.lang.Object,java.util.Map<java.lang.String,UISWTViewBuilderCore>>
mapDataSourceTypeToBuilder
Map<forDataSourceType or forParentViewID, Map<ViewID, Builder>>private java.util.Collection<java.lang.Object>
registeredCoreViews
-
Constructor Summary
Constructors Constructor Description ViewManagerSWT()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addSWTViewListener(UISWTInstanceImpl.SWTViewListener l)
boolean
areCoreViewsRegistered(java.lang.Object forTypeID)
void
dispose(PluginInterface pi)
void
disposeAll()
java.util.List<UISWTViewBuilderCore>
disposeViews(java.lang.Object forDSTypeOrViewID, java.lang.String viewID, boolean unregister)
Disposes of existing views.UISWTViewBuilderCore
getBuilder(java.lang.Object forDSTypeOrViewID, java.lang.String viewID)
private java.util.Map<java.lang.String,UISWTViewBuilderCore>
getBuilderMap(java.lang.Object forDSTypeOrViewID)
java.util.List<UISWTViewBuilderCore>
getBuilders(java.lang.Object forDSTypeOrViewID)
private java.util.List<UISWTViewBuilderCore>
getBuilders(java.lang.Object forDSTypeOrViewID, boolean sort)
java.util.List<UISWTViewBuilderCore>
getBuilders(java.lang.String parentViewID, java.lang.Class forDataSourceType)
Helper method that gets a sorted list of Builders for both a ParentViewID and a DataSourceTypeint
getBuildersCount(java.lang.Object forDSTypeOrViewID)
java.util.List<UISWTViewBuilderCore>
getBuildersOfClass(java.lang.Object forDSTypeOrViewID, java.lang.Class<BasicPluginViewImpl> ofClass)
static ViewManagerSWT
getInstance()
private static java.lang.Class<?>
mapViewIDToClass(java.lang.String viewID)
void
registerView(java.lang.Object forDSTypeOrViewID, UISWTViewBuilderCore builder)
void
removeSWTViewListener(UISWTInstanceImpl.SWTViewListener l)
void
setCoreViewsRegistered(java.lang.Object forTypeOrID)
private static void
sortBuilders(java.util.List<UISWTViewBuilderCore> list)
void
unregisterView(java.lang.Object forDSTypeOrViewID, java.lang.String viewID)
Removes all specified views and removes builder.
-
-
-
Field Detail
-
class_mon
private static final AEMonitor class_mon
-
instance
private static ViewManagerSWT instance
-
mapDataSourceTypeToBuilder
private final java.util.Map<java.lang.Object,java.util.Map<java.lang.String,UISWTViewBuilderCore>> mapDataSourceTypeToBuilder
Map<forDataSourceType or forParentViewID, Map<ViewID, Builder>>
-
listSWTViewListeners
private final java.util.List<UISWTInstanceImpl.SWTViewListener> listSWTViewListeners
-
registeredCoreViews
private final java.util.Collection<java.lang.Object> registeredCoreViews
-
-
Method Detail
-
getInstance
public static ViewManagerSWT getInstance()
-
getBuilderMap
private java.util.Map<java.lang.String,UISWTViewBuilderCore> getBuilderMap(java.lang.Object forDSTypeOrViewID)
-
registerView
public void registerView(java.lang.Object forDSTypeOrViewID, UISWTViewBuilderCore builder)
-
mapViewIDToClass
private static java.lang.Class<?> mapViewIDToClass(java.lang.String viewID)
-
unregisterView
public void unregisterView(java.lang.Object forDSTypeOrViewID, java.lang.String viewID)
Removes all specified views and removes builder.- Parameters:
forDSTypeOrViewID
- null = all matching viewIDviewID
-
-
getBuilders
public java.util.List<UISWTViewBuilderCore> getBuilders(java.lang.Object forDSTypeOrViewID)
-
getBuilders
private java.util.List<UISWTViewBuilderCore> getBuilders(java.lang.Object forDSTypeOrViewID, boolean sort)
-
getBuildersCount
public int getBuildersCount(java.lang.Object forDSTypeOrViewID)
-
getBuilders
public java.util.List<UISWTViewBuilderCore> getBuilders(java.lang.String parentViewID, java.lang.Class forDataSourceType)
Helper method that gets a sorted list of Builders for both a ParentViewID and a DataSourceType- Parameters:
forDataSourceType
- null skips check for datasourcetypeparentViewID
- null skips check for parent View ID
-
sortBuilders
private static void sortBuilders(java.util.List<UISWTViewBuilderCore> list)
-
addSWTViewListener
public void addSWTViewListener(UISWTInstanceImpl.SWTViewListener l)
-
removeSWTViewListener
public void removeSWTViewListener(UISWTInstanceImpl.SWTViewListener l)
-
disposeAll
public void disposeAll()
-
dispose
public void dispose(PluginInterface pi)
-
disposeViews
public java.util.List<UISWTViewBuilderCore> disposeViews(java.lang.Object forDSTypeOrViewID, java.lang.String viewID, boolean unregister)
Disposes of existing views. Does not dispose of builder, which means new views can still be created. To prevent new views being created useunregisterView(Object, String)
- Parameters:
parentViewID
- null for allviewID
- view id to dispose ofunregister
-
true: disposes of builder, preventing new views being created
false: Keeps builder, allows new views to be created.- Returns:
- Builders that had their views disposed of
-
getBuilder
public UISWTViewBuilderCore getBuilder(java.lang.Object forDSTypeOrViewID, java.lang.String viewID)
-
setCoreViewsRegistered
public void setCoreViewsRegistered(java.lang.Object forTypeOrID)
-
areCoreViewsRegistered
public boolean areCoreViewsRegistered(java.lang.Object forTypeID)
-
getBuildersOfClass
public java.util.List<UISWTViewBuilderCore> getBuildersOfClass(java.lang.Object forDSTypeOrViewID, java.lang.Class<BasicPluginViewImpl> ofClass)
- Parameters:
forDSTypeOrViewID
- null = anyofClass
-- Returns:
-
-