123456789101112131415161718192021222324252627282930313233343536373839404142 |
- import { UIController } from "../easy_ui_framework/UIController";
- const PROP_MODULE = "__module__name__";
- const PROP_IMPL_CLASS = "__impl__class__";
- let defaultModule = "resources";
- export class ModuleContext {
- public static setDefaultModule(moduleName) {
- defaultModule = moduleName;
- }
- public static getDefaultModule() {
- return defaultModule;
- }
- public static attachClassModule(cls, moduleName) {
- cls[PROP_MODULE] = moduleName;
- }
- public static getClassModule(cls) {
- return cls[PROP_MODULE] || defaultModule;
- }
- public static attachImplClass(cls, implCls) {
- cls[PROP_IMPL_CLASS] = implCls;
- }
- public static attachModuleAndImplClass(cls, moduleName, implCls) {
- cls[PROP_MODULE] = moduleName;
- cls[PROP_IMPL_CLASS] = implCls;
- }
- public static getImplClass(cls) {
- return cls[PROP_IMPL_CLASS] || cls;
- }
- public static createFromModule(cls) {
- let implCls = this.getImplClass(cls) || cls;
- return new implCls();
- }
- }
|