import React from 'react';
import {connect} from 'react-redux';
import classnames from 'classnames';
import {close, setSkinFromFilename, openFileDialog} from '../actionCreators';
import {CLOSE_CONTEXT_MENU, TOGGLE_CONTEXT_MENU} from '../actionTypes';
import '../../css/context-menu.css';
const SKINS = [
{file: 'base-2.91.wsz', name: ''},
{file: 'MacOSXAqua1-5.wsz', name: 'Mac OSX v1.5 (Aqua)'},
{file: 'TopazAmp1-2.wsz', name: 'TopazAmp'},
{file: 'Vizor1-01.wsz', name: 'Vizor'},
{file: 'XMMS-Turquoise.wsz', name: 'XMMS Turquoise '},
{file: 'ZaxonRemake1-0.wsz', name: 'Zaxon Remake'}
];
class ContextMenu extends React.Component {
componantWillMount() {
// Clicking anywhere outside the context menu will close the window
document.addEventListener('click', this.props.closeMenu);
}
componantWillUnmount() {
document.removeEventListener('click', this.props.closeMenu);
}
render() {
return
;
}
}
const mapStateToProps = (state) => state.contextMenu;
const mapDispatchToProps = (dispatch, ownProps) => ({
close: () => dispatch(close()),
closeMenu: () => dispatch({type: CLOSE_CONTEXT_MENU}),
toggleMenu: (e) => {
dispatch({type: TOGGLE_CONTEXT_MENU});
e.stopPropagation();
},
openFileDialog: () => openFileDialog(ownProps.winamp),
setSkin: (filename) => dispatch(setSkinFromFilename(filename))
});
module.exports = connect(mapStateToProps, mapDispatchToProps)(ContextMenu);