Changeset 194

Show
Ignore:
Timestamp:
12/22/06 02:18:31 (2 years ago)
Author:
Alan Knowles
Message:

prevent hanging on selections if cancel pressed ** still hangs on multiselect/ when you just press ok.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/src/property/PropsUI.d

    r187 r194  
    559559        fs.setSelectMultiple(false); 
    560560        int response = fs.run(); 
    561         char[][] selections = Str.toStringArray(fs.getSelections()); 
    562         if ( response == ResponseType.GTK_RESPONSE_OK && selections.length>0 ) 
    563         { 
    564             for ( int i=0 ;i<selections.length ; i++) 
    565             { 
    566                 (cast(Entry)entry).setText( fs.getFilename() ); 
    567             } 
    568         } 
     561        if (( response != ResponseType.GTK_RESPONSE_OK) || ! fs.getFilename()) { 
     562            fs.hide(); 
     563            return; 
     564        } 
     565          
     566        (cast(Entry)entry).setText( fs.getFilename() ); 
     567         
    569568        fs.hide(); 
    570569    } 
     
    592591        fs.setSelectMultiple(false); 
    593592        int response = fs.run(); 
    594         char[][] selections = Str.toStringArray(fs.getSelections()); 
    595         if ( response == ResponseType.GTK_RESPONSE_OK && selections.length>0 ) 
    596         { 
    597             for ( int i=0 ;i<selections.length ; i++) 
    598             { 
    599                 (cast(Entry)entry).setText( fs.getFilename() ); 
    600             } 
    601         } 
     593        if ((response != ResponseType.GTK_RESPONSE_OK) || ! fs.getFilename()) { 
     594            fs.hide(); 
     595            return; 
     596        } 
     597          
     598        (cast(Entry)entry).setText( fs.getFilename() ); 
    602599        fs.hide(); 
    603600    } 
     
    626623        fs.setSelectMultiple(true); 
    627624        int response = fs.run(); 
     625        if ( response != ResponseType.GTK_RESPONSE_OK ) { 
     626            fs.hide(); 
     627            return; 
     628        } 
    628629        char[][] selections = Str.toStringArray(fs.getSelections()); 
    629         if ( response == ResponseType.GTK_RESPONSE_OK && selections.length > 0 ) 
     630        if ( selections  && selections.length > 0 ) 
    630631        {        
    631632            char[] text = tv.getBuffer().getText(); 
     
    666667        fs.setSelectMultiple(true); 
    667668        int response = fs.run(); 
     669        if (response != ResponseType.GTK_RESPONSE_OK) { 
     670            fs.hide(); 
     671            return; 
     672        } 
     673          
    668674        char[][] selections = Str.toStringArray(fs.getSelections()); 
    669         if ( response == ResponseType.GTK_RESPONSE_OK && selections.length > 0 ) 
     675        if ( selections && selections.length > 0 ) 
    670676        {        
     677             
    671678            char[] text = tv.getBuffer().getText(); 
    672679            for ( int i=0 ;i<selections.length ; i++)