ViewVC Help
View File | Revision Log | View Changeset | Root Listing
root/Oni2/s10k/Vago/windowMessagesWizard/wmfinalpage.cpp
(Generate patch)

Comparing s10k/Vago/windowMessagesWizard/wmfinalpage.cpp (file contents):
Revision 1092 by s10k, Sat Dec 30 13:43:28 2017 UTC vs.
Revision 1093 by s10k, Sat Dec 30 13:57:32 2017 UTC

# Line 1 | Line 1
1   #include "wmfinalpage.h"
2   #include "ui_wmfinalpage.h"
3  
4 < WmFinalPage::WmFinalPage(QString AppDir, QString wmLocation, Logger *myLogger, QList<std::shared_ptr<WmPage> > &pages, QWidget *parent) :
4 > WmFinalPage::WmFinalPage(QString AppDir, QString wmLocation, QList<std::shared_ptr<WmPage> > &pages, QWidget *parent) :
5      QWizardPage(parent), ui(new Ui::wmfinalpage), pages(pages)
6   {
7      ui->setupUi(this);
8      this->wmLocation=wmLocation;
9    this->myLogger=myLogger;
9  
10      this->oniSplitCommands = new QStringList();
11 <    this->myConverter = new Converter(AppDir, this->myLogger,this->oniSplitCommands);
11 >    this->myConverter = new Converter(AppDir, this->oniSplitCommands);
12  
13      ui->lbComplete->setText("<html>The wizard is now complete. The window messages have been converted. "
14                              "You can view all converted files clicking <a href=' '>here.</a><br />"
# Line 54 | Line 53 | void WmFinalPage::startProcessing(){
53      {
54          typeNode = rootNode.append_child("OPge");
55          typeNode.append_attribute("id").set_value(++globalSectionCounter);
56 <        typeNode.append_child("LevelNumber").append_child(pugi::xml_node_type::node_pcdata).set_value(Util::qStrToCstr(field("leLevelId").toString()));
57 <        typeNode.append_child("Pages").append_child(pugi::xml_node_type::node_pcdata).set_value(Util::qStrToCstr(QString("#") + QString::number(++globalSectionCounter)));
56 >        typeNode.append_child("LevelNumber").append_child(pugi::xml_node_type::node_pcdata).set_value(QSTR_TO_CSTR(field("leLevelId").toString()));
57 >        typeNode.append_child("Pages").append_child(pugi::xml_node_type::node_pcdata).set_value(QSTR_TO_CSTR(QString("#") + QString::number(++globalSectionCounter)));
58          pugi::xml_node igpaNode = rootNode.append_child("IGPA");
59          igpaNode.append_attribute("id").set_value(globalSectionCounter);
60          pugi::xml_node pagesNode = igpaNode.append_child("Pages");
61          currentIGPGId = globalSectionCounter;
62          for(int i=0; i<this->pages.size(); i++){
63 <            pagesNode.append_child("Link").append_child(pugi::xml_node_type::node_pcdata).set_value(Util::qStrToCstr("#" + QString::number(++globalSectionCounter)));
63 >            pagesNode.append_child("Link").append_child(pugi::xml_node_type::node_pcdata).set_value(QSTR_TO_CSTR("#" + QString::number(++globalSectionCounter)));
64          }
65          break;
66      }
67      case  WINDOW_TYPE::DIARY:
68          typeNode = rootNode.append_child("DPge");
69          typeNode.append_attribute("id").set_value(++globalSectionCounter);
70 <        typeNode.append_child("LevelNumber").append_child(pugi::xml_node_type::node_pcdata).set_value(Util::qStrToCstr(field("leLevelId").toString()));
71 <        typeNode.append_child("PageNumber").append_child(pugi::xml_node_type::node_pcdata).set_value(Util::qStrToCstr(field("lePageNumber").toString()));
72 <        typeNode.append_child("IsLearnedMove").append_child(pugi::xml_node_type::node_pcdata).set_value(Util::qStrToCstr(QString::number(static_cast<int>(field("cbIsLearnedMove").toBool()))));
70 >        typeNode.append_child("LevelNumber").append_child(pugi::xml_node_type::node_pcdata).set_value(QSTR_TO_CSTR(field("leLevelId").toString()));
71 >        typeNode.append_child("PageNumber").append_child(pugi::xml_node_type::node_pcdata).set_value(QSTR_TO_CSTR(field("lePageNumber").toString()));
72 >        typeNode.append_child("IsLearnedMove").append_child(pugi::xml_node_type::node_pcdata).set_value(QSTR_TO_CSTR(QString::number(static_cast<int>(field("cbIsLearnedMove").toBool()))));
73          currentIGPGId = globalSectionCounter;
74 <        typeNode.append_child("Page").append_child(pugi::xml_node_type::node_pcdata).set_value(Util::qStrToCstr("#" + QString::number(++globalSectionCounter)));
74 >        typeNode.append_child("Page").append_child(pugi::xml_node_type::node_pcdata).set_value(QSTR_TO_CSTR("#" + QString::number(++globalSectionCounter)));
75          break;
76      case  WINDOW_TYPE::HELP:
77          typeNode = rootNode.append_child("HPge");
78          typeNode.append_attribute("id").set_value(++globalSectionCounter);
79          currentIGPGId = globalSectionCounter;
80 <        typeNode.append_child("Page").append_child(pugi::xml_node_type::node_pcdata).set_value(Util::qStrToCstr("#" + QString::number(++globalSectionCounter)));
80 >        typeNode.append_child("Page").append_child(pugi::xml_node_type::node_pcdata).set_value(QSTR_TO_CSTR("#" + QString::number(++globalSectionCounter)));
81          break;
82      case  WINDOW_TYPE::TEXT_CONSOLE:
83      {
84          typeNode = rootNode.append_child("TxtC");
85          typeNode.append_attribute("id").set_value(++globalSectionCounter);
86 <        typeNode.append_child("Pages").append_child(pugi::xml_node_type::node_pcdata).set_value(Util::qStrToCstr("#" + QString::number(++globalSectionCounter)));
86 >        typeNode.append_child("Pages").append_child(pugi::xml_node_type::node_pcdata).set_value(QSTR_TO_CSTR("#" + QString::number(++globalSectionCounter)));
87          pugi::xml_node igpaNode = rootNode.append_child("IGPA");
88          igpaNode.append_attribute("id").set_value(globalSectionCounter);
89          currentIGPGId = globalSectionCounter;
90          pugi::xml_node pagesNode = igpaNode.append_child("Pages");
91          for(int i=0; i<this->pages.size(); i++){
92 <            pagesNode.append_child("Link").append_child(pugi::xml_node_type::node_pcdata).set_value(Util::qStrToCstr("#" + QString::number(++globalSectionCounter)));
92 >            pagesNode.append_child("Link").append_child(pugi::xml_node_type::node_pcdata).set_value(QSTR_TO_CSTR("#" + QString::number(++globalSectionCounter)));
93          }
94          break;
95      }
96      case  WINDOW_TYPE::WEAPON:
97          typeNode = rootNode.append_child("WPge");
98          typeNode.append_attribute("id").set_value(++globalSectionCounter);
99 <        typeNode.append_child("WeaponClass").append_child(pugi::xml_node_type::node_pcdata).set_value(Util::qStrToCstr(field("leWeaponClassName").toString()));
99 >        typeNode.append_child("WeaponClass").append_child(pugi::xml_node_type::node_pcdata).set_value(QSTR_TO_CSTR(field("leWeaponClassName").toString()));
100          currentIGPGId = globalSectionCounter;
101 <        typeNode.append_child("Page").append_child(pugi::xml_node_type::node_pcdata).set_value(Util::qStrToCstr("#" + QString::number(++globalSectionCounter)));
101 >        typeNode.append_child("Page").append_child(pugi::xml_node_type::node_pcdata).set_value(QSTR_TO_CSTR("#" + QString::number(++globalSectionCounter)));
102          break;
103      case  WINDOW_TYPE::ITEM:
104          typeNode = rootNode.append_child("IPge");
105          typeNode.append_attribute("id").set_value(++globalSectionCounter);
106 <        typeNode.append_child("PageNumber").append_child(pugi::xml_node_type::node_pcdata).set_value(Util::qStrToCstr(field("lePageNumber").toString()));
106 >        typeNode.append_child("PageNumber").append_child(pugi::xml_node_type::node_pcdata).set_value(QSTR_TO_CSTR(field("lePageNumber").toString()));
107          currentIGPGId = globalSectionCounter;
108 <        typeNode.append_child("Page").append_child(pugi::xml_node_type::node_pcdata).set_value(Util::qStrToCstr("#" + QString::number(++globalSectionCounter)));
108 >        typeNode.append_child("Page").append_child(pugi::xml_node_type::node_pcdata).set_value(QSTR_TO_CSTR("#" + QString::number(++globalSectionCounter)));
109          break;
110      case WINDOW_TYPE::ENUM_END:
111 <        UtilVago::showAndLogErrorPopUp(this->myLogger, "An error ocurred: WmFinalPage::startProcessing invalid WINDOW_TYPE");
111 >        UtilVago::showAndLogErrorPopUp("An error ocurred: WmFinalPage::startProcessing invalid WINDOW_TYPE");
112          break;
113      }
114  
# Line 131 | Line 130 | void WmFinalPage::startProcessing(){
130              imageTXMPName = "TXMP" + QFileInfo(imageLocation).baseName();
131  
132              this->oniSplitCommands->clear();
133 <            this->oniSplitCommands->append("-create:txmp " + Util::insertQuotes(this->wmLocation) + " -format:bgr32 " + Util::insertQuotes(imageLocation));
133 >            this->oniSplitCommands->append("-create:txmp " + Util::String::insertQuotes(this->wmLocation) + " -format:bgr32 " + Util::String::insertQuotes(imageLocation));
134  
135              this->myConverter->start(); // finally process the onisplit commands
136              this->myConverter->wait(); // wait for it to complete
# Line 151 | Line 150 | void WmFinalPage::startProcessing(){
150  
151          currentIGSAId = globalSectionCounter;
152  
153 <        igpgNode.append_child("Image").append_child(pugi::xml_node_type::node_pcdata).set_value(Util::qStrToCstr(imageTXMPName));
154 <        igpgNode.append_child("Text1").append_child(pugi::xml_node_type::node_pcdata).set_value(Util::qStrToCstr("#" + QString::number(++globalSectionCounter)));
155 <        igpgNode.append_child("Text2").append_child(pugi::xml_node_type::node_pcdata).set_value(Util::qStrToCstr("#" + QString::number(++globalSectionCounter)));
153 >        igpgNode.append_child("Image").append_child(pugi::xml_node_type::node_pcdata).set_value(QSTR_TO_CSTR(imageTXMPName));
154 >        igpgNode.append_child("Text1").append_child(pugi::xml_node_type::node_pcdata).set_value(QSTR_TO_CSTR("#" + QString::number(++globalSectionCounter)));
155 >        igpgNode.append_child("Text2").append_child(pugi::xml_node_type::node_pcdata).set_value(QSTR_TO_CSTR("#" + QString::number(++globalSectionCounter)));
156  
157          // IGSA
158  
# Line 165 | Line 164 | void WmFinalPage::startProcessing(){
164          currentIGSTId = globalSectionCounter;
165  
166          for(int i=0; i<mainTextNumberOfRows; i++){
167 <            igsaMainTextStringsNode.append_child("Link").append_child(pugi::xml_node_type::node_pcdata).set_value(Util::qStrToCstr("#" + QString::number(++globalSectionCounter)));
167 >            igsaMainTextStringsNode.append_child("Link").append_child(pugi::xml_node_type::node_pcdata).set_value(QSTR_TO_CSTR("#" + QString::number(++globalSectionCounter)));
168          }
169  
170          ////// Footer
# Line 173 | Line 172 | void WmFinalPage::startProcessing(){
172          igsaFooterTextNode.append_attribute("id").set_value(++currentIGSAId);
173          pugi::xml_node igsaFooterTextStringsNode = igsaFooterTextNode.append_child("Strings");
174          for(int i=0; i<footerTextNumberOfRows; i++){
175 <            igsaFooterTextStringsNode.append_child("Link").append_child(pugi::xml_node_type::node_pcdata).set_value(Util::qStrToCstr("#" + QString::number(++globalSectionCounter)));
175 >            igsaFooterTextStringsNode.append_child("Link").append_child(pugi::xml_node_type::node_pcdata).set_value(QSTR_TO_CSTR("#" + QString::number(++globalSectionCounter)));
176          }
177  
178          // IGSt
# Line 201 | Line 200 | void WmFinalPage::startProcessing(){
200                  igstMainTextNode.append_attribute("id").set_value(++currentIGSTId);
201  
202                  pugi::xml_node igstMainTextFontNode = igstMainTextNode.append_child("Font");
203 <                igstMainTextFontNode.append_child("Family").append_child(pugi::xml_node_type::node_pcdata).set_value(Util::qStrToCstr("TSFF" + format.font().family()));
204 <                igstMainTextFontNode.append_child("Style").append_child(pugi::xml_node_type::node_pcdata).set_value(Util::qStrToCstr(style));
205 <                igstMainTextFontNode.append_child("Color").append_child(pugi::xml_node_type::node_pcdata).set_value(Util::qStrToCstr(colorRGB));
206 <                igstMainTextFontNode.append_child("Size").append_child(pugi::xml_node_type::node_pcdata).set_value(Util::qStrToCstr(QString::number(format.font().pointSize())));
203 >                igstMainTextFontNode.append_child("Family").append_child(pugi::xml_node_type::node_pcdata).set_value(QSTR_TO_CSTR("TSFF" + format.font().family()));
204 >                igstMainTextFontNode.append_child("Style").append_child(pugi::xml_node_type::node_pcdata).set_value(QSTR_TO_CSTR(style));
205 >                igstMainTextFontNode.append_child("Color").append_child(pugi::xml_node_type::node_pcdata).set_value(QSTR_TO_CSTR(colorRGB));
206 >                igstMainTextFontNode.append_child("Size").append_child(pugi::xml_node_type::node_pcdata).set_value(QSTR_TO_CSTR(QString::number(format.font().pointSize())));
207                  igstMainTextFontNode.append_child("Flags").append_child(pugi::xml_node_type::node_pcdata).set_value("Family Style Color Size");
208  
209 <                igstMainTextNode.append_child("Text").append_child(pugi::xml_node_type::node_pcdata).set_value(Util::qStrToCstr(currentCursor.selection().toPlainText()));
209 >                QString currentRowText = currentCursor.selection().toPlainText();
210 >
211 >                pugi::xml_node currentIGStNode = igstMainTextNode.append_child("Text");
212 >
213 >                if(!currentRowText.trimmed().isEmpty()){
214 >                    currentIGStNode.append_child(pugi::xml_node_type::node_pcdata).set_value(QSTR_TO_CSTR(currentRowText));
215 >                }
216 >                else{
217 >                    // Empty paragraph use OniSplit correct representation (<Text xml:space="preserve"> </Text>)
218 >                    currentIGStNode.append_child(pugi::xml_node_type::node_pcdata).set_value(" ");
219 >                    currentIGStNode.append_attribute("xml:space").set_value("preserve");
220 >                }
221              }
222  
223          };
# Line 219 | Line 229 | void WmFinalPage::startProcessing(){
229          setIGStXmlSection(footerText, footerTextNumberOfRows);
230      }
231  
232 <    if(!doc.save_file(Util::qStrToCstr(filePath))){
233 <        UtilVago::showAndLogErrorPopUpLogButton(this->myLogger, "Couldn't create " + filePath + " file!");
232 >    if(!doc.save_file(QSTR_TO_CSTR(filePath))){
233 >        UtilVago::showAndLogErrorPopUpLogButton("Couldn't create " + filePath + " file!");
234          return;
235      }
236  
237      // Convert XML file to Oni
238      this->oniSplitCommands->clear();
239 <    this->oniSplitCommands->append("-create " + Util::insertQuotes(this->wmLocation) + " " +  Util::insertQuotes(filePath));
239 >    this->oniSplitCommands->append("-create " + Util::String::insertQuotes(this->wmLocation) + " " +  Util::String::insertQuotes(filePath));
240  
241      this->myConverter->start(); // finally process the onisplit commands
242      this->myConverter->wait(); // wait for it to complete

Diff Legend

Removed lines
+ Added lines
< Changed lines (old)
> Changed lines (new)