static void pidginwhiteboard_button_start_press(GtkButton *button, gpointer data) { PurpleConversation *conv = data; PurpleAccount *account = purple_conversation_get_account(conv); PurpleConnection *gc = purple_account_get_connection(account); char *to = (char*)(purple_conversation_get_name(conv)); /* Only handle this if local client requested Doodle session (else local * client would have sent one) */ PurpleWhiteboard *wb = purple_whiteboard_get(account, to); /* Write a local message to this conversation showing that a request for a * Doodle session has been made */ /* XXXX because otherwise gettext will see this string, even though it's * in an #if 0 block. Remove the XXXX if you want to use this code. * But, it really shouldn't be a Yahoo-specific string. ;) */ purple_conv_im_write(PURPLE_CONV_IM(conv), "", XXXX_("Sent Doodle request."), PURPLE_MESSAGE_NICK | PURPLE_MESSAGE_RECV, time(NULL)); yahoo_doodle_command_send_request(gc, to); yahoo_doodle_command_send_ready(gc, to); /* Insert this 'session' in the list. At this point, it's only a requested * session. */ wb = purple_whiteboard_create(account, to, DOODLE_STATE_REQUESTING); }
LRESULT CALLBACK IOProc(LPSTR lpMmIOInfo, UINT uMsg, LPARAM lParam1, LPARAM lParam2) { LPSTR lpszFromFilename, lpszToFilename, lpszOpenFilename; UINT uCloseFlags; HPSTR hpBuffer; LONG lBufferSize, lSeekOffset; int nSeekOrigin; switch (uMsg) { case MMIOM_RENAME: lpszFromFilename = (LPSTR) lParam1; lpszToFilename = (LPSTR) lParam2; return XXXX_Rename((LPMMIOINFO) lpMmIOInfo, lpszFromFilename, lpszToFilename); case MMIOM_OPEN: lpszOpenFilename = (LPSTR) lParam1; return XXXX_Open((LPMMIOINFO) lpMmIOInfo, lpszOpenFilename); case MMIOM_CLOSE: uCloseFlags = (UINT) lParam1; return XXXX_((LPMMIOINFO) lpMmIOInfo, uCloseFlags); case MMIOM_READ: hpBuffer = (HPSTR) lParam1; lBufferSize = (LONG) lParam2; return XXXX_Read((LPMMIOINFO) lpMmIOInfo, hpBuffer, lBufferSize); case MMIOM_WRITE: hpBuffer = (HPSTR) lParam1; lBufferSize = (LONG) lParam2; return XXXX_Write((LPMMIOINFO) lpMmIOInfo, hpBuffer, lBufferSize); case MMIOM_WRITEFLUSH: hpBuffer = (HPSTR) lParam1; lBufferSize = (LONG) lParam2; return XXXX_WriteFlush((LPMMIOINFO) lpMmIOInfo, hpBuffer, lBufferSize); case MMIOM_SEEK: lSeekOffset = (LONG) lParam1; nSeekOrigin = (int) lParam2; return XXXX_Seek((LPMMIOINFO) lpMmIOInfo, lSeekOffset, nSeekOrigin); } return (0); }