- Preferences completed.
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@1032 3ecf2c5c-341e-0410-92b4-d18e462d057c
This commit is contained in:
parent
3dbb0dbd80
commit
6458511399
|
@ -230,7 +230,6 @@
|
||||||
<child>
|
<child>
|
||||||
<widget class="GtkButton" id="Plugins.Remove">
|
<widget class="GtkButton" id="Plugins.Remove">
|
||||||
<property name="visible">True</property>
|
<property name="visible">True</property>
|
||||||
<property name="sensitive">False</property>
|
|
||||||
<property name="can_default">True</property>
|
<property name="can_default">True</property>
|
||||||
<property name="can_focus">True</property>
|
<property name="can_focus">True</property>
|
||||||
<property name="label">gtk-remove</property>
|
<property name="label">gtk-remove</property>
|
||||||
|
@ -475,7 +474,6 @@
|
||||||
<child>
|
<child>
|
||||||
<widget class="GtkButton" id="Policies.Remove">
|
<widget class="GtkButton" id="Policies.Remove">
|
||||||
<property name="visible">True</property>
|
<property name="visible">True</property>
|
||||||
<property name="sensitive">False</property>
|
|
||||||
<property name="can_default">True</property>
|
<property name="can_default">True</property>
|
||||||
<property name="can_focus">True</property>
|
<property name="can_focus">True</property>
|
||||||
<property name="label">gtk-remove</property>
|
<property name="label">gtk-remove</property>
|
||||||
|
|
|
@ -194,6 +194,12 @@ GlobalPreferences::key_file_read(KeyFile& kf)
|
||||||
|
|
||||||
_mod_dirs.clear();
|
_mod_dirs.clear();
|
||||||
_pol_dirs.clear();
|
_pol_dirs.clear();
|
||||||
|
std::vector<Glib::ustring> old_mod_dirs(1, PLUGDIR);
|
||||||
|
std::vector<Glib::ustring> old_pol_dirs(1, POLDIR);
|
||||||
|
_mod_dirs = old_mod_dirs;
|
||||||
|
_pol_dirs = old_pol_dirs;
|
||||||
|
|
||||||
|
|
||||||
// read speed
|
// read speed
|
||||||
{
|
{
|
||||||
int new_speed = 1000; // use a default value
|
int new_speed = 1000; // use a default value
|
||||||
|
@ -218,14 +224,14 @@ GlobalPreferences::key_file_read(KeyFile& kf)
|
||||||
ostr << "modules-dir-" << i;
|
ostr << "modules-dir-" << i;
|
||||||
Glib::ustring key(ostr.str());
|
Glib::ustring key(ostr.str());
|
||||||
val = kf.search_value(key);
|
val = kf.search_value(key);
|
||||||
if (val)
|
if (val && *val != _mod_dirs[0])
|
||||||
{
|
{
|
||||||
// add_modules_dir(*val);
|
// add_modules_dir(*val);
|
||||||
_mod_dirs.push_back(*val);
|
_mod_dirs.push_back(*val);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// read policies directories
|
// read policies directories
|
||||||
{
|
{
|
||||||
|
@ -241,7 +247,7 @@ GlobalPreferences::key_file_read(KeyFile& kf)
|
||||||
ostr << "policies-dir-" << i;
|
ostr << "policies-dir-" << i;
|
||||||
Glib::ustring key(ostr.str().c_str());
|
Glib::ustring key(ostr.str().c_str());
|
||||||
val = kf.search_value(key);
|
val = kf.search_value(key);
|
||||||
if (val)
|
if (val && *val != _pol_dirs[0])
|
||||||
{
|
{
|
||||||
// add_policies_dir(*val);
|
// add_policies_dir(*val);
|
||||||
_pol_dirs.push_back(*val);
|
_pol_dirs.push_back(*val);
|
||||||
|
|
|
@ -82,7 +82,7 @@ PreferencesEditor::PreferencesEditor(const std::string& gladefile)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// List of the policies search paths
|
// List of the plugins search paths
|
||||||
|
|
||||||
// set up the model
|
// set up the model
|
||||||
Gtk::TreeModelColumnRecord column_record_plugins_dirs;
|
Gtk::TreeModelColumnRecord column_record_plugins_dirs;
|
||||||
|
@ -95,6 +95,7 @@ PreferencesEditor::PreferencesEditor(const std::string& gladefile)
|
||||||
_refXml->get_widget("Plugins.Additional.TreeView", plugins_dirs_treeview);
|
_refXml->get_widget("Plugins.Additional.TreeView", plugins_dirs_treeview);
|
||||||
plugins_dirs_treeview->set_model(plugins_dirs_model);
|
plugins_dirs_treeview->set_model(plugins_dirs_model);
|
||||||
plugins_dirs_treeview->append_column("path", single_column);
|
plugins_dirs_treeview->append_column("path", single_column);
|
||||||
|
plugins_dirs_treeview->get_selection()->set_mode(Gtk::SELECTION_MULTIPLE);
|
||||||
|
|
||||||
// update the model with the backend information
|
// update the model with the backend information
|
||||||
typedef std::vector<Glib::ustring> Strings;
|
typedef std::vector<Glib::ustring> Strings;
|
||||||
|
@ -108,7 +109,7 @@ PreferencesEditor::PreferencesEditor(const std::string& gladefile)
|
||||||
{
|
{
|
||||||
// append one record to the model, describing the path
|
// append one record to the model, describing the path
|
||||||
// note that plugin dirs are returned in reverse order
|
// note that plugin dirs are returned in reverse order
|
||||||
Gtk::TreeModel::iterator new_row = plugins_dirs_model->prepend();
|
Gtk::TreeModel::iterator new_row = plugins_dirs_model->append();
|
||||||
new_row->set_value(0, *i_pd);
|
new_row->set_value(0, *i_pd);
|
||||||
}
|
}
|
||||||
// when the model gets updated, the associated TreeView
|
// when the model gets updated, the associated TreeView
|
||||||
|
@ -169,6 +170,7 @@ PreferencesEditor::PreferencesEditor(const std::string& gladefile)
|
||||||
_refXml->get_widget("Policies.Additional.TreeView", policies_dirs_treeview);
|
_refXml->get_widget("Policies.Additional.TreeView", policies_dirs_treeview);
|
||||||
policies_dirs_treeview->set_model(policies_dirs_model);
|
policies_dirs_treeview->set_model(policies_dirs_model);
|
||||||
policies_dirs_treeview->append_column("path", column_path_policies_dirs);
|
policies_dirs_treeview->append_column("path", column_path_policies_dirs);
|
||||||
|
policies_dirs_treeview->get_selection()->set_mode(Gtk::SELECTION_MULTIPLE);
|
||||||
|
|
||||||
// update the model with the backend information
|
// update the model with the backend information
|
||||||
typedef std::vector<Glib::ustring> Strings;
|
typedef std::vector<Glib::ustring> Strings;
|
||||||
|
@ -182,7 +184,7 @@ PreferencesEditor::PreferencesEditor(const std::string& gladefile)
|
||||||
{
|
{
|
||||||
// append one record to the model, describing the path
|
// append one record to the model, describing the path
|
||||||
// note that policies dirs are returned in reverse order
|
// note that policies dirs are returned in reverse order
|
||||||
Gtk::TreeModel::iterator new_row = policies_dirs_model->prepend();
|
Gtk::TreeModel::iterator new_row = policies_dirs_model->append();
|
||||||
new_row->set_value(0, *i_pd);
|
new_row->set_value(0, *i_pd);
|
||||||
}
|
}
|
||||||
// when the model gets updated, the associated TreeView
|
// when the model gets updated, the associated TreeView
|
||||||
|
@ -319,7 +321,8 @@ PreferencesEditor::on_add_plugins_dir()
|
||||||
if (response == Gtk::RESPONSE_OK)
|
if (response == Gtk::RESPONSE_OK)
|
||||||
{
|
{
|
||||||
path = ask_path->get_filename();
|
path = ask_path->get_filename();
|
||||||
GlobalPreferences::get_instance().add_modules_dir(path);
|
std::vector<Glib::ustring>& modules = GlobalPreferences::get_instance().get_plugin_dirs();
|
||||||
|
modules.push_back(path);
|
||||||
|
|
||||||
Gtk::TreeModel::iterator new_row = plugins_dirs_model->append();
|
Gtk::TreeModel::iterator new_row = plugins_dirs_model->append();
|
||||||
new_row->set_value(0, path);
|
new_row->set_value(0, path);
|
||||||
|
@ -331,7 +334,23 @@ PreferencesEditor::on_add_plugins_dir()
|
||||||
void
|
void
|
||||||
PreferencesEditor::on_remove_plugins_dir()
|
PreferencesEditor::on_remove_plugins_dir()
|
||||||
{
|
{
|
||||||
// Feature not supported by backend
|
std::vector<Glib::ustring>& modules = GlobalPreferences::get_instance().get_plugin_dirs();
|
||||||
|
std::vector<Glib::ustring>::iterator mit = modules.begin();
|
||||||
|
Glib::RefPtr<const Gtk::TreeSelection> selection = plugins_dirs_treeview->get_selection();
|
||||||
|
Gtk::TreeModel::iterator pit = plugins_dirs_model->children().begin();
|
||||||
|
while(pit && mit != modules.end())
|
||||||
|
{
|
||||||
|
if(selection->is_selected(pit))
|
||||||
|
{
|
||||||
|
modules.erase(mit);
|
||||||
|
pit = plugins_dirs_model->erase(pit);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
mit++;
|
||||||
|
pit++;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -352,7 +371,8 @@ PreferencesEditor::on_add_policies_dir()
|
||||||
if (response == Gtk::RESPONSE_OK)
|
if (response == Gtk::RESPONSE_OK)
|
||||||
{
|
{
|
||||||
path = ask_path->get_filename();
|
path = ask_path->get_filename();
|
||||||
GlobalPreferences::get_instance().add_policies_dir(path);
|
std::vector<Glib::ustring>& policies = GlobalPreferences::get_instance().get_policy_dirs();
|
||||||
|
policies.push_back(path);
|
||||||
|
|
||||||
Gtk::TreeModel::iterator new_row = policies_dirs_model->append();
|
Gtk::TreeModel::iterator new_row = policies_dirs_model->append();
|
||||||
new_row->set_value(0, path);
|
new_row->set_value(0, path);
|
||||||
|
@ -364,7 +384,24 @@ PreferencesEditor::on_add_policies_dir()
|
||||||
void
|
void
|
||||||
PreferencesEditor::on_remove_policies_dir()
|
PreferencesEditor::on_remove_policies_dir()
|
||||||
{
|
{
|
||||||
// Feature not supported by backend
|
std::vector<Glib::ustring>& policies = GlobalPreferences::get_instance().get_policy_dirs();
|
||||||
|
std::vector<Glib::ustring>::iterator mit = policies.begin();
|
||||||
|
Glib::RefPtr<const Gtk::TreeSelection> selection = policies_dirs_treeview->get_selection();
|
||||||
|
Gtk::TreeModel::iterator pit = policies_dirs_model->children().begin();
|
||||||
|
while(pit && mit != policies.end())
|
||||||
|
{
|
||||||
|
if(selection->is_selected(pit))
|
||||||
|
{
|
||||||
|
policies.erase(mit);
|
||||||
|
pit = policies_dirs_model->erase(pit);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
mit++;
|
||||||
|
pit++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -103,7 +103,7 @@ parse_options(int argc, char** argv)
|
||||||
GlobalPreferences& prefs = GlobalPreferences::get_instance();
|
GlobalPreferences& prefs = GlobalPreferences::get_instance();
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
//prefs.load_configrc();
|
prefs.load_configrc();
|
||||||
|
|
||||||
}
|
}
|
||||||
catch (std::exception e)
|
catch (std::exception e)
|
||||||
|
|
Loading…
Reference in New Issue