#ifndef VIEW_FILTERS_H
#define VIEW_FILTERS_H
#include "../project_lib.h"
#include "../var.h"

using namespace std;

class View_filters
{
private:
    map<string, bool> map_filters_flag;
private:
    Glib::RefPtr<Gtk::Builder> builder;
    Gtk::Window *wndFilters;
    Gtk::CheckButton *chbFilterName;
    Gtk::CheckButton *chbFilterQuotas;
    Gtk::CheckButton *chbFilterSize;
    Gtk::CheckButton *chbFilterSoftLimitSize;
    Gtk::CheckButton *chbFilterHardLimitSize;
    Gtk::CheckButton *chbFilterHardLimitSizeDelay;
    Gtk::CheckButton *filtersHardSizeActivationFilterCheckbox;
    Gtk::CheckButton *chbFilterFiles;
    Gtk::CheckButton *chbFilterSoftLimitFile;
    Gtk::CheckButton *chbFilterHardLimitFile;
    Gtk::CheckButton *chbFilterHardLimitFileDelay;
    Gtk::Label *lblFiltersHead;
    Gtk::Button *btnFiltersSave;
    Gtk::Button *btnFiltersCancel;
public:
    View_filters(/* args */);
    ~View_filters();
    void lacalization();
    void event();
    void get_builder();
    void settings();
    void show();
private:
    void set_map_flag(Gtk::CheckButton* check_button);
    void btn_save();
    void btn_cancel();
    void set_map_flag_false();
    map<string, bool> get_filters();
};
#endif


