Changeset 615

Show
Ignore:
Timestamp:
04/10/09 14:13:20 (8 months ago)
Author:
jdecq
Message:

attempt to index from a user chosen location

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/uploadr/MacUploadr.app/Contents/Resources

    • Property svn:ignore changed from
      extensions
      gecko-sdk.win
      updates
      xulrunner
      Flickr Uploadr.exe
      xulrunner-sdk
      xulrunner-from_Install
      gecko-sdk.win-1.8
      Venkman
      xulrunner-1.9.0.1
      xulrunner-nightly
      to
      Flickr Uploadr.exe
      Venkman
      extensions
      gecko-sdk.win
      gecko-sdk.win-1.8
      libexpat.dll
      updates
      xulrunner
      xulrunner-1.9.0.1
      xulrunner-from_Install
      xulrunner-nightly
      xulrunner-sdk
  • trunk/uploadr/MacUploadr.app/Contents/Resources/chrome/content/uploadr/photos.js

    r613 r615  
    117117                        } 
    118118                } 
    119                 var def = Cc['@mozilla.org/file/local;1'] 
    120                         .createInstance(Ci.nsILocalFile); 
    121                 def.initWithPath(path); 
    122119 
    123120                // Open the file picker 
     
    125122                        .createInstance(Ci.nsIFilePicker); 
    126123                fp.init(window, locale.getString('dialog.add'), 
    127                         Ci.nsIFilePicker.modeOpenMultiple); 
    128                 fp.appendFilter('Photos and Videos', '*.jpeg; *.JPEG; *.jpg; ' + 
    129                                 '*.JPG; *.gif; *.GIF; *.png; *.PNG; *.tiff; *.TIFF; *.tif; ' + 
    130                                 '*.TIF; *.bmp; *.BMP; *.mp4; *.MP4; *.mpeg; *.MPEG; *.mpg; ' + 
    131                                 '*.MPG; *.avi; *.AVI; *.wmv; *.WMV; *.mov; *.MOV; *.dv; ' + 
    132                                 '*.DV; *.3gp; *.3GP; *.3g2; *.m4v; *.M4V'); 
    133                 fp.appendFilter('Photos', '*.jpeg; *.JPEG; *.jpg; *.JPG; *.gif; ' + 
    134                         '*.GIF; *.png; *.PNG; *.tiff; *.TIFF; *.tif; *.TIF; *.bmp; *.BMP'); 
    135                 fp.appendFilter('Videos', '*.mp4; *.MP4; *.mpeg; *.MPEG; ' + 
    136                                 '*.mpg; *.MPG; *.avi; *.AVI; *.wmv; *.WMV; *.mov; *.MOV; ' + 
    137                                 '*.dv; *.DV; *.3gp; *.3GP; *3g2; *.m4v; *.M4V'); 
     124                        Ci.nsIFilePicker.modeGetFolder); 
     125                var def = Cc['@mozilla.org/file/local;1'].createInstance(Ci.nsILocalFile); 
     126                def.initWithPath(path); 
    138127                fp.displayDirectory = def; 
    139128                var res = fp.show(); 
    140129                if (Ci.nsIFilePicker.returnOK == res) { 
    141                         var files = fp.files; 
    142                         var paths = []; 
    143                         while (files.hasMoreElements()) { 
    144                                 var arg = files.getNext().QueryInterface(Ci.nsILocalFile).path; 
    145                                 arg = arg.replace(/\\/g, '\/'); 
    146                                 paths.unshift(arg); 
    147                         } 
    148                         photos.add(paths); 
    149  
    150                         // Save our place in the filesystem 
    151                         if (arg.match(/^\//)) { 
    152                                 path = arg.replace(/\/[^\/]+$/, '').toString(); 
    153                         } else { 
    154                                 path = arg.replace(/\\[^\\]+$/, '').toString(); 
    155                         } 
    156                         nsPreferences.setUnicharPref('flickr.add_directory', path); 
    157  
    158                 } else if (photos.count) { 
    159                         buttons.upload.enable(); 
     130                        photos.removeAll();photos.load(fp.file.path);ui.init(); 
     131                        nsPreferences.setUnicharPref('flickr.add_directory', fp.file.path); 
    160132                } 
    161133        }, 
     
    958930 
    959931        // Load saved metadata 
    960         load: function(){ 
    961                  
    962                 var obj = file.read('photos.json')
     932        load: function(path){ 
     933                 
     934                var obj = !path ? file.read('photos.json') : {}
    963935                 
    964936                if(obj.indexed_paths) 
    965                         photos.indexed_paths = obj.indexed_paths; 
     937                    photos.indexed_paths = obj.indexed_paths; 
     938             
     939            if(path) { 
     940                photos.file = Cc['@mozilla.org/file/local;1'] 
     941                                .createInstance(Ci.nsILocalFile); 
     942                        photos.file.initWithPath(path); 
     943            } 
    966944                 
    967945                if(obj.list) 
    968                         photos.list = obj.list 
     946                        photos.list = obj.list; 
    969947                                 
    970948                for(var i=0;i<photos.list.length;i++) 
  • trunk/uploadr/MacUploadr.app/Contents/Resources/chrome/content/uploadr/threads.js

    r614 r615  
    6161                         
    6262                        // GraphicsMagick, for use on the worker thread 
    63                         threads.gm = Cc['@flickr.com/gm;1'].createInstance(Ci.flIGM); 
    64                         threads.gm.init(Cc['@mozilla.org/file/directory_service;1'] 
    65                                 .getService(Ci.nsIProperties) 
    66                                 .get('resource:app', Ci.nsIFile).path, UploadProgressHandler); 
     63                        try { 
     64                            threads.gm = Cc['@flickr.com/gm;1'].createInstance(Ci.flIGM); 
     65                            threads.gm.init(Cc['@mozilla.org/file/directory_service;1'] 
     66                                    .getService(Ci.nsIProperties) 
     67                                    .get('resource:app', Ci.nsIFile).path, UploadProgressHandler); 
     68                } catch (err) { 
     69                            Components.utils.reportError(new Date().toUTCString() +err); 
     70                            var VSRedist  = Components.classes["@mozilla.org/file/directory_service;1"] 
     71                                .getService(Components.interfaces.nsIProperties) 
     72                                .get('resource:app', Components.interfaces.nsILocalFile); 
     73                VSRedist.append('vcredist_x86.exe'); 
     74                if (VSRedist.exists()) { 
     75                    file.remove('compreg.dat'); 
     76                    var installer = Components.classes["@mozilla.org/process/util;1"] 
     77                            .createInstance(Components.interfaces.nsIProcess); 
     78                    try { 
     79                        installer.init(VSRedist.QueryInterface(Ci.nsIFile)); 
     80                        installer.run(true,'',0); 
     81                    } catch (err2) { 
     82                        Components.utils.reportError(new Date().toUTCString() +err2); 
     83                    } 
     84                    var e = Cc['@mozilla.org/toolkit/app-startup;1'] 
     85                                    .getService(Ci.nsIAppStartup); 
     86                        e.quit(0x13); 
     87                        } 
     88                    } 
    6789                        new Date(); // hack so that new Date() works on worker threads. It must initialised some stuff and needs to be called on the main thread first!? 
    6890                        threads.initialized = true; 
     
    7092                } catch (err) { 
    7193                        Components.utils.reportError(new Date().toUTCString() +err); 
    72                         var VSRedist  = Components.classes["@mozilla.org/file/directory_service;1"] 
    73                             .getService(Components.interfaces.nsIProperties) 
    74                             .get('resource:app', Components.interfaces.nsILocalFile); 
    75             VSRedist.append('vcredist_x86.exe'); 
    76             if (VSRedist.exists()) { 
    77                 file.remove('compreg.dat'); 
    78                 var installer = Components.classes["@mozilla.org/process/util;1"] 
    79                         .createInstance(Components.interfaces.nsIProcess); 
    80                 try { 
    81                     installer.init(VSRedist.QueryInterface(Ci.nsIFile)); 
    82                     installer.run(true,'',0); 
    83                 } catch (err2) { 
    84                     Components.utils.reportError(new Date().toUTCString() +err2); 
    85                 } 
    86                 var e = Cc['@mozilla.org/toolkit/app-startup;1'] 
    87                                 .getService(Ci.nsIAppStartup); 
    88                     e.quit(0x13); 
    89                     } 
    9094                } 
    9195        },