Old 29th June 2002, 21:37   #161
Plague
f(caffeine){
return wasabi;
}
(Forum King)
 
Plague's Avatar
 
Join Date: Jul 2001
Location: Sweden
Posts: 3,984
well, you don't have to have the groupdefs in player-normal..
just change the .m file according to how your player-normal looks and it's done..

frisbeemonkey: I have no idea

-Plague
Plague is offline   Reply With Quote
Old 29th June 2002, 22:28   #162
Drunken Master
n00b eater
(Member)
 
Join Date: Nov 2001
Posts: 282
Ok, I'm a little confused, I understand this part of the script:

Group mainnormal = getContainer("Main").getLayout("Normal")

but I don't understand this part:

.getObject("player.normal");

don't I have to have a groupdef for the main window, so the script can get the object? (go easy on me, I'm still trying to get the hang of maki)
Drunken Master is offline   Reply With Quote
Old 29th June 2002, 23:42   #163
Plague
f(caffeine){
return wasabi;
}
(Forum King)
 
Plague's Avatar
 
Join Date: Jul 2001
Location: Sweden
Posts: 3,984
heh, ok I'll go through it step by step...

here's how the script looks like now:
code:

Group mainnormal = getContainer("Main").getLayout("Normal").getObject("player.normal");
Group playbuttons = mainnormal.getObject("player.normal.playbuttons");
Pause = playbuttons.getObject("Pause");


And how the XML should look like for it to work:
code:

player-normal.xml:
<include file="player-normal-group.xml" />

<layout id="normal" background="player.main.background" droptarget="pldr">
<group id="player.normal" />
</layout>

player-normal-group.xml:
<groupdef id="player.normal.playbuttons" name="Player buttons">
<button
id="Pause"
action="PAUSE"
x="46" y="0"
image="player.button.pause"
downImage="player.button.pause.pressed"
activeImage="player.button.pause.pressed"
tooltip="Pause"
/>
</groupdef>

<groupdef id="player.normal" name="Winamp">
<!-- the playback buttons -->
<group id="player.normal.playbuttons" x="12" y="85" />
</groupdef>



now, we don't need to have it like this in order for it to work...
here's my guess on how your player-normal.xml looks like: (and ofcourse you don't have player-normal-group.xml)
code:

<layout id="normal" background="player.main.bg">
<!-- Playback buttons -->
<button
id="Pause"
action="PAUSE"
x="58" y="85"
image="player.button.pause"
downImage="player.button.pause.pressed"
tooltip="Pause"
/>
</layout>


and then the script would have to look something like this for it to work:
code:

Layout mainnormal = getContainer("Main").getLayout("Normal");
Pause = mainnormal.getObject("Pause");



got it?
hope that cleared up the mess..

-Plague
Plague is offline   Reply With Quote
Old 30th June 2002, 00:20   #164
Drunken Master
n00b eater
(Member)
 
Join Date: Nov 2001
Posts: 282
Ok, so let me see if I get how this works. I have to make my script like this:

Group mainnormal =

if I have groupdef's, right?

and:

Layout mainnormal =

if I just have layout's?

and I see now how to make the script work.

and one more question: can I leave this line in the script:

Group playbuttons = mainnormal.getObject("player.normal.playbuttons");

if I already have a groupdef for my playback buttons?
Drunken Master is offline   Reply With Quote
Old 30th June 2002, 00:29   #165
Drunken Master
n00b eater
(Member)
 
Join Date: Nov 2001
Posts: 282
I dropped the groupdef for my playback buttons, and I made the changes to my script; to make a long story short, the script works perfectly. Thank's Plague.
Drunken Master is offline   Reply With Quote
Old 30th June 2002, 00:55   #166
Plague
f(caffeine){
return wasabi;
}
(Forum King)
 
Plague's Avatar
 
Join Date: Jul 2001
Location: Sweden
Posts: 3,984
good, cool!

