Home Forums Wiki Doc Install Extras Screenshots Source Code Projects Blog Users Groups Register
Glx-Dock / Cairo-Dock List of forums Applets | Applets System Monitor
The latest stable release is the *3.4.0* : How to install it here.
Note: We just switched from BZR to Git on Github! (only to host the code and your future pull requests)
Applets | Applets

Subjects Author Language Messages Last message
[Locked] System Monitor
Page : 1 2 3 ...5 6 7 8 9 ...11 12 13
Mav Français 240 matttbe [Read]
15 November 2010 à 19:12

nochka85, Sunday 20 September 2009 à 19:07


Subscription date : 29 November 2007
Messages : 7408
Bon, donc je veux faire la 2ème possibilité (sachant que j'ai bien le script de Mav avec l'option bzr branch) :
bzr commit -m "MON_MESSAGE"
bzr push lp:~cairo-dock-team/cairo-dock-plug-ins/TA_BRANCHE


... mais je mets quoi à la place de "TA_BRANCHE" ?????

matttbe, Sunday 20 September 2009 à 20:02


Subscription date : 24 January 2009
Messages : 12573
mais je mets quoi à la place de "TA_BRANCHE" ?????
Ce que tu veux

nochka85, Sunday 20 September 2009 à 20:14


Subscription date : 29 November 2007
Messages : 7408
Ok -> Je teste çà après manger !

matttbe, Sunday 20 September 2009 à 21:10


Subscription date : 24 January 2009
Messages : 12573
Voilà après ta modif Nochka :

nochka85, Sunday 20 September 2009 à 22:03


Subscription date : 29 November 2007
Messages : 7408
@Pour tout le monde : La modif ne concernait QUE la ligne 106 :

-- pRenderAttr->iLatencyTime = myConfig.iCheckInterval * 1000 * myConfig.fSmoothFactor;
++ pRenderAttr->iLatencyTime = myConfig.iCheckInterval * 1000 * (myConfig.fSmoothFactor*5);


Après discussion sur IRC ... et pour les autres ... voici ce que çà donne chez moi avec (myConfig.fSmoothFactor*2) (qui est fluide chez matttbe et son dual core ... mais pas chez moi ):
http://videobin.org/+g6/io.html

et voici avec (myConfig.fSmoothFactor*5) (fluide chez moi .... mais qui saccade chez matttbe et son dual core <- il doit régler à 0.5 le smooth pour que cela soit fluide ) :

http://videobin.org/+g7/ip.html

... bref ... commentaire de Tofe :

<Tofe> il n'y a pas de timer à intervalle fixe, on se base sur "on_draw_icon"
<Tofe> ce qu'il faudrait, donc, c'est que myData.iSmoothAnimationStep ne soit pas incrémenté dans CD_APPLET_ON_UPDATE_ICON_BEGIN,mais par un timer externe à tout ça
<Tofe> avec un petit mutex de chez mémé, ça devrait passer, c'est juste un entier à incrémenter toutes les 10ms


... je me marque tout çà ici pour m'en souvenir .... et au cas où quelqu'un voudrait aider

nochka85, Sunday 20 September 2009 à 23:25


Subscription date : 29 November 2007
Messages : 7408
@Fab : Bon, après en avoir discuter un peu avec matttbe sur IRC, il m'a fait une remarque "fort d'à propos" ->

<matttbe>comme dit Tofe, le timer est pris par rapport aux résultats => si les résultats prennent plus ou moins de temps à arriver, alors tu as des résultats différents
si tu utilises un timer sur le côté, alors tu n'as plus ce problème. le timer est tjs le même peut importe la puissance du pc
<ppmt> vous recommencez ;).....bon je vais faire mes crepes moi!


(oups, désolé pour la dernière ligne, je ne voulais pas la mettre )

Bref, selon son idée (et je plussoie à 100%) -> "Je pense qu'il manque un mutex sur le côté."

... en clair, il y a actuellement un "bug" causé par le fait que le smooth dépende du "on_draw_icon" et qui fait que suivant la machine, le réglage du smooth donne un rendu différent (arrêt plus ou moins long suivant la puissance du PC) ! Bref, en plus de rajouter le VRAI rendu fluide, ce serait sympa d'ajouter ce fameux "mutex" afin de dissocier le temps du smooth de la puissance du PC

matttbe, Sunday 20 September 2009 à 23:30


