diff --git a/src/ba/ba8300.cpp b/src/ba/ba8300.cpp index 2e768d466..af5bab76a 100755 --- a/src/ba/ba8300.cpp +++ b/src/ba/ba8300.cpp @@ -154,7 +154,7 @@ void TSection_properties_mask::vedo_non_vedo() if (level > 1) { if (level > 10) - can_delete = _report.find_section('B', level+1) == NULL; + can_delete = _report.find_section('B', level+1) == nullptr; else can_delete = true; } @@ -373,7 +373,7 @@ bool TReport_query_mask::select_query() item.Load(path); const TXmlItem* sql = item.FindFirst("sql"); - ok = sql != NULL; + ok = sql != nullptr; if (ok) { TString str; sql->GetEnclosedText(str); @@ -407,7 +407,8 @@ bool TReport_query_mask::on_field_event(TOperable_field& o, TField_event e, long { const TString& sql = get(F_SQL); TRecordset* rex = create_recordset(sql); - if (rex != NULL) + + if (rex != nullptr) { if (rex->items() > 0) { @@ -501,6 +502,7 @@ bool TReport_mask::get_rep_path(TFilename& path) const { const TString& name = get(DLG_REPORT); const bool ok = name.full(); + if (ok) { if (path.blank()) @@ -557,6 +559,7 @@ bool TReport_mask::save_report() if (is_power_station()) { FILE_SPEC fsp; + xvt_fsys_convert_str_to_fspec(_curr_report, &fsp); ok = xvt_dm_post_file_save(&fsp, TR("Nome report")) == FL_OK; if (ok) @@ -568,13 +571,6 @@ bool TReport_mask::save_report() if (ok) _is_dirty = false; } - if (is_power_station()) - { - DIRECTORY dir; - - xvt_fsys_get_default_dir(&dir); - xvt_fsys_set_dir(&dir); - } return ok; } @@ -784,6 +780,13 @@ void TReport_mask::add_field() void TReport_mask::edit_field(TReport_field& rf) { + DIRECTORY dir; + DIRECTORY def; + + xvt_fsys_get_curr_dir(&dir); + xvt_fsys_get_default_dir(&def); + + xvt_fsys_set_dir(&def); TReport_section& rs = rf.section(); TReport_field_mask m(rf); const KEY key = m.run(); @@ -868,7 +871,8 @@ void TReport_mask::fields_properties() bool TReport_mask::enumerate_bodies(int level, TToken_string& code, TToken_string& desc) const { TReport_section* rs = _report.find_section('B', level); - if (rs != NULL) + + if (rs != nullptr) { TString str; str.format("B%d", level); code.add(str); @@ -878,7 +882,7 @@ bool TReport_mask::enumerate_bodies(int level, TToken_string& code, TToken_strin enumerate_bodies(level*10+1, code, desc); // Figlio enumerate_bodies(level+1, code, desc); // Fratello } - return rs != NULL; + return rs != nullptr; } bool TReport_mask::add_section() @@ -898,14 +902,14 @@ bool TReport_mask::add_section() if (type == 'S') { type = 'B'; - const int father = atoi(m.get(102).mid(1)); + const int father = atoi(m.get(102).smid(1)); if (father < 100000L) { int i; for (i = 1; i <= 9; i++) // Cerca l'ultimo figlio del nodo padre { level = father*10+i; - if (_report.find_section(type, level) == NULL) + if (_report.find_section(type, level) == nullptr) break; } if (i > 9) @@ -984,13 +988,13 @@ void TReport_mask::report_properties() void TReport_mask::report_query() { TReport_query_mask qm; - if (_report.recordset() != NULL) + if (_report.recordset() != nullptr) qm.set(F_SQL, _report.recordset()->query_text()); if (qm.run() == K_ENTER) { _report.set_recordset(qm.get(F_SQL)); _is_dirty = true; - const bool ok = _report.recordset() != NULL; + const bool ok = _report.recordset() != nullptr; enable(DLG_PRINT, ok); enable(DLG_PREVIEW, ok); enable(DLG_PDF, ok); @@ -1012,7 +1016,9 @@ void TReport_mask::update_toolbar() const bool full = !efield(DLG_REPORT).empty(); enable(DLG_SAVEREC, full); enable(DLG_DELREC, full); - const bool printok = full && _report.recordset() != NULL; + + const bool printok = full && _report.recordset() != nullptr; + enable(DLG_PRINT, printok); enable(DLG_PREVIEW, printok); enable(DLG_PDF, printok); @@ -1024,26 +1030,26 @@ bool TReport_mask::on_field_event(TOperable_field& o, TField_event e, long jolly { case DLG_REPORT: { - const TString & s = o.get(); - - if (e == fe_init || e == fe_modify) - { - if (e == fe_init) + if (e == fe_init || e == fe_modify) { - if (main_app().argc() >= 3) + const TString & s = o.get(); + + if (e == fe_init) { - set(DLG_REPORT, main_app().argv(2)); - load_report(); + if (main_app().argc() >= 3) + { + set(DLG_REPORT, main_app().argv(2)); + load_report(); + } } + else + if (e == fe_modify) + { + save_if_needed(); + load_report(); + } + update_toolbar(); } - else - if (e == fe_modify) - { - save_if_needed(); - load_report(); - } - update_toolbar(); - } } break; case F_SECTIONS: @@ -1059,7 +1065,8 @@ bool TReport_mask::on_field_event(TOperable_field& o, TField_event e, long jolly if (e == fe_modify) { const TReport_section& rs = _tree.curr_section(); - const bool on = strchr("HBF", rs.type()) != NULL; + const bool on = strchr("HBF", rs.type()) != nullptr; + switch (atoi(o.get())) { case 0: if (on) add_field(); break; @@ -1229,18 +1236,18 @@ protected: virtual void print(); virtual void preview(); public: - TReporter_app() : _msk(NULL) { } + TReporter_app() : _msk(nullptr) { } }; void TReporter_app::print() { - if (_msk != NULL) + if (_msk != nullptr) _msk->on_print(false); } void TReporter_app::preview() { - if (_msk != NULL) + if (_msk != nullptr) _msk->on_print(true); } @@ -1256,11 +1263,7 @@ bool TReporter_app::create() bool TReporter_app::destroy() { - if (_msk != NULL) - { - delete _msk; - _msk = NULL; - } + safe_delete(_msk); return true; }