Просмотр исходного кода

Added command line options to open/close ditto's window

git-svn-id: svn://svn.code.sf.net/p/ditto-cp/code/trunk@711 595ec19a-5cb4-439b-94a8-42fb3063c22c
sabrogden 11 лет назад
Родитель
Сommit
589033f0dc
5 измененных файлов с 57 добавлено и 5 удалено
  1. 28 0
      CP_Main.cpp
  2. 12 5
      DittoSetup/BuildDitto.bld
  3. 15 0
      MainFrm.cpp
  4. 1 0
      MainFrm.h
  5. 1 0
      Misc.h

+ 28 - 0
CP_Main.cpp

@@ -33,6 +33,8 @@ public:
 		m_bU3Stop = FALSE;
 		m_bU3Install = FALSE;
 		m_uacPID = 0;
+		m_bOpenWindow = FALSE;
+		m_bCloseWindow = FALSE;
 	}
 
  	virtual void ParseParam(const TCHAR* pszParam, BOOL bFlag, BOOL bLast)
@@ -69,6 +71,14 @@ public:
 					m_uacPID = ATOI(pid);
 				}
 			}
+			else if(STRICMP(pszParam, _T("open")) == 0)
+			{
+				m_bOpenWindow = TRUE;
+			}
+			else if(STRICMP(pszParam, _T("close")) == 0)
+			{
+				m_bCloseWindow = TRUE;
+			}
   		}
  
 		CCommandLineInfo::ParseParam(pszParam, bFlag, bLast);
@@ -80,6 +90,8 @@ public:
 	BOOL m_bU3Stop;
 	BOOL m_bU3Install;
 	int m_uacPID;
+	BOOL m_bCloseWindow;
+	BOOL m_bOpenWindow;
 };
 
 CCP_MainApp theApp;
@@ -234,6 +246,22 @@ BOOL CCP_MainApp::InitInstance()
 			m_connectOnStartup = FALSE;
 		}
 	}
+	else if(cmdInfo.m_bOpenWindow || cmdInfo.m_bCloseWindow)
+	{
+		//First get the saved hwnd and send it a message
+		//If ditt is running then this will return 1, meening the running ditto process
+		//handled this message
+		//If it didn't handle the message(ditto is not running) then startup this processes of ditto 
+		//disconnected from the clipboard
+		LRESULT ret = 0;
+		HWND hWnd = (HWND)CGetSetOptions::GetMainHWND();
+		if(hWnd)
+		{
+			ret = ::SendMessage(hWnd, WM_OPEN_CLOSE_WINDWOW, cmdInfo.m_bOpenWindow, cmdInfo.m_bCloseWindow);
+		}
+
+		return FALSE;		
+	}
 
 	CInternetUpdate update;
 

+ 12 - 5
DittoSetup/BuildDitto.bld

@@ -6,6 +6,13 @@
 			<MacroValue>%workDir%\%branch%\Log.txt</MacroValue>
 			<name>Default Log File</name>
 		</step>
+		<step action='Read INI'>
+			<Filename>%projdir%\pw.ini</Filename>
+			<Macro>sf_pw</Macro>
+			<Section>sf</Section>
+			<ValueName>pw</ValueName>
+			<name>Read INI</name>
+		</step>
 		<step action='Group'>
 			<name>Project steps</name>
 		</step>
@@ -35,7 +42,7 @@
 			<Files>%branch%</Files>
 			<Host>svn.code.sf.net</Host>
 			<LocalPath>%workDir%</LocalPath>
-			<Password encrypted='1'>Mc3MPOw8Z+GFarW4o6Gvgz39WZWlLg==</Password>
+			<Password encrypted='1'>WM3ePOE8XeG4aqO46qE=</Password>
 			<Protocol>http</Protocol>
 			<Repository>/p/ditto-cp/code/</Repository>
 			<SVNPath>C:\Program Files (x86)\SlikSvn\bin</SVNPath>
@@ -321,12 +328,12 @@ var sc_security="b3f57099";
 			<Files>%branch%</Files>
 			<Host>svn.code.sf.net</Host>
 			<LocalPath>%workDir%</LocalPath>
