summary refs log blame commit diff stats
path: root/win32/wdkpt/vs2012/Microsoft.Cpp.Win32.WDK7.props
blob: 8a9fe767a6dbe2dd30be8da3c603f70e0625c60a (plain) (tree)
1
2
3
4
5
6
7
8
9
10
11
12
13

                                                                                                
                               









                                                                                                
                                                                                                                                                                                             

                  
                                                                      










                                                                                                                 
 

                                                                                                                                                                                                                                                                                                                                             
                                                                                                                                                                                                         
                                                                                                                     
                                                                                                                                                       
                                                                                                
                                                                                                                                                                                  
                                                                                                                                                                                                                     
                                                                                                               
                                                                                                                                                   




                                                                                                  
                                                           
            

                         


                                                                                                                                                                                           
           
<!--
***********************************************************************************************
Microsoft.Cpp.Win32.v110.props

WARNING:  DO NOT MODIFY this file unless you are knowledgeable about MSBuild and have
          created a backup copy.  Incorrect changes to this file will make it
          impossible to load or build your projects from the command-line or the IDE.

Copyright (C) Microsoft Corporation. All rights reserved.
***********************************************************************************************
-->

<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <Import Project="$(VCTargetsPath)\Platforms\Win32\PlatformToolsets\v110\ImportBefore\*.props" Condition="Exists('$(VCTargetsPath)\Platforms\Win32\PlatformToolsets\v110\ImportBefore')" />

  <PropertyGroup>
    <WDKInstallDir>$(SystemDrive)\WinDDK\7600.16385.1</WDKInstallDir>
    <!-- Required for enabling Team Build for packaging Windows Store app projects -->
    <OutDirWasSpecified Condition=" '$(OutDir)'!='' AND '$(OutDirWasSpecified)'=='' ">true</OutDirWasSpecified>
    <OutDirWasSpecified Condition=" '$(OutDir)'=='' AND '$(OutDirWasSpecified)'=='' ">false</OutDirWasSpecified>

    <IntDir Condition="'$(IntDir)'=='' AND '$(IntermediateOutputPath)'!=''">$(IntermediateOutputPath)</IntDir>
    <IntDir Condition="'$(IntDir)'=='' AND '$(IntermediateOutputPath)'==''">$(Configuration)\</IntDir>
    <OutDir Condition="'$(OutDir)'=='' AND '$(SolutionDir)' != ''">$(SolutionDir)$(Configuration)\</OutDir>
    <OutDir Condition="'$(OutDir)'=='' AND '$(SolutionDir)' == ''">$(IntDir)</OutDir>
  </PropertyGroup>
  
  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Common.props" />

  <PropertyGroup>
    <ExecutablePath Condition="'$(ExecutablePath)' == ''">$(VCInstallDir)bin;$(WindowsSDK_ExecutablePath_x86);$(VSInstallDir)Common7\Tools\bin;$(VSInstallDir)Common7\tools;$(VSInstallDir)Common7\ide;$(ProgramFiles)\HTML Help Workshop;$(MSBuildToolsPath32);$(VSInstallDir);$(SystemRoot)\SysWow64;$(FxCopDir);$(PATH);</ExecutablePath>
    <IncludePath>$(WDKInstallDir)\inc\api;$(WDKInstallDir)\inc\crt;$(WDKInstallDir)\inc\api\crt\stl70;$(WDKInstallDir)\inc\mfc42;$(WDKInstallDir)\inc\ddk;$(WDKInstallDir)\inc\api\dao360;</IncludePath>
    <ReferencePath Condition="'$(ReferencePath)' == ''">$(VCInstallDir)atlmfc\lib;$(VCInstallDir)lib</ReferencePath>
    <LibraryPath>$(WDKInstallDir)\lib\wxp\i386;$(WDKInstallDir)\lib\Crt\i386;$(WDKInstallDir)\lib\Mfc\i386;$(WDKInstallDir)\lib\ATL\i386</LibraryPath>
    <LibraryWPath Condition="'$(LibraryWPath)' == ''">$(WindowsSDK_MetadataPath)</LibraryWPath>
    <SourcePath Condition="'$(SourcePath)' == ''">$(VCInstallDir)atlmfc\src\mfc;$(VCInstallDir)atlmfc\src\mfcm;$(VCInstallDir)atlmfc\src\atl;$(VCInstallDir)crt\src;</SourcePath>
    <ExcludePath Condition="'$(ExcludePath)' == ''">$(VCInstallDir)include;$(VCInstallDir)atlmfc\include;$(WindowsSDK_IncludePath);$(MSBuildToolsPath32);$(VCInstallDir)atlmfc\lib;$(VCInstallDir)lib;</ExcludePath>
    <NativeExecutablePath Condition="'$(NativeExecutablePath)' == ''">$(ExecutablePath)</NativeExecutablePath>
    <DebugCppRuntimeFilesPath Condition="'$(DebugCppRuntimeFilesPath)' == ''">$(VCInstallDir)redist\Debug_NonRedist\x86</DebugCppRuntimeFilesPath>
  </PropertyGroup>

  <ItemDefinitionGroup>
    <Link>
      <AdditionalDependencies>msvcrt_winxp.obj;%(AdditionalDependencies)</AdditionalDependencies>
      <MinimumRequiredVersion>5.1</MinimumRequiredVersion>
    </Link>
  </ItemDefinitionGroup>

  <Import Project="$(VCTargetsPath)\Platforms\Win32\PlatformToolsets\v110\ImportAfter\*.props" Condition="Exists('$(VCTargetsPath)\Platforms\Win32\PlatformToolsets\v110\ImportAfter')" />

  <Import Project="$(VCTargetsPath)\Platforms\Win32\Microsoft.Cpp.Win32.Common.props" />