Subscription date : 24 January 2009
Messages : 12573
Tu as oublié l'explication de Tofe :
<Tofe> un mutex c'est pas très compliqué, c'est juste un marqueur pour dire "je vais utiliser ça, et c'est exclusif"
exemple, si tu as deux codes en parallèles (car les timer, dans CD, se font dans des threads en parallèle)
g_mutex *pMutexMonCompteur = g_mutex_new();
et dans le code principal:
g_mutex_requisitionner(pMutexMonCompteur); // cette ligne ne sera dépassée que lorsque ce mutex sera "libre" de toute réquisition
... blabla incrémenter compteurSmoothMachin
g_mutex_liberer(pMutexMonCompteur); // laisser les autres threads jouer avec pMutexMonCompteur
et dans le timer:
g_mutex_requisitionner(pMutexMonCompteur);
... blabla bidouiller aussi compteurSmoothMachin
g_mutex_liberer(pMutexMonCompteur);
bon, c'est le principe en gros: ça permet de demander une utilisation exclusive pour faire des traitements.

nochka85, Sunday 20 September 2009 à 23:32


Subscription date : 29 November 2007
Messages : 7408
bah je supposais que Fabounet connaissait -> Un Dieu connait TOUT !

fabounet, Monday 21 September 2009 à 12:35


Subscription date : 30 November 2007
Messages : 17118
oki, en fait ici même pas besoin de mutex, car c'est du synchrone
en gros il manque un GTimer dans les CairoTask pour avoir le vrai temps écoulé et non pas supposer que le temps écoulé est égal à l'intervalle qu'on a fixé... si j'ai tout compris

nochka85, Monday 21 September 2009 à 13:40


Subscription date : 29 November 2007
Messages : 7408
euh ... bah tu as l'air de mieux avoir compris que moi en tout cas !

... mais çà a l'air d'être çà : Le temps varie d'une config à l'autre, donc, il faudrait maitriser le vrai temps écoulé

nochka85, Tuesday 22 September 2009 à 09:42


Subscription date : 29 November 2007
Messages : 7408
@Fab : Tu as fait la modif pour le VRAI rendu fluide ?? ... Je l'ai pas vu passer et pourtant, le mouvement est ok chez moi !

@Matttbe : çà marche chez toi aussi ?

matttbe, Tuesday 22 September 2009 à 12:10


Subscription date : 24 January 2009
Messages : 12573
Il est fluide s'il est à 50%

nochka85, Tuesday 22 September 2009 à 12:32


Subscription date : 29 November 2007
Messages : 7408
Tu es sûr d'avoir la dernière version ?
Chez moi, j'ai toujours la ligne 106 de applet-init.c qui est pRenderAttr->iLatencyTime = myConfig.iCheckInterval * 1000 * myConfig.fSmoothFactor; ... contrairement à ma modif ou je mettais un *5 à la fin ...

... mais c'est fluide à 1

matttbe, Tuesday 22 September 2009 à 12:33


Subscription date : 24 January 2009
Messages : 12573
Yep, j'ai regardé avant de posté
        pRenderAttr->iLatencyTime = myConfig.iCheckInterval * 1000 * myConfig.fSmoothFactor;

nochka85, Tuesday 22 September 2009 à 13:01


Subscription date : 29 November 2007
Messages : 7408
bon, donc il y a exactement le même soucis de timer réel qui n'est pas pris en compte

nochka85, Friday 02 October 2009 à 10:38


Subscription date : 29 November 2007
Messages : 7408
@Fab: je viens de voir que tu as fait des modifs concernant les textes dans les jauges ... et j'essaie de voir si çà marche ou pas mais je coince sur ce passage de cairo-dock-gauge.c :

                else if(xmlStrcmp (pGaugeSubNode->name, (const xmlChar *) "text_zone") == 0)
                {
                    
xmlNodePtr pTextSubNode;
                    for (
pTextSubNode pGaugeSubNode->xmlChildrenNodepTextSubNode != NULLpTextSubNode pTextSubNode->next)
                    {
                        if (
xmlStrcmp (pTextSubNode->name, (const xmlChar *) "text") == 0)
                            continue;
                        
//g_print ("  + %s\n", pTextSubNode->name);
                        
cTextNodeContent xmlNodeGetContent (pTextSubNode);
                        
//g_print ("     -> '%s'\n", cTextNodeContent);
                        
if(xmlStrcmp (pTextSubNode->name, (const xmlChar *) "textX") == 0)
                            
pGaugeIndicator->textX atof (cTextNodeContent);
                        else if(
xmlStrcmp (pTextSubNode->name, (const xmlChar *) "textY") == 0)
                            
pGaugeIndicator->textY atof (cTextNodeContent);
                        else if(
xmlStrcmp (pTextSubNode->name, (const xmlChar *) "textWidth") == 0)
                            
pGaugeIndicator->textWidth atof (cTextNodeContent);
                        else if(
xmlStrcmp (pTextSubNode->name, (const xmlChar *) "textHeight") == 0)
                            
pGaugeIndicator->textHeight atof (cTextNodeContent);
                        else if(
xmlStrcmp (pTextSubNode->name, (const xmlChar *) "textColorR") == 0)
                            
pGaugeIndicator->textColor[0] = atof (cTextNodeContent);
                        else if(
xmlStrcmp (pTextSubNode->name, (const xmlChar *) "textColorG") == 0)
                            
pGaugeIndicator->textColor[1] = atof (cTextNodeContent);
                        else if(
xmlStrcmp (pTextSubNode->name, (const xmlChar *) "textColorB") == 0)
                            
pGaugeIndicator->textColor[2] = atof (cTextNodeContent);
                    }
                    
g_print ("pGaugeIndicator->textWidth:%.2f\n"pGaugeIndicator->textWidth);
                }


