Home Forums Wiki Doc Install Extras Screenshots Source Code Projects Blog Users Groups Register
Glx-Dock / Cairo-Dock List of forums Technical discussions | Discussions techniques Alsamixer evolution
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)
Technical discussions | Discussions techniques

Subjects Author Language Messages Last message
Alsamixer evolution [Bug #74]
SQP English 17 fabounet [Read]
09 September 2010 à 14:31

SQP, Wednesday 18 August 2010 à 20:21 | Quote


Subscription date : 03 July 2010
Messages : 1090
As a personnal need, and use case to learn how the code work, I started working on an evolution of the alsamixer applet to use the theme (jauge) renderer.

First step was to change a little the applet structure to copy the netspeed one. So I disabled the actual rendering part of the applet and implemented the theme version.

I looks really cool with most of the one indicator themes
Here's a first video, playing with different display options :

http://videobin.org/+1lg/1un.html

Desklet mode :
  • themes radial : old square, turbo night
  • themes multi svg : battery, circle, hal, wifi square
  • themes crop svg : horizontal and vertical mini reggae (two versions atm) and resizing behaviour.
Dock mode :
  • still with horitontal reggae, with 15, 20, 10 px height, then default (48)
  • theme radial : radium

That part seem to work well with all my tests, and I wondered if you would look at it before I start more evolutions. (code is full of disabled parts of old version)
    • Try to reenable the old version in another renderer (need to look further to understand some parts)
    • Work on the rotate option
    • Look at that desklet scale option

matttbe, Wednesday 18 August 2010 à 20:29 | Quote


Subscription date : 24 January 2009
Messages : 12573
Thx SQP.

Can you just added a task for that? You can click on the top-right button (it's also to check if you've understood how the project manager works )

SQP, Wednesday 18 August 2010 à 20:33 | Quote


Subscription date : 03 July 2010
Messages : 1090
(Message added on the task #74)

Alsamixer must use theme display as there are really cool options there it might benefit from.

SQP, Wednesday 18 August 2010 à 20:34 | Quote


Subscription date : 03 July 2010
Messages : 1090
Please, could you add the video tag, I can't remember how it worked, and don't find any doc about it.

SQP, Thursday 19 August 2010 à 17:26 | Quote


Subscription date : 03 July 2010
Messages : 1090
2nd video to show first version of the applet rotate option



http://videobin.org/+1ll/1us.html

with special bonus, a small annoying bug : when you expand jauge settings, it generate an horizontal scrollbar

(damn video don't want to appear, maybe related to the / in address)

SQP, Friday 20 August 2010 à 22:50 | Quote


Subscription date : 03 July 2010
Messages : 1090
Here is a little video showing some new options I'm working on (and seem ok)
  • Alsamixer use theme
  • Applet theme option : Rotate theme in vertical mode
  • Applet theme option : Show theme text (so don't bother about it atm)
  • Theme : New effect (crop)


http://videobin.org/+1lt/1v0.html
(don't bother about options name : renderer "graph" should be "icon", and text display "no" should be "theme")

I need to know what you think about that, and do some code cleanup before I can push, but that could be fast if everybody if ok with it.

Note at the end, the Ubuntu Battery Light pointing downwards when rotated. I just added one xml key to the Dark theme file to tell him it rotate counterclockwise instead.

Bugs not related I need confirmed so I can open tasks :
  • Config panel : the horizontal scrollbar appear when vertical scrollbar is activated. Happens every time a theme selection is involved (netspeed, sysmon, clock, weather...). Some example :
    • in default views config
    • system monitor > configuration : expand gauge fieldset
    • switcher > config
    • dustbin > module : expand desktop-less support

  • Icon text : position problem when applet height is resized (visible in vertical mode, the text is sometimes hidden behing bottom applet)

matttbe, Friday 20 August 2010 à 23:29 | Quote


Subscription date : 24 January 2009
Messages : 12573
It looks great!!! Let's continue

SQP, Wednesday 25 August 2010 à 15:39 | Quote


Subscription date : 03 July 2010
Messages : 1090
ptite question technique : dans le struct.h je définis mes types de renderer autorisés, par contre comment se fait la relation avec le numéro de message mentionné dans le .po ?

typedef enum _CDAlsamixerDisplayType {
    CD_ALSAMIXER_GAUGE=0,
    CD_ALSAMIXER_ICON,
    CD_ALSAMIXER_NB_TYPES
    } CDAlsamixerDisplayType;


#: ../Network-Monitor/data/messages:133 ../Network-Monitor/data/messages:137
#: ../Network-Monitor/data/messages:175 ../Network-Monitor/data/messages:181
#: ../System-Monitor/data/messages:93 ../System-Monitor/data/messages:97
#: ../netspeed/data/messages:91 ../netspeed/data/messages:95
#: ../powermanager/data/messages:93 ../powermanager/data/messages:99
#: ../wifi/data/messages:93 ../wifi/data/messages:99
msgid "Gauge"
msgstr "Jauge"


et en même temps, comment est définie la valeur de CD_ALSAMIXER_NB_TYPES ?

fabounet, Wednesday 25 August 2010 à 15:52 | Quote


Subscription date : 30 November 2007
Messages : 17118
les trad viennent des .conf, y'a un script qui se charge de ça.

un enum part de 0, puis incrémente à chaque ligne, donc CD_ALSAMIXER_NB_TYPES vaut toujours ce qu'il faut

SQP, Wednesday 25 August 2010 à 17:30 | Quote


Subscription date : 03 July 2010
Messages : 1090
  • comment ajouter une simple valeur à une liste, ou plutot comment lui attacher un texte ?
  • c'est lié au fait que qd même si je repars d'une version bzr clean j'ai encore des paramètres que j'ai ajouté dans la config ?

SQP, Wednesday 25 August 2010 à 18:41 | Quote


Subscription date : 03 July 2010
Messages : 1090
  • c'est lié au fait que qd même si je repars d'une version bzr clean j'ai encore des paramètres que j'ai ajouté dans la config ?


OK je l'ai eu. Je m'attendais pas à ce que l'affichage de la config du plugin se retrouve dans ~/.config/cairo-dock/current_theme/plug-ins/AlsaMixer/AlsaMixer.conf et ca a l'air de me regler l'autre problème (j'ai bien mon choix qui apparait sur mon select)

J'imagine que ya une mise à jour de faite si on change la version du plugin. (mais c'est surprenant comme truc)

fabounet, Thursday 26 August 2010 à 12:04 | Quote


Subscription date : 30 November 2007
Messages : 17118
oui tous les panneaux de conf sont auto-générés
effectivement s'il y'a un changement de version, le .conf est mis à jour.

SQP, Wednesday 08 September 2010 à 15:11 | Quote


Subscription date : 03 July 2010
Messages : 1090
alors ca c'est plutôt facile à faire, et ca me bug pas mal visuellement, donc je vais le reprendre. Et puis ca peut générer du besoin et du testeur pour des petits thèmes sympa

Je vais avoir besoin de faire qq changements :
  • A. Renderer icon : est ce que je crée un renderer minimaliste pour le display icon, ou est ce que je garde ca dans l'applet
  • B. Rename : est ce que j'en profite pour renommer l'appli en volume ou sound ?
  • C. Option slider (le 'scale') : je veux ajouter une option pour activer ou pas le slider en mode desklet
  • D. Parametres actions : les events souris (left, middle..) complètement paramétrables (comme sur showdesktop) avec une liste
  • E. Emblems : je vais tester les emblems pour les mute / disabled

fabounet, Wednesday 08 September 2010 à 17:24 | Quote


Subscription date : 30 November 2007
Messages : 17118
A oui si on veut un code propre
B déjà fait
C il me semble que déjà fait aussi, ou une option approchante
D tu veux dire pour pouvoir inverser les boutons (middle-click, double-click, left-click) ?
E l'image mute est quand même assez dépendante de l'image normale, un emblême serait assez limitatif pour les thèmes

SQP, Wednesday 08 September 2010 à 18:15 | Quote


Subscription date : 03 July 2010
Messages : 1090
B. Je pensais à rename tout, comme ca je peux bosser en parallele et faire tester sans impacter l'autre et finir avec un joli répertoire "Sound"
side question : c'est quoi le format officiel pour le nom des nouveaux modules : minuscule ou CamelCase, les tirets... ?

C. Il n'y a que l'option pour activer ou non le slider quand on survole. Vu qu'il ne sert pas à grand chose quand on a une roulette, je pense qu'on pourrait avoir une première option pour l'activer complètement. (avoir un select slider : non/survol/toujours)

D. Pouvoir avoir pour chaque bouton un select avec toutes les actions dispo (ca c'est une option que j'aimerais étendre, l'exemple du showdesktop montre exactement ce que je ferais)

E. comment ca dépendante de l'image normale ?
Pour le right menu, j'ai edité le svg mute actuel pour sortir l'icone mute et en faire un fichier emblem-mute : c'etait juste l'icone par défaut avec un emblème en plus en haut à droite. J'ai juste à reappliquer ce fichier emblem par dessus l'icone de base et je retrouve la même chose.

fabounet, Thursday 09 September 2010 à 12:39 | Quote


Subscription date : 30 November 2007
Messages : 17118
B pas trop utile à mon avis, le nom affiché d'un plug-in peut être différent de son ID
C ah ok alors
D pourquoi pas oui
E
c'etait juste l'icone par défaut avec un emblème en plus en haut à droite

oui mais beaucoup de thèmes ont une icône bien différente pour le "mute", qui ne se résume pas à un emblème
dans tous les cas il faut fournir 2 images, donc autant garder la solution la moins contraignante.

SQP, Thursday 09 September 2010 à 13:17 | Quote


Subscription date : 03 July 2010
Messages : 1090
B. bah moi ca me permet de bosser et faire tester tranquillement. Après ca fait aussi du taf de rename au début, mais si ca permet d'aligner le nom du plugin sur un standard, c'est pas grave, c'est la bonne occasion.

E. la moins contraignante pour certains, ceux qui veulent pouvoir changer toutes les icones.
La pire pour les autres qui veulent la même icone avec un emblème différent. Une modif sur l'icone doit etre répercutée sur toutes les images.
Et j'imagine que la plupart des personnes seront dans ce cas la : envie de changer l'icone de leur applet sans avoir à editer tous les fichiers

Je vais mater un peu tout ce qui se fait sur les autres modules du genre qui utilisent des icones (music et weather).
Parce que sinon en fait (et ca me rapelle qqchose), c'est juste une image de fond, qu'on peut changer (avec un effet ou pas), et un emblème par dessus qui peut changer aussi. Rien de bien compliqué ou nouveau, c'est même très proche du comportement du musicplayer si j'ai bien compris

Si il suffit d'ajouter une option pour savoir si on utilise les fichiers fournis comme emblèmes ou comme background, ca devrait suffir pour tout le monde

fabounet, Thursday 09 September 2010 à 14:31 | Quote


Subscription date : 30 November 2007
Messages : 17118
ce qu'il y'a c'est que ton emblème s'acord avec l'image
prend par exemple le thème tout noir (Brit peut-être), l'icône mute est le haut-parleur sans son et avec une grande barre noire en travers.
donc l'icône mute n'est pas seulement l'image de base avec un emblème (même si le cas peut se présenter)

Technical discussions | Discussions techniques

Subjects Author Language Messages Last message
Alsamixer evolution [Bug #74]
SQP English 17 fabounet [Read]
09 September 2010 à 14:31

Post a message

Anti-spam filter 2 (*) times (*) 7 =
            
Did you know ? The Size tag can display your text in any size : [size=35][/size]


Glx-Dock / Cairo-Dock List of forums Technical discussions | Discussions techniques Alsamixer evolution Top

Online users : bubakarisizo,

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.