Autor Wątek: Wiadomość w HTML'u  (Przeczytany 1712 razy)

0 Użytkowników i 1 Gość przegląda ten wątek.

Offline mucha

  • Senior Developer
  • Młodzież
  • *
Wiadomość w HTML'u
« dnia: Maj 19, 2011, 15:38:22 pm »
Chciałbym, aby wysyłane wiadomości (a konkretnie te zawierające tagi b, i, u) nie były html escape'owane, w jaki sposób tego najprościej dokonać? Próbowałem tak (onMessage to hook na WTW_EVENT_CHATWND_BEFORE_MSG_PROC):
WTW_PTR PluginController::onMessage(WTW_PARAM wParam, WTW_PARAM lParam, void *ptr)
{
   wtwBmpStruct *pBmp = reinterpret_cast<wtwBmpStruct*>(wParam);
   // ...
   if(text.find(L"<b>") != wstring::npos || ...
   {
      wchar_t fn[512] = {0};
      pBmp->message.msgFlags |= WTW_MESSAGE_FLAG_NOHTMLESC;
      wsprintf(fn, L"%s/%d/%s", pBmp->message.contactData.netClass, pBmp->message.contactData.netId, WTW_PF_MESSAGE_SEND);
      wtw->fnCall(fn, reinterpret_cast<WTW_PARAM>(&pBmp->message), 0);
      wtw->fnCall(WTW_CHATWND_SHOW_MESSAGE, reinterpret_cast<WTW_PARAM>(&pBmp->message), 0);
      return BMP_NO_PROCESS;
   }

   return BMP_OK;
}
Wynik: wiadomości nadal są html escape'owane (no i się nie wyświetlają, do czego służy flaga WTW_MESSAGE_FLAG_FORCEDISP?).

edit: dodana linijka odpowiedzialna za "ręczne" dodanie wiadomości do okna rozmowy.
« Ostatnia zmiana: Maj 20, 2011, 14:30:21 pm wysłana przez mucha »

Offline suawek

  • Senior Developer
  • Młodzież
  • *
Odp: Wiadomość w HTML'u
« Odpowiedź #1 dnia: Maj 19, 2011, 15:59:54 pm »
#define BMP_NO_PROCESS		0x01 // zjedliśmy tę wiadomość, nie pojdzie dalej, czyścimy edita

Offline mucha

  • Senior Developer
  • Młodzież
  • *
Odp: Wiadomość w HTML'u
« Odpowiedź #2 dnia: Maj 20, 2011, 06:53:13 am »
Aha, i?