quickvisit.js 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. /**
  2. * @fileOverview
  3. *
  4. * 快速访问区域
  5. *
  6. * @author: techird
  7. * @copyright: Baidu FEX, 2014
  8. */
  9. KityMinder.registerUI('topbar/quickvisit', function (minder) {
  10. var rightDocks = [];
  11. function btn(name, dockRight) {
  12. var $btn = $('<a class="quick-visit-button"></a>')
  13. .text(minder.getLang('ui.quickvisit.' + name))
  14. .attr('title', minder.getLang('ui.quickvisit.' + name))
  15. .addClass(name);
  16. if (dockRight) rightDocks.push($btn);
  17. else $btn.appendTo('#panel');
  18. return $btn;
  19. }
  20. var $new = btn('new'),
  21. $save = btn('save'),
  22. $share = btn('share');
  23. var ret = {
  24. $new: $new,
  25. $save: $save,
  26. $share: $share
  27. };
  28. minder.on('uiready', function quickVisit() {
  29. while (rightDocks.length) $('#panel #search').after(rightDocks.shift());
  30. function quickNew() {
  31. var $doc = minder.getUI('doc');
  32. if (!$doc.checkSaved()) return;
  33. $doc.load({
  34. content: {
  35. template: 'default',
  36. version: KityMinder.version,
  37. data: {
  38. text: minder.getLang('maintopic')
  39. }
  40. },
  41. saved: true
  42. });
  43. }
  44. function quickSave() {
  45. minder.getUI('menu/save/netdisk').quickSave();
  46. }
  47. function quickShare() {
  48. var $menu = minder.getUI('menu/menu');
  49. $menu.$tabs.select(3);
  50. $menu.show();
  51. }
  52. $new.click(quickNew);
  53. $save.click(quickSave);
  54. $share.click(quickShare);
  55. minder.addShortcut('ctrl+alt+n', quickNew);
  56. minder.addShortcut('ctrl+s', quickSave);
  57. minder.addShortcut('ctrl+alt+s', quickShare);
  58. minder.addShortcut('ctrl+shift+s', function() {
  59. var $menu = minder.getUI('menu/menu');
  60. $menu.$tabs.select(2);
  61. $menu.show();
  62. });
  63. ret.ready = true;
  64. ret.quickNew = quickNew;
  65. ret.quickSave = quickSave;
  66. ret.quickShare = quickShare;
  67. });
  68. ret.add = btn;
  69. return ret;
  70. });