looper/backends/ui/haiku/prefs.h

46 lines
1.2 KiB
C
Raw Normal View History

2024-11-12 14:53:44 -08:00
#pragma once
#include <Window.h>
#include <StringView.h>
#include <GroupLayout.h>
#include <Message.h>
#include <Control.h>
#include <SupportDefs.h>
#include <StringView.h>
#include <RadioButton.h>
#include <Button.h>
#include <OptionPopUp.h>
#include <CheckBox.h>
#include <vector>
#include <string>
#include <map>
2024-12-21 14:23:00 -08:00
#define CMD_SET_CAT 0x1010
2024-11-21 10:22:34 -08:00
class HaikuPrefsWindow : public BWindow {
2024-11-12 14:53:44 -08:00
std::vector<std::string> backend_ids;
2024-12-21 14:23:00 -08:00
std::string cat_id;
bool enable_cat;
std::map<std::string, BBitmap*> cats;
std::map<std::string, BRadioButton*> cat_btns;
BCheckBox *cat_enable;
void AddCat(std:string name, BBitmap* img);
BBitmap *LoadCat(const char *path);
BBitmap *LoadCat(const void *ptr, size_t len, const char *name);
2024-11-12 14:53:44 -08:00
int32 cur_option = 0;
BLooper *next_handler;
BStringView *restart_warning;
std::string new_label_setting;
std::string new_frontend;
BOptionPopUp *frontend_popup;
BCheckBox *menu_icons;
BRadioButton *labels_only;
BRadioButton *icons_only;
BRadioButton *both_labels_icons;
BButton *revert_btn;
BButton *apply_btn;
void update_label_setting();
void set_options_changed(bool changed);
public:
bool QuitRequested() override;
void MessageReceived(BMessage *msg) override;
2024-11-21 10:22:34 -08:00
HaikuPrefsWindow(BLooper *next_handler);
2024-11-12 14:53:44 -08:00
};