Bref, je comprends qu'il faut entrer des valeurs dans le .xml, et j'ai donc fait ceci pour essayer dans mon fichier xml des jauges Vistaish (c'est juste la section de l'indicateur du CPU):

    <indicator>
        <text_zone>
            <text>Sans</text>
            <textX>-0,35</textX>
            <textY>-0,10</textY>
            <textWidth>1</textWidth>
            <textHeight>1</textHeight>
            <textColorR>1</textColorR>
            <textColorG>1</textColorG>
            <textColorB>1</textColorB>
        </text_zone>        
        <posX>-0,35</posX>
        <posY>-0,10</posY>
        <direction>1</direction>
        <posStart>-130</posStart>
        <posStop>130</posStop>
        <file key="needle">dial.svg</file>
    </indicator>


Cela me renvoit bien un message en console : pGaugeIndicator->textWidth:1,00
, donc mes valeurs semblent être prise en compte, MAIS rien ne s'affiche et j'ai un gros doute sur ce que je dois mettre comme valeur justement !
      1. text : J'y ai mis "Sans" (pour la police) .... mais est-ce que c'est çà ?
      2. textX et textY : J'ai mis les même valeurs que mon aiguille .... est-ce que le texte est bien censé s'afficher au point de rotation de l'aiguille ?
      3. textWidth et textHeight : Alors là, je ne sais pas quoi mettre ... est-ce la taille de la police et faut mettre un truc plus proche de 12 (par exemple) ou bien est-ce basé sur une échelle autre ?
      4. textColorR,G,B : C'est de combien à combien ? (0 à 1 ?)


Et pour finir, la question la plus importante -> Est-ce que c'est censé déjà marcher ou pas ???

EDIT : et si c'est censé marcher, est-ce que tu pourrait donner un petit exemple pour afficher le texte au centre de l'icône ?

fabounet, Friday 02 October 2009 à 13:01


Subscription date : 30 November 2007
Messages : 17118
j'ai pas encore réussi à le faire marcher moi-même
je re-essaye ce soir, je te dis quand c'est bon

nochka85, Friday 02 October 2009 à 13:56


Subscription date : 29 November 2007
Messages : 7408
j'ai pas encore réussi à le faire marcher moi-même


Arf ! ... j'ai passé plus d'une heure dessus

je re-essaye ce soir, je te dis quand c'est bon :)


Ok ... penses à fournir un petit exemple de jauge avec (type une jauge TurboNight modifiée pour mettre un petit texte )

fabounet, Friday 02 October 2009 à 14:10


Subscription date : 30 November 2007
Messages : 17118
oui, quoique le mieux ce sera tes 3 jauges vista-like

nochka85, Friday 02 October 2009 à 15:02


Subscription date : 29 November 2007
Messages : 7408
Certes ... mais c'était juste pour un exemple

Applets | Applets

Subjects Author Language Messages Last message
[Locked] System Monitor
Page : 1 2 3 ...5 6 7 8 9 ...11 12 13
Mav Français 240 matttbe [Read]
15 November 2010 à 19:12


Glx-Dock / Cairo-Dock List of forums Applets | Applets System Monitor Top

Online users :

Powered by ElementSpeak © 2007 Adrien Pilleboue, 2009-2013 Matthieu Baerts.
Dock based on CSS Dock Menu (Ndesign) with jQuery. Icons by zgegball
Cairo-Dock is a free software under GNU-GPL3 licence. First stable version created by Fabounet.
Many thanks to TuxFamily for the web Hosting and Mav for the domain name.