本文整理汇总了TypeScript中wed/gui/toolbar.Toolbar类的典型用法代码示例。如果您正苦于以下问题:TypeScript Toolbar类的具体用法?TypeScript Toolbar怎么用?TypeScript Toolbar使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了Toolbar类的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: describe
describe("Toolbar", () => {
let toolbar: Toolbar;
let sandbox: sinon.SinonSandbox;
beforeEach(() => {
toolbar = new Toolbar();
sandbox = sinon.createSandbox();
});
afterEach(() => {
sandbox.restore();
});
function checkCustomButtons(num: number): void {
expect(toolbar.top.childNodes).to.have.lengthOf(num + 2);
}
function checkModeButtons(num: number): void {
// tslint:disable-next-line:no-any
expect((toolbar as any).modeSpan.childNodes).to.have.lengthOf(num);
}
describe("#addButton", () => {
it("takes a single button", () => {
checkCustomButtons(0);
const button = new editorActions.Undo(fakeEditor).makeButton();
toolbar.addButton(button);
checkCustomButtons(1);
});
it("takes an array", () => {
checkCustomButtons(0);
const button = new editorActions.Undo(fakeEditor).makeButton();
const button2 = new editorActions.Redo(fakeEditor).makeButton();
toolbar.addButton([button, button2]);
checkCustomButtons(2);
});
it("appends by default", () => {
const button = new editorActions.Undo(fakeEditor).makeButton();
toolbar.addButton(button);
const button2 = new editorActions.Redo(fakeEditor).makeButton();
toolbar.addButton(button2);
// Clicking the 2nd child executes the child that was added last.
const spy = sandbox.spy(fakeEditor, "redo");
(toolbar.top.children[1] as HTMLElement).click();
expect(spy).to.have.been.calledOnce;
});
it("can prepend", () => {
const button = new editorActions.Undo(fakeEditor).makeButton();
toolbar.addButton(button);
const button2 = new editorActions.Redo(fakeEditor).makeButton();
toolbar.addButton(button2, { prepend: true });
// Clicking the 1st child executes the child that was added last.
const spy = sandbox.spy(fakeEditor, "redo");
(toolbar.top.firstElementChild as HTMLElement).click();
expect(spy).to.have.been.calledOnce;
});
it("refuses to allow right and prepend at the same time", () => {
const button = new editorActions.Undo(fakeEditor).makeButton();
expect(() => {
toolbar.addButton(button, { prepend: true, right: true });
}).to.throw(Error, /^cannot use prepend and right at the same time/);
});
it("allows pushing right", () => {
const button = new editorActions.Undo(fakeEditor).makeButton();
toolbar.addButton(button, { right: true });
expect((toolbar.top.lastElementChild as HTMLElement).classList
.contains("pull-right")).to.be.true;
});
});
describe("#setModeButtons", () => {
it("takes buttons", () => {
checkCustomButtons(0);
checkModeButtons(0);
const button = new editorActions.Undo(fakeEditor).makeButton();
const button2 = new editorActions.Undo(fakeEditor).makeButton();
toolbar.setModeButtons([button, button2]);
checkCustomButtons(0);
checkModeButtons(2);
});
it("replaces buttons", () => {
checkCustomButtons(0);
checkModeButtons(0);
const button = new editorActions.Undo(fakeEditor).makeButton();
const button2 = new editorActions.Undo(fakeEditor).makeButton();
toolbar.setModeButtons([button, button2]);
checkCustomButtons(0);
checkModeButtons(2);
toolbar.setModeButtons([]);
checkCustomButtons(0);
checkModeButtons(0);
});
});
//.........这里部分代码省略.........
示例2: it
it("can prepend", () => {
const button = new editorActions.Undo(fakeEditor).makeButton();
toolbar.addButton(button);
const button2 = new editorActions.Redo(fakeEditor).makeButton();
toolbar.addButton(button2, { prepend: true });
// Clicking the 1st child executes the child that was added last.
const spy = sandbox.spy(fakeEditor, "redo");
(toolbar.top.firstElementChild as HTMLElement).click();
expect(spy).to.have.been.calledOnce;
});
示例3: expect
expect(() => {
toolbar.addButton(button, { prepend: true, right: true });
}).to.throw(Error, /^cannot use prepend and right at the same time/);