mirror of
				https://github.com/chibicitiberiu/rainmeter-studio.git
				synced 2024-02-24 04:33:31 +00:00 
			
		
		
		
	Positioning from right/bottom, as a percentage of screen, and multi-monitor selection implemented. Updated context menu Position sub-menu and help files. Dragging should work for all options.
Removed dependencies from Library on plug-in .DLL's.
This commit is contained in:
		| @@ -107,6 +107,16 @@ enum PATH_FOLDER | ||||
| 	PATH_FOLDER_PLUGIN | ||||
| }; | ||||
|  | ||||
| typedef struct  | ||||
| { | ||||
| 	int count;						//Number of monitors | ||||
| 	HMONITOR m_Monitors[32];		//Monitor info | ||||
| 	RECT m_MonitorRect[32];		//Monitor rect on virtual screen | ||||
| 	MONITORINFO m_MonitorInfo[32];	//Monitor information | ||||
| 	//int index;					//Utility for enumeration | ||||
| 	int vsT, vsL, vsH, vsW; | ||||
| } MULTIMONITOR_INFO; | ||||
|  | ||||
| class CRainmeter; | ||||
| class CMeasure; | ||||
| class CMeter; | ||||
| @@ -147,6 +157,11 @@ public: | ||||
| 	std::list<CMeter*>& GetMeters() { return m_Meters; }; | ||||
|  | ||||
| 	ZPOSITION GetWindowZPosition() { return m_WindowZPosition; } | ||||
| 	bool GetXPercentage() { return m_WindowXPercentage; } | ||||
| 	bool GetYPercentage() { return m_WindowYPercentage; } | ||||
| 	bool GetXFromRight() { return m_WindowXFromRight; } | ||||
| 	bool GetYFromBottom() { return m_WindowYFromBottom; } | ||||
|  | ||||
| 	bool GetNativeTransparency() { return m_NativeTransparency; } | ||||
| 	bool GetClickThrough() { return m_ClickThrough; } | ||||
| 	bool GetKeepOnScreen() { return m_KeepOnScreen; } | ||||
| @@ -187,7 +202,8 @@ private: | ||||
| 	Gdiplus::Bitmap* GrabDesktop(int x, int y, int w, int h); | ||||
| 	void SnapToWindow(CMeterWindow* window, LPWINDOWPOS wp); | ||||
| 	void MapCoordsToScreen(int& x, int& y, int w, int h); | ||||
|  | ||||
| 	void WindowToScreen(); | ||||
| 	void ScreenToWindow(); | ||||
| 	void Update(bool nodraw); | ||||
| 	void UpdateTransparency(int alpha, bool reset); | ||||
| 	void ReadConfig(); | ||||
| @@ -209,7 +225,7 @@ private: | ||||
| 	HINSTANCE m_User32Library; | ||||
| 	BOOL m_ChildWindow; | ||||
|  | ||||
| 	std::wstring m_RightMouseDownAction;			// Action to run when right mouse is pressed | ||||
| 	std::wstring m_RightMouseDownAction;		// Action to run when right mouse is pressed | ||||
| 	std::wstring m_LeftMouseDownAction;			// Action to run when left mouse is pressed | ||||
| 	std::wstring m_RightMouseUpAction;			// Action to run when right mouse is released | ||||
| 	std::wstring m_LeftMouseUpAction;			// Action to run when left mouse is released | ||||
| @@ -223,13 +239,24 @@ private: | ||||
| 	std::wstring m_BackgroundName;				// Name of the background image | ||||
| 	Gdiplus::Rect m_BackgroundMargins; | ||||
| 	Gdiplus::Rect m_DragMargins; | ||||
| 	int m_WindowX;								// Window's X-position | ||||
| 	int m_WindowY;								// Window's Y-position | ||||
| 	int m_WindowW;								// Window's width | ||||
| 	std::wstring m_WindowX;						// Window's X-position in config file | ||||
| 	std::wstring m_WindowY;						// Window's Y-position in config file | ||||
| 	int m_WindowXScreen; | ||||
| 	int m_WindowYScreen; | ||||
| 	bool m_WindowXFromRight; | ||||
| 	bool m_WindowYFromBottom; | ||||
| 	bool m_WindowXPercentage; | ||||
| 	bool m_WindowYPercentage; | ||||
| 	float m_WindowXNumber;						// Store the number portion from the config | ||||
| 	float m_WindowYNumber;						// Store the number portion from the config | ||||
| 	int m_WindowW;								// Window's Width | ||||
| 	int m_WindowH;								// Window's Height | ||||
| 	int m_ScreenX;								// Window's X-postion on the virtual screen  | ||||
| 	int m_ScreenY;								// Window's Y-postion on the virtual screen | ||||
| 	static MULTIMONITOR_INFO m_Monitors;		// Multi-Monitor info | ||||
| 	bool m_WindowDraggable;						// True, if window can be moved | ||||
| 	int m_WindowUpdate;							// Measure update frequency | ||||
| 	HIDEMODE m_WindowHide;							// If true, the window is hidden when mouse is over it | ||||
| 	HIDEMODE m_WindowHide;						// If true, the window is hidden when mouse is over it | ||||
| 	bool m_WindowStartHidden;					// If true, the window is hidden at startup | ||||
| 	bool m_SavePosition;						// If true, the window's position is saved | ||||
| 	bool m_SnapEdges;							// If true, the window snaps to the edges of the screen when moved | ||||
| @@ -242,7 +269,7 @@ private: | ||||
| 	bool m_DynamicWindowSize;					//  | ||||
| 	bool m_ClickThrough;						//  | ||||
| 	bool m_KeepOnScreen;						//  | ||||
|  | ||||
| 	bool m_Dragging;							// | ||||
| 	BGMODE m_BackgroundMode;					// The background mode | ||||
| 	Gdiplus::Color m_SolidColor;				// Color of the solid background | ||||
| 	Gdiplus::Color m_SolidColor2;				// Color of the solid background | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Brian Todoroff
					Brian Todoroff