Differences From Artifact [6a1367bab5]:
- File gc_lang/fr/tb/content/file_handler.js — part of check-in [81f4f65958] at 2018-03-28 13:15:21 on branch multid — [tb] lexicon editor: import dictionary (user: olr, size: 3961) [annotate] [blame] [check-ins using] [more...]
To Artifact [1ba36d2189]:
- File gc_lang/fr/mailext/content/file_handler.js — part of check-in [a9234a6ef3] at 2019-09-02 13:13:27 on branch tbme — [tb] adaptation to new API (draft) (user: olr, size: 3988) [annotate] [blame] [check-ins using]
- File gc_lang/fr/tb/content/file_handler.js — part of check-in [8ea07ff627] at 2018-08-07 12:40:29 on branch trunk — [tb] code cleaning: fix import (not necessary for TextDecoder, TextEncoder) (user: olr, size: 3988) [annotate] [blame] [check-ins using]
1 2 3 4 5 6 | // JavaScript "use strict"; // Assuming that Cc, Ci and Cu are already loaded | | > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
// JavaScript
"use strict";
// Assuming that Cc, Ci and Cu are already loaded
//const {OS} = ChromeUtils.import("resource://gre/modules/osfile.jsm", {});
ChromeUtils.import("resource://gre/modules/osfile.jsm")
const oFileHandler = {
// https://developer.mozilla.org/fr/docs/Mozilla/JavaScript_code_modules/OSFile.jsm/OS.File_for_the_main_thread
xDataFolder: null,
prepareDataFolder: function () {
|
| ︙ | ︙ | |||
31 32 33 34 35 36 37 |
},
loadFile: async function (sFilename) {
if (!this.xDataFolder) {
this.prepareDataFolder();
}
try {
| < > < > | 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 |
},
loadFile: async function (sFilename) {
if (!this.xDataFolder) {
this.prepareDataFolder();
}
try {
let array = await OS.File.read(this.createPathFileName(sFilename));
let xDecoder = new TextDecoder();
return xDecoder.decode(array);
}
catch (e) {
console.error(e);
return null;
}
},
loadAs: function (callback) {
let xFilePicker = Cc["@mozilla.org/filepicker;1"].createInstance(Ci.nsIFilePicker);
xFilePicker.init(window, "Charger fichier", Ci.nsIFilePicker.modeOpen);
xFilePicker.appendFilters(Ci.nsIFilePicker.filterAll | Ci.nsIFilePicker.filterText);
xFilePicker.open(async function (nReturnValue) {
if (nReturnValue == Ci.nsIFilePicker.returnOK || nReturnValue == Ci.nsIFilePicker.returnReplace) {
console.log(xFilePicker.file.path);
try {
let array = await OS.File.read(xFilePicker.file.path);
let xDecoder = new TextDecoder();
callback(xDecoder.decode(array));
}
catch (e) {
console.error(e);
callback(null);
}
}
|
| ︙ | ︙ |