Пользовательский интерфейс Маджонга | Mahjong user interface
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

107 lines
2.7KB

  1. // // // //
  2. ОтслеживатьВыборРаскладки = мир =>
  3. {
  4. мир.окна.раскладки.выборныйСписок.отклик.выбор = function(номер) {
  5. мир.номерВыбраннойРаскладки = номер;
  6. мир.уведомить("выбрали раскладку реестра");
  7. };
  8. };
  9. // // // //
  10. ЗадатьСписокРаскладок = мир =>
  11. {
  12. var раскладки = Object.keys(мир.реестрРаскладок).sort();
  13. мир.окна.раскладки.выборныйСписок.задатьСписок(раскладки);
  14. };
  15. // // // //
  16. ПлавноСкрытьОкноРаскладок = мир =>
  17. {
  18. мир.окна.раскладки.плавно.скрыть();
  19. };
  20. // // // //
  21. ПлавноПоказатьОкноРаскладок = мир =>
  22. {
  23. мир.окна.раскладки.плавно.отобразить();
  24. };
  25. // // // //
  26. ЗадатьВидОкнаРаскладок = мир =>
  27. {
  28. var вид = document.createElement("style");
  29. document.head.appendChild(вид);
  30. вид.innerHTML = `
  31. #${мир.окна.раскладки.указатель}
  32. {
  33. position: fixed;
  34. left: 1em;
  35. top: 1em;
  36. bottom: 1em;
  37. right: 1em;
  38. }
  39. #скрыть-раскладки
  40. {
  41. position: fixed;
  42. right: 0.5em;
  43. bottom: 0.5em;
  44. }
  45. `;
  46. };
  47. // // // //
  48. СоздатьОкноРаскладок = мир =>
  49. {
  50. var окно = document.createElement("div");
  51. окно.id = "окно-раскладки";
  52. окно.style.display = "none";
  53. document.body.appendChild(окно);
  54. мир.окна.раскладки = {
  55. "указатель": окно.id,
  56. "элемент": окно,
  57. "плавно": new ПлавноОтобразитьСкрыть(окно),
  58. "список": `${окно.id}-список`,
  59. };
  60. окно.innerHTML = `
  61. <center>
  62. <span class="uk-text-large">Раскладки</span>
  63. ⚬ <span class="uk-text-large uk-text-bold">键盘布局</span> ⚬
  64. <span class="uk-text-large">Layouts</span>
  65. </center>
  66. <ul id="${мир.окна.раскладки.список}" class="uk-nav uk-nav-default tm-nav">
  67. </ul>
  68. <a id="скрыть-раскладки" uk-icon="icon: close; ratio: 2"></a>
  69. `;
  70. var элементСписок = document.getElementById(мир.окна.раскладки.список);
  71. мир.окна.раскладки.выборныйСписок = new ВыборныйСписок(элементСписок);
  72. $("#скрыть-раскладки").click(function() {
  73. мир.уведомить("кнопка скрыть раскладки");
  74. });
  75. };