duckstation

duckstation, but archived from the revision just before upstream changed it to a proprietary software project, this version is the libre one
git clone https://git.neptards.moe/u3shit/duckstation.git
Log | Files | Refs | README | LICENSE

memorycardsettingswidget.h (1150B)


      1 // SPDX-FileCopyrightText: 2019-2022 Connor McLaughlin <stenzek@gmail.com>
      2 // SPDX-License-Identifier: (GPL-3.0 OR CC-BY-NC-ND-4.0)
      3 
      4 #pragma once
      5 #include "core/types.h"
      6 
      7 #include <QtWidgets/QComboBox>
      8 #include <QtWidgets/QGroupBox>
      9 #include <QtWidgets/QLineEdit>
     10 #include <QtWidgets/QVBoxLayout>
     11 #include <QtWidgets/QWidget>
     12 #include <array>
     13 #include <vector>
     14 
     15 class SettingsWindow;
     16 
     17 class MemoryCardSettingsWidget : public QWidget
     18 {
     19   Q_OBJECT
     20 
     21 public:
     22   MemoryCardSettingsWidget(SettingsWindow* dialog, QWidget* parent);
     23   ~MemoryCardSettingsWidget();
     24 
     25 private:
     26   SettingsWindow* m_dialog;
     27 
     28   struct PortSettingsUI
     29   {
     30     QGroupBox* container;
     31     QVBoxLayout* layout;
     32     QComboBox* memory_card_type;
     33     QLineEdit* memory_card_path;
     34   };
     35 
     36   void createUi(SettingsWindow* dialog);
     37   void createPortSettingsUi(SettingsWindow* dialog, int index, PortSettingsUI* ui);
     38   void onBrowseMemoryCardPathClicked(int index);
     39   void onResetMemoryCardPathClicked(int index);
     40   void onMemoryCardPathChanged(int index);
     41   void updateMemoryCardPath(int index);
     42 
     43   std::array<PortSettingsUI, 2> m_port_ui = {};
     44   QLineEdit* m_memory_card_directory = nullptr;
     45 };