-			<Password encrypted='1'>Mc3MPOw8Z+GFarW4o6Gvgz39WZWlLg==</Password>
+			<Password encrypted='1'>WM3ePOE8XeG4aqO46qE=</Password>
 			<Protocol>http</Protocol>
 			<Repository>/p/ditto-cp/code/</Repository>
 			<SVNPath>C:\Program Files (x86)\SlikSvn\bin</SVNPath>
 			<Subcommand>log</Subcommand>
-			<Switches>-r {2012-11-9}:{2013-12-31}</Switches>
+			<Switches>-r {2014-06-06}:{2016-12-31}</Switches>
 			<Username>sabrogden</Username>
 			<indent type='3'>2</indent>
 			<name>SVN Log Messages</name>
@@ -358,7 +365,7 @@ var sc_security="b3f57099";
 			<Filename>%workDir%\%branch%\DittoSetup\output\</Filename>
 			<Incremental type='11'>-1</Incremental>
 			<Logging type='3'>6</Logging>
-			<Password encrypted='1'>Mc3MPOw8Z+GFarW4o6Gvgz39WZWlLg==</Password>
+			<Password encrypted='1'>WM3ePOE8XeG4aqO46qE=</Password>
 			<Percent>10</Percent>
 			<Port>22</Port>
 			<Retries>0</Retries>
@@ -381,7 +388,7 @@ var sc_security="b3f57099";
 			<value>3</value>
 		</macro>
 		<macro name='verMinor'>
-			<value>19</value>
+			<value>20</value>
 		</macro>
 		<macro name='verRevision'>
 			<value>0</value>

+ 15 - 0
MainFrm.cpp

@@ -53,6 +53,7 @@ IMPLEMENT_DYNAMIC(CMainFrame, CFrameWnd)
 	ON_WM_DESTROY()
 	ON_COMMAND(ID_FIRST_NEWCLIP, OnFirstNewclip)
 	ON_MESSAGE(WM_SET_CONNECTED, OnSetConnected)
+	ON_MESSAGE(WM_OPEN_CLOSE_WINDWOW, OnOpenCloseWindow)
 	ON_MESSAGE(WM_LOAD_ClIP_ON_CLIPBOARD, OnLoadClipOnClipboard)
 	ON_MESSAGE(WM_TRAY_MENU_MOUSE_MOVE, OnSystemTrayMouseMove)
 	ON_COMMAND(ID_FIRST_GLOBALHOTKEYS, &CMainFrame::OnFirstGlobalhotkeys)
@@ -904,6 +905,20 @@ LRESULT CMainFrame::OnSetConnected(WPARAM wParam, LPARAM lParam)
     return TRUE;
 }
 
+LRESULT CMainFrame::OnOpenCloseWindow(WPARAM wParam, LPARAM lParam)
+{
+	if(wParam)
+	{
+		m_quickPaste.ShowQPasteWnd(this, false, false, FALSE);
+	}
+	else if(lParam)
+	{
+		m_quickPaste.HideQPasteWnd();
+	}
+
+	return TRUE;
+}
+
 void CMainFrame::OnDestroy()
 {
     CFrameWnd::OnDestroy();

+ 1 - 0
MainFrm.h

@@ -102,6 +102,7 @@ protected:
     afx_msg LRESULT OnCustomizeTrayMenu(WPARAM wParam, LPARAM lParam);
     afx_msg LRESULT OnEditWndClose(WPARAM wParam, LPARAM lParam);
     afx_msg LRESULT OnSetConnected(WPARAM wParam, LPARAM lParam);
+	afx_msg LRESULT OnOpenCloseWindow(WPARAM wParam, LPARAM lParam);
 	afx_msg LRESULT OnLoadClipOnClipboard(WPARAM wParam, LPARAM lParam);
 	afx_msg LRESULT OnSystemTrayMouseMove(WPARAM wParam, LPARAM lParam);
 	afx_msg LRESULT OnGlobalClipsClosed(WPARAM wParam, LPARAM lParam);

+ 1 - 0
Misc.h

@@ -117,6 +117,7 @@ CString GetProcessName(HWND hWnd);
 #define WM_OPTIONS_CLOSED	WM_USER	+ 219
 #define WM_SHOW_OPTIONS	WM_USER	+ 220
 #define WM_DELETE_CLIPS_CLOSED	WM_USER	+ 221
+#define WM_OPEN_CLOSE_WINDWOW WM_USER + 222
 
 #if !defined(_BITSET_)
 #	include <bitset>