| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 |
- include("scripts/EAction.js");
- include("scripts/simple.js");
- include("scripts/simple_create.js");
- include("scripts/Common/DrawPM.js")
- /**
- * \ingroup ecma_misc_examples_ioexamples
- * \class ExTxtImport
- * This action reads an XML file and outputs information to stderr.
- * This can be used as starting point for XML importers.
- */
- function ExPMImport(guiAction) {
- EAction.call(this, guiAction);
- this.ratio = 1.0;
- }
- ExPMImport.prototype = new EAction();
- ExPMImport.includeBasePath = includeBasePath;
- ExPMImport.prototype.beginEvent = function () {
- EAction.prototype.beginEvent.call(this);
- var appWin = EAction.getMainWindow();
- if (RSettings.getStringValue("OpenProject/Current", "") == "") {
- QMessageBox.critical(appWin, qsTr("提示"), qsTr("请先选择工程路径"));
- return;
- }
- var lastOpenFileDir = RSettings.getStringValue("OpenProject/Current", RSettings.getDocumentsLocation());
- EAction.handleUserMessage("current project:" + lastOpenFileDir);
- var filterAll = qsTr("平面文件") + " (*.pm);";
- var fileDialog = new QFileDialog(appWin, qsTr("请选择平面文件"), lastOpenFileDir, "");
- fileDialog.setNameFilters([filterAll]);
- fileDialog.selectNameFilter(filterAll);
- fileDialog.setOption(QFileDialog.DontUseNativeDialog, getDontUseNativeDialog());
- fileDialog.fileMode = QFileDialog.ExistingFiles;
- if (!fileDialog.exec()) {
- destr(fileDialog);
- EAction.activateMainWindow();
- this.terminate();
- return;
- }
- var files = fileDialog.selectedFiles();
- if (files.length === 0) {
- destr(fileDialog);
- EAction.activateMainWindow();
- this.terminate();
- return;
- }
- destr(fileDialog);
- EAction.activateMainWindow();
- try {
- for (var i = 0; i < files.length; i++) {
- var filePM = new DrawPM(files[i], this.ratio, 1);
- // applyDrawing在前 saveFileCSV在后
- filePM.applyDrawing();
- filePM.saveFileCSV();
- var tmp = RSettings.getStringValue("OpenDisplayFile/PMFile", "");
- RSettings.setValue("OpenDisplayFile/PMFile", tmp + "," + files[i]);
- }
- } catch (error) {
- EAction.handleUserMessage("load PM file, ERROR: " + error.toString());
- }
- };
- ExPMImport.prototype.slotRatioButtonclicked = function (v) {
- qDebug(v);
- this.ratio = v;
- this.applyOperation();
- };
|