File indexing completed on 2024-05-19 04:42:22

0001 /* AtCore KDE Libary for 3D Printers
0002     SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
0003     SPDX-FileCopyrightText: 2018, 2020 Chris Rizzitello <rizzitello@kde.org>
0004 */
0005 
0006 #pragma once
0007 
0008 #include <QWidget>
0009 
0010 #include "atcorewidgets_export.h"
0011 
0012 class QListWidget;
0013 /**
0014  * @brief The SdWidget class
0015  * Provide basic Sd card actions. Requires Fw Support.
0016  */
0017 class ATCOREWIDGETS_EXPORT SdWidget : public QWidget
0018 {
0019     Q_OBJECT
0020 public:
0021     /**
0022      * @brief SdWidget
0023      * @param parent
0024      */
0025     explicit SdWidget(QWidget *parent = nullptr);
0026     ~SdWidget() = default;
0027 
0028     /**
0029      * @brief update the list of files on the card.
0030      * @param fileList
0031      */
0032     void updateFilelist(const QStringList &fileList);
0033 signals:
0034     /**
0035      * @brief request a list of files on the card.
0036      */
0037     void requestSdList();
0038 
0039     /**
0040      * @brief User has selected to print a file for the sd card.
0041      * @param fileName: file to print.
0042      */
0043     void printSdFile(const QString &fileName);
0044 
0045     /**
0046      * @brief User has selected to delete a file for the sd card.
0047      * @param fileName: file to delete
0048      */
0049     void deleteSdFile(const QString &fileName);
0050 
0051 private:
0052     QListWidget *listSdFiles = nullptr;
0053 };