/*************************************************************************** libMiniCash Copyright © 2013-2022 christoph holzheuer c.holzheuer@sourceworx.org This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. ***************************************************************************/ #include #include #include #include /** * @brief Dialogfenster das das Laden der Kassendateien anzeigt. * * @param parent Elternfenster * Die Namen der Kassendateien werden aufgelistet und nach erfolgreichem * Ladevorgang abgehakt. */ MCLoadDialog::MCLoadDialog( QWidget* parent ) : QDialog(parent), _ui{new Ui::MCLoadDialog}, _firstTime( true ) { _ui->setupUi( this ); connect( _ui->_OkButton, SIGNAL(clicked()), this, SLOT( accept() ) ); } MCLoadDialog::~MCLoadDialog() { delete _ui; } /** * @brief Einen Dateinamen in die Liste schreiben * @param entry der Dateiname */ void MCLoadDialog::appendEntry( const QString& entry ) { _ui->_listWidget->addItem( entry ); } /** * @brief Statusmeldung an einen Dateinamen der Liste anhängen. * * @param idx der Index des Dateinnamens * @param text der Zusatztext: 'OK' oder 'Fehler'. */ void MCLoadDialog::updateEntry( int idx, const QString& text ) { const QString& txt = _ui->_listWidget->item( idx )->text(); QIcon icon( ":/images/button_ok.png" ); // text ändern QListWidgetItem& itm = *_ui->_listWidget->item( idx ); itm.setIcon( icon ); itm.setText( txt + text ); } /** * @brief Startet das einlesen der Kassendateien. * * Beim ersten Klick auf 'OK' (Anzeige 'Einlesen') werden die Ergebnisse * angezeigt und der Text geändert. Beim zweiten 'OK' (Anzeige: 'Weiter' ) * werden die Texte zurückgesetzt und es geht tatsächlich weiter. */ void MCLoadDialog::accept() { if( _firstTime ) { _firstTime = false; // Murx, FIX! das sollte über den Translator gehen //buttonBox->button( QDialogButtonBox::Ok )->setText( "Weiter" ); _ui->_label1->setText( "verkaufte Artikel:" ); } return QDialog::accept(); }