mirror of
https://github.com/Cockatrice/Cockatrice.git
synced 2026-09-23 10:05:10 -07:00
* [Settings] Split cache_settings into multiple files Took 9 minutes Took 4 minutes * [Settings] Fwd declare settings classes in cache_settings Took 15 minutes * Fix oracle includes. Took 8 minutes * Address comments, fix windows CI Took 8 minutes * fix copy constructor visibility Took 3 minutes * lint Took 2 minutes * Fix native format tests. Took 5 minutes * Remove test header guard Took 4 seconds * Remove tests invalid in CI environ Took 24 seconds * Adjust to rebase. Took 11 minutes * Change settings file name. Took 8 minutes --------- Co-authored-by: Lukas Brübach <lukas.bruebach@bdosecurity.de> Co-authored-by: Lukas Brübach <Bruebach.Lukas@bdosecurity.de>
37 lines
1.1 KiB
C++
37 lines
1.1 KiB
C++
/**
|
|
* @file tearoff_menu.h
|
|
* @ingroup GameMenus
|
|
*/
|
|
//! \todo Document this file.
|
|
|
|
#pragma once
|
|
|
|
#include "../../../client/settings/cache_settings.h"
|
|
|
|
#include <QMenu>
|
|
#include <libcockatrice/settings/interface_settings.h>
|
|
|
|
class TearOffMenu : public QMenu
|
|
{
|
|
public:
|
|
explicit TearOffMenu(const QString &title, QWidget *parent = nullptr) : QMenu(title, parent)
|
|
{
|
|
connect(&SettingsCache::instance().interface(), &InterfaceSettings::useTearOffMenusChanged, this,
|
|
[this](const bool state) { setTearOffEnabled(state); });
|
|
setTearOffEnabled(SettingsCache::instance().interface().getUseTearOffMenus());
|
|
}
|
|
|
|
explicit TearOffMenu(QWidget *parent = nullptr) : QMenu(parent)
|
|
{
|
|
connect(&SettingsCache::instance().interface(), &InterfaceSettings::useTearOffMenusChanged, this,
|
|
[this](const bool state) { setTearOffEnabled(state); });
|
|
setTearOffEnabled(SettingsCache::instance().interface().getUseTearOffMenus());
|
|
}
|
|
|
|
TearOffMenu *addTearOffMenu(const QString &title)
|
|
{
|
|
auto *menu = new TearOffMenu(title, this);
|
|
addMenu(menu);
|
|
return menu;
|
|
}
|
|
};
|