Skocz do zawartości


Zdjęcie

[CP] Aktualizacja stanu aktywności źródła powiadomień


  • Zaloguj się, aby dodać odpowiedź
Brak odpowiedzi do tego tematu

#1 Qrix

Qrix

    Adept

  • Wtyczkopisarz
  • 361 postów

Napisano 2011.01.07, 18:41

Mam problem dotyczący Centrum Powiadomień. Dotyczy on aktualizacji serwisu o dane związane z aktywnością.
Nazwa serwisu się zgadza, następuje wykonanie kodu w warunkach i do tego momentu jest dobrze. Następnie wykonuję AQQ_SYSTEM_NEWSSOURCE_UPDATE i tu robi się problem - funkcja za każdym razem zwraca -1, a co za tym idzie: serwis nadal pozostaje w tym samym stanie aktywności.

function OnNewsActive(wParam, lParam: DWord): Integer; stdcall;
begin
  // Użytkownik włączył lub wyłączył nasze źródło na liście powiadomień.
  // Zapisujemy ostatni stan aby przy kolejnym starcie
  // prawidłowo wypełnić strukturę NewsData w OnModulesLoad.
  if (PWideChar(wParam) = NEWS_ID1) then
    begin
      if lParam = 0 then
        begin
          // Źródło wyłączone. (nie mylić z usuniętym)
          NewsData.Active:=false;
        end
      else
        begin
          // Źródło włączone (aktywne)
          NewsData.Active:=true;
        end;
    PluginLink.CallService(AQQ_SYSTEM_NEWSSOURCE_UPDATE, DWORD(@NewsData), DWORD(PWideChar(WideString(NEWS_ID1)))); //zwrot -1
    end;
end;

Jestem prawie pewny, że to ja coś źle robię. Wywołanie AQQ_SYSTEM_NEWSSOURCE_UPDATE w OnModulesLoad wg. przykładu Oconnela działa poprawnie. Tam dodatkowo występuje zmiana ID:
NewsData.ID := NEWS_ID2;
  tmp := NEWS_ID2; // stare ID
  PluginLink.CallService(AQQ_SYSTEM_NEWSSOURCE_UPDATE, DWORD(@NewsData), DWORD(PWideChar(WideString(NEWS_ID1))));
Przy czym zastosowanie tego (zmiana ID) w OnNewsActive nie daje nadal żadnych efektów (zwrot -1).
Wg. komentarza powinienem zachować tylko informację o stanie na jaki został zmieniony, stan aktywności jednak przy zmianie nie jest zachowywany (po zamknięciu okienka "Źródła powiadomień" i jego ponownym przywróceniu nadal mam status jaki źródło miało przed zmianą)

Mam nadzieję, że udało mi się jasno nakreślić problem.
Proszę o zgłaszanie błędów w moich wtyczkach na bugliście - po zgłoszeniu proszę o link do zgłoszenia wysłać na moje jabberowe konto qrix@aqq.eu - o błędach nie zgłaszanych na bugliście z reguły szybko zapominam ;)
Moje posty czyta Dołączona grafika




Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych