diff --git a/src/admc/tabs/attributes_tab.cpp b/src/admc/tabs/attributes_tab.cpp index 4748d802..fbd59210 100644 --- a/src/admc/tabs/attributes_tab.cpp +++ b/src/admc/tabs/attributes_tab.cpp @@ -90,8 +90,8 @@ AttributesTabEdit::AttributesTabEdit(QTreeView *view_arg, QPushButton *filter_bu QItemSelectionModel *selection_model = view->selectionModel(); - bool load_optional_is_set = settings_get_variant(SETTING_load_optional_attribute_values).toBool(); - load_optional_attrs_button->setVisible(!load_optional_is_set); + optional_attrs_values_is_loaded = settings_get_variant(SETTING_load_optional_attribute_values).toBool(); + load_optional_attrs_button->setVisible(!optional_attrs_values_is_loaded); connect( selection_model, &QItemSelectionModel::selectionChanged, @@ -235,7 +235,7 @@ void AttributesTabEdit::load_optional_attribute_values(AdInterface &ad) { } } } - + optional_attrs_values_is_loaded = true; proxy->update_set_attributes(optional_set_attrs); } @@ -290,8 +290,7 @@ void AttributesTabEdit::load(AdInterface &ad, const AdObject &object) { proxy->load(object); - bool load_optional = settings_get_variant(SETTING_load_optional_attribute_values).toBool(); - if (load_optional) { + if (optional_attrs_values_is_loaded) { load_optional_attribute_values(ad); } else { diff --git a/src/admc/tabs/attributes_tab.h b/src/admc/tabs/attributes_tab.h index 74882bc5..2306a7d5 100644 --- a/src/admc/tabs/attributes_tab.h +++ b/src/admc/tabs/attributes_tab.h @@ -83,6 +83,7 @@ private: QHash> current; QList not_specified_optional_attributes; QString object_dn; + bool optional_attrs_values_is_loaded; void update_edit_and_view_buttons(); void on_double_click();