Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Coloboración Paypal con ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #7  
Antiguo 30-11-2006
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 31
Lepe Va por buen camino
Pues al final me he decidido por el patrón del observador, pero nada complejo:

Un TStringlist almacena el nombre de cada "alerta", cada alerta lleva asociado un TObjectList.

Cada elemento del TObjectList es un objeto en el que se puede almacenar:
- Puntero hacia un procedure of object
- Puntero hacia un procedure.
- Tipo de Puntero (define cual de los dos anteriores se ha usado).
- Nombre del observador (para depurar).

Todo queda encapsulado en un TObject con los métodos:
- AddAlert - > se registra un observador
- DeleteAlert-> se elimina un observador
- ExecuteAlert-> se lanza la notificación de una alerta determinada a todos sus observadores
- AlertsNamesAndObservers -> Depuración: muestra todos los nombres de las alertas, el total de observadores y el nombre de cada uno.

Los 3 métodos iniciales están sobrecargados para llamarlos con un "procedure of object" o con un simple "procedure"

Le veo una pequeña lista de futuros cambios (de momento se queda como está ):
TO DO: - ¿Derivar de TComponent y añadir el FreeNotification?
Razon: Si el usuario del módulo no Elimina la alerta al hacer un .Free de la
ventana donde se encuentra el Callback, al llamar a Execute se
producirá un access violation.

- Añadir CriticalSection ¿?

Saludos y muchas gracias.
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
 


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Minimizar todas las ventanas santiago14 Varios 2 17-09-2004 03:34:01
Preferencias de la mujer según su edad santana Humor 81 27-06-2004 23:25:28
Modificar Preferencias de Impresion caio API de Windows 2 13-03-2004 13:20:46
minimizar todas las ventanas. soyhugo Varios 2 18-02-2004 13:11:26


La franja horaria es GMT +2. Ahora son las 05:33:06.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi