|
@@ -3,6 +3,7 @@
|
3
|
3
|
/// <reference path="./icons.ts" />
|
4
|
4
|
/// <reference path="./example_data.ts" />
|
5
|
5
|
/// <reference path="./jquery.d.ts" />
|
|
6
|
+/// <reference path="./ace.d.ts" />
|
6
|
7
|
|
7
|
8
|
module RpgCardsUI {
|
8
|
9
|
|
|
@@ -10,6 +11,7 @@ module RpgCardsUI {
|
10
|
11
|
var options: RpgCards.Options = null;
|
11
|
12
|
var cardGenerator: RpgCards.CardHtmlGenerator = null;
|
12
|
13
|
var pageGenerator: RpgCards.PageHtmlGenerator = null;
|
|
14
|
+ var editor: AceAjax.Editor;
|
13
|
15
|
|
14
|
16
|
// ============================================================================
|
15
|
17
|
// Seleted card
|
|
@@ -65,7 +67,8 @@ module RpgCardsUI {
|
65
|
67
|
$("#card-count").val(""+card.count);
|
66
|
68
|
$("#card-icon").val(card.icon);
|
67
|
69
|
$("#card-icon-back").val(card.icon_back);
|
68
|
|
- $("#card-contents").val(card.contents.join("\n"));
|
|
70
|
+ //$("#card-contents").val(card.contents.join("\n"));
|
|
71
|
+ editor.setValue(card.contents.join("\n"), -1);
|
69
|
72
|
$("#card-tags").val(card.tags.join(", "));
|
70
|
73
|
$("#card-color").val(card.color).change();
|
71
|
74
|
} else {
|
|
@@ -75,7 +78,8 @@ module RpgCardsUI {
|
75
|
78
|
$("#card-count").val("1");
|
76
|
79
|
$("#card-icon").val("");
|
77
|
80
|
$("#card-icon-back").val("");
|
78
|
|
- $("#card-contents").val("");
|
|
81
|
+ //$("#card-contents").val("");
|
|
82
|
+ editor.setValue("");
|
79
|
83
|
$("#card-tags").val("");
|
80
|
84
|
$("#card-color").val("").change();
|
81
|
85
|
}
|
|
@@ -208,7 +212,8 @@ module RpgCardsUI {
|
208
|
212
|
}
|
209
|
213
|
|
210
|
214
|
function on_change_card_contents() {
|
211
|
|
- var value = $(this).val();
|
|
215
|
+ // var value = $(this).val();
|
|
216
|
+ var value = editor.getValue();
|
212
|
217
|
|
213
|
218
|
var card = selected_card();
|
214
|
219
|
if (card) {
|
|
@@ -457,7 +462,19 @@ module RpgCardsUI {
|
457
|
462
|
// Use a delay to give the new window time to set up a message listener
|
458
|
463
|
setTimeout(function () { tab.postMessage(card_html, '*') }, 500);
|
459
|
464
|
}
|
460
|
|
-
|
|
465
|
+
|
|
466
|
+ export function collapse_menu() {
|
|
467
|
+ $("#menu-column").hide();
|
|
468
|
+ $("#card-column").removeClass("col-lg-5");
|
|
469
|
+ $("#card-column").addClass("col-lg-8");
|
|
470
|
+ }
|
|
471
|
+
|
|
472
|
+ export function uncollapse_menu() {
|
|
473
|
+ $("#menu-column").show();
|
|
474
|
+ $("#card-column").removeClass("col-lg-8");
|
|
475
|
+ $("#card-column").addClass("col-lg-5");
|
|
476
|
+ }
|
|
477
|
+
|
461
|
478
|
// ============================================================================
|
462
|
479
|
// Initialization
|
463
|
480
|
// ============================================================================
|
|
@@ -468,6 +485,13 @@ module RpgCardsUI {
|
468
|
485
|
cardGenerator = new RpgCards.CardHtmlGenerator;
|
469
|
486
|
pageGenerator = new RpgCards.PageHtmlGenerator;
|
470
|
487
|
|
|
488
|
+ editor = ace.edit("card-contents");
|
|
489
|
+ editor.setShowInvisibles(true);
|
|
490
|
+ editor.renderer.setShowGutter(false);
|
|
491
|
+ (<any>editor).setOption("wrap", "free");
|
|
492
|
+ editor.setTheme("ace/theme/chrome");
|
|
493
|
+ editor.getSession().setMode("ace/mode/rpgcard");
|
|
494
|
+
|
471
|
495
|
setup_color_selector();
|
472
|
496
|
(<any>$('.icon-list')).typeahead({ source: icon_names });
|
473
|
497
|
|
|
@@ -500,7 +524,8 @@ module RpgCardsUI {
|
500
|
524
|
$("#card-count").change(on_change_card_property);
|
501
|
525
|
$("#card-icon-back").change(on_change_card_property);
|
502
|
526
|
$("#card-color").change(on_change_card_color);
|
503
|
|
- $("#card-contents").change(on_change_card_contents);
|
|
527
|
+ editor.getSession().on('change', on_change_card_contents);
|
|
528
|
+ //$("#card-contents").change(on_change_card_contents);
|
504
|
529
|
$("#card-tags").change(on_change_card_tags);
|
505
|
530
|
|
506
|
531
|
// Global options
|