Duckstation/src/duckstation-qt/gamelistsettingswidget.h

45 lines
1.1 KiB
C
Raw Normal View History

// SPDX-FileCopyrightText: 2019-2022 Connor McLaughlin <stenzek@gmail.com>
// SPDX-License-Identifier: (GPL-3.0 OR CC-BY-NC-ND-4.0)
2019-12-31 06:17:17 +00:00
#pragma once
2021-07-02 02:24:37 +00:00
#include <string>
2019-12-31 06:17:17 +00:00
#include <QtWidgets/QWidget>
#include "ui_gamelistsettingswidget.h"
class SettingsWindow;
2019-12-31 06:17:17 +00:00
class GameListSearchDirectoriesModel;
class GameListSettingsWidget : public QWidget
{
Q_OBJECT
public:
GameListSettingsWidget(SettingsWindow* dialog, QWidget* parent);
2019-12-31 06:17:17 +00:00
~GameListSettingsWidget();
2021-07-02 02:24:37 +00:00
bool addExcludedPath(const std::string& path);
void refreshExclusionList();
public Q_SLOTS:
void addSearchDirectory(QWidget* parent_widget);
2019-12-31 06:17:17 +00:00
private Q_SLOTS:
void onDirectoryListItemClicked(const QModelIndex& index);
void onDirectoryListContextMenuRequested(const QPoint& point);
void onAddSearchDirectoryButtonClicked();
void onRemoveSearchDirectoryButtonClicked();
2021-07-02 02:24:37 +00:00
void onAddExcludedPathButtonClicked();
void onRemoveExcludedPathButtonClicked();
void onScanForNewGamesClicked();
void onRescanAllGamesClicked();
2019-12-31 06:17:17 +00:00
protected:
void resizeEvent(QResizeEvent* event);
private:
Ui::GameListSettingsWidget m_ui;
GameListSearchDirectoriesModel* m_search_directories_model = nullptr;
};