to answer your last question, yes you could still have the playback buttons in a group..

-Plague
Plague is offline   Reply With Quote
Old 30th June 2002, 01:01   #167
Drunken Master
n00b eater
(Member)
 
Join Date: Nov 2001
Posts: 282
Thank's, and was I right about the groupdef and layout thing?
Drunken Master is offline   Reply With Quote
Old 30th June 2002, 01:32   #168
Plague
f(caffeine){
return wasabi;
}
(Forum King)
 
Plague's Avatar
 
Join Date: Jul 2001
Location: Sweden
Posts: 3,984
basically, yes..
But it can be more advance than that..

Let's say it's like this:
the "mainnormal =" line should reflect the searchpath to your Layout, if the layout is in a Group, you need to have a "Group mainnormal =", if it's not in a group, you need to have a "Layout mainnormal ="..

do like this:
check player.xml, there you'll find this:
<container id="main"

that's this in maki:
mainnormal = getContainer("Main")

then check player-normal.xml, it'll look something like this:
<layout id="normal"

that's this in maki:
mainnormal = getContainer("Main").getLayout("normal")

now, you're basically done, make it like this:
Layout mainnormal = getContainer("Main").getLayout("normal");

and you're done.
Now, if it would be in a group you can still have it like above, just add this:
Layout mainnormal = getContainer("Main").getLayout("normal");
Group playernormal = mainnormal.getObject("player.normal");

and then you could STILL do this:
Group playbuttons = {but change it here from mainnormal to...}playernormal.getObject("player.normal.playbuttons");
Pause = playbuttons.getObject("Pause");

see how it all fit together?

Let's try again:
1.you have a button which is located in a group(#1).
2.the group(#1) is located in another group(#2).
3.that group(#2) is located in the "normal" layout.
4.that layout is located in the "main" container.

here's how you write that in maki:
4.Layout mainnormal = getContainer("Main").getLayout("normal");
3.Group group2 = mainnormal.getObject("group2");
2.Group group1 = group2.getObject("group1");
1.Button button1 = group1.getObject("button1");

do you see how it works now?

-Plague
Plague is offline   Reply With Quote
Old 30th June 2002, 01:50   #169
Drunken Master
n00b eater
(Member)
 
Join Date: Nov 2001
Posts: 282
Thank's again Plague. I appreciate you taking time out of your day to help me out.
Drunken Master is offline   Reply With Quote
Old 30th June 2002, 02:02   #170
Plague
f(caffeine){
return wasabi;
}
(Forum King)
 
Plague's Avatar
 
Join Date: Jul 2001
Location: Sweden
Posts: 3,984
no problem man, glad to help...

-Plague
Plague is offline   Reply With Quote
Old 30th June 2002, 02:16   #171
Drunken Master
n00b eater
(Member)
 
Join Date: Nov 2001
Posts: 282
Well, I'll be gone for a few days. When your girlfriend calls you and demands that you spend a few nights, I'm not going to be one to argue.
Drunken Master is offline   Reply With Quote
Old 30th June 2002, 02:18   #172
Plague
f(caffeine){
return wasabi;
}
(Forum King)
 
Plague's Avatar
 
Join Date: Jul 2001
Location: Sweden
Posts: 3,984
hehe, I see your point..
bu-bye cya later..

-Plague
Plague is offline   Reply With Quote
Old 1st July 2002, 01:33   #173
Drunken Master
n00b eater
(Member)
 
Join Date: Nov 2001
Posts: 282
I've been home for a few hours today, and I managed to fix a few bugs (I fixed the dimensions of the vis. to prevent the peaks from changing size when they fell) and I added the kbps just under the timer. I would still like to know how to make cbtext appear where the song ticker is, and null the song ticker while cbtext is being displayed. Well I'm off again, I'll see you guys in a day or two.....
Drunken Master is offline   Reply With Quote
Old 1st July 2002, 15:47   #174
Drunken Master
n00b eater
(Member)
 
Join Date: Nov 2001
Posts: 282
Quote:
Originally posted by Drunken Master
I would still like to know how to make cbtext appear where the song ticker is, and null the song ticker while cbtext is being displayed.
I'm still waiting.....
Drunken Master is offline   Reply With Quote
Old 1st July 2002, 16:37   #175
Joshuatree
Major Dude
 
Joshuatree's Avatar
 
Join Date: Dec 2001
Location: Buffalo NY
Posts: 635
Send a message via AIM to Joshuatree
Cb text...what is that? Well anyways I have some maki here that might help you.

code:

// Initialzes song ticker
initTicker() {
SongTicker = System.getContainer("main").getLayout("normal").getObject("songticker");

SongTickerTimer = new Timer;
SongTickerTimer.setDelay(1000);
}

// Clears text area
SongTickerTimer.onTimer() {
SongTicker.setText("");
}



Make sure that the songticker has id="songticker"
Joshuatree is offline   Reply With Quote
Old 1st July 2002, 18:17   #176
omarello
Major Dude
 
omarello's Avatar
 
Join Date: Feb 2001
Location: ---- Montreal ---- Canada ----
Posts: 529
if cbtext is the thinger text thing then what u should do it this.

1) define the text in the xml in the same place (coordinates) as your songticker.

2) in when loading the skin, make sure u hide the cbtext in ur onscriptloded() section. usinf the cbtxt.hide()

3) then heres what u will do. keep checking if the cbtext is null or "" then keep it hidden, if not nul, then hide the song info and show the cbtext.


i think this is how to do it, offcourse u need some timers to keep the text for a while before u hide it , and vise versa but this is the basic solution. i can try to write the whole maki, but i am really busy these days. hope u get the idea, dunno if there is alternative solutions.

Shoot me again I ain't dead YET
omarello is offline   Reply With Quote
Old 1st July 2002, 18:20   #177
Plague
f(caffeine){
return wasabi;
}
(Forum King)
 
Plague's Avatar
 
Join Date: Jul 2001
Location: Sweden
Posts: 3,984
yes there are other ways..
you can use the actual songticker..
in sysfunc.m they use it for both songticker and other stuff..

-Plague
Plague is offline   Reply With Quote
Old 1st July 2002, 18:22   #178
omarello
Major Dude
 
omarello's Avatar
 
Join Date: Feb 2001
Location: ---- Montreal ---- Canada ----
Posts: 529
really.,. i didn't knwo that. u mean u can assign text from various different areas (or texts).... how is that???

Shoot me again I ain't dead YET
omarello is offline   Reply With Quote
Old 1st July 2002, 20:21   #179
Plague
f(caffeine){
return wasabi;
}
(Forum King)
 
Plague's Avatar
 
Join Date: Jul 2001
Location: Sweden
Posts: 3,984
you just specify what the songticker should show..
check sysfunc.m, it's all in there..

-Plague
Plague is offline   Reply With Quote
Old 1st July 2002, 21:26   #180
Drunken Master
n00b eater
(Member)
 
Join Date: Nov 2001
Posts: 282
I changed my vis to a bared vis, is there any way to disable the vis peaks? (I would just make them the same color as the background, but the color varies)
Drunken Master is offline   Reply With Quote
Old 1st July 2002, 21:38   #181
Plague
f(caffeine){
return wasabi;
}
(Forum King)
 
Plague's Avatar
 
Join Date: Jul 2001
Location: Sweden
Posts: 3,984
no way to do that yet, sorry...
might be possible soon though..

-Plague
Plague is offline   Reply With Quote
Old 1st July 2002, 22:06   #182
Drunken Master
n00b eater
(Member)
 
