本文整理汇总了TypeScript中@ephox/katamari.Singleton类的典型用法代码示例。如果您正苦于以下问题:TypeScript Singleton类的具体用法?TypeScript Singleton怎么用?TypeScript Singleton使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了Singleton类的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的TypeScript代码示例。
示例1: function
const create = function (platform, mask) {
const meta = MetaViewport.tag();
const androidApi = Singleton.api();
const androidEvents = Singleton.api();
const enter = function () {
mask.hide();
Class.add(platform.container, Styles.resolve('fullscreen-maximized'));
Class.add(platform.container, Styles.resolve('android-maximized'));
meta.maximize();
/// TM-48 Prevent browser refresh by swipe/scroll on android devices
Class.add(platform.body, Styles.resolve('android-scroll-reload'));
androidApi.set(
AndroidSetup.setup(platform.win, PlatformEditor.getWin(platform.editor).getOrDie('no'))
);
PlatformEditor.getActiveApi(platform.editor).each(function (editorApi) {
Thor.clobberStyles(platform.container, editorApi.body());
androidEvents.set(
AndroidEvents.initEvents(editorApi, platform.toolstrip, platform.alloy)
);
});
};
const exit = function () {
meta.restore();
mask.show();
Class.remove(platform.container, Styles.resolve('fullscreen-maximized'));
Class.remove(platform.container, Styles.resolve('android-maximized'));
Thor.restoreStyles();
/// TM-48 re-enable swipe/scroll browser refresh on android
Class.remove(platform.body, Styles.resolve('android-scroll-reload'));
androidEvents.clear();
androidApi.clear();
};
return {
enter,
exit
};
};
开发者ID:danielpunkass,项目名称:tinymce,代码行数:49,代码来源:AndroidMode.ts
示例2: function
FieldSchema.state('state', function () {
return {
dialogSwipeState: Singleton.value(),
currentScreen: Cell(0)
};
})
开发者ID:tinymce,项目名称:tinymce,代码行数:6,代码来源:SerialisedDialog.ts
示例3: function
export default function (scrollIntoView: () => void) {
const alloy = OuterContainer({
classes: [ Styles.resolve('android-container') ]
}) as Gui.GuiSystem;
const toolbar = ScrollingToolbar();
const webapp = Singleton.api<MobileWebApp>();
const switchToEdit = CommonRealm.makeEditSwitch(webapp);
const socket = CommonRealm.makeSocket() as ComponentApi.AlloyComponent;
const dropup = Dropup.build(Fun.noop, scrollIntoView);
alloy.add(toolbar.wrapper());
alloy.add(socket);
alloy.add(dropup.component());
const setToolbarGroups = function (rawGroups) {
const groups = toolbar.createGroups(rawGroups);
toolbar.setGroups(groups);
};
const setContextToolbar = function (rawGroups) {
const groups = toolbar.createGroups(rawGroups);
toolbar.setContextToolbar(groups);
};
// You do not always want to do this.
const focusToolbar = function () {
toolbar.focus();
};
const restoreToolbar = function () {
toolbar.restoreToolbar();
};
const init = function (spec) {
webapp.set(
AndroidWebapp.produce(spec)
);
};
const exit = function () {
webapp.run(function (w) {
w.exit();
Replacing.remove(socket, switchToEdit);
});
};
const updateMode = function (readOnly) {
CommonRealm.updateMode(socket, switchToEdit, readOnly, alloy.root());
};
return {
system: Fun.constant(alloy),
element: alloy.element as () => SugarElement,
init,
exit,
setToolbarGroups,
setContextToolbar,
focusToolbar,
restoreToolbar,
updateMode,
socket: Fun.constant(socket),
dropup: Fun.constant(dropup)
} as MobileRealm;
}
开发者ID:danielpunkass,项目名称:tinymce,代码行数:69,代码来源:AndroidRealm.ts
示例4: function
const create = function (platform, mask) {
const meta = MetaViewport.tag();
const priorState = Singleton.value();
const scrollEvents = Singleton.value();
const iosApi = Singleton.api();
const iosEvents = Singleton.api();
const enter = function () {
mask.hide();
const doc = Element.fromDom(document);
PlatformEditor.getActiveApi(platform.editor).each(function (editorApi) {
// TODO: Orientation changes.
// orientation = Orientation.onChange();
priorState.set({
socketHeight: Css.getRaw(platform.socket, 'height'),
iframeHeight: Css.getRaw(editorApi.frame(), 'height'),
outerScroll: document.body.scrollTop
});
scrollEvents.set({
// Allow only things that have scrollable class to be scrollable. Without this,
// the toolbar scrolling gets prevented
exclusives: Scrollables.exclusive(doc, '.' + Scrollable.scrollable())
});
Class.add(platform.container, Styles.resolve('fullscreen-maximized'));
Thor.clobberStyles(platform.container, editorApi.body());
meta.maximize();
/* NOTE: Making the toolbar scrollable is now done when the middle group is created */
Css.set(platform.socket, 'overflow', 'scroll');
Css.set(platform.socket, '-webkit-overflow-scrolling', 'touch');
Focus.focus(editorApi.body());
const setupBag = Struct.immutableBag([
'cWin',
'ceBody',
'socket',
'toolstrip',
'toolbar',
'dropup',
'contentElement',
'cursor',
'keyboardType',
'isScrolling',
'outerWindow',
'outerBody'
], []);
iosApi.set(
IosSetup.setup(setupBag({
cWin: editorApi.win(),
ceBody: editorApi.body(),
socket: platform.socket,
toolstrip: platform.toolstrip,
toolbar: platform.toolbar,
dropup: platform.dropup.element(),
contentElement: editorApi.frame(),
cursor: Fun.noop,
outerBody: platform.body,
outerWindow: platform.win,
keyboardType: IosKeyboard.stubborn,
isScrolling () {
return scrollEvents.get().exists(function (s) {
return s.socket.isScrolling();
});
}
}))
);
iosApi.run(function (api) {
api.syncHeight();
});
iosEvents.set(
IosEvents.initEvents(editorApi, iosApi, platform.toolstrip, platform.socket, platform.dropup)
);
});
};
const exit = function () {
meta.restore();
iosEvents.clear();
iosApi.clear();
mask.show();
priorState.on(function (s) {
s.socketHeight.each(function (h) {
Css.set(platform.socket, 'height', h);
});
s.iframeHeight.each(function (h) {
Css.set(platform.editor.getFrame(), 'height', h);
});
document.body.scrollTop = s.scrollTop;
//.........这里部分代码省略.........
开发者ID:abstask,项目名称:tinymce,代码行数:101,代码来源:IosMode.ts
示例5: function
export default function (scrollIntoView?) { // unsure if this should be optional?
const alloy = OuterContainer({
classes: [ Styles.resolve('ios-container') ]
});
const toolbar = ScrollingToolbar();
const webapp = Singleton.api();
const switchToEdit = CommonRealm.makeEditSwitch(webapp);
const socket = CommonRealm.makeSocket();
const dropup = Dropup.build(function () {
webapp.run(function (w) {
w.refreshStructure();
});
}, scrollIntoView);
alloy.add(toolbar.wrapper());
alloy.add(socket);
alloy.add(dropup.component());
const setToolbarGroups = function (rawGroups) {
const groups = toolbar.createGroups(rawGroups);
toolbar.setGroups(groups);
};
const setContextToolbar = function (rawGroups) {
const groups = toolbar.createGroups(rawGroups);
toolbar.setContextToolbar(groups);
};
const focusToolbar = function () {
toolbar.focus();
};
const restoreToolbar = function () {
toolbar.restoreToolbar();
};
const init = function (spec) {
webapp.set(
IosWebapp.produce(spec)
);
};
const exit = function () {
webapp.run(function (w) {
Replacing.remove(socket, switchToEdit);
w.exit();
});
};
const updateMode = function (readOnly) {
CommonRealm.updateMode(socket, switchToEdit, readOnly, alloy.root());
};
return {
system: Fun.constant(alloy),
element: alloy.element,
init,
exit,
setToolbarGroups,
setContextToolbar,
focusToolbar,
restoreToolbar,
updateMode,
socket: Fun.constant(socket),
dropup: Fun.constant(dropup)
};
}
开发者ID:aha-app,项目名称:tinymce-word-paste-filter,代码行数:72,代码来源:IosRealm.ts
注:本文中的@ephox/katamari.Singleton类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论