MUI et rafraichissement
15 sujets de 1 à 15 (sur un total de 18)
- 1
- 2
-
Salut,
Je cherche a savoir s’il existe un moyen de faire disparaitre un effet désagréable avec l’affichage de MUI.
En effet, lorsqu’une application MUI lance un fenetre fille, souvent tant que cette deniere n’est pas fermée, la fenetre parente n’est pas rafraichie.
L’exemple qui me vient en preimer à l’esprit est Simplemail.
Quand simple mail récupere les mails, si je prend la fenetre de progression du téléchargement et que je la déplace sur la fenêtre principale de l’application, celle-ci laisse des traces.
Alors, y a t il un remede à cela vous pensez?
EDITE :
Je me suis trompé sur l’exemple de simplemail. Pour exemple je peux donc citer AMIRC.
RyZen Rulez 😉
@ Rusback,
Merci, voila donc un vieille ami de retrouvé. Je l’avais dans ma startup il y a bien longtemps, mais je ne l’avais pas remis depuis ma nouvelle installation.
Eh hop, un ami de plus dans l’informatique !
Ca commence à fair epas mal d’ami, entre l’amiga, google et maintenant smartwin
peux tu nous expliquer brièvement ce qui génere ce problème?
RyZen Rulez 😉
@ serge
Il me semble que c’est quand une fenêtre est ouverte en mode simple refresh et qu’elle ne met à pas jour son affichage quand il faudrait. En forçant le mode smart refresh avec smartwin, c’est intuition qui se charge automatiquement du rafraichissement en mettant l’image en mémoire.
c’est très simple : quand ta fenêtre de devant est ouverte… le programme « travaille » dans cette fenêtre… mais il faut toujours qu’il continue à s’occuper aussi de ce qui se passe derrière !!! et si le programmeur oublie de s’en occuper, ben tu fais de la peinture….
en gros le programme doit être multitaches en interne….
dans mui le système smart refresh avait été mis en place pour que le résultat soit pas trop cata avec justement les codeux qui salopaient le travail… et cela a été enlevé des derniers MUI pour que les utilisateurs ralent aupres des programmeurs et corrigent ensuite ces problemes…
utiliser des logiciels qui « remettent » en place cette caractéristique de MUI revient à installer un cache misère qui ne devrait se trouver sur aucune machine !
Je ne suis pas du tout d’accord.
Si l’auteur de SimpleMail considère qu’il est inutile de créer un 2e process, et que son choix est de bosser avec un seul programme qui lorsqu’il relève les mails ne fait rien d’autre, c’est son problème.
Le fait que le programme soit « inactif » ne change rien au problème de raffraichissement, un programme « inactif » ne doit pas voir son affichage détruit pas le déplacement d’une fenetre devant, c’est le boulot de l’os, et de personne d’autre, d’avoir un affichage toujours « frais ».
Certains programmes mal faits (comme YAM) ne laissent pas la boucle d’événements de MUI s’exécuter et peuvent avoir des erreurs de rafraichissement.
Mais déplacer la fenêtre de progression de SimpleMail pendant que celui ci récupère des mails ne laisse pas de trace.
Par contre, une fois les mails récupérés, si la fenêtre ne peut pas se fermer parce que l’utilisateur la retient via sa barre de titre alors la fonction CloseWindow() d’Intuition va bloquer et SimpleMail aussi.
C’est le moment où il peut y avoir des « traces de peintures ». Il n’y a rien à faire dans SimpleMail (ou tout autre programme) pour l’éviter.
Quand à SmartWin, il passe toutes les fenêtre du système en SmartRefresh ce qui a pour effet de placer tous les bitmap en mémoire vidéo. Hors le CPU est très fortement ralenti lorsqu’il accède à celle ci et cela a pour conséquence de fortement ralentir la GUI. Cela est d’autant plus vrai avec tous les effets de transparence/alpha blending qui sont effectués au CPU.
Cela dépend des configs mais je me souviens de quelqu’un qui se plaignait ici que ses fenêtres mettaient 1 ou 2 secondes à s’ouvrir après avoir installé SmartWin…
Il pourrait être plus amusant d’écrire un patch qui laisse les fenêtres se fermer même lorsque leur barre de titre est sélectionnée et que l’on ne veut pas qu’elles se ferment
Ui, c’est pour ça que Feelin prend totalement le contrôle de l’application lors de la méthode FM_Application_Run et n’en ressort que pour tuer l’application, pour forcer le développeur à tout encapsuler joliement. Perso, je trouve que le « ReturnID » et la « boucle » de MUI sont les pires inventions de l’informatique depuis Windows
PS: Pareil pour le rafraichissement simple, on voit ça que sous windows (remarque GTK aussi il me semble) ! Vive le smart-refresh et le composing !
moi je touche pas terre sur ce topic …
menfin
snif le pire de tous ca doit etre gtk il me semble que mui,feelin,et reaction sont pas mal d’apres certains programmeurs….
mais comme chacun aime ce qui lui plait
pour moi utilisateur je classe en style Macosx et son interface de ouf au dessus de tout esthetiquement, sinon mos Mui4 et Os4 Reaction sont pas mal, nux gtk c tout moche par contre qt c+ beau
win j’en parle pas et feelin a un beau look mais je connais pas assez (pas d’applications)
Le PSG qui gagne la ligue des champions c'est possible ... Que dans Swos.
Amiga Morphos Rules.@rusbak
Il suffit déjà de voir s’il respecte ou pas les directives officielles.
Dans le cas discuté ici :
Whenever MUI feels that your object should render itself, it sends you a MUIM_Draw method. This happens e.g. when a window is openend for the first time, after a window was resized or when a simple refresh window needs to be refreshed. In the latter case, MUI already set up a clip region to restrict rendering to the necessary areas.
Donc, si tu reçois MUIM_Draw et que tu ne réaffiches pas ce qu’il faut : hop poubelle
15 sujets de 1 à 15 (sur un total de 18)
- 1
- 2
- Vous devez être connecté pour répondre à ce sujet.
› Forums › AmigaOS, MorphOS et AROS › Général › MUI et rafraichissement