mirror of
https://github.com/Sani7/remote-ui.git
synced 2026-10-27 06:01:14 +01:00
This fixes the error: clang:optin.cplusplus.VirtualCall When virtual methods are called during construction and destruction the polymorphism is restricted to the class that’s being constructed or destructed because the more derived contexts are either not yet initialized or already destructed.
28 lines
722 B
C++
28 lines
722 B
C++
#pragma once
|
|
#include "ui_item.hpp"
|
|
|
|
#define UI_COMBOBOX_TYPE std::string("ui_combobox")
|
|
|
|
class UI_combobox : public UI_item
|
|
{
|
|
Q_OBJECT
|
|
public:
|
|
UI_combobox(QObject *parent = nullptr);
|
|
UI_combobox(Color fg_color, Color bg_color, std::vector<std::string> options, size_t selected = 0,
|
|
QObject *parent = nullptr);
|
|
|
|
void set_selected(size_t selected) override;
|
|
void set_selected(std::string selected);
|
|
size_t selected() const;
|
|
std::string selected_text() const;
|
|
|
|
void from_json(const json &j) override;
|
|
json to_json(size_t id) const override;
|
|
signals:
|
|
void changed(std::string selected);
|
|
|
|
private:
|
|
std::vector<std::string> m_options;
|
|
size_t m_selected;
|
|
};
|