Switch movement of button scroller OR image scroller
#1
Hello,

This might seem like a weird request, but I'm working on an iTV skin. If anyone is familiar with the skin, you have a vertical menu that as you navigate, the interface scrolls through images on the left hand side. video and screens can be seen here:

http://forums.xbox-scene.com/index.php?s...47284&st=0

Right now I can't get this gui to work. The images scroll horizontally as you move up and down the menu. My initial thought was to create a button scroller and have the right hand menu just focus when a button control on the scroller had focus. However for that to work, users would need to hit left or right to seemingly move up and down the vertical menu. Is there a way to have a horizontal buttonscroller scroll through by pressing up and down instead of left and right? ( I don't want to change the keymap.xml because i don't want to ruin other skins)

My other thought was to create animations to fake a scroller, but seems to work one way. I want the images to move in one direction when a user presses up and move in another direction when a user presses down. Right now the animation effects either return back to start (using visiblechange) or don't do anything at all. Ideally, and maybe it's a feature request, is to have conditions like ControlFocus.Previous(id) or ControlFocus.Next(id) where an animation can be controlled by what button/control it is going to next.

Last possibility is if there is an image scroller that exists instead of a button scroller. Sorry if that was all confusing, but it's been annoying me since I've been trying to think of workarounds forever. any advice or thoughts would be appreciated! Smile
Reply
#2
Nothing I can think of would really workaround what you want.

The animation conditions would be the best way to do it IMO, but as you point out, it won't track correctly unless you know exactly which controls you are going from and to, and can do a different anim based on that.

After 2.0 we may look at other possible conditional animations.
Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.


Image
Reply
#3
thanks for the thought. i figured as much. i tried animations, buttonscroll, multimages, etc etc. best makeshift solution was the animations (mainly zoom) to create that scrolling effect. i just wish the animation didn't occur when you go off focus. for now though i guess it's the best way.

looking forward to 2.0 and also any other conditionals in the future. Smile keep up the amazing work.
Reply
#4
ooh, i'll put this in feature request as well, but something that would help relieve the problem is to have skin specific keymaps. is that hard?

so instead of being in UserData, each skin will have a keymap.xml in their skin folder. i think i could then manipulate the home window settings in the keymap to get it right without affecting other skins.

not sure if there is a real need out there besides me, but that would make skinning much more customizable without affecting other skins and for skinners who don't want to mess with that, they can just copy the one included with xbmc for their skin. possible? pretty pretty please? (of course i know little about that coding so it might be impossible. just tell me and i'll forget the idea, go home, and still praise the xbmc shrine i have at home)
Reply
#5
per jmarshall's suggestion, I finally tried numerous times to rotate the buttonscroller to achieve the sidescrolling with up/down that I wanted. however it doesn't seem to be working. perhpas i'm doing it wrong? when i rotate the buttonscroller, it only rotates the button images, but not the button scroller. i mean that'd be fine, except since it doesn't actually rotate the button scroller, it cuts off the images so that all I see is 1.5 of the three images that should be there. why doesn't it just rotate the entire scroller so that all the buttons can be seen. Sad

code is below:
Code:
<control>
          <description>Scrolling menu</description>
          <type>buttonscroller</type>
          <id>4</id>
          <posx>125</posx>
          <posy>250</posy>
          <width>100</width>
          <height>100</height>
          <visible>true</visible>
          <texturefocus>-</texturefocus>
          <texturenofocus>-</texturenofocus>
          <font>font12</font>
          <textcolor>FFFFFFFF</textcolor>
          <align>left</align>
          <aligny>top</aligny>
          <textoffsetx>0</textoffsetx>
          <textoffsety>0</textoffsety>
          <onup>12</onup>
          <ondown>5</ondown>
          <onleft>12</onleft>
          <onright>11</onright>
          <numbuttons>3</numbuttons>
          <buttongap>5</buttongap>
          <orientation>vertical</orientation>
          <defaultbutton>3</defaultbutton>
          <movement>0</movement>
          <alpha>0</alpha>
          <wraparound>true</wraparound>
          <smoothscrolling>true</smoothscrolling>
      <animation effect="rotate" end="65" center="125,125" delay="250" time="100">WindowOpen</animation>
          <buttons>
            <default>1</default>
            <button id="1">
              <include>10001</include>
              <onclick>XBMC.ActivateWindow(MyVideos)</onclick>
              <texturefocus>defaultVideoBig.png</texturefocus>
              <texturenofocus>defaultVideo.png</texturenofocus>
            </button>
            <button id="2">
              <include>10002</include>
              <onclick>XBMC.ActivateWindow(MyPrograms)</onclick>
              <texturefocus>defaultProgramBig.png</texturefocus>
              <texturenofocus>defaultProgram.png</texturenofocus>
            </button>
            <button id="3">
              <include>10003</include>
              <onclick>XBMC.ActivateWindow(MyMusic)</onclick>
              <texturefocus>defaultAudiobig.png</texturefocus>
              <texturenofocus>defaultAudio.png</texturenofocus>
            </button>
            <button id="9">
              <label>7</label>
              <onclick>XBMC.ActivateWindow(MyWeather)</onclick>
              <texturefocus>defaultPicture.png</texturefocus>
              <texturenofocus>defaultPictureBig.png</texturenofocus>
            </button>
            <button id="11">
              <label>9</label>
              <onclick>XBMC.ActivateWindow(Settings)</onclick>
              <texturefocus>totalblack.png</texturefocus>
              <texturenofocus>defaultPlaylist.png</texturenofocus>
            </button>
          </buttons>
    </control>
Reply
#6
It's probably not rotating the viewport, thus is cutting some stuff off.
Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.


Image
Reply
#7
Ok, I've made some changes.

It displays fine now, albeit at the funny angle of 65 degrees Wink

Cheers,
Jonathan
Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.


Image
Reply
#8
hahaha really??!?! that's awesome. thanks. i'll look for it in the next release. me and my 65 degree angle. Smile
Reply

Logout Mark Read Team Forum Stats Members Help
Switch movement of button scroller OR image scroller0