Join Date: Nov 2001
Posts: 282
I've been digging throught sysfunc.m and I was wondering if I could make cbtext a HintObject (I already have my HintObject's set to HintObject.onEnterArea(). I was also wondering what cbtext is in the sysfunc.m (I think it's Wobbler, but I'm not sure) and if all that were possible, I know that each thinger item has it's own text description, so what would setTempText be?
Drunken Master is offline   Reply With Quote
Old 1st July 2002, 22:25   #183
Plague
f(caffeine){
return wasabi;
}
(Forum King)
 
Plague's Avatar
 
Join Date: Jul 2001
Location: Sweden
Posts: 3,984
no, no, no and no....

the wobbler is what makes the thinger icon blink when pressed...

HintObjects in sysfunc.m are buttons...
you don't make your cbtext anything, it's just text..

I'll see what I can dig up..
I'll keep you posted.

-Plague
Plague is offline   Reply With Quote
Old 1st July 2002, 23:42   #184
Drunken Master
n00b eater
(Member)
 
Join Date: Nov 2001
Posts: 282
I know why I can't make cbtext a HintObject, I just figured out why (Hey I'm learning here)
Drunken Master is offline   Reply With Quote
Old 1st July 2002, 23:47   #185
Plague
f(caffeine){
return wasabi;
}
(Forum King)
 
Plague's Avatar
 
Join Date: Jul 2001
Location: Sweden
Posts: 3,984
hehe, no worries..
I found out a way to make the songticker show the same text as the cbtext but there are some bugs I'm trying to work out...

I'll keep you posted..

-Plague
Plague is offline   Reply With Quote
Old 2nd July 2002, 00:28   #186
Plague
f(caffeine){
return wasabi;
}
(Forum King)
 
Plague's Avatar
 
Join Date: Jul 2001
Location: Sweden
Posts: 3,984
hmmm, this was alot harder than I first thought...
It's just too buggy..

I'm sorry but I can't make it stable.
Maybe you should ask Francis about it..?

-Plague
Plague is offline   Reply With Quote
Old 2nd July 2002, 01:02   #187
Drunken Master
n00b eater
(Member)
 
Join Date: Nov 2001
Posts: 282
Well, getting cbtext to display in the same space as the songticker is no problem, I have been trying to modify the script that HollowEarth posted a few pages back, but I'm having no luck. I compiled it, and I start winamp, and I get an asertion error, something like != Null
Drunken Master is offline   Reply With Quote
Old 2nd July 2002, 01:08   #188
omarello
Major Dude
 
omarello's Avatar
 
Join Date: Feb 2001
Location: ---- Montreal ---- Canada ----
Posts: 529
Quote:
Originally posted by HollowEarth
You don't need to hide it. When ever cbtext != null do a settext to the songticker text field, and when cbtext is again == null do a settext("") to the songticker text field to return it to the song ticker. i think you have to make a hidden text field for the cbtext, so that you can get the text from it.
i didn't read that before i posted my solution, but this is a better solution. was this what u were refering to???

Shoot me again I ain't dead YET
omarello is offline   Reply With Quote
Old 2nd July 2002, 01:08   #189
Plague
f(caffeine){
return wasabi;
}
(Forum King)
 
Plague's Avatar
 
Join Date: Jul 2001
Location: Sweden
Posts: 3,984
yes that is how I did it, but it's not stable..

I'll try one more thing to see if I can't get it working.

-Plague
Plague is offline   Reply With Quote
Old 2nd July 2002, 01:20   #190
Plague
f(caffeine){
return wasabi;
}
(Forum King)
 
Plague's Avatar
 
Join Date: Jul 2001
Location: Sweden
Posts: 3,984
this is how I did it, but it's not stable at all..

this is what I added to the sysfunc.m script
code:

Global Text cbtext;

System.onScriptLoaded() {
cbtext = getContainer("Thinger").getLayout("Normal").getObject("cbtext");

}

cbtext.onTextChanged(String newtxt){
if (newtxt != "")
Songticker.setText(newtxt);
else if (newtxt == "")
Songticker.setText("");
}



this should work but it only works a while and then it get's all screwed up and finally it crashes Winamp..

