projects/wms-framework/src/lib/regionsframework/adapters/AdapterForSelectorControl.ts
Adapter for selector control Allows the use of selector control to host regions
Properties |
Methods |
|
constructor(factory: IRegionBehaviorFactory)
|
||||||
Creates an instance of AdapterForSelectorControl.
Parameters :
|
RegionBehaviorFactory |
Type : IRegionBehaviorFactory
|
Inherited from
RegionAdapterBase
|
Defined in
RegionAdapterBase:41
|
Protected Adapt | ||||||||||||
Adapt(region: IRegion, regionTarget: SelectorModel)
|
||||||||||||
Inherited from
RegionAdapterBase
|
||||||||||||
Defined in
RegionAdapterBase:56
|
||||||||||||
Adapts the selector control with the specific region
Parameters :
Returns :
void
|
Public AttachBehaviors | |||||||||
AttachBehaviors(region: IRegion, regionTarget: SelectorModel)
|
|||||||||
Inherited from
RegionAdapterBaseUnTyped
|
|||||||||
Defined in
RegionAdapterBaseUnTyped:65
|
|||||||||
Attach the behavior to the region target element
Parameters :
Returns :
void
|
Protected CreateRegion |
CreateRegion()
|
Inherited from
RegionAdapterBase
|
Defined in
RegionAdapterBase:89
|
Creates the region for the selector host control
Returns :
IRegion
|
Protected AttachDefaultBehaviors | |||||||||
AttachDefaultBehaviors(region: IRegion, regionTarget: T)
|
|||||||||
Inherited from
RegionAdapterBase
|
|||||||||
Defined in
RegionAdapterBase:71
|
|||||||||
Attach defaults behavior to region
Parameters :
Returns :
void
|
Initialize |
Initialize(regionTarget: object, regionName: string)
|
Inherited from
RegionAdapterBase
|
Defined in
RegionAdapterBase:48
|
Returns :
IRegion
|
import { IRegion } from '../IRegion';
import { RegionAdapterBase } from '../RegionAdapterBase';
import { IRegionBehaviorFactory } from '../IRegionBehaviorFactory';
import { injectable, inject } from 'tsyringe';
import { regionBehaviorFactoryInjectionToken } from '../injectionTokens';
import { SelectorModel } from '../../models/SelectorModel';
import { Region } from '../Region';
import { SelectorItemsSourceSyncBehavior } from './behaviors/SelectorItemsSourceSyncBehavior';
/**
* Adapter for selector control
* Allows the use of selector control to host regions
*
* @export
* @class AdapterForSelectorControl
* @extends {RegionAdapterBase<SelectorModel>}
* @wType Microsoft.Practices.Prism.Regions.SelectorRegionAdapter
*/
@injectable()
export class AdapterForSelectorControl extends RegionAdapterBase<SelectorModel> {
/**
* Creates an instance of AdapterForSelectorControl.
* @param {IRegionBehaviorFactory} factory
* @memberof AdapterForSelectorControl
*/
constructor(
@inject(regionBehaviorFactoryInjectionToken) factory: IRegionBehaviorFactory
) {
super(factory);
}
/**
* Adapts the selector control with the specific region
*
* @protected
* @param {IRegion} region region to adapt
* @param {SelectorModel} regionTarget selector control to adapt
* @memberof AdapterForSelectorControl
*/
protected Adapt(region: IRegion, regionTarget: SelectorModel): void {}
/**
* Attach the behavior to the region target element
*
* @param {IRegion} region
* @param {SelectorModel} regionTarget
* @memberof AdapterForSelectorControl
*/
public AttachBehaviors(region: IRegion, regionTarget: SelectorModel): void {
if (region == null) {
throw new Error('Null value for region argument');
}
if (
!region.Behaviors.ContainsKey(SelectorItemsSourceSyncBehavior.BehaviorKey)
) {
region.Behaviors.Add(
SelectorItemsSourceSyncBehavior.BehaviorKey,
Object.assign(new SelectorItemsSourceSyncBehavior(), {
HostControl: regionTarget,
})
);
}
super.AttachBehaviors(region, regionTarget);
}
/**
* Creates the region for the selector host control
*
* @protected
* @returns {IRegion}
* @memberof AdapterForSelectorControl
*/
protected CreateRegion(): IRegion {
return new Region();
}
}