Home Forums Wiki Doc Install Extras Screenshots Source Code Projects Blog Users Groups Register
Glx-Dock / Cairo-Dock List of forums Applets | Applets Applet Doncky
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] Applet Doncky [Bug #7]
Page : 1 2 3 ...16 17 18
nochka85 Français 356 matttbe [Read]
03 November 2012 à 01:32

nochka85, Sunday 24 January 2010 à 15:47


Subscription date : 29 November 2007
Messages : 7408
L'applet vient d'être renommée : Exit WriteThis et bonjour à Doncky !


Voilà, je viens de pusher sur ma branche perso la 1ère version de l'applet non finalisée ... mais fonctionnelle .

Pour la récupérer : bzr branch lp:~nochka85/cairo-dock-plug-ins/WriteThis <- MàJ du 31/01/10 : L'applet est désormais dispo sur la branche principale du dock



TODO LIST :
- Enlever le timer utilisé pour récupérer le code de system-monitor (surement le fautif de la conso CPU un peu élevée)
- Ajout de barres et de graphs style conky <- Màj le 30/01/10
- Ajouter la possibilité de passer d'un .xml à un autre avec la molette souris
- Ajout de nouvelles fonctions "internal"
- Création d'exemples de .xml (celui fourni est vraiment léger) + ajout d'une "documentation" sommaire (pour les commandes internes notamment) <- Màj du 13/02/10

Et voici ce que cela donne pour l'instant (MàJ du 22/02/10) :

http://uppix.net/3/c/6/90555b0b0cfd74d56cae46a3fd489.png

Voilà, j'attends vos retours + vos questions

DOCUMENTATION POUR LE .XML : (màj le 21/02/10)
(le fichier documentation.txt est disponible dans /usr/share/cairo-dock/plug-ins/Doncky )

DESCRIPTION DES BALISES :

code        : Balise principale contenant le code

zone        : Balise pour la zone de texte ( = 1 balise zone par fonction/font/couleur,etc...).
         /!\ Une ligne peut contenir plusieurs zones !

txt        : Zone de texte simple
         Ex: <txt>Hello World</txt>

cmd        : Commande bash "simple"
         Ex: <cmd>uname -r</cmd>

echo        : Commande bash "avancée" identique à un sh -c 'echo "..."' dans un terminal
         Ex: <echo>`cat /etc/issue.net` $(lsb_release -sc)</echo>

alignW        : Alignement horizontal du texte sur le desklet (left, center ou right ... left par défaut)

alignH        : Alignement vertical du texte sur le desklet (top, middle ou low ... middle par défaut)

font        : Force la font définie par défaut en config pour la zone en cours
         Ex: <font>Terminal Bitstream Vera Sans Mono Bold 10</font>

color        : Force la couleur définie par défaut en config pour la zone en cours (valeurs de 0 à 255)
         Utilisation : <color>red;green;blue;alpha</color>
         Ex: <color>255;255;255;255</color>

br        : Retour chariot -> Fin de la ligne
         Ex1: <br/> (pour un retour chariot classique)
         Ex2: <br>30</br> (pour un retour chariot avec décalage forcé)

nbr        : idem br mais en restant sur la même ligne
         (utilisé pour avoir plusieurs alignements différents sur une même ligne)
         Ex1: <nbr/> (pour un retour chariot classique)
         Ex2: <nbr>-5</nbr> (pour un retour chariot avec décalage forcé)

internal    : Commande interne (voir liste ci-dessous)
         Ex: <internal>uptime</internal>

bar        : Affiche une barre sur tout le reste de la ligne qui renvoit la valeur
         d'une commande interne (% uniquement).
         Ex: <bar>cpuperc;8</bar> (8 étant la hauteur de la barre)

lbar        : idem bar mais avec une largeur définie
         Ex: <lbar>cpuperc;150;8</lbar> (150 étant la largeur et 8 la hauteur)

refresh        : Durée entre 2 raffraichissements en s (pour les balises cmd, echo et bar uniquement)

img        : Affiche une image - Utilisation : <img>chemin_complet_de_l_image</img>

imgsize        : Définit la taille de l'image en spécifiant la largeur souhaitée (en conservant le ratio)

imgsizeW    : Largeur de l'image (nécéssite de renseigner imgsizeH) pour forcer le ratio

imgsizeH    : Hauteur de l'image (nécéssite de renseigner imgsizeW) pour forcer le ratio

override    : Permet de forcer le positionnement d'une zone sans influencer la taille de la ligne
         afin de recaler la zone très précisément.
         Utilisation : <override>Height;Width</override>
         Ex: <override>7;0</override>

mount_point    : Permet de spécifier un point de montage à utiliser pour les commandes internes fs
         Si aucun point de montage n'est spécifié -> utilisation de / par défaut.
         Ex: <mount_point>/home</mount_point>

stroke        : Dessine une ligne de l'épaisseur spécifiée jusqu'à la fin de la ligne
         Ex: <stroke>1</stroke>

lstroke        : Dessine une ligne de la largeur et de l'épaisseur spécifiées
         Ex: <lstroke>100;1</lstroke> (= ligne de largeur 100 et d'épaisseur 1)

LISTE DES COMMANDES INTERNES :

cpuperc        : Utilisation CPU en %
cpuperc2f    : Idem cpuperc mais avec 2 chiffres (de 00 à 99)
memperc        : Utilisation RAM en %
memperc2f    : Idem memperc mais avec 2 chiffres (de 00 à 99)
mem        : RAM utilisée en Mo
memg        : Idem mem mais en Go
memmax        : Taille totale RAM en Mo
memmaxg        : Idem memmax mais en Go
swapperc    : Utilisation SWAP en %
swapperc2f    : Idem swapperc mais avec 2 chiffres (de 00 à 99)
swap        : SWAP utilisé en Mo
swapg        : Idem swap mais en Go
swapmax        : Taille totale SWAP en Mo
swapmaxg    : Idem swapmax mais en Go
nvtemp        : Température CG en °C (cartes NVIDIA uniquement)
nvname        : Nom de la carte graphique (cartes NVIDIA uniquement)
nvdriver    : Version du driver (cartes NVIDIA uniquement)
nvram        : RAM CG (cartes NVIDIA uniquement)
uptime        : Temps de connexion
fs_size        : Taille totale du disque spécifié grace à la balise <mount_point> (en Go)
fs_free        : Espace libre du disque spécifié grace à la balise <mount_point> (en Go)
fs_used        : Espace utilisé du disque spécifié grace à la balise <mount_point> (en Go)
fs_freeperc    : Espace libre du disque spécifié grace à la balise <mount_point> en %
fs_usedperc    : Espace utilisé du disque spécifié grace à la balise <mount_point> en %
fs_type        : Type du disque spécifié grace à la balise <mount_point> (ex: ext4)
fs_device    : Nom du disque spécifié grace à la balise <mount_point> (ex: sda1)

matttbe, Sunday 24 January 2010 à 15:59


Subscription date : 24 January 2009
Messages : 12573
Cool, merci Nochka !!!

Pour répondre à ta question lancée sur ubuntu-fr, je suis d'accord avec taiebot pour l'intégration facile d'images, sans devoir passer par des polices.
Aussi, l'idéal serait de "piquer" des fonctionnalités d'autres applets, style la météo, RSS, la batterie, l'état des disques, le réseau, les ip, les process (ordonnés par consommation de ram, de cpu, etc.), une todo list, etc. . Pourquoi pas également une balise 'vspace' et 'hspace' pour créer un espace vide en donnant une taille en px (ou cm avec un calcul en plus )

Pour l'optimisation, est-ce que tout est redessiné chaque seconde où uniquement ce qui est 'dynamique' ? Pourra-t-on choisir le refresh de certaines commandes (un peu inutile sauf pour RSS, IP, température, etc.)

Pour l'heure, est-ce que c'est une commande que tu répètes toutes les secondes ?

PS: c'est marrant sur ton screenshot, la valeur du CPU n'est pas la même (refresh différé je suppose)

nochka85, Sunday 24 January 2010 à 16:21


Subscription date : 29 November 2007
Messages : 7408
je suis d'accord avec taiebot pour l'intégration facile d'images, sans devoir passer par des polices.


Tout à fait d'accord aussi -> c'est une très bonne idée

Aussi, l'idéal serait de "piquer" des fonctionnalités d'autres applets, style la météo, RSS, la batterie, l'état des disques, le réseau, les ip, les process (ordonnés par consommation de ram, de cpu, etc.), une todo list, etc. .


Pour çà, il faudrait que Fab trouve une technique pour transférer les données d'une applet à une autre (DBus ?) ... par contre, l'inconvénient, c'est qu'il faudra que ces applets tournent aussi pour avoir quelque chose ... A moins que l'on puisse les lancer en tâche de fond sans aucun affichage si ces dernières ne sont pas activées

Pourquoi pas également une balise 'vspace' et 'hspace' pour créer un espace vide en donnant une taille en px (ou cm avec un calcul en plus )


A voir plus tard -> Pour l'instant cela marche en mettant une zone de texte vide avec juste un br et une taille de police pour régler la taille du saut de ligne

Pour l'optimisation, est-ce que tout est redessiné chaque seconde où uniquement ce qui est 'dynamique' ? Pourra-t-on choisir le refresh de certaines commandes (un peu inutile sauf pour RSS, IP, température, etc.)
Pour l'heure, est-ce que c'est une commande que tu répètes toutes les secondes ?


En fait, il y a un refresh réglable pour les commandes (mini 1 seconde) -> Cela permet de relancer la commande ... mais l'affichage, lui est raffraîchit "globalement" toutes les secondes.

PS: c'est marrant sur ton screenshot, la valeur du CPU n'est pas la même (refresh différé je suppose)


Vu que les valeurs sont récupérées toutes les secondes et que les 2 instances ne se sont pas lancées en même temps au démarrage (peut être 1/2 secondes d'écart), ceci explique cela

matttbe, Sunday 24 January 2010 à 16:25


Subscription date : 24 January 2009
Messages : 12573
A voir plus tard -> Pour l'instant cela marche en mettant une zone de texte vide avec juste un br et une taille de police pour régler la taille du saut de ligne
Ok mais c'est justement pour éviter un max possible ce genre de bidouille comme c'est le cas avec conky (ex: utiliser des polices pour les images, etc.)

Cela permet de relancer la commande ... mais l'affichage, lui est raffraîchit "globalement" toutes les secondes.
Mouais, ce sera un truc à regarder

nochka85, Sunday 24 January 2010 à 16:30


Subscription date : 29 November 2007
Messages : 7408
Ok mais c'est justement pour éviter un max possible ce genre de bidouille comme c'est le cas avec conky


mais je suis tout à fait d'accord ... je dis juste que vu que cela marche avec la bidouille en question, ce n'est pas prioritaire

Mouais, ce sera un truc à regarder


Bah je ne vois pas trop comment faire autrement ... Fab ? C'est possible de ne raffraîchir qu'une petite zone d'un desklet ?

... mais en même temps, je ne pense pas que cela soit bien gourmand en CPU -> Le relevé (ou le calcul) des valeurs -> oui .... mais le simple fait de dessiner

fabounet, Sunday 24 January 2010 à 18:42


Subscription date : 30 November 2007
Messages : 17118
oui tu peux, mais il faut savoir exactement quelle partie !
c'est ça qui est pas évident.
et encore il faudrait être sûr que le texte que tu vas redessiner prenne la même place que celui que tu as dessiné le coup d'avant.

nochka85, Sunday 24 January 2010 à 19:30


Subscription date : 29 November 2007
Messages : 7408
Et est-ce que le gain éventuel vaut le coup de s'aventurer la dedans ?

matttbe, Sunday 24 January 2010 à 19:43


Subscription date : 24 January 2009
Messages : 12573
Oh que oui je pense !

Regarde comment X gère l'affaire, il redessine le moins possible ! Le dock aussi je pense (uniquement ce qui bouge)

nochka85, Sunday 24 January 2010 à 20:39


Subscription date : 29 November 2007
Messages : 7408
Bah si Fab, dis oui, alors ce sera dans un tout dernier temps (histoire de vraiment optimiser au maximum) .... mais sincèrement, y'a de grandes chances que si cela se fait, ce soit Fab qui s'y colle !

EDIT : Allez, juste pour la forme, voici le 1er rendu "barre" :

http://uppix.net/f/7/a/7f1c048dd1f53d90f6cdc46d0b940.png

... je dis "juste pour la forme" car pour l'instant, elle n'est pas calée en hauteur comme il faut, + le code est "bidouillé" à fond <- Mais çà marche pas mal !

fabounet, Monday 25 January 2010 à 01:54


Subscription date : 30 November 2007
Messages : 17118
oui tu peux y gagner (sûrement même), mais ça sera pas de la tarte !
et je ne sais pas dire combien on y gagnerait. faudra voir si on a des problèmes de perfo ou pas.

nochka85, Monday 25 January 2010 à 12:46


Subscription date : 29 November 2007
Messages : 7408
Alors je laisse tomber pour l'instant -> on verra ça plus tard

A part ça, concernant le .XML, il va falloir que je revois son architecture car cela va vite devenir le bordel ... Mais avant ça , je vais finir le rendu barre + m'attaquer au rendu graph ... Et enfin, intégrer les images.

D'ailleurs, pour les graph je reste sur du pur cairo pour l'instant -> on verra pour passer tout ça en OpenGL à la fin (afin d'avoir des graphs fluides ).
Derniers point sur le rendu de la barre : est-ce que je la laisse avec une seule couleur, ou bien faut il passer à un dégradé de 2 couleurs ? J'attends vos avis sur ce point

matttbe, Monday 25 January 2010 à 13:17


Subscription date : 24 January 2009
Messages : 12573
Derniers point sur le rendu de la barre : est-ce que je la laisse avec une seule couleur, ou bien faut il passer à un dégradé de 2 couleurs ? J'attends vos avis sur ce point
Ca peut être beau un dégradé

fabounet, Monday 25 January 2010 à 13:46


Subscription date : 30 November 2007
Messages : 17118
as-tu esayé de dessiner un CairoGraph directement ?
à mon avis ça peut t'épargner pas mal de boulot

nochka85, Monday 25 January 2010 à 19:19


Subscription date : 29 November 2007
Messages : 7408
Ah non -> je ne connais même pas .. Mais bon, le dessin actuel n'est pas trop compliqué non plus

EDIT : Euh ... tu parlais de çà pour quel rendu ? Les barres ou les "graphs" ? .... tu as un exemple ou un tuto sous la main ? <- J'ai regardé sur google (vite fait ... certes), mais je ne vois pas trop

nochka85, Tuesday 26 January 2010 à 20:25


Subscription date : 29 November 2007
Messages : 7408
up pour fab sur l'edit

fabounet, Tuesday 26 January 2010 à 21:51


Subscription date : 30 November 2007
Messages : 17118
je parlais pour les graphes, mais pour les barres ça pourrait aussi, je voulais faire un rendu barre déjà.

nochka85, Tuesday 26 January 2010 à 23:34


Subscription date : 29 November 2007
Messages : 7408
Bah c'est déjà quasi bon pour la barre (mais juste avec 2 rectangles -> Un pour le contour + 1 pour le remplissage )

... Pour le CairoGraph , tu aurais un exemple concret ?

fabounet, Wednesday 27 January 2010 à 00:16


Subscription date : 30 November 2007
Messages : 17118
bah euh ... comme pour les applets je dirais, juste qu'il faut le positionner sur l'icône.
regarde peut-être les macros qui masquent tout ça dans applet-facility.h

nochka85, Wednesday 27 January 2010 à 22:49


Subscription date : 29 November 2007
Messages : 7408
bah euh ... comme pour les applets je dirais, juste qu'il faut le positionner sur l'icône.
regarde peut-être les macros qui masquent tout ça dans applet-facility.h


Euh ... et concrètement ??

... Bon, sinon, pour les barres, çà avance pas mal :
http://uppix.net/c/3/8/4a099d2af97ef52c5051bc4abcbaa.png
(j'ai fait 2 types de barres -> les <bar> qui s'adaptent tout seul pour remplir la ligne (comme sur le screenshot) + les <lbar> qui ont une largeur imposée )

... par contre, il n'y aura qu'une seule couleur pour l'instant ... sinon, c'est un peu trop galère (d'ailleurs, je n'ai pas trouver de solution) !

EDIT : J'ai mis à jour ma branche perso -> J'attends vos remarques

matttbe, Wednesday 27 January 2010 à 22:53


Subscription date : 24 January 2009
Messages : 12573
C'est plus pour les graph que c'est intéressant d'avoir du dégradé je pense

Applets | Applets

Subjects Author Language Messages Last message
[Locked] Applet Doncky [Bug #7]
Page : 1 2 3 ...16 17 18
nochka85 Français 356 matttbe [Read]
03 November 2012 à 01:32


Glx-Dock / Cairo-Dock List of forums Applets | Applets Applet Doncky 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.