var React = require('react'); var connect = require('react-redux').connect; var ProfileTree = require('./profile-tree.jsx'); var DesktopAppList = require('./desktop-app-list.jsx'); var ItemForm = require('./item-form.jsx'); var IconThemeSelector = require('./icon-theme-selector.jsx'); var actions = require('../../store/actions'); var DragDropContext = require('react-dnd').DragDropContext; var HTML5Backend = require('react-dnd/modules/backends/HTML5'); var EditView = React.createClass({ componentDidMount: function() { this.props.dispatch(actions.edit.loadDesktopApps()); }, render: function() { return (
); }, onItemDropped: function(desktopEntry, targetItem) { var newProfileItem = { label: desktopEntry.Name, icon: desktopEntry.Icon, exec: desktopEntry.Exec }; this.props.dispatch(actions.edit.addProfileItem(newProfileItem, targetItem)); }, onThemeSelected: function(theme) { this.props.dispatch(actions.edit.selectTheme(theme)); } }); function select(state) { return { desktopApps: state.desktopApps, profile: state.profile, theme: state.theme }; } module.exports = DragDropContext(HTML5Backend)(connect(select)(EditView));