@@ -5,7 +5,8 @@ const { Menu, MainButton, ChildButton } = require('react-mfb-iceddev');
55
66require ( 'react-mfb-iceddev/mfb.css' ) ;
77
8- const NewFileOverlay = require ( './new-file-overlay' ) ;
8+ const NewFileOverlay = require ( './overlays/new-file' ) ;
9+ const DeleteFileOverlay = require ( './overlays/delete-file' ) ;
910
1011const FileOperations = React . createClass ( {
1112 saveFile : function ( evt ) {
@@ -31,7 +32,17 @@ const FileOperations = React.createClass({
3132 // TODO: these should transparently accept cursors for all non-function params
3233 space . saveFile ( space . filename . deref ( ) , space . current , overlay . hide ) ;
3334 } ,
34- newFile : function ( evt ) {
35+ deleteFile : function ( name ) {
36+ const space = this . props . workspace ;
37+ const overlay = this . props . overlay ;
38+
39+ if ( ! name ) {
40+ return ;
41+ }
42+
43+ space . deleteFile ( space . filename , overlay . hide ) ;
44+ } ,
45+ showCreateOverlay : function ( evt ) {
3546 evt . preventDefault ( ) ;
3647
3748 const overlay = this . props . overlay ;
@@ -44,37 +55,35 @@ const FileOperations = React.createClass({
4455
4556 overlay . show ( { backdrop : true } ) ;
4657 } ,
47- deleteFile : function ( evt ) {
58+ showDeleteOverlay : function ( evt ) {
4859 evt . preventDefault ( ) ;
4960
5061 const space = this . props . workspace ;
62+ const overlay = this . props . overlay ;
5163
52- space . deleteFile ( space . filename , function ( err ) {
53- console . log ( 'deleted' , err ) ;
54- } ) ;
55- } ,
56- updateName : function ( evt ) {
57- const space = this . props . workspace ;
58- evt . stopPropagation ( ) ;
59- evt . preventDefault ( ) ;
60- space . filename . update ( function ( ) {
61- return evt . target . value ;
62- } ) ;
64+ overlay . content (
65+ < DeleteFileOverlay
66+ filename = { space . filename . deref ( ) }
67+ onAccept = { this . deleteFile }
68+ onCancel = { overlay . hide } />
69+ ) ;
70+
71+ overlay . show ( { backdrop : true } ) ;
6372 } ,
6473 render : function ( ) {
6574 return (
6675 < Menu effect = "zoomin" method = "click" position = "bl" >
6776 < MainButton iconResting = "ion-plus-round" iconActive = "ion-close-round" />
6877 < ChildButton
69- onClick = { this . deleteFile }
78+ onClick = { this . showDeleteOverlay }
7079 icon = "ion-backspace-outline"
7180 label = "Delete File" />
7281 < ChildButton
7382 onClick = { this . saveFile }
7483 icon = "ion-compose"
7584 label = "Save File" />
7685 < ChildButton
77- onClick = { this . newFile }
86+ onClick = { this . showCreateOverlay }
7887 icon = "ion-document"
7988 label = "New File" />
8089 </ Menu >
0 commit comments