#ifndef WA_HOTKEYS #define WA_HOTKEYS //#define IPC_GEN_HOTKEYS_ADD xxxx //pass a genHotkeysAddStruct * struct in data // //To get the IPC_GEN_HOTKEYS_ADD IPC number, do this: // // genhotkeys_add_ipc=SendMessage(winampWindow,WM_WA_IPC,(WPARAM)&"GenHotkeysAdd",IPC_REGISTER_WINAMP_IPCMESSAGE); // //Then you can use: // // PostMessage(winampWindow,WM_WA_IPC,(WPARAM)&myGenHotkeysAddStruct,genhotkeys_add_ipc); // //flags for the genHotkeysAddStruct struct #define HKF_BRING_TO_FRONT 0x1 // calls SetForegroundWindow before sending the message #define HKF_HWND_WPARAM 0x2 // sets wParam with Winamp's window handle #define HKF_COPY 0x4 // copies returned text to the clipboard #define HKF_PLPOS_WPARAM 0x8 // sets wParam with current pledit position #define HKF_ISPLAYING_WL 0x10 // sets wParam to genHotkeysAddStruct's wParam if playing, lParam if not // uses IPC_ISPLAYING to check if playing #define HKF_SHOWHIDE 0x20 // brings Winamp to front or minimizes Winamp if already at front #define HKF_NOSENDMSG 0x40 // don't send any message to the winamp window #define HKF_DISABLED 0x80000000 typedef struct { char *name; //name that will appear in the Global Hotkeys preferences panel DWORD flags; //one or more flags from above UINT uMsg; //message that will be sent to winamp's main window (must always be !=NULL) WPARAM wParam; //wParam that will be sent to winamp's main window LPARAM lParam; //lParam that will be sent to winamp's main window char *id; //unique string to identify this command - case insensitive HWND wnd; //set the HWND to send message (or 0 for main winamp window) int extended[6]; //for future extension - always set to zero! } genHotkeysAddStruct; #endif