Ejemplo n.º 1
0
UserActions::ActionType UserActions::GetGroupActions(const wxString& group) const
{
	wxString key = _T( "/Groups/" ) + group + _T( "/Opts/Actions" );
	if (cfg().HasEntry(key)) // Backward compatibility.
	{
		wxLogMessage(_T( "loading deprecated group actions and updating config" ));
		UserActions::ActionType action = (UserActions::ActionType)cfg().Read(key, (long)UserActions::ActNone);
		cfg().DeleteEntry(key);

		SetGroupActions(group, action);

		return action;
	}
	key = _T( "/Groups/" ) + group + _T( "/Opts/ActionsList" );
	if (!cfg().Exists(key))
		return UserActions::ActNone;
	key += _T( "/" );
	int mask = 1;
	int result = 0;
	for (auto config : m_configActionNames) {
		if (cfg().Read(key + config, 0l)) {
			result |= mask;
		}
		mask <<= 1;
	}
	if (result == 0)
		return UserActions::ActNone;
	return (UserActions::ActionType)result;
}
Ejemplo n.º 2
0
void UserActions::ChangeAction(const wxString& group, const ActionType action, bool add)
{
	ActionType old = m_groupActions[group];
	old = (ActionType)(add ? (old | action) : (old & ~action));
	SetGroupActions(group, old);
	Init();
	UpdateUI();
}
Ejemplo n.º 3
0
void UserActions::AddGroup(const wxString& group)
{
	if (!cfg().Exists(_T( "/Groups/" ) + group)) {
		//set defaults
		SetGroupActions(group, UserActions::ActNone);
		SetGroupHLColor(defaultHLcolor, group);
	}
	Init();
	UpdateUI();
}