當前位置: 首頁>>代碼示例>>TypeScript>>正文


TypeScript toolbar.Toolbar類代碼示例

本文整理匯總了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);
    });
  });
//.........這裏部分代碼省略.........
開發者ID:lddubeau,項目名稱:wed,代碼行數:101,代碼來源:toolbar-test.ts

示例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;
    });
開發者ID:lddubeau,項目名稱:wed,代碼行數:11,代碼來源:toolbar-test.ts

示例3: expect

 expect(() => {
   toolbar.addButton(button, { prepend: true, right: true });
 }).to.throw(Error, /^cannot use prepend and right at the same time/);
開發者ID:lddubeau,項目名稱:wed,代碼行數:3,代碼來源:toolbar-test.ts


注:本文中的wed/gui/toolbar.Toolbar類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。