Add initial version of configure page

This commit is contained in:
Andrew Miner
2015-02-28 21:14:00 -08:00
parent 43dfec7e04
commit 05d2e8b3a4
15 changed files with 55 additions and 40 deletions
+2 -4
View File
@@ -30,13 +30,11 @@ All rights reserved.
vertical-align: top;
.titleImage {
position: relative; height: 16em; width: 16em;
margin-bottom: 2em;
a {
position: relative; width: 100%;
img {
position: relative; width: 16em; min-height: 16em;
@include pixel-image;
}
}
@@ -44,7 +42,7 @@ All rights reserved.
.externalLink {
position: relative; width: 80%;
margin: 0 10%;
margin: 0.5em 10%;
display: none;
p {
+2 -4
View File
@@ -15,11 +15,9 @@ All rights reserved.
vertical-align: top;
}
.view__inventory { width: 50%; height: 26em; }
.view__inventory { width: 50%; height: 30em; }
.view__crafting_table { width: 50%; height: 26em; }
.view__mod_pack { margin-top: 2em; width: 100%; }
.view__crafting_table { width: 50%; height: 30em; }
.want label {
position: absolute; top: 50%; left: 0.5em;
+3
View File
@@ -6,6 +6,9 @@ All rights reserved.
*/
.view__item {
display: inline-block;
padding: 0.5em;
a {
text-decoration: none;
width: 100%;
+1 -5
View File
@@ -62,11 +62,7 @@ All rights reserved.
}
}
.panel {
& > div {
.view__item {
position: relative; width: 33%;
display: inline-block;
padding: 0.5em;
}
}
}
+4 -1
View File
@@ -14,7 +14,6 @@ All rights reserved.
}
.sidebar {
.version {
position: relative; width: 80%;
margin: 0 10%;
@@ -49,4 +48,8 @@ All rights reserved.
}
}
}
.view__item {
position: relative; width: 33%;
}
}
+9
View File
@@ -88,6 +88,15 @@ All rights reserved.
}
}
.dot {
position: absolute; top: 50%; right: 1em; height: 1.5em; width: 1.5em;
@include transform(translateY(-50%));
background: $color-active;
border-radius: 0.75em;
opacity: 0;
}
p {
position: absolute; top: 50%; left: 50%; width: 100%;
@include transform(translateX(-50%) translateY(-50%));
@@ -6,11 +6,23 @@ All rights reserved.
###
BaseController = require './base_controller'
ModPackController = require './mod_pack_controller'
########################################################################################################################
module.exports = class ConfigurePageController extends BaseController
constructor: (options={})->
if not options.modPack? then throw new Error 'options.modPack is required'
if not options.storage? then throw new Error 'options.storage is required'
options.templateName = 'configure_page'
super options
@modPack = options.modPack
@storage = options.storage
# BaseController Overrides #####################################################################
onDidRender: ->
@modPackController = @addChild ModPackController, '.view__mod_pack', model:@modPack, storage:@storage
super
@@ -78,11 +78,6 @@ module.exports = class CraftPageController extends BaseController
model: @model.table
modPack: @model.modPack
@modPackController = @addChild ModPackController, '.view__mod_pack',
model: @model.modPack
plan: @model.plan
storage: @_storage
@$('.want .toolbar').append '<label><input class="includeTools" type="checkbox"> include tools</label>'
@$includeToolsBox = @$('.includeTools')
@@ -41,12 +41,17 @@ module.exports = class HeaderController extends BaseController
refresh: ->
for $navLink in @$navLinks
logger.debug "@model: #{@model}, page: #{$navLink.data('page')}"
if $navLink.data('page') is @model
linkPage = $navLink.data('page')
if @model is linkPage
$navLink.addClass 'selected'
else
$navLink.removeClass 'selected'
if @model.indexOf(linkPage) isnt -1
$navLink.find('.dot').css 'opacity': 1;
else
$navLink.find('.dot').css 'opacity': 0;
# Backbone.View Overrides ######################################################################
events: ->
@@ -17,19 +17,15 @@ module.exports = class ModController extends BaseController
constructor: (options={})->
if not options.model? then throw new Error 'options.model is required'
if not options.plan? then throw new Error 'options.plan is required'
options.templateName = 'mod'
super options
@_plan = options.plan
@_storage = options.storage
# Event Methods ################################################################################
onVersionChanged: ->
@model.activeVersion = @$version.val()
@_plan.removeUncraftableItems()
@_plan.craft()
# BaseController Overrides #####################################################################
@@ -17,13 +17,11 @@ module.exports = class ModPackController extends BaseController
constructor: (options={})->
if not options.model? then throw new Error 'options.model is required'
if not options.plan? then throw new Error 'options.plan is required'
options.templateName = 'mod_pack'
super options
@_controllers = []
@_plan = options.plan
@_storage = options.storage
@storage = options.storage
# Event Methods ################################################################################
@@ -52,7 +50,7 @@ module.exports = class ModPackController extends BaseController
index++
while @_controllers.length < mods.length
controller = new ModController model:mods[index], plan:@_plan, storage:@_storage
controller = new ModController model:mods[index], storage:@storage
controller.render()
@_controllers.push controller
controller.$el.hide duration:0
+5 -1
View File
@@ -5,4 +5,8 @@
//- All rights reserved.
//-
h1 Configure
.view__configure_page
.sidebar
.mainBody
.view__mod_pack
-2
View File
@@ -11,5 +11,3 @@
.view__inventory.need
.view__crafting_table
.view__mod_pack
+2 -2
View File
@@ -7,8 +7,8 @@
.view__item_page
.sidebar
.titleImage: img
a.craftingPlan: p Full Crafting Plan
.titleImage: a: img
a.craftingPlan.externalLink: p Full Crafting Plan
.mainBody
h1.name
+4 -4
View File
@@ -7,11 +7,11 @@
.view__mod_page
.sidebar
.titleImage: img
.titleImage: a: img
select.version
a.homePage(target="new"): p Offical Home Page
a.documentation(target="new"): p Documentation
a.download(target="new"): p Download
a.homePage.externalLink(target="new"): p Offical Home Page
a.documentation.externalLink(target="new"): p Documentation
a.download.externalLink(target="new"): p Download
.mainBody
h1.name