-Plague
Plague is offline   Reply With Quote
Old 2nd July 2002, 03:12   #191
Gonzotek
Gunslinger
 
Gonzotek's Avatar
 
Join Date: May 2000
Location: Terminus
Posts: 4,693
In sysfunc.m, whenever functions have to settext to the songticker, they stop the Songtickertimer timer, perhaps that's what has to be done here too. It may even require working this script into sysfunc (or vice versa).

-=Gonzotek=-

I was away for a while.
But I'm feeling much better now.
Gonzotek is offline   Reply With Quote
Old 2nd July 2002, 03:14   #192
Plague
f(caffeine){
return wasabi;
}
(Forum King)
 
Plague's Avatar
 
Join Date: Jul 2001
Location: Sweden
Posts: 3,984
it is already in sysfunc, but I'll try and stop the timer and see it it helps a little..

edit:
nope, still crashes like hell...
and the crashes isn't the only problem, after a while it starts to show bullshit text when pointing on a component, in both cbtext and songticker...
have NO idea why

-Plague
Plague is offline   Reply With Quote
Old 2nd July 2002, 05:14   #193
Drunken Master
n00b eater
(Member)
 
Join Date: Nov 2001
Posts: 282
Does my skin seem sluggish under RC2, or is it just me?
Attached Files
File Type: wal simplistic vision (rc2 test release).wal (53.6 KB, 82 views)
Drunken Master is offline   Reply With Quote
Old 2nd July 2002, 13:49   #194
Joshuatree
Major Dude
 
Joshuatree's Avatar
 
Join Date: Dec 2001
Location: Buffalo NY
Posts: 635
Send a message via AIM to Joshuatree
Doesn't seem sluggish to me. It may be your PC.

Did you add the preset button yet? It doesn't seem to work for me. When I click it, the drawer slides in.
Joshuatree is offline   Reply With Quote
Old 2nd July 2002, 22:02   #195
Drunken Master
n00b eater
(Member)
 
Join Date: Nov 2001
Posts: 282
I found out why it was running sluggish on my comp. (something was using up a lot of CPU cycles, everything is back to normal now.) I added the preset botton today, I didn't add it because it wasn't available on Beta 3, but it will be there for the final release.
Drunken Master is offline   Reply With Quote
Old 2nd July 2002, 23:06   #196
Joshuatree
Major Dude
 
Joshuatree's Avatar
 
Join Date: Dec 2001
Location: Buffalo NY
Posts: 635
Send a message via AIM to Joshuatree
presets presets presets presets presets presets presets presets presets presets presets presets presets presets presets presets

lalalalala!
Joshuatree is offline   Reply With Quote
Old 2nd July 2002, 23:08   #197
Plague
f(caffeine){
return wasabi;
}
(Forum King)
 
Plague's Avatar
 
Join Date: Jul 2001
Location: Sweden
Posts: 3,984
hehe...
just a tiiiiny bit too much caffeine I think...

-Plague
Plague is offline   Reply With Quote
Old 2nd July 2002, 23:20   #198
Joshuatree
Major Dude
 
Joshuatree's Avatar
 
Join Date: Dec 2001
Location: Buffalo NY
Posts: 635
Send a message via AIM to Joshuatree
just a little
Joshuatree is offline   Reply With Quote
Old 3rd July 2002, 00:11   #199
Drunken Master
n00b eater
(Member)
 
Join Date: Nov 2001
Posts: 282
I think someone is a little preset happy.
Drunken Master is offline   Reply With Quote
Old 3rd July 2002, 03:55   #200
Joshuatree
Major Dude
 
Joshuatree's Avatar
 
Join Date: Dec 2001
Location: Buffalo NY
Posts: 635
Send a message via AIM to Joshuatree
ok I'm better now
Joshuatree is offline   Reply With Quote
Reply
Go Back   Winamp & Shoutcast Forums > Skinning and Design > Modern Skins

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump