mirror of
				https://github.com/chibicitiberiu/rainmeter-studio.git
				synced 2024-02-24 04:33:31 +00:00 
			
		
		
		
	Changed MeasureName(N) to work dynamically
This commit is contained in:
		@@ -125,18 +125,7 @@ void CMeasure::ReadOptions(CConfigParser& parser, const WCHAR* section)
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
	m_Invert = 0!=parser.ReadInt(section, L"InvertMeasure", 0);
 | 
						m_Invert = 0!=parser.ReadInt(section, L"InvertMeasure", 0);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if (!m_Initialized)
 | 
						m_Disabled = 0!=parser.ReadInt(section, L"Disabled", 0);
 | 
				
			||||||
	{
 | 
					 | 
				
			||||||
		m_Disabled = 0!=parser.ReadInt(section, L"Disabled", 0);
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	else
 | 
					 | 
				
			||||||
	{
 | 
					 | 
				
			||||||
		const std::wstring& result = parser.ReadString(section, L"Disabled", L"0");
 | 
					 | 
				
			||||||
		if (parser.GetLastReplaced())
 | 
					 | 
				
			||||||
		{
 | 
					 | 
				
			||||||
			m_Disabled = 0!=parser.ParseInt(result.c_str(), 0);
 | 
					 | 
				
			||||||
		}
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
	int updateDivider = parser.ReadInt(section, L"UpdateDivider", 1);
 | 
						int updateDivider = parser.ReadInt(section, L"UpdateDivider", 1);
 | 
				
			||||||
	if (updateDivider != m_UpdateDivider)
 | 
						if (updateDivider != m_UpdateDivider)
 | 
				
			||||||
@@ -183,6 +172,22 @@ void CMeasure::ReadOptions(CConfigParser& parser, const WCHAR* section)
 | 
				
			|||||||
	InitializeGroup(group);
 | 
						InitializeGroup(group);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					void CMeasure::Disable()
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						m_Disabled = true;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						// Change the option as well to avoid reset in ReadOptions().
 | 
				
			||||||
 | 
						m_MeterWindow->GetParser().SetValue(m_Name, L"Disabled", L"1");
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					void CMeasure::Enable()
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						m_Disabled = false;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						// Change the option as well to avoid reset in ReadOptions().
 | 
				
			||||||
 | 
						m_MeterWindow->GetParser().SetValue(m_Name, L"Disabled", L"0");
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
** Substitues text using a straight find and replace method
 | 
					** Substitues text using a straight find and replace method
 | 
				
			||||||
*/
 | 
					*/
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -57,8 +57,8 @@ public:
 | 
				
			|||||||
	const WCHAR* GetName() { return m_Name.c_str(); }
 | 
						const WCHAR* GetName() { return m_Name.c_str(); }
 | 
				
			||||||
	const std::wstring& GetOriginalName() { return m_Name; }
 | 
						const std::wstring& GetOriginalName() { return m_Name; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	void Disable() { m_Disabled = true; }
 | 
						void Disable();
 | 
				
			||||||
	void Enable() { m_Disabled = false; }
 | 
						void Enable();
 | 
				
			||||||
	bool IsDisabled() { return m_Disabled; }
 | 
						bool IsDisabled() { return m_Disabled; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	bool HasDynamicVariables() { return m_DynamicVariables; }
 | 
						bool HasDynamicVariables() { return m_DynamicVariables; }
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -233,10 +233,7 @@ void CMeter::ReadOptions(CConfigParser& parser, const WCHAR* section)
 | 
				
			|||||||
		parser.SetStyleTemplate(style);
 | 
							parser.SetStyleTemplate(style);
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if (!m_Initialized)
 | 
						BindMeasures(parser, section);
 | 
				
			||||||
	{
 | 
					 | 
				
			||||||
		BindMeasures(parser, section);
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
	int oldX = m_X;
 | 
						int oldX = m_X;
 | 
				
			||||||
	std::wstring& x = (std::wstring&)parser.ReadString(section, L"X", L"0");
 | 
						std::wstring& x = (std::wstring&)parser.ReadString(section, L"X", L"0");
 | 
				
			||||||
@@ -437,14 +434,16 @@ bool CMeter::Update()
 | 
				
			|||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
** Reads and binds the primary MeasureName.
 | 
					** Reads and binds the primary MeasureName. This must always be called in overridden
 | 
				
			||||||
 | 
					** BindMeasures() implementations.
 | 
				
			||||||
**
 | 
					**
 | 
				
			||||||
*/
 | 
					*/
 | 
				
			||||||
bool CMeter::BindPrimaryMeasure(CConfigParser& parser, const WCHAR* section, bool optional)
 | 
					bool CMeter::BindPrimaryMeasure(CConfigParser& parser, const WCHAR* section, bool optional)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
 | 
						m_Measures.clear();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	const std::wstring& measureName = parser.ReadString(section, L"MeasureName", L"");
 | 
						const std::wstring& measureName = parser.ReadString(section, L"MeasureName", L"");
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	// The meter is not bound to anything
 | 
					 | 
				
			||||||
	CMeasure* measure = parser.GetMeasure(measureName);
 | 
						CMeasure* measure = parser.GetMeasure(measureName);
 | 
				
			||||||
	if (measure)
 | 
						if (measure)
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user