mirror of
https://github.com/pcottle/learnGitBranching.git
synced 2025-06-29 17:27:22 +02:00
READY TO BUILD LEVELS :DDDDDDDDDDDDDD
This commit is contained in:
parent
c5f4d6e3f2
commit
8a1986a923
7 changed files with 175 additions and 48 deletions
|
@ -20,7 +20,9 @@ var ConfirmCancelTerminal = require('../views').ConfirmCancelTerminal;
|
|||
var NextLevelConfirm = require('../views').NextLevelConfirm;
|
||||
var LevelToolbar = require('../views').LevelToolbar;
|
||||
|
||||
var MarkdownPresenter = require('../views/builderViews').MarkdownPresenter;
|
||||
var MultiViewBuilder = require('../views/builderViews').MultiViewBuilder;
|
||||
var MarkdownGrabber = require('../views/builderViews').MarkdownGrabber;
|
||||
|
||||
var regexMap = {
|
||||
'define goal': /^define goal$/,
|
||||
|
@ -291,23 +293,30 @@ var LevelBuilder = Level.extend({
|
|||
}
|
||||
|
||||
chain = chain.done(_.bind(function() {
|
||||
var compiledLevel = _.extend(
|
||||
{},
|
||||
this.level
|
||||
);
|
||||
// the start dialog now is just our help intro thing
|
||||
delete compiledLevel.startDialog;
|
||||
if (this.startDialog) {
|
||||
compiledLevel.startDialog = this.startDialog;
|
||||
}
|
||||
console.log(compiledLevel);
|
||||
console.log(this.startDialog);
|
||||
// ok great! lets just give them the goods
|
||||
new MarkdownPresenter({
|
||||
fillerText: JSON.stringify(this.getExportObj(), null, 2),
|
||||
previewText: 'Here is the JSON for this level! Share it with someone or send it to me on Github!'
|
||||
});
|
||||
command.finishWith(deferred);
|
||||
}, this));
|
||||
|
||||
masterDeferred.resolve();
|
||||
},
|
||||
|
||||
getExportObj: function() {
|
||||
var compiledLevel = _.extend(
|
||||
{},
|
||||
this.level
|
||||
);
|
||||
// the start dialog now is just our help intro thing
|
||||
delete compiledLevel.startDialog;
|
||||
if (this.startDialog) {
|
||||
compiledLevel.startDialog = this.startDialog;
|
||||
}
|
||||
return compiledLevel;
|
||||
},
|
||||
|
||||
processLevelBuilderCommand: function(command, deferred) {
|
||||
var methodMap = {
|
||||
'define goal': this.defineGoal,
|
||||
|
|
|
@ -57,7 +57,8 @@ var MarkdownGrabber = ContainedBase.extend({
|
|||
options = options || {};
|
||||
this.deferred = options.deferred || Q.defer();
|
||||
this.JSON = {
|
||||
previewText: options.previewText || 'Preview'
|
||||
previewText: options.previewText || 'Preview',
|
||||
fillerText: options.fillerText || '## Enter some markdown!\n\n\n'
|
||||
};
|
||||
|
||||
this.container = options.container || new ModalTerminal({
|
||||
|
@ -127,6 +128,34 @@ var MarkdownGrabber = ContainedBase.extend({
|
|||
}
|
||||
});
|
||||
|
||||
var MarkdownPresenter = ContainedBase.extend({
|
||||
tagName: 'div',
|
||||
className: 'markdownPresenter box vertical',
|
||||
template: _.template($('#markdown-presenter').html()),
|
||||
|
||||
initialize: function(options) {
|
||||
options = options || {};
|
||||
this.JSON = {
|
||||
previewText: options.previewText || 'Here is something for you',
|
||||
fillerText: options.fillerText || '# Yay'
|
||||
};
|
||||
|
||||
this.container = new ModalTerminal({
|
||||
title: 'Check this out...'
|
||||
});
|
||||
this.render();
|
||||
|
||||
var confirmCancel = new Views.ConfirmCancelView({
|
||||
destination: this.getDestination()
|
||||
});
|
||||
confirmCancel.deferred.promise
|
||||
.fail(function() { })
|
||||
.done(_.bind(this.die, this));
|
||||
|
||||
this.show();
|
||||
}
|
||||
});
|
||||
|
||||
var DemonstrationBuilder = ContainedBase.extend({
|
||||
tagName: 'div',
|
||||
className: 'demonstrationBuilder box vertical',
|
||||
|
@ -334,4 +363,5 @@ exports.MarkdownGrabber = MarkdownGrabber;
|
|||
exports.DemonstrationBuilder = DemonstrationBuilder;
|
||||
exports.TextGrabber = TextGrabber;
|
||||
exports.MultiViewBuilder = MultiViewBuilder;
|
||||
exports.MarkdownPresenter = MarkdownPresenter;
|
||||
|
||||
|
|
|
@ -125,12 +125,12 @@ var ConfirmCancelView = ResolveRejectBase.extend({
|
|||
},
|
||||
|
||||
initialize: function(options) {
|
||||
if (!options.destination || !options.deferred) {
|
||||
if (!options.destination) {
|
||||
throw new Error('needmore');
|
||||
}
|
||||
|
||||
this.destination = options.destination;
|
||||
this.deferred = options.deferred;
|
||||
this.deferred = options.deferred || Q.defer();
|
||||
this.JSON = {
|
||||
confirm: options.confirm || 'Confirm',
|
||||
cancel: options.cancel || 'Cancel'
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue