Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#176 Le 15/08/2013, à 14:37

spinoziste

Re : A quoi ressemble votre environnement -- Printemps/été 2013

fcn50 a écrit :

J'ai déjà vu ce spectrum3d mais le top serait que ce soit intégré dans le bureau sans cadre comme un conky. Je vais poster pour voir ce qu'en pense Didier T, le spécialiste conky maison.

Je plussoie .

@golgot : Classe !


Nous mourrons tous .

Hors ligne

#177 Le 15/08/2013, à 15:21

Compte anonymisé

Re : A quoi ressemble votre environnement -- Printemps/été 2013

fcn50 a écrit :

Je vais poster pour voir ce qu'en pense Didier T

Je crois que sur le post en question la demande ai déjà été posée wink

Dernière modification par Compte anonymisé (Le 15/08/2013, à 15:22)

#178 Le 16/08/2013, à 08:39

F50

Re : A quoi ressemble votre environnement -- Printemps/été 2013

golgot200 a écrit :

Je crois que sur le post en question la demande ai déjà été posée

Où est le poste et quelle est la réponse?

#179 Le 16/08/2013, à 11:24

Compte anonymisé

Re : A quoi ressemble votre environnement -- Printemps/été 2013

@fcn50

Bonjour,

http://forum.ubuntu-fr.org/viewtopic.php?id=1231521&p=5


Tiens si tu es sous Gnome, peut-être que ça pourrait faire :
http://impulse.ian-halpern.com/
http://gnome-look.org/content/show.php/?content=99383

Pour moi, trop de merde à rajouter (KDE)

Dernière modification par Compte anonymisé (Le 16/08/2013, à 11:32)

#180 Le 16/08/2013, à 18:57

Phlox

Re : A quoi ressemble votre environnement -- Printemps/été 2013

Bon, allez, je suis à fond dans les captures d'écrans en ce moment ! lol

Donc ça, c'est mon Thinkpad T61p qui me suit presque partout, pas de grosses différences par rapport à l'autre, sauf que ce n'est plus Debian mais Xubuntu 12.04 et Xfce 4.10.

1376671220.png 1376671271.png 1376671310.png

Dernière modification par tsagobar (Le 16/08/2013, à 21:33)

Hors ligne

#181 Le 16/08/2013, à 20:10

jean4111

Re : A quoi ressemble votre environnement -- Printemps/été 2013

tsagobar, comment a tu installé la barrre de droite ? ca m'interesse bien d'avoir toutes ses infos a disposition

Dernière modification par jean4111 (Le 16/08/2013, à 20:10)


Samuel - Angers
HDD SATA 1 TB + 160GB + 80GB

Hors ligne

#182 Le 16/08/2013, à 20:41

Phlox

Re : A quoi ressemble votre environnement -- Printemps/été 2013

Salut jean4111, smile

C'est un petit logiciel qui s'appelle conky, faut d'abord installer le paquet conky-all. Ensuite tu crées un fichier .conkyrc que tu places dans ton home (pour le mien il y a en plus un script lua pour afficher les barres vertes). Tu trouveras plein d'exemples sur ce topic.

Je te laisse le mien pour te donner une idée (en sachant qu'il faudra le modifier pour qu'il fonctionne sur ton ordi) :

 ######   #######  ##    ## ##    ## ##    ##    ########  ######     ###     ######    #######  ########     ###    ########  
##    ## ##     ## ###   ## ##   ##   ##  ##        ##    ##    ##   ## ##   ##    ##  ##     ## ##     ##   ## ##   ##     ## 
##       ##     ## ####  ## ##  ##     ####         ##    ##        ##   ##  ##        ##     ## ##     ##  ##   ##  ##     ## 
##       ##     ## ## ## ## #####       ##          ##     ######  ##     ## ##   #### ##     ## ########  ##     ## ########  
##       ##     ## ##  #### ##  ##      ##          ##          ## ######### ##    ##  ##     ## ##     ## ######### ##   ##   
##    ## ##     ## ##   ### ##   ##     ##          ##    ##    ## ##     ## ##    ##  ##     ## ##     ## ##     ## ##    ##  
 ######   #######  ##    ## ##    ##    ##          ##     ######  ##     ##  ######    #######  ########  ##     ## ##     ## 

background yes #Pour que conky tourne en arrière plan ; no = pour les tests
update_interval 1
total_run_times 0 #Temps en secondes ; 0 = toujours actif

cpu_avg_samples 2 #Nb d'échantillons pour calculer la moyenne d'utilisation CPU
net_avg_samples 2

override_utf8_locale yes

double_buffer yes
no_buffers yes

text_buffer_size 2048
#imlib_cache_size 0

# Window specifications #

own_window yes
own_window_transparent yes
own_window_argb_value 0
own_window_argb_visual yes
own_window_type desktop
own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager

border_inner_margin 0
border_outer_margin 0

minimum_size 300 0
maximum_width 340

alignment top_right
gap_x 10
gap_y 80

# Graphics settings #
draw_shades no
draw_outline no
draw_borders no
draw_graph_borders no

# Text settings #
use_xft yes
xftfont dejavusansmono:size=10
xftalpha 0.9
# Pour affichier les caracteres speciaux
override_utf8_locale yes
short_units yes
uppercase no

temperature_unit celsius

default_color 7F7F7F #gris fer 
color1 766F64 #ARDOISE
color2 FF7F00 #carotte
color3 BABABA #Étain 
color4 FF0000 #rouge
color5 00561B #vert impérial
color6 34C924 #vert pomme
color7 149414 #emeraude
color8 096A09 #vert clair
## ││ ▽▼△▲▵▴▾▿ ◥▶◀◤ ✌
#
## │ ─ ┌ ┬ ┐ └ ┴ ┘ ├ ┼ ┤
#
## ║ ═ ╔ ╦ ╗ ╚ ╩ ╝ ╠ ╬ ╣
#lua_load ~/.conky/scripts/draw_bg.lua
#lua_draw_hook_pre draw_bg

lua_load ~/.conky/scripts/bargraph_small.lua
lua_draw_hook_post main_bars

TEXT
┌─┬${color3}Système${color}──────────────────────$color3${time %d/%m/%Y}$color 
│ ├Bureaux ${goto 152}${desktop}/$desktop_number$color3${alignr 4}${time %H:%M:%S}$color
│ ├Uptime ${goto 152}${uptime}
│ ├Hostname ${goto 152}${nodename}
│ ├Linux ${goto 152}${kernel}
│ └Températures───┬C/M ${hwmon 0 temp 1}°C   CPU ${hwmon 0 temp 2}°C
│                 └C/G ${nvidia temp}°C   HDD ${hddtemp /dev/sda}°C     
├─┬${color3}Charge Système$color
│ ├┬Core 1 ${voffset 5}${goto 122}${freq_g 1} GHz${goto 210}${cpugraph  cpu1 14,85 303030 149414}${alignr 6}${cpu cpu1}%${voffset -5}
│ │└───────────
│ ├┬Core 2 ${voffset 5}${goto 122}${freq_g 2} GHz${goto 210}${cpugraph  cpu2 14,85 303030 149414}${alignr 6}${cpu cpu2}%${voffset -5}
│ │└───────────
│ ├┬Ram ${voffset 5}${goto 122}${mem}/$memmax${alignr 6}$memperc%${voffset -5}
│ │└───────────
│ └┬Swap ${voffset 5}${goto 122}${swap}/$swapmax${alignr 6}$swapperc%${voffset -5}
│  └───────────
│
├─┬${color3}Système de Fichiers$color
│ ├┬root ${voffset 5}${goto 122}${fs_used /}/${fs_size /}${goto 247}${diskiograph_read /dev/sda1 14,22 303030 149414}\
${goto 270}${diskiograph_write /dev/sda1 14,22 6E0B14 FF0000}${alignr 6}${fs_used_perc /}%${voffset -5}
│ │└───────────
│ └┬home ${voffset 5}${goto 122}${fs_used /home}/${fs_size /home}${goto 247}${diskiograph_read /dev/sda3 14,22 303030 149414}\
${goto 270}${diskiograph_write /dev/sda3 14,22 6E0B14 FF0000}${alignr 6}${fs_used_perc /home}%${voffset -5}
│  └───────────
│
├─┬${color3}Mini-Top${color}──────────load : $loadavg
│ ├───┬─────────────────────┬─────┬─────┐
│ │${goto 41}NOM${goto 216}CPU${goto 265}MEM${goto 313}PID
│ ├1.${color4}${top name 1}$alignr${top cpu 1}${top mem 1} ${top pid 1}$color
│ ├2.${color6}${top name 2}$alignr${top cpu 2}${top mem 2} ${top pid 2}$color
│ ├3.${color7}${top name 3}$alignr${top cpu 3}${top mem 3} ${top pid 3}$color
│ ├4.${color8}${top name 4}$alignr${top cpu 4}${top mem 4} ${top pid 4}$color
│ ├5.${color5}${top name 5}$alignr${top cpu 5}${top mem 5} ${top pid 5}$color
│ │${goto 41}Total  ${alignr}${processes} ($running_processes en cours)
│ └────┴────────────────────┴─────┘
│
├─┬${color3}Net${color}───────────────\
(${goto 169}${texeci 5000 wget http://checkip.dyndns.org -O - -o /dev/null | cut -d : -f 2 | cut -d \< -f 1})
│ ├┬${color3}Eth0${color}─────────────(${addr eth0})
│ │${if_existing /sys/class/net/eth0/operstate up}├Sortant ${goto 101}${upspeedgraph eth0 14,60 303030 149414}  ${upspeed eth0}/s${goto 240}↑${totalup eth0}
│ │└Entrant ${goto 101}${downspeedgraph eth0 14,60 6E0B14 FF0000}  ${downspeed eth0}/s${goto 240}↓${totaldown eth0}$else└Débranché !$endif    
│ ├┬${color3}Wlan0${color}────────────(${addr wlan0})
│ │${if_existing /sys/class/net/wlan0/operstate up}├Sortant ${goto 101}${upspeedgraph wlan0 14,60 303030 149414}  ${upspeed wlan0}/s${goto 240}↑${totalup wlan0}
│ │├Entrant ${goto 101}${downspeedgraph wlan0 14,60 6E0B14 FF0000}  ${downspeed wlan0}/s${goto 240}↓${totaldown wlan0}   
│ │└Signal            ${wireless_link_qual wlan0}%$else└Déconnecté !$endif
│ └┬${color3}Ports${color}─────────┬───────┐
│  ├Ouverts(${tcp_portmon 1 65535 count})${goto 137}In(${tcp_portmon 1 32767 count})${goto 201}Out(${tcp_portmon 32768 61000 count})
│  ├${tcp_portmon 1 65535 rport  0}${goto 95}${tcp_portmon 1 65535 rip  0}
│  ├${tcp_portmon 1 65535 rport  1}${goto 95}${tcp_portmon 1 65535 rip  1}
│  ├${tcp_portmon 1 65535 rport  2}${goto 95}${tcp_portmon 1 65535 rip  2}
│  ├${tcp_portmon 1 65535 rport  3}${goto 95}${tcp_portmon 1 65535 rip  3}
│  ├${tcp_portmon 1 65535 rport  4}${goto 95}${tcp_portmon 1 65535 rip  4}
│  ├${tcp_portmon 1 65535 rport  5}${goto 95}${tcp_portmon 1 65535 rip  5}
│  ├${tcp_portmon 1 65535 rport  6}${goto 95}${tcp_portmon 1 65535 rip  6}
│  ├${tcp_portmon 1 65535 rport  7}${goto 95}${tcp_portmon 1 65535 rip  7}
│  ├${tcp_portmon 1 65535 rport  8}${goto 95}${tcp_portmon 1 65535 rip  8}
│  ├${tcp_portmon 1 65535 rport  9}${goto 95}${tcp_portmon 1 65535 rip  9}
│  ├${tcp_portmon 1 65535 rport 10}${goto 95}${tcp_portmon 1 65535 rip 10}
│  └${tcp_portmon 1 65535 rport 11}${goto 95}${tcp_portmon 1 65535 rip 11}
│
└─┬${color3}Moc$color
  ${if_running mocp}├$color6${execpi 1 mocp -Q %state}$color
  ├${execpi 1 mocp -Q %artist}
  ├${execpi 1 mocp -Q %album}
  ├${execpi 1 mocp -Q %song}
  ├${execpi 1 mocp -Q %ct} / ${execpi 1 mocp -Q %tt}
  └${execpi 1 mocp -Q %b}kbps${else}└Pas de musique !$endif

Et le script bargraph_small.lua de wlourf à placer dans ~/.conky/scripts :

--[[ BARGRAPH WIDGET
    v2.1 by wlourf (07 Jan. 2011)
    this widget draws a bargraph with different effects 
    http://u-scripts.blogspot.com/2010/07/bargraph-widget.html
    
To call the script in a conky, use, before TEXT
    lua_load /path/to/the/script/bargraph.lua
    lua_draw_hook_pre main_rings
and add one line (blank or not) after TEXT

    
Parameters are :
3 parameters are mandatory
name    - the name of the conky variable to display, for example for {$cpu cpu0}, just write name="cpu"
arg        - the argument of the above variable, for example for {$cpu cpu0}, just write arg="cpu0"
          arg can be a numerical value if name=""
max        - the maximum value the above variable can reach, for example, for {$cpu cpu0}, just write max=100
    
Optional parameters:
x,y        - coordinates of the starting point of the bar, default = middle of the conky window
cap        - end of cap line, ossibles values are r,b,s (for round, butt, square), default="b"
          http://www.cairographics.org/samples/set_line_cap/
angle    - angle of rotation of the bar in degress, default = 0 (i.e. a vertical bar)
          set to 90 for an horizontal bar
skew_x    - skew bar around x axis, default = 0
skew_y    - skew bar around y axis, default = 0
blocks  - number of blocks to display for a bar (values >0) , default= 10
height    - height of a block, default=10 pixels
width    - width of a block, default=20 pixels
space    - space between 2 blocks, default=2 pixels
angle_bar    - this angle is used to draw a bar on a circular way (ok, this is no more a bar !) default=0
radius        - for cicular bars, internal radius, default=0
              with radius, parameter width has no more effect.

Colours below are defined into braces {colour in hexadecimal, alpha}
fg_colour    - colour of a block ON, default= {0x00FF00,1}
bg_colour    - colour of a block OFF, default = {0x00FF00,0.5}
alarm        - threshold, values after this threshold will use alarm_colour colour , default=max
alarm_colour - colour of a block greater than alarm, default=fg_colour
smooth        - (true or false), create a gradient from fg_colour to bg_colour, default=false 
mid_colour    - colours to add to gradient, with this syntax {position into the gradient (0 to1), colour hexa, alpha}
              for example, this table {{0.25,0xff0000,1},{0.5,0x00ff00,1},{0.75,0x0000ff,1}} will add
              3 colurs to gradient created by fg_colour and alarm_colour, default=no mid_colour
led_effect    - add LED effects to each block, default=no led_effect
              if smooth=true, led_effect is not used
              possibles values : "r","a","e" for radial, parallelel, perdendicular to the bar (just try!)
              led_effect has to be used with theses colours :
fg_led        - middle colour of a block ON, default = fg_colour
bg_led        - middle colour of a block OFF, default = bg_colour
alarm_led    - middle colour of a block > ALARM,  default = alarm_colour

reflection parameters, not avaimable for circular bars
reflection_alpha    - add a reflection effect (values from 0 to 1) default = 0 = no reflection
                      other values = starting opacity
reflection_scale    - scale of the reflection (default = 1 = height of text)
reflection_length   - length of reflection, define where the opacity will be set to zero
                      calues from 0 to 1, default =1
reflection            - position of reflection, relative to a vertical bar, default="b"
                      possibles values are : "b","t","l","r" for bottom, top, left, right
draw_me     - if set to false, text is not drawn (default = true or 1)
              it can be used with a conky string, if the string returns 1, the text is drawn :
              example : "${if_empty ${wireless_essid wlan0}}${else}1$endif",

v1.0 (10 Feb. 2010) original release
v1.1 (13 Feb. 2010) numeric values can be passed instead conky stats with parameters name="", arg = numeric_value    
v1.2 (28 Feb. 2010) just renamed the widget to bargraph
v1.3 (03 Mar. 2010) added parameters radius & angle_bar to draw the bar in a circular way
v2.0 (12 Jul. 2010) rewrite script + add reflection effects and parameters are now set into tables
v2.1 (07 Jan. 2011) Add draw_me parameter and correct memory leaks, thanks to "Creamy Goodness"

--      This program is free software; you can redistribute it and/or modify
--      it under the terms of the GNU General Public License as published by
--      the Free Software Foundation version 3 (GPLv3)
--     
--      This program is distributed in the hope that it will be useful,
--      but WITHOUT ANY WARRANTY; without even the implied warranty of
--      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
--      GNU General Public License for more details.
--     
--      You should have received a copy of the GNU General Public License
--      along with this program; if not, write to the Free Software
--      Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
--      MA 02110-1301, USA.        

]]

require 'cairo'

----------------START OF PARAMETERS ----------
function conky_main_bars()
    local bars_settings={
        {    --[ Graph for CPU1 ]--
            name="cpu",
            arg="cpu1",
            max=100,
            alarm=50,
            alarm_colour={0xFF0000,0.72},
            bg_colour={0xFFFFFF,0.3},
            fg_colour={0x00FF00,0.65},
            mid_colour={{0.45,0xFFFF00,0.70}},
            x=122,y=158,
            blocks=108,
            space=1,
            height=1,width=12,
            angle=90,
            smooth=true
            },
        {    --[ Graph for CPU2 ]--
            name="cpu",
            arg="cpu2",
            max=100,
            alarm=50,
            alarm_colour={0xFF0000,0.72},
            bg_colour={0xFFFFFF,0.3},
            fg_colour={0x00FF00,0.65},
            mid_colour={{0.45,0xFFFF00,0.70}},
            x=122,y=192,
            blocks=108,
            space=1,
            height=1,width=12,
            angle=90,
            smooth=true
            },
        {    --[ Graph for Memory ]--
            name="memperc",
            arg="",
            max=100,
            alarm=50,
            alarm_colour={0xFF0000,0.72},
            bg_colour={0xFFFFFF,0.3},
            fg_colour={0x00FF00,0.65},
            mid_colour={{0.45,0xFFFF00,0.70}},
            x=122,y=226,
            blocks=108,
            space=1,
            height=1,width=12,
            angle=90,
            smooth=true
            },
        {    --[ Graph for Root ]--
                        name="fs_used_perc",
            arg="/",
            max=100,
            alarm=50,
            alarm_colour={0xFF0000,0.72},
            bg_colour={0xFFFFFF,0.3},
            fg_colour={0x00FF00,0.65},
            mid_colour={{0.45,0xFFFF00,0.70}},
            x=122,y=328,
            blocks=108,
            space=1,
            height=1,width=12,
            angle=90,
            smooth=true
            },    
        {    --[ Graph for Root ]--
                        name="fs_used_perc",
            arg="/home",
            max=100,
            alarm=50,
            alarm_colour={0xFF0000,0.72},
            bg_colour={0xFFFFFF,0.3},
            fg_colour={0x00FF00,0.65},
            mid_colour={{0.45,0xFFFF00,0.70}},
            x=122,y=362,
            blocks=108,
            space=1,
            height=1,width=12,
            angle=90,
            smooth=true
            },    
	{    --[ Graph for Swap ]--
                        name="swapperc",
            arg="",
            max=100,
            alarm=50,
            alarm_colour={0xFF0000,0.72},
            bg_colour={0xFFFFFF,0.3},
            fg_colour={0x00FF00,0.65},
            mid_colour={{0.45,0xFFFF00,0.70}},
            x=122,y=260,
            blocks=108,
            space=1,
            height=1,width=12,
            angle=90,
            smooth=true
            },
         }    
    
-----------END OF PARAMETERS--------------


    
    if conky_window == nil then return end
    
    local cs = cairo_xlib_surface_create(conky_window.display, conky_window.drawable, conky_window.visual, conky_window.width, conky_window.height)
    
    cr = cairo_create(cs)    
    --prevent segmentation error when reading cpu state
    if tonumber(conky_parse('${updates}'))>3 then
        for i in pairs(bars_settings) do
            
            draw_multi_bar_graph(bars_settings[i])
            
        end
    end
    cairo_destroy(cr)
    cairo_surface_destroy(cs)
    cr=nil

end



function draw_multi_bar_graph(t)
    cairo_save(cr)
    --check values
    if t.draw_me == true then t.draw_me = nil end
    if t.draw_me ~= nil and conky_parse(tostring(t.draw_me)) ~= "1" then return end    
    if t.name==nil and t.arg==nil then 
        print ("No input values ... use parameters 'name' with 'arg' or only parameter 'arg' ") 
        return
    end
    if t.max==nil then
        print ("No maximum value defined, use 'max'")
        return
    end
    if t.name==nil then t.name="" end
    if t.arg==nil then t.arg="" end

    --set default values    
    if t.x == nil        then t.x = conky_window.width/2 end
    if t.y == nil        then t.y = conky_window.height/2 end
    if t.blocks == nil    then t.blocks=10 end
    if t.height == nil    then t.height=10 end
    if t.angle == nil     then t.angle=0 end
    t.angle = t.angle*math.pi/180
    --line cap style
    if t.cap==nil        then t.cap = "b" end
    local cap="b"
    for i,v in ipairs({"s","r","b"}) do 
        if v==t.cap then cap=v end
    end
    local delta=0
    if t.cap=="r" or t.cap=="s" then delta = t.height end
    if cap=="s" then     cap = CAIRO_LINE_CAP_SQUARE
    elseif cap=="r" then
        cap = CAIRO_LINE_CAP_ROUND
    elseif cap=="b" then
        cap = CAIRO_LINE_CAP_BUTT
    end
    --end line cap style
    --if t.led_effect == nil    then t.led_effect="r" end
    if t.width == nil    then t.width=20 end
    if t.space == nil    then t.space=2 end
    if t.radius == nil    then t.radius=0 end
    if t.angle_bar == nil    then t.angle_bar=0 end
    t.angle_bar = t.angle_bar*math.pi/360 --halt angle
    
    --colours
    if t.bg_colour == nil     then t.bg_colour = {0x00FF00,0.5} end
    if #t.bg_colour~=2         then t.bg_colour = {0x00FF00,0.5} end
    if t.fg_colour == nil     then t.fg_colour = {0x00FF00,1} end
    if #t.fg_colour~=2         then t.fg_colour = {0x00FF00,1} end
    if t.alarm_colour == nil     then t.alarm_colour = t.fg_colour end
    if #t.alarm_colour~=2         then t.alarm_colour = t.fg_colour end

    if t.mid_colour ~= nil then    
        for i=1, #t.mid_colour do    
            if #t.mid_colour[i]~=3 then 
                print ("error in mid_color table")
                t.mid_colour[i]={1,0xFFFFFF,1} 
            end
        end
    end
    
    if t.bg_led ~= nil and #t.bg_led~=2    then t.bg_led = t.bg_colour end
    if t.fg_led ~= nil and #t.fg_led~=2    then t.fg_led = t.fg_colour end
    if t.alarm_led~= nil and #t.alarm_led~=2 then t.alarm_led = t.fg_led end
    
    if t.led_effect~=nil then
        if t.bg_led == nil then t.bg_led = t.bg_colour end
        if t.fg_led == nil     then t.fg_led = t.fg_colour end
        if t.alarm_led == nil  then t.alarm_led = t.fg_led end
    end
    

    if t.alarm==nil then t.alarm = t.max end --0.8*t.max end
    if t.smooth == nil then t.smooth = false end

    if t.skew_x == nil then 
        t.skew_x=0 
    else
        t.skew_x = math.pi*t.skew_x/180    
    end
    if t.skew_y == nil then 
        t.skew_y=0
    else
        t.skew_y = math.pi*t.skew_y/180    
    end
    
    if t.reflection_alpha==nil then t.reflection_alpha=0 end
    if t.reflection_length==nil then t.reflection_length=1 end
    if t.reflection_scale==nil then t.reflection_scale=1 end
    
    --end of default values
    

     local function rgb_to_r_g_b(col_a)
        return ((col_a[1] / 0x10000) % 0x100) / 255., ((col_a[1] / 0x100) % 0x100) / 255., (col_a[1] % 0x100) / 255., col_a[2]
    end
    
    
    --functions used to create patterns

    local function create_smooth_linear_gradient(x0,y0,x1,y1)
        local pat = cairo_pattern_create_linear (x0,y0,x1,y1)
        cairo_pattern_add_color_stop_rgba (pat, 0, rgb_to_r_g_b(t.fg_colour))
        cairo_pattern_add_color_stop_rgba (pat, 1, rgb_to_r_g_b(t.alarm_colour))
        if t.mid_colour ~=nil then
            for i=1, #t.mid_colour do
                cairo_pattern_add_color_stop_rgba (pat, t.mid_colour[i][1], rgb_to_r_g_b({t.mid_colour[i][2],t.mid_colour[i][3]}))
            end
        end
        return pat
    end

    local function create_smooth_radial_gradient(x0,y0,r0,x1,y1,r1)
        local pat =  cairo_pattern_create_radial (x0,y0,r0,x1,y1,r1)
        cairo_pattern_add_color_stop_rgba (pat, 0, rgb_to_r_g_b(t.fg_colour))
        cairo_pattern_add_color_stop_rgba (pat, 1, rgb_to_r_g_b(t.alarm_colour))
        if t.mid_colour ~=nil then
            for i=1, #t.mid_colour do
                cairo_pattern_add_color_stop_rgba (pat, t.mid_colour[i][1], rgb_to_r_g_b({t.mid_colour[i][2],t.mid_colour[i][3]}))
            end
        end
        return pat
    end
    
    local function create_led_linear_gradient(x0,y0,x1,y1,col_alp,col_led)
        local pat = cairo_pattern_create_linear (x0,y0,x1,y1) ---delta, 0,delta+ t.width,0)
        cairo_pattern_add_color_stop_rgba (pat, 0.0, rgb_to_r_g_b(col_alp))
        cairo_pattern_add_color_stop_rgba (pat, 0.5, rgb_to_r_g_b(col_led))
        cairo_pattern_add_color_stop_rgba (pat, 1.0, rgb_to_r_g_b(col_alp))
        return pat
    end

    local function create_led_radial_gradient(x0,y0,r0,x1,y1,r1,col_alp,col_led,mode)
        local pat = cairo_pattern_create_radial (x0,y0,r0,x1,y1,r1)
        if mode==3 then
            cairo_pattern_add_color_stop_rgba (pat, 0, rgb_to_r_g_b(col_alp))                
            cairo_pattern_add_color_stop_rgba (pat, 0.5, rgb_to_r_g_b(col_led))
            cairo_pattern_add_color_stop_rgba (pat, 1, rgb_to_r_g_b(col_alp))                
        else
            cairo_pattern_add_color_stop_rgba (pat, 0, rgb_to_r_g_b(col_led))
            cairo_pattern_add_color_stop_rgba (pat, 1, rgb_to_r_g_b(col_alp))                
        end
        return pat
    end






    local function draw_single_bar()
        --this fucntion is used for bars with a single block (blocks=1) but 
        --the drawing is cut in 3 blocks : value/alarm/background
        --not zvzimzblr for circular bar
        local function create_pattern(col_alp,col_led,bg)
            local pat
            
            if not t.smooth then
                if t.led_effect=="e" then
                    pat = create_led_linear_gradient (-delta, 0,delta+ t.width,0,col_alp,col_led)
                elseif t.led_effect=="a" then
                    pat = create_led_linear_gradient (t.width/2, 0,t.width/2,-t.height,col_alp,col_led)
                elseif  t.led_effect=="r" then
                    pat = create_led_radial_gradient (t.width/2, -t.height/2, 0, t.width/2,-t.height/2,t.height/1.5,col_alp,col_led,2)
                else
                    pat = cairo_pattern_create_rgba  (rgb_to_r_g_b(col_alp))
                end
            else
                if bg then
                    pat = cairo_pattern_create_rgba  (rgb_to_r_g_b(t.bg_colour))
                else
                    pat = create_smooth_linear_gradient(t.width/2, 0, t.width/2,-t.height)
                end
            end
            return pat
        end
        
        local y1=-t.height*pct/100
        local y2,y3
        if pct>(100*t.alarm/t.max) then 
            y1 = -t.height*t.alarm/100
            y2 = -t.height*pct/100
            if t.smooth then y1=y2 end
        end
        
        if t.angle_bar==0 then
        
            --block for fg value
            local pat = create_pattern(t.fg_colour,t.fg_led,false)
            cairo_set_source(cr,pat)
            cairo_rectangle(cr,0,0,t.width,y1)
            cairo_fill(cr)
            cairo_pattern_destroy(pat)
        
            -- block for alarm value            
            if not t.smooth and y2 ~=nil then 
                pat = create_pattern(t.alarm_colour,t.alarm_led,false)
                cairo_set_source(cr,pat)
                cairo_rectangle(cr,0,y1,t.width,y2-y1)
                cairo_fill(cr)
                y3=y2
                cairo_pattern_destroy(pat)
            else
                y2,y3=y1,y1
            end
            -- block for bg value
            cairo_rectangle(cr,0,y2,t.width,-t.height-y3)
            pat = create_pattern(t.bg_colour,t.bg_led,true)
            cairo_set_source(cr,pat)
            cairo_pattern_destroy(pat)
            cairo_fill(cr)
        end        
    end  --end single bar
    





    local function draw_multi_bar()
        --function used for bars with 2 or more blocks
        for pt = 1,t.blocks do 
            --set block y
            local y1 = -(pt-1)*(t.height+t.space)
            local light_on=false
            
            --set colors
            local col_alp = t.bg_colour
            local col_led = t.bg_led
            if pct>=(100/t.blocks) or pct>0 then --ligth on or not the block
                if pct>=(pcb*(pt-1))  then 
                    light_on = true
                    col_alp = t.fg_colour
                    col_led = t.fg_led
                    if pct>=(100*t.alarm/t.max) and (pcb*pt)>(100*t.alarm/t.max) then 
                        col_alp = t.alarm_colour 
                        col_led = t.alarm_led 
                    end
                end
            end

            --set colors
            --have to try to create gradients outside the loop ?
            local pat 
            
            if not t.smooth then
                if t.angle_bar==0 then
                    if t.led_effect=="e" then
                        pat = create_led_linear_gradient (-delta, 0,delta+ t.width,0,col_alp,col_led)
                    elseif t.led_effect=="a" then
                        pat = create_led_linear_gradient (t.width/2, -t.height/2+y1,t.width/2,0+t.height/2+y1,col_alp,col_led)                    
                    elseif  t.led_effect=="r" then
                        pat = create_led_radial_gradient (t.width/2, y1, 0, t.width/2,y1,t.width/1.5,col_alp,col_led,2)    
                    else
                        pat = cairo_pattern_create_rgba  (rgb_to_r_g_b(col_alp))
                    end
                else
                     if t.led_effect=="a"  then
                         pat = create_led_radial_gradient (0, 0, t.radius+(t.height+t.space)*(pt-1),
                                                         0, 0, t.radius+(t.height+t.space)*(pt),                         
                                             col_alp,col_led,3)    
                    else
                        pat = cairo_pattern_create_rgba  (rgb_to_r_g_b(col_alp))                    
                    end
                    
                end
            else
                
                if light_on then
                    if t.angle_bar==0 then
                        pat = create_smooth_linear_gradient(t.width/2, t.height/2, t.width/2,-(t.blocks-0.5)*(t.height+t.space))
                    else
                        pat = create_smooth_radial_gradient(0, 0, (t.height+t.space),  0,0,(t.blocks+1)*(t.height+t.space),2)
                    end
                else        
                    pat = cairo_pattern_create_rgba  (rgb_to_r_g_b(t.bg_colour))
                end
            end
            cairo_set_source (cr, pat)
            cairo_pattern_destroy(pat)

            --draw a block
            if t.angle_bar==0 then
                cairo_move_to(cr,0,y1)
                cairo_line_to(cr,t.width,y1)
            else        
                cairo_arc( cr,0,0,
                    t.radius+(t.height+t.space)*(pt)-t.height/2,
                     -t.angle_bar -math.pi/2 ,
                     t.angle_bar -math.pi/2)
            end
            cairo_stroke(cr)
        end    
    end
    
    
    
    
    local function setup_bar_graph()
        --function used to retrieve the value to display and to set the cairo structure
        if t.blocks ~=1 then t.y=t.y-t.height/2 end
        
        local value = 0
        if t.name ~="" then
            value = tonumber(conky_parse(string.format('${%s %s}', t.name, t.arg)))
            --$to_bytes doesn't work when value has a decimal point,
            --https://garage.maemo.org/plugins/ggit/browse.php/?p=monky;a=commitdiff;h=174c256c81a027a2ea406f5f37dc036fac0a524b;hp=d75e2db5ed3fc788fb8514121f67316ac3e5f29f
            --http://sourceforge.net/tracker/index.php?func=detail&aid=3000865&group_id=143975&atid=757310
            --conky bug?
            --value = (conky_parse(string.format('${%s %s}', t.name, t.arg)))
            --if string.match(value,"%w") then
            --    value = conky_parse(string.format('${to_bytes %s}',value))
            --end
        else
            value = tonumber(t.arg)
        end

        if value==nil then value =0 end
        
        pct = 100*value/t.max
        pcb = 100/t.blocks
        
        cairo_set_line_width (cr, t.height)
        cairo_set_line_cap  (cr, cap)
        cairo_translate(cr,t.x,t.y)
        cairo_rotate(cr,t.angle)

        local matrix0 = cairo_matrix_t:create()
        tolua.takeownership(matrix0)
        cairo_matrix_init (matrix0, 1,t.skew_y,t.skew_x,1,0,0)
        cairo_transform(cr,matrix0)

    
        
        --call the drawing function for blocks
        if t.blocks==1 and t.angle_bar==0 then
            draw_single_bar()
            if t.reflection=="t" or t.reflection=="b" then cairo_translate(cr,0,-t.height) end
        else
            draw_multi_bar()
        end

        --dot for reminder
        --[[
        if t.blocks ~=1 then
            cairo_set_source_rgba(cr,1,0,0,1)
            cairo_arc(cr,0,t.height/2,3,0,2*math.pi)
            cairo_fill(cr)
        else
            cairo_set_source_rgba(cr,1,0,0,1)
            cairo_arc(cr,0,0,3,0,2*math.pi)
            cairo_fill(cr)
        end]]
        
        --call the drawing function for reflection and prepare the mask used        
        if t.reflection_alpha>0 and t.angle_bar==0 then
            local pat2
            local matrix1 = cairo_matrix_t:create()
            tolua.takeownership(matrix1)
            if t.angle_bar==0 then
                pts={-delta/2,(t.height+t.space)/2,t.width+delta,-(t.height+t.space)*(t.blocks)}
                if t.reflection=="t" then
                    cairo_matrix_init (matrix1,1,0,0,-t.reflection_scale,0,-(t.height+t.space)*(t.blocks-0.5)*2*(t.reflection_scale+1)/2)
                    pat2 = cairo_pattern_create_linear (t.width/2,-(t.height+t.space)*(t.blocks),t.width/2,(t.height+t.space)/2)
                elseif t.reflection=="r" then
                    cairo_matrix_init (matrix1,-t.reflection_scale,0,0,1,delta+2*t.width,0)
                    pat2 = cairo_pattern_create_linear (delta/2+t.width,0,-delta/2,0)
                elseif t.reflection=="l" then
                    cairo_matrix_init (matrix1,-t.reflection_scale,0,0,1,-delta,0)
                    pat2 = cairo_pattern_create_linear (-delta/2,0,delta/2+t.width,-0)
                else --bottom
                    cairo_matrix_init (matrix1,1,0,0,-1*t.reflection_scale,0,(t.height+t.space)*(t.reflection_scale+1)/2)
                    pat2 = cairo_pattern_create_linear (t.width/2,(t.height+t.space)/2,t.width/2,-(t.height+t.space)*(t.blocks))
                end
            end
            cairo_transform(cr,matrix1)

            if t.blocks==1 and t.angle_bar==0 then
                draw_single_bar()
                cairo_translate(cr,0,-t.height/2) 
            else
                draw_multi_bar()
            end
            
            
            cairo_set_line_width(cr,0.01)
            cairo_pattern_add_color_stop_rgba (pat2, 0,0,0,0,1-t.reflection_alpha)
            cairo_pattern_add_color_stop_rgba (pat2, t.reflection_length,0,0,0,1)
            if t.angle_bar==0 then
                cairo_rectangle(cr,pts[1],pts[2],pts[3],pts[4])
            end
            cairo_clip_preserve(cr)
            cairo_set_operator(cr,CAIRO_OPERATOR_CLEAR)
            cairo_stroke(cr)
            cairo_mask(cr,pat2)
            cairo_pattern_destroy(pat2)
            cairo_set_operator(cr,CAIRO_OPERATOR_OVER)
            
        end --reflection
        pct,pcb=nil
    end --setup_bar_graph()
    
    --start here !
    setup_bar_graph()
    cairo_restore(cr)
end

Dernière modification par tsagobar (Le 17/08/2013, à 11:50)

Hors ligne

#183 Le 17/08/2013, à 08:24

F50

Re : A quoi ressemble votre environnement -- Printemps/été 2013

@ golgot200: Je ne veux pas non plus de 18'000 paquets KDE, je suis sous Xfce. smile Pour le spectro, y'a pas eu foule dans le lien que tu as mis, dommage.

#184 Le 19/08/2013, à 12:17

kD

Re : A quoi ressemble votre environnement -- Printemps/été 2013

Je suis passer sous Linux Mint 13, mais toujours en XFCE cool

tn_jIBpUaD9RR.png

tn_oW48QvDFdv.png

Icônes: Mashup-1
Cairo Dock


Asus T300CHI Intel® Core™ M 5Y71 - 4Go ram -- Xubuntu 16.04.1 -- 64 bits

Hors ligne

#185 Le 19/08/2013, à 13:08

Compte anonymisé

Re : A quoi ressemble votre environnement -- Printemps/été 2013

Bonjour,

@fcn50

J'ai découvert QMMP , un player style Winamp , il a un plugin Analyser comme j'aime bien. Par contre les Skins Version Winamp 2 sont chiant pour la transparence ( Coins arrondis non transparent). Les skins proposés sont horribles à mon goût. Ça manque vraiment de finition en double size. Je me fais mon skin maison pour que ça colle à mon bureau. L'analyser est bien et garde bien sa position une fois placé sur le bureau.

Avec effet sur  les boutons:
1376910257.png  1376910831.png

Dernière modification par Compte anonymisé (Le 19/08/2013, à 13:14)

#186 Le 19/08/2013, à 13:48

F50

Re : A quoi ressemble votre environnement -- Printemps/été 2013

@ golgot200: Merci mais y'a un cadre à ce spectro c'est pas incrusté dans le bureau... Je vais contacter le dev de Deadbeef pour voir si y'a rien de faisable de ce côté et te tiens au courant.

#187 Le 20/08/2013, à 08:54

Compte anonymisé

Re : A quoi ressemble votre environnement -- Printemps/été 2013

@fcn50

J'ai trouvé l'option sous KDE pour forcer la suppression d'une et une seule bordure comme tu le désirais !!!

1376980716.png

EDIT : J'intègre ça à mon WOOD

Dernière modification par Compte anonymisé (Le 20/08/2013, à 09:41)

#188 Le 20/08/2013, à 09:50

F50

Re : A quoi ressemble votre environnement -- Printemps/été 2013

La classe bravo, mais je suis sous Xfce et je ne pense pas que ce soit possible. Tu arrives à le rendre transparent? Ce serait le top.

#189 Le 20/08/2013, à 10:28

Compte anonymisé

Re : A quoi ressemble votre environnement -- Printemps/été 2013

Oui, je crois que j'ai vu l'option .... je regarde ça

Pour l'instant j'en suis là :

1376987228.png

Pour l'instant, je trouve juste la transparence du player etc mais pas dans le plugin Analyzer ....

Dernière modification par Compte anonymisé (Le 20/08/2013, à 10:35)

#190 Le 20/08/2013, à 11:11

F50

Re : A quoi ressemble votre environnement -- Printemps/été 2013

golgot200 a écrit :

Pour l'instant, je trouve juste la transparence du player etc mais pas dans le plugin Analyzer ....

C'est pourtant ce qui serait chouette, de l'avoir en transparent sur le bureau avec uniquement les colonnes visibles. tongue Les couleurs du spectro sont fixes ou on peut les changer?

#191 Le 20/08/2013, à 11:27

Compte anonymisé

Re : A quoi ressemble votre environnement -- Printemps/été 2013

On peut tout changer, couleurs épaisseur vitesse etc (post 185 et maintenant)

Dernière modification par Compte anonymisé (Le 20/08/2013, à 11:29)

#192 Le 21/08/2013, à 08:23

F50

Re : A quoi ressemble votre environnement -- Printemps/été 2013

Perso, celui que je regrette c'est le Visualisation: Spectrum de Foobar2000:

http://www.foobar2000.org/screenshots

#193 Le 21/08/2013, à 14:09

Compte anonymisé

Re : A quoi ressemble votre environnement -- Printemps/été 2013

@fcn50

Il tourne bien avec Wine 1.6 et s'intègre pas mal ... wink

EDIT : mais bon, je ne suis pas vraiment pour wine cool

Dernière modification par Compte anonymisé (Le 21/08/2013, à 14:45)

#194 Le 22/08/2013, à 07:04

F50

Re : A quoi ressemble votre environnement -- Printemps/été 2013

golgot200 a écrit :

EDIT : mais bon, je ne suis pas vraiment pour wine

Moins non plus, Deadbeef me va bien, c'est un peu le Foobar2000 de nunux.

#195 Le 22/08/2013, à 12:34

Compte anonymisé

Re : A quoi ressemble votre environnement -- Printemps/été 2013

Bonjour,
le mien toujours en chantier ....
Un GMMP qui reste bien à sa place. J'ai trouvé son fichier .conkyrc que je vais essayer d'ici peu.

1377167503.png

J'aimerai virer l'icône par défaut de cette application (GMMP et son style sphère papillon) mais pas moyen. Une solution ?

Dernière modification par Compte anonymisé (Le 22/08/2013, à 12:37)

#196 Le 22/08/2013, à 12:42

spinoziste

Re : A quoi ressemble votre environnement -- Printemps/été 2013

Peut-être le recompiler avec les icônes qui vont bien .


Nous mourrons tous .

Hors ligne

#197 Le 22/08/2013, à 15:13

stalingrad

Re : A quoi ressemble votre environnement -- Printemps/été 2013

0JqJ5FN.jpg

Hors ligne

#198 Le 23/08/2013, à 10:54

Compte anonymisé

Re : A quoi ressemble votre environnement -- Printemps/été 2013

spinoziste a écrit :

Peut-être le recompiler avec les icônes qui vont bien .

Oui, j'avais pensé à cette solution.
J'en ai trouvé une autre. Virer le plasmoid gestionnaire de taches par défaut dans le tableau de bord. Le remplacer par un gestionnaire de taches avec icônes uniquement et choisir l'option avec icônes uniquement et mettre un fond coloré me va très bien.

1377247719.png

Dernière modification par Compte anonymisé (Le 23/08/2013, à 10:56)

#199 Le 23/08/2013, à 15:36

petzouill

Re : A quoi ressemble votre environnement -- Printemps/été 2013

stalingrad a écrit :

Bonjour.
J'aime beaucoup ton pack d'icones. Peux tu me donner le nom, que je me le procure.
Merci.


Ubuntu 12.04
Phenom II x6 1055
GeForce GT 220

Hors ligne

#200 Le 23/08/2013, à 17:38

stalingrad

Re : A quoi ressemble votre environnement -- Printemps/été 2013

Il s'appelle Nitrux, trouvé sur cette page.

Hors ligne