diff --git a/app/modules/LibraryNav.jsx b/app/modules/LibraryNav.jsx index d7eed06..0577679 100644 --- a/app/modules/LibraryNav.jsx +++ b/app/modules/LibraryNav.jsx @@ -74,7 +74,7 @@ function wrapState(ComposedComponent) { return StateWrapper; } -SelectableList = wrapState(SelectableList); +SelectableList = wrapState(SelectableList) const DefaultRawTheme = Styles.LightRawTheme @@ -133,19 +133,57 @@ export default class LibraryNav extends React.Component { {'state': 'displaying', 'title': 'FieldNotes', 'notes': 10} ] } + this.sortNotebooks(true) } + compareNotebooks = (a, b) => { + let atitle = a.title.toLowerCase() + let btitle = b.title.toLowerCase() + + if(atitle > btitle) + return 1 + if(atitle < btitle) + return -1 + return 0 + }; + + sortNotebooks = (notset) => { + this.state.notebooks.sort(this.compareNotebooks) + if (!notset){ + this.setState({notebooks: this.state.notebooks}) + } + }; + static get childContextTypes(){ return {muiTheme: React.PropTypes.object} } - getChildContext() { return { muiTheme: getMuiTheme(DefaultRawTheme) } } + entriesTapped = (i, item, type, ev) => { + + }; + + starredTapped = (i, item, type, ev) => { + + }; + + recentsTapped = (i, item, type, ev) => { + + }; + + trashTapped = (i, item, type, ev) => { + + }; + + allNotesTapped = (i, item, type, ev) => { + + }; + blank(){ } @@ -159,6 +197,7 @@ export default class LibraryNav extends React.Component { nb.title = notebookName nb.state = 'displaying' this.setState({notebooks: this.state.notebooks}) + this.sortNotebooks() } else if(nb.title){ nb.state = 'displaying' @@ -168,29 +207,39 @@ export default class LibraryNav extends React.Component { addNotebookTapped = () => { var nbs = this.state.notebooks - nbs.push({'state': 'editing', + nbs.splice(0, 0, {'state': 'editing', 'title': '', 'notes': 0}) this.setState({notebooks: nbs}) }; newNotebookTyped = (i) => { + }; menuItemClicked = (i, ev) => { + var item = this.state.navItems[i] + var type = 'leftClick' var nativeEvent = ev.nativeEvent if(nativeEvent.button == 2){ //Right click - + type = 'rightClick' } + item.clicked(i, item, type, ev) }; renameTapped = (i) => { var nbs = this.state.notebooks nbs[i].state = 'editing' - this.setState({notebooks: nbs}) - this.props.closeContextMenu() - //ReactDOM.findDOMNode(this.refs[nbs[i].title+i]).click() + this.setState({notebooks: nbs}, () => { + console.log(i) + var nbsx = this.state.notebooks + this.props.closeContextMenu() + //this.refs['textField'+i].focus() + //$(ReactDOM.findDOMNode(this.refs['listItem'+i])).click() + //console.log(node.find(':input')) + //node.find(':input')[0].focus() + }) } deleteTapped = (i) => { @@ -232,7 +281,7 @@ export default class LibraryNav extends React.Component { render(){ return (