</Project>
ion 2 of the License, or * (at your option) any later version. * * X-Tray is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with X-Tray; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ #define _WIN32_IE 0x0601 #include <windows.h> #include <stdio.h> #include <commctrl.h> #include <tchar.h> #include "utility.h" #include "plugin.h" #include "xtray.h" #include "xchat.h" #include "callbacks.h" #include "resource.h" #include "sdTray.h" #include "sdAlerts.h" HWND g_hPrefTabEvents; HWND g_hPrefTabSettings; HWND g_hPrefTabAlerts; HWND g_hPrefTabAbout; bool g_bCanQuit; int g_iIsActive = 1; BOOL CALLBACK EnumWindowsProc(HWND hWnd, LPARAM lParam) { TCHAR szTitle[10]; GetWindowText(hWnd, szTitle, 9); if(_tcsstr(szTitle, _T("XChat ["))) { g_hXchatWnd = hWnd; return false; } return true; } /***********************************************************************************************/ /******* our xchat event call back, get the name and info for each event and save it ***********/ /******* for our alerts later ***********/ /***********************************************************************************************/ int event_cb(char *word[], void *userdata) { int iEvent = (int)userdata; if(iEvent > 10 && iEvent != 21) return XCHAT_EAT_NONE; /***************************************************************************************/ /***** if the window is minimized or if we're allowed to show alerts when its not **/ /***** and if the option to show the specified alert is true and if we're even **/ /***** allowed to show alerts at all then we show them (a bit confusing but it works) **/ /***************************************************************************************/ if(((g_iIsActive == 0) || !(g_dwPrefs & (1<<PREF_OSBWM))) && (g_dwPrefs & (1<<PREF_AMAE)) && (g_dwPrefs & (1<<iEvent))) { /*********************************/ /*********** Our Buffers *********/ /*********************************/ char szInfo[512]; char szName[64]; DWORD dwInfoFlags; int iTime = g_iTime*1000; char *szTemp = NULL; if(g_dwPrefs & (1<<PREF_KAOI)) { iTime = 0; } switch(iEvent) { case CHAN_HILIGHT: _snprintf(szInfo, 512, "%s:\r\n%s", word[1], word[2]); _snprintf(szName, 64, "Hilight"); dwInfoFlags = NIIF_INFO; break; case CHAN_MESSAGE: _snprintf(szInfo, 512, "%s:\r\n%s", word[1], word[2]); _snprintf(szName, 64, "Channel Message"); dwInfoFlags = NIIF_INFO; break; case CHAN_TOPIC_CHANGE: _snprintf(szInfo, 512, "%s has changed the topic to %s", word[1], word[2]); _snprintf(szName, 64, "Topic Change: %s", word[3]); dwInfoFlags = NIIF_INFO; break; case CHAN_INVITE: _snprintf(szInfo, 512, "%s has invited you into %s", word[1], word[2]); _snprintf(szName, 64, "Invite"); dwInfoFlags = NIIF_INFO; break; case CHAN_KICKED: _snprintf(szInfo, 512, "Kicked from %s by %s:\r\n%s", word[2], word[3], word[4]); _snprintf(szName, 64, "Kick"); dwInfoFlags = NIIF_WARNING; break; case CHAN_BANNED: _snprintf(szInfo, 512, "Cannot join #%s You are banned.", word[1]); _snprintf(szName, 64, "Banned"); dwInfoFlags = NIIF_WARNING; break; case CTCP_GENERIC: _snprintf(szInfo, 512, "%s:\r\nCTCP %s", word[2], word[1]); _snprintf(szName, 64, "CTCP"); dwInfoFlags = NIIF_INFO; break; case PMSG_RECEIVE: _snprintf(szInfo, 512, "%s:\r\n%s", word[1], word[2]); _snprintf(szName, 64, "Private Message"); dwInfoFlags = NIIF_INFO; break; case SERV_DISCONNECT: _snprintf(szInfo, 512, "Disconnected\r\nError: %s", word[1]); _snprintf(szName, 64, "Disconnect"); dwInfoFlags = NIIF_ERROR; break; case SERV_KILLED: _snprintf(szInfo, 512, "Killed(%s(%s))", word[1], word[2]); _snprintf(szName, 64, "Server Admin has killed you"); dwInfoFlags = NIIF_ERROR; break; case SERV_NOTICE: _snprintf(szInfo, 512, "Notice:\r\n%s: %s", word[1], word[2]); _snprintf(szName, 64, "Notice"); dwInfoFlags = NIIF_INFO; break; case 11: _snprintf(szInfo, 512, ":\r\n%s: %s", word[1], word[2]); _snprintf(szName, 64, "Notice"); dwInfoFlags = NIIF_INFO; break; } /**************************************************************************************/ /***** Use windows instead of balloons, and if its a window should we keep it open ****/ /***** indefinately? ****/ /**************************************************************************************/ szTemp = xchat_strip_color(szInfo); if(g_dwPrefs & (1<<PREF_UWIOB)) { sdSystemAlert((HINSTANCE)g_hInstance, IDD_ALERT, szTemp, szName, iTime); } else { ShowBalloon(g_hXchatWnd, 1, szTemp, szName, iTime, dwInfoFlags); } free(szTemp); } if(g_dwPrefs & (1<<PREF_BLINK) && (g_dwPrefs & (1<<iEvent))) { BlinkIcon(g_hXchatWnd, 1, g_hIcons[0], g_hIcons[(iEvent+1)], 700, 5); } /***********************************/ /***** pass the events to xchat ****/ /***********************************/ return XCHAT_EAT_NONE; } int command_cb(char *word[], char *word_eol[], void *userdata) { char szInfo[512]; char *szTemp = NULL; int iTime = g_iTime*1000; _snprintf(szInfo, 512, word_eol[2]); szTemp = xchat_strip_color(szInfo); if(g_dwPrefs & (1<<PREF_KAOI)) { iTime = 0; } if(((g_iIsActive == 0) || !(g_dwPrefs & (1<<PREF_OSBWM))) && (g_dwPrefs & (1<<PREF_AMAE))) { if(g_dwPrefs & (1<<PREF_UWIOB)) { sdSystemAlert((HINSTANCE)g_hInstance, IDD_ALERT, szTemp, "Alert", iTime); } else { ShowBalloon(g_hXchatWnd, 1, szTemp, "Alert", iTime, NIIF_INFO); } } free(szTemp); return XCHAT_EAT_ALL; } LRESULT CALLBACK WindowProc(HWND hWnd, UINT msg, WPARAM wparam, LPARAM lparam) { switch(msg) { case WM_CLOSE: { if((g_dwPrefs & (1<<PREF_MIOC)) && (g_bCanQuit == false)) { /*******************************************/ /**** to autoaway or not to autoaway... ***/ /*******************************************/ if(g_dwPrefs & (1<<PREF_AOM)) { xchat_globally_away(g_szAway); } /**************************************************/ /**** Win32 API call to hide the window and **/ /**** save the fact that its minimized for later **/ /**************************************************/ g_iIsActive = 0; ShowWindow(hWnd, SW_HIDE); return 0; } else { if(g_hPrefDlg != NULL) { DestroyWindow(g_hPrefDlg); } StopBlink(hWnd, 1, g_hIcons[0]); if(sdAlertNum()) { sdCloseAlerts(); HoldClose(); return 0; } } } break; case WM_SIZE: { /******************************************/ /***** User wants to minimize xChat, ******/ /***** are we allowed to go to tray? ******/ /******************************************/ if((g_dwPrefs & (1<<PREF_TOT)) && (wparam == SIZE_MINIMIZED)) { /*******************************************/ /**** to autoaway or not to autoaway... ***/ /*******************************************/ if(g_dwPrefs & (1<<PREF_AOM)) { xchat_globally_away(g_szAway); } /**************************************************/ /**** Win32 API call to hide the window and **/ /**** save the fact that its minimized for later **/ /**************************************************/ g_iIsActive = 0; ShowWindow(hWnd, SW_HIDE); } } break; /**********************************/ /*** user clicked the tray icon ***/ /**********************************/ case WM_TRAYMSG: { switch(lparam) { case WM_LBUTTONDOWN: { if(!g_iIsActive) { /*********************************************************/ /*** 0: its hiden, restore it and show it, if autoaway ***/ /*** is on, set us as back ***/ /*********************************************************/ SendMessage(hWnd, WM_SYSCOMMAND, SC_RESTORE, 0); SetForegroundWindow(hWnd); g_iIsActive = 1; if(g_dwPrefs & (1<<PREF_AOM)) { xchat_globally_back(); } } else { SendMessage(hWnd, WM_SYSCOMMAND, SC_MINIMIZE, 0); } } break; case WM_RBUTTONDOWN: { /******************************************/ /*** user wants to see the menu find out **/ /*** where the mouse is and show it **/ /******************************************/ POINT pt; int iRet; GetCursorPos(&pt); SetForegroundWindow(hWnd); ModifyMenu(g_hTrayMenu, 2, (MF_POPUP | MF_BYPOSITION), (UINT)setServerMenu(), _T("Away")); Sleep(175); iRet = TrackPopupMenuEx(g_hTrayMenu, (TPM_RETURNCMD | TPM_LEFTALIGN), pt.x, pt.y, hWnd, NULL); /***********************************/ /*** nRet is the users selection, **/ /*** process it **/ /***********************************/ sdTrayProc(hWnd, iRet); } break; } } break; default: { /*****************************************************/ /*** the taskbar has been restarted, re-add our icon */ /*****************************************************/ if(msg == RegisterWindowMessage(_T("TaskbarCreated"))) { char szVersion[64]; _snprintf(szVersion, 64, "XChat-WDK [%s]", xchat_get_info(ph, "version")); AddIcon(g_hXchatWnd, 1, g_hIcons[0], szVersion, (NIF_ICON | NIF_MESSAGE | NIF_TIP), WM_TRAYMSG); } } break; } return CallWindowProc(g_hOldProc, hWnd, msg, wparam, lparam); } /****************************************************/ /*** process messages from the tray menu ************/ /****************************************************/ LRESULT CALLBACK sdTrayProc(HWND hWnd, int msg) { switch(msg) { case ACT_EXIT: { g_bCanQuit = true; PostMessage(hWnd, WM_CLOSE, 0, 0); } break; case ACT_RESTORE: { /***********************************************/ /** user wants us to restore the xchat window **/ /** and of autoaway is on, set as back **/ /***********************************************/ SendMessage(g_hXchatWnd, WM_SYSCOMMAND, SC_RESTORE, 0); SetForegroundWindow(hWnd); if((!g_iIsActive) && (g_dwPrefs & (1<<PREF_AOM))) { xchat_globally_back(); g_iIsActive = 1; } } break; case ACT_SETTINGS: { ShowWindow(g_hPrefDlg, SW_SHOW); } break; case ACT_AWAY: { xchat_globally_away(g_szAway); } break; case ACT_BACK: { xchat_globally_back(); } break; default: { if(msg > 0) { xchat_set_context(ph, xchat_find_server(msg-1)); if(!xchat_get_info(ph, "away")) { xchat_away(g_szAway); } else { xchat_back(); } } } break; } return 1; } int CALLBACK PrefProc(HWND hWnd, UINT msg, WPARAM wparam, LPARAM lparam) { switch(msg) { case WM_INITDIALOG: { TCITEM tci1; TCITEM tci2; TCITEM tci3; TCITEM tci4; tci1.mask = TCIF_TEXT; tci1.pszText = _T("Settings"); tci1.cchTextMax = strlen("Settings"); SendDlgItemMessage(hWnd, IDC_TAB_CONTROL, TCM_INSERTITEM, 0, (LPARAM)&tci1); tci2.mask = TCIF_TEXT; tci2.pszText = _T("Alerts"); tci2.cchTextMax = strlen("Alerts"); SendDlgItemMessage(hWnd, IDC_TAB_CONTROL, TCM_INSERTITEM, 1, (LPARAM)&tci2); tci3.mask = TCIF_TEXT; tci3.pszText = _T("Events"); tci3.cchTextMax = strlen("Events"); SendDlgItemMessage(hWnd, IDC_TAB_CONTROL, TCM_INSERTITEM, 2, (LPARAM)&tci3); tci4.mask = TCIF_TEXT; tci4.pszText = _T("About"); tci4.cchTextMax = strlen("About"); SendDlgItemMessage(hWnd, IDC_TAB_CONTROL, TCM_INSERTITEM, 3, (LPARAM)&tci4); /***********************************************************************************/ /***********************************************************************************/ /***********************************************************************************/ g_hPrefTabSettings = CreateDialog((HINSTANCE)g_hInstance, MAKEINTRESOURCE(IDD_SETTINGS), hWnd, (DLGPROC)SettingsProc); SetDialog(g_hPrefTabSettings, IDD_SETTINGS); g_hPrefTabAlerts = CreateDialog((HINSTANCE)g_hInstance, MAKEINTRESOURCE(IDD_ALERTS), hWnd, (DLGPROC)AlertsProc); SetDialog(g_hPrefTabAlerts, IDD_ALERTS); g_hPrefTabEvents = CreateDialog((HINSTANCE)g_hInstance, MAKEINTRESOURCE(IDD_EVENTS), hWnd, (DLGPROC)EventsProc); SetDialog(g_hPrefTabEvents, IDD_EVENTS); g_hPrefTabAbout = CreateDialog((HINSTANCE)g_hInstance, MAKEINTRESOURCE(IDD_ABOUT), hWnd, (DLGPROC)AboutProc); } break; case WM_SHOWWINDOW: { if(wparam) { SendDlgItemMessage(hWnd, IDC_TAB_CONTROL, TCM_SETCURSEL, 0, 0); ShowWindow(g_hPrefTabSettings, SW_SHOW); ShowWindow(g_hPrefTabAlerts, SW_HIDE); ShowWindow(g_hPrefTabEvents, SW_HIDE); ShowWindow(g_hPrefTabAbout, SW_HIDE); } } break; case WM_NOTIFY: { NMHDR *pData = (NMHDR *)lparam; switch(pData->code) { case TCN_SELCHANGE: { switch(SendDlgItemMessage(hWnd, IDC_TAB_CONTROL, TCM_GETCURSEL, 0, 0)) { case 0: { ShowWindow(g_hPrefTabSettings, SW_SHOW); ShowWindow(g_hPrefTabAlerts, SW_HIDE); ShowWindow(g_hPrefTabEvents, SW_HIDE); ShowWindow(g_hPrefTabAbout, SW_HIDE); } break; case 1: { ShowWindow(g_hPrefTabSettings, SW_HIDE); ShowWindow(g_hPrefTabAlerts, SW_SHOW); ShowWindow(g_hPrefTabEvents, SW_HIDE); ShowWindow(g_hPrefTabAbout, SW_HIDE); } break; case 2: { ShowWindow(g_hPrefTabSettings, SW_HIDE); ShowWindow(g_hPrefTabAlerts, SW_HIDE); ShowWindow(g_hPrefTabEvents, SW_SHOW); ShowWindow(g_hPrefTabAbout, SW_HIDE); } break; case 3: { ShowWindow(g_hPrefTabSettings, SW_HIDE); ShowWindow(g_hPrefTabAlerts, SW_HIDE); ShowWindow(g_hPrefTabEvents, SW_HIDE); ShowWindow(g_hPrefTabAbout, SW_SHOW); } break; } } break; } } break; case WM_CLOSE: { ShowWindow(g_hPrefTabEvents, SW_HIDE); ShowWindow(g_hPrefTabSettings, SW_HIDE); ShowWindow(g_hPrefTabAlerts, SW_HIDE); ShowWindow(g_hPrefTabAbout, SW_HIDE); ShowWindow(hWnd, SW_HIDE); return TRUE; } break; case WM_COMMAND: { switch(wparam) { case IDC_PREF_OK: { CheckPrefs(g_hPrefTabEvents, IDD_EVENTS); CheckPrefs(g_hPrefTabSettings, IDD_SETTINGS); CheckPrefs(g_hPrefTabAlerts, IDD_ALERTS); SavePrefs(0); ShowWindow(g_hPrefTabEvents, SW_HIDE); ShowWindow(g_hPrefTabSettings, SW_HIDE); ShowWindow(g_hPrefTabAlerts, SW_HIDE); ShowWindow(g_hPrefTabAbout, SW_HIDE); ShowWindow(hWnd, SW_HIDE); return TRUE; } break; case IDC_PREF_CANCEL: { ShowWindow(g_hPrefTabEvents, SW_HIDE); ShowWindow(g_hPrefTabSettings, SW_HIDE); ShowWindow(g_hPrefTabAlerts, SW_HIDE); ShowWindow(g_hPrefTabAbout, SW_HIDE); ShowWindow(hWnd, SW_HIDE); return TRUE; } break; case IDC_PREF_APPLY: { CheckPrefs(g_hPrefTabEvents, IDD_EVENTS); CheckPrefs(g_hPrefTabSettings, IDD_SETTINGS); CheckPrefs(g_hPrefTabAlerts, IDD_ALERTS); SavePrefs(0); return FALSE; } break; } } break; case WM_DESTROY: { SendMessage(g_hPrefTabEvents, WM_CLOSE, 0, 0); SendMessage(g_hPrefTabSettings, WM_CLOSE, 0, 0); SendMessage(g_hPrefTabAbout, WM_CLOSE, 0, 0); SendMessage(g_hPrefTabAlerts, WM_CLOSE, 0, 0); } break; } return FALSE; } /****************************************************/ /****************************************************/ /****************************************************/ LRESULT CALLBACK AlertsProc(HWND hWnd, UINT msg, WPARAM wparam, LPARAM lparam) { switch(msg) { case WM_CLOSE: { DestroyWindow(hWnd); return TRUE; break; } break; case WM_COMMAND: { switch(LOWORD(wparam)) { case PREF_AMAE: { SetToggle(hWnd, PREF_OSBWM, PREF_AMAE, TRUE); SetToggle(hWnd, PREF_UWIOB, PREF_AMAE, TRUE); SetToggle(hWnd, PREF_KAOI, PREF_AMAE, TRUE); if(IsDlgButtonChecked(hWnd, PREF_AMAE)) { SetToggle(hWnd, IDC_ALERT_HOTKEY, PREF_UWIOB, TRUE); SetToggle(hWnd, IDC_ALERT_HOTKEY_TEXT, PREF_UWIOB, TRUE); SetToggle(hWnd, IDC_ALERT_TIME, PREF_KAOI, FALSE); SetToggle(hWnd, IDC_ALERT_TIME_TEXT, PREF_KAOI, FALSE); } else { SetToggle(hWnd, IDC_ALERT_HOTKEY, PREF_AMAE, TRUE); SetToggle(hWnd, IDC_ALERT_HOTKEY_TEXT, PREF_AMAE, TRUE); SetToggle(hWnd, IDC_ALERT_TIME, PREF_AMAE, TRUE); SetToggle(hWnd, IDC_ALERT_TIME_TEXT, PREF_AMAE, TRUE); } } break; case PREF_UWIOB: { SetToggle(hWnd, IDC_ALERT_HOTKEY, PREF_UWIOB, TRUE); SetToggle(hWnd, IDC_ALERT_HOTKEY_TEXT, PREF_UWIOB, TRUE); } break; case PREF_KAOI: { SetToggle(hWnd, IDC_ALERT_TIME, PREF_KAOI, FALSE); SetToggle(hWnd, IDC_ALERT_TIME_TEXT, PREF_KAOI, FALSE); } break; } break; } } return FALSE; } /****************************************************/ /****************************************************/ /****************************************************/ LRESULT CALLBACK AboutProc(HWND hWnd, UINT msg, WPARAM wparam, LPARAM lparam) { if(msg == WM_CLOSE) { DestroyWindow(hWnd); return true; } return FALSE; } /*****************************************************/ /** Process the events for our event dialog **********/ /*****************************************************/ LRESULT CALLBACK EventsProc(HWND hWnd, UINT msg, WPARAM wparam, LPARAM lparam) { if(msg == WM_CLOSE) { DestroyWindow(hWnd); return true; } return FALSE; } /*****************************************************/ /** Process the events for our settings dialog this **/ /** is alot more complicated because options are **/ /** enabled/disabled based on the state of others **/ /*****************************************************/ LRESULT CALLBACK SettingsProc(HWND hWnd, UINT msg, WPARAM wparam, LPARAM lparam) { if(msg == WM_CLOSE) { DestroyWindow(hWnd); return true; } return FALSE; } /*****************************************************/ /** this is the hotkey message processing function **/ /** this window is always open and ready to be told **/ /** if someone has hit the hotkey, if they did, we **/ /** need to close out all of the tray alerts, for **/ /** this I wrote sdCloseAlerts, more info there **/ /*****************************************************/ LRESULT CALLBACK HotKeyProc(HWND hWnd, UINT msg, WPARAM wparam, LPARAM lparam) { if(msg == WM_CLOSE) { DestroyWindow(hWnd); return true; } else if(msg == WM_HOTKEY) { sdCloseAlerts(); } return FALSE; }