Created
November 17, 2009 22:14
-
-
Save lsiden/237321 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// ========================================================================== | |
// Project: EccapCalc.LedgerView | |
// Copyright: ©2009 Westside Consulting LLC | |
// ========================================================================== | |
/*globals EccapCalc */ | |
/** @class | |
This is a reusable view that is meant to be instantiated from the function | |
EccapCalc.createLedgerView(x, y, w, h, title, arrayController). | |
@extends SC.View | |
*/ | |
var x=100, y=100, w=400, h=200, title='Liquid Assets', arrayController='EccapCalc.assetsController'; | |
var h_title = 25; | |
var h_total = 18; | |
var h_add = 25; | |
var h_ledger = h - h_title - h_add - h_total; | |
var w_amount = 100; | |
var w_ledger = w - w_amount; | |
var y_title = y; | |
var y_ledger = y_title + h_title; | |
var y_add = y_ledger + h_ledger + 3; | |
var y_total = y_add + h_add; | |
EccapCalc.LedgerView = SC.View.design( | |
SC.CollectionViewDelegate, | |
/** @scope EccapCalc.LedgerView.prototype */ { | |
childViews: 'title ledger button_add label_total total'.w(), | |
title: SC.LabelView.design({ | |
displayValue: title, | |
fontWeight: SC.BOLD_WEIGHT, | |
layout: { left: x, top: y, width: w, height: h_title}, | |
}), | |
ledger: SC.ScrollView.design({ | |
layout: { left: x, top: y_ledger, width: w, height: h_ledger}, | |
contentView: SC.ListView.design({ | |
contentBinding: arrayController + '.arrangedObjects', | |
selectionBinding: arrayController + '.selection', | |
exampleView: SC.View.design(SC.Control, { | |
childViews: 'descriptionView amountView'.w(), | |
descriptionView: SC.ListItemView.design({ | |
layout: { left: x, top: y_ledger, width: w - w_amount, height: h_ledger}, | |
contentBinding: '.parentView.content', | |
contentValueKey: 'description', | |
canEditContent: YES, | |
canDeleteContent: YES, | |
}), | |
amountView: SC.ListItemView.design({ | |
layout: { left: w + x - w_amount, top: y_ledger, width: w_amount, height: h_ledger}, | |
contentBinding: '.parentView.content', | |
contentValueKey: 'value', | |
canEditContent: YES, | |
canDeleteContent: YES, | |
classNames: ['numeric'], | |
}), | |
}), | |
}), | |
}), | |
button_add: SC.ButtonView.design({ | |
layout: { left: x, top: y_add, width: 140, height: h_add}, | |
title: 'Add New Asset', | |
target: arrayController, | |
action: "add_item" | |
}), | |
label_total: SC.LabelView.design({ | |
layout: { left: x, top: y_total, width: w - w_amount, height: h_add}, | |
displayValue: 'Total', | |
fontWeight: SC.BOLD_WEIGHT, | |
}), | |
total: SC.LabelView.design({ | |
layout: { left: x + w - w_amount, top: y_total, width: w_amount, height: h_title}, | |
valueBinding: arrayController + '.total', | |
textAlign: SC.ALIGN_RIGHT, | |
}), | |
}); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment