June 19, 2011, 07:56:32 Last Edit: June 19, 2011, 21:33:32 by mgrubert
Salut Quentin,

J'utilise un layout personnel (cf code ci-dessous) et il y a une touche (Resetfilter) que je n'arrive pas à faire fonctionner.

Quand j'affiche les boutons du panneau de gauche, il y a un bouton Resetfilter qui fonctionne bien mais celui que j'ai mis à côté du champ de recherche, dans la ligne "HBSearchBar = (minheight=34,maxheight=34)  ResetFilter2 2_SimpleSearch(noselector=1,suggest=0)", lui, n'a aucun effet.

J'ai essayé avec des "group=0" un peu partout, mais c'est pas mieux.

Une idée ?

[Garage]
Author= MajorGrubert (with aboettger's help and inspiration)
Type=G+

# Major Grubert was a fictional character being used by Moebius in his comics from the 1970s.
# Major Grubert appeared in "Le Garage Hermétique"

Default = Window(size=90%x80%) HPMainPannel(size=100) HPCentreEtDroite(size=300) HPPanneaux(size=150)

VolumeScroll = VBVolume HPNowplaying


VBMain = HBMenu _VBMainContainer

HBMenu = _MBmenu

MBmenu = MainMenuItem LayoutItem PSortItem PFilterItem QueueItem

VBMainContainer = 3Filler1 _HPMainPannel 3Filler2

HPMainPannel = _VBMainGauche _HPCentreEtDroite

HPCentreEtDroite = _VPMainCentre _VPDroite




############################
# Left
############################

VBMainGauche =  HBSearchBar _FilterPane2(nb=0,hidetabs=0,hidebb=1,tabpos=left90,page=savedtree,pages=savedtree)

HBSearchBar = (minheight=34,maxheight=34)  ResetFilter2 2_SimpleSearch(noselector=1,suggest=0)  
 

############################
# Middle
############################

VPMainCentre = _HPPanneaux _VBSongtree


HPPanneaux = _HPAlbumArtist _HBGenre
HBGenre = _FilterPane5(nb=2,hidebb=1,pages=genre,page=genre,page_genre/mode=cloud,page_genre/cloud_min=8,page_genre/sort=alpha)
HPAlbumArtist = _HBArtist _HBAlbum
HBArtist = _FilterPane0(nb=3,\
                     hidebb= 1,\
     hidetabs= 1,\
     min= 1,\
     page= artist,\
page_artist/depth= 1,\
page_artist/lmarkup= 1,\
page_artist/lpicsize= '-1|16',\
     pages= artist)
HBAlbum = _FilterPane1(nb=5,\
hidebb= 1,\
      hidetabs= 1,\
      min= 1,\
      page= album,\
      page_album/lmarkup= 1,\
page_album/lpicsize= 64,\
page_album/mmarkup= below,\
page_album/mode=mosaic,\
page_album/sort= year,\
      pages=album)  

VBSongtree =  _SongTree HBTotal
   
HBTotal = -Total(size=small)



############################
# Right
############################

VPDroite =  HPNowplaying _VBListsETBoutons

############ Info artist, cover, volume, time bar zone ##########

HPNowplaying = VBCover _HBSongInfoEtControlsEtTimebarEtVolume
               
                VBCover = _Filler6 Cover(default=elementary/no-cover.svg,showcover=0,minsize=200,maxsize=400) Stars _Filler7

HBSongInfoEtControlsEtTimebarEtVolume = _VBSongInfoEtControlsEtTimebar VBVolume

VBVolume = VolumeIcon(button=1) _VolumeSlider(1,0)

VBSongInfoEtControlsEtTimebar = -HBControls _VBSongInfoEtTimebar

VBSongInfoEtTimebar = _Filler8 VBSongInfo _Filler9 -HBTimeBar

VBSongInfo =  \
  _HBInfoTitre \
    _HBInfoArtist \
    _HBInfoalbum \
_HBInfoGenre

HBInfoTitre = 2Filler10 _Title(minsize=0,markup="<big><big><big><b>%t</b></big></big></big>",click1="",yalign=0.5)
HBInfoArtist = 2Filler11 _Artist(yalign=1,minsize=0,markup="<big><big>par %a</big></big>",click1="")
HBInfoalbum = 2Filler12 _Album(minsize=1,expand_max=200,yalign=1,markup="dans %l",click1="") -2Filler13 -Date
HBInfoGenre = -2Filler20 -Title2(yalign=1,minsize=0,markup="<i>%g</i> ",click1="")
group
HBTimeBar = 2Filler14 _TimeBar 2Filler15

HBControls = \
_Filler16 \
Prev(size=large-toolbar,tip=_"Previous Song") \
Play(size=large-toolbar,tip=_"Play/Pause") \
Stop(size=large-toolbar,tip=_"Stop") \
Next(size=large-toolbar,tip=_"Next Song") \
_Filler17

############## Lists and bottom buttons ##################                

VBListsETBoutons = _NBSidebar1 HBBouton

NBSidebar1 = (tabpos=right90,typesubmenu='PC') \
               VBQueueList \
               VBPlayList

VBQueueList = (tabtitle=_"Queue") \
                   EditListButtons(group=2,small=1,relief=none) \
                   _QueueList(cols="queuenumber titleaa",colwidth="queuenumber 20",sort="path album:i disc track file",songtree=0,group=2) \
   HBQueueActions

                                HBQueueActions = Total1(size="small",group=2) -QueueActions

                VBPlayList = (tabtitle=_"Playlist") \
                            _SongList(cols="playandqueue titleaa",colwidth="queuenumber 20",sort="path album:i disc track file",mode=playlist,group=1,follow=1)

##############  Boutons ############################

HBBouton = \
Fullscreen(size=button,minwidth=34,maxwidth=34) \
Playlist(size=button,minwidth=34,maxwidth=34) \
ResetFilter \
HSeparator1 \
Sort(size=button,minwidth=34,maxwidth=34) \
10Filter(size=button,minwidth=34,maxwidth=34)  \
Queue(size=button,minwidth=34,maxwidth=34)  \

-Quit(size=button,minwidth=34,maxwidth=34,tip=_"Quit") \
-Pref(stock=gtk-preferences,size=button,minwidth=34,maxwidth=34) \
      -HSeparator2 \
#-MBLayouts \
-HSeparator3 \
-Button1(click1="RunPerlCode(::ChooseAddPath(0,1))",stock=gtk-add,size=button,minwidth=34,maxwidth=34,tip=_"Add folder ...") \
-Button2(click1="RunPerlCode(::IdleCheck)",stock=gtk-refresh,size=button,minwidth=34,maxwidth=34,tip=_"check now") \
-Button3(click1="RunPerlCode(::IdleScan)",stock=gtk-zoom-in,size=button,minwidth=34,maxwidth=34,tip=_"scan now")

#MBLayouts = (minwidth=34,maxwidth=34) \ LayoutItem

Les 2 ResetFilter ont le même effet, c'est à dire ils remettent à 0 tous les filtres du groupe de niveau>0 (le niveau est le nb=, il faudrait que je renomme l'option, filterlevel= est un peu long pour une option ~obligatoire pour les FilterList... suggestions ? ) et donc aucun ne reset FilterPane2 car qui a un nb=0.
Ce que tu veux probablement est qu'ils agissent à des niveau différents, par exemple un >0 l'autre >2, c'est pas possible pour l'instant, mais je vais rajouter ça.

#2 June 19, 2011, 21:22:50 Last Edit: June 19, 2011, 21:33:13 by mgrubert
Beh il se trouve qu'ils n'ont pas le même effet. Celui à côté de la barre de recherche n'a en fait aucun effet.
S'il avait le même effet que l'autre (celui qui apparaît en affichant les boutons du FilterPane2) ça m'irait bien (qui effectivement remet à zéro tous les autres panneaux de filtre, sauf FilterPane2), mais il se trouve qu'il n'a aucun effet visible.

Ces histoires de nb=x, en gros c'est pour dire que si un panneau de niveau x est choisi, ceux de niveaux supérieurs doivent s'adapter ?

Ok, j'ai mis FilterPane2 au niveau 1 (et dans ce cas il n'y a pas de niveau 0) et du coup ça marche pour les deux boutons de la même manière.
Bizarre quand même qu'avant le bouton du haut n'avait aucun effet.

Mais bon c'est réglé.

Ha oui désolé, j'avais pas vu que tu parlais de celui qui apparait dans le FilterPane2.
Mais ma réponse reste la même :) les 2 ResetFilter de ton layout, pas ceux internes aux FilterPane) font la même chose. Et pour que tu ais l'effet souhaité, il faudrait qu'il reset les niveaux >=0 donc pas encore possible.

Pour les niveaux de filtres, quand une ligne des FilterPane est sélectionné, ça change le filtre de niveau n (par défaut 1, changeable par nb=) et remet à zéro les filtres de niveau >n. Le FiltePane affiche la liste correspondant au niveaux <n
Quelques widgets ont aussi cette options nb=, comme SimpleSearch

#4 June 19, 2011, 21:49:47 Last Edit: June 19, 2011, 21:55:28 by mgrubert
Oui, comme je disais dans le message précédent (mais je l'ai pas mal modifié, donc tu n'as peut-être pas vu), j'ai bidouillé et ça marche.
Au passage j'ai compris la notion de nb=
Merci.

Edit : je crois que j'avais pas de panneau de niveau 1 avant (les nb étaient assez chaotiques vu que je pigeais pas trop ce que c'était, donc ils fonctionnaient un peu au hasard des copiés collés des layouts d'aboettger, donc j'avais du 2, du 3, du 5 je crois), c'est peut-être pour ça que le resetfilter ne fonctionnait pas ?

Quote from: Quentin Sculo on June 19, 2011, 21:15:39
(le niveau est le nb=, il faudrait que je renomme l'option, filterlevel= est un peu long pour une option ~obligatoire pour les FilterList... suggestions ? )
level (tout court) ? Ou lvl ?