Old 4th September 2002, 02:01   #1
frisbeemonkey
Major Dude
 
frisbeemonkey's Avatar
 
Join Date: Jun 2002
Posts: 851
Arrow Learn basic MAKI here!

Allow me to present...
MAKI, a skin designed to show off basic scripting examples.

The skin demonstrates:
DRAWERS
ROTATION
ANIMATED SLIDERS
PLAY/PAUSE BUTTONS
VOLUME UP and DOWN BUTTONS
& MOUSEOVER EVENTS
------------------------
M - Basic buttons, including the Play/Pause button. On the left side is a drawer that houses the togglebuttons. The drawer reacts to mouseovers.
A - Nothing special yet, just the timer and the ticker.
K- A generic Seek slider and an animated slider(done with an animated layer and a map)
I - Volume Knob(done with a map and rotation effects), Volume_Up and Volume_Down buttons, a generic Volume slider, and a resizer in the corner.

Download the attached .wal, rename it to .zip, read the readme.txt, have a look at the commented .xml and .m files, then try using the scripts!

Hope this helps anyone new to MAKI who needs some simple examples.
~FrisbeeMonkey
Attached Files
File Type: wal maki.wal (87.6 KB, 987 views)
frisbeemonkey is offline   Reply With Quote
Old 4th September 2002, 03:53   #2
bartibartman
Member
 
bartibartman's Avatar
 
Join Date: Aug 2002
Location: Germany
Posts: 58
Thumbs up cool

really a great idea!!!

This will help a lot of people

bartibartman is offline   Reply With Quote
Old 4th September 2002, 05:33   #3
Naamloos
Forum King
 
Naamloos's Avatar
 
Join Date: Mar 2001
Location: irc.tehflap.org/*******
Posts: 3,085
Looks great, can we use it at skinarmory for examples?
Naamloos is offline   Reply With Quote
Old 4th September 2002, 06:11   #4
simon snowflake
Skin Wizard
(Forum King)
 
simon snowflake's Avatar
 
Join Date: Aug 2000
Location: Gent, Belgium. does anybody know where the toilets are?
Posts: 4,636
Send a message via ICQ to simon snowflake
I think i love you
....
got to take a closer look at it first

don't be a thief of your own life.... : DEXYD - Digitally EXpressing Your Dreams

Join the Winamp Enthusiasts Forum - Join the Winamp Skin Love facebook group:
simon snowflake is offline   Reply With Quote
Old 4th September 2002, 15:44   #5
CremoNe
Senior Member
 
CremoNe's Avatar
 
Join Date: Feb 2002
Location: Italy
Posts: 397
great, the only thing you can add is an autorepeat function at the 2 volume arrows such as willfisher's, so that you can keep them pressed

[size=0.1]The Durango 95 purred away real horrorshow, a nice warm vibratey feeling all through your guttiwuts[/size]
CremoNe is offline   Reply With Quote
Old 4th September 2002, 18:13   #6
frisbeemonkey
Major Dude
 
frisbeemonkey's Avatar
 
Join Date: Jun 2002
Posts: 851
Hey all,
Sure Naamloos, this skin can be used wherever anyone thinks it might benefit other skinners. I just want to make sure everyone knows that this is for learning by example, it is not a step by step tutorial.
Great idea, CremoNe, I'll add the autorepeat later today sometime.
Also, should I change the purpose of this skin? I was thinking I might make the scripts into modules that you can drop into almost any skin, add a few lines to your XML, and it should work? RhinoTrip's animated seek works much like this and I think I could modify the rest so that they function that way as well. Not very educational, but would make it easier for the general populace to use.
Anyways, that update should be up later tonight,
~FrisbeeMonkey
frisbeemonkey is offline   Reply With Quote
Old 5th September 2002, 03:14   #7
frisbeemonkey
Major Dude
 
frisbeemonkey's Avatar
 
Join Date: Jun 2002
Posts: 851
Update

As per CremoNe's suggestion, the volume buttons are now autorepeating, making them much more useful. Lemme know if anyone wants anything else added.
~FrisbeeMonkey
Attached Files
File Type: wal maki.wal (100.0 KB, 477 views)
frisbeemonkey is offline   Reply With Quote
Old 5th September 2002, 04:55   #8
Wildrose-Wally
The Albertan
 
Join Date: Mar 2001
Posts: 6,122
You should submit it, that way you'll have greater exposure.
Wildrose-Wally is offline   Reply With Quote
Old 5th September 2002, 06:18   #9
simon snowflake
Skin Wizard
(Forum King)
 
simon snowflake's Avatar
 
Join Date: Aug 2000
Location: Gent, Belgium. does anybody know where the toilets are?
Posts: 4,636
Send a message via ICQ to simon snowflake
breaking up the scripts in modules would be übergreat.

don't be a thief of your own life.... : DEXYD - Digitally EXpressing Your Dreams

Join the Winamp Enthusiasts Forum - Join the Winamp Skin Love facebook group:
simon snowflake is offline   Reply With Quote
Old 6th September 2002, 15:55   #10
PJay Tycy
Senior Member
 
Join Date: Jan 2002
Posts: 252
Yeah sure, submit it, it might even become the featured skin of the week :-)

I suggest others who have a good idea of great scripting tips, can add some features to this skin. It would be very sweet if it had the components skinned and scripted in the same way: not functional, but educational. Especially the playlist and the media library, I guess these are the windows that are skinned in the least skins, and are the most complex ones to script.
PJay Tycy is offline   Reply With Quote
Old 6th September 2002, 17:20   #11
frisbeemonkey
Major Dude
 
frisbeemonkey's Avatar
 
Join Date: Jun 2002
Posts: 851
Hmm, two people saying to submit it...
wildrose-wally posts the featured skins... Maybe I should! ...haha, no.
I was actually thinking of abandoning this project and going with the idea of making the scripts shown here so that they can be dropped into just about any skin and be used with only a few changes to the XML. So far the drawer, seek, and play2pause are done, you don't even need to recompile anything if you follow the directions. People don't care how it's done, they just want results, haha.
That's not a bad idea about skinning the components though. I've yet to tackle that with my skin, perhaps I could learn/mess around with it on this skin, then post the results. No promises on how soon that will be, however, as I really want to get to work on Rumble.
If you're waiting for the modular/drop-in scripts, look for a new post from me(new topic) later this weekend. If you're waiting for the skinned components... keep waiting
~FrisbeeMonkey
frisbeemonkey is offline   Reply With Quote
Old 8th September 2002, 20:24   #12
nucleo
Junior Member
 
Join Date: Aug 2002
Posts: 20
Question small quest

Hi Frisbee,

I found your Maki skin very-very useful - great idea! Thank You for that. I need some help in scripting: i didn't know where i should ask it, so I ask You. I write a small script, it's function is show and hide layers when I push a button. When I try to compile it with 'mc' it shows an error message always: "Syntax error at c:\... Global int status; Exited with code 4".
Here is the code:

#include "c:\Program Files\Winamp3\Lib\std.mi"

Global int status;
Global Layer layer1, layer2, layer3;
Global Button infobutton;

System.onScriptLoaded() {
status = 1;
Layout mainLayout = getContainer("Main").getLayout("Normal");
layer1 = mainLayout.getObject("layer1");
layer2 = mainLayout.getObject("layer2");
layer3 = mainLayout.getObject("layer3");
infobutton = mainLayout.getObject("infobutton");
}

infobutton.onLeftClick() {
if (status < 3) {
status = status + 1;
} else {
status = 1;
}
}

if (status == 1) {
layer1.show();
layer2.hide();
layer3.hide();
}

if (status == 2) {
layer1.hide();
layer2.show();
layer3.hide();
}

if (status == 3) {
layer1.hide();
layer2.hide();
layer3.show();
}


I don't understand what is the problem with Global int status; ??? it's a simple variable declaration isn't it? Anyway while I called status as "x", the compiler send an other syntax error message with the line if (status == 1) {
Can You or somebody help me? Thanks everybody who answer me...
nucleo is offline   Reply With Quote
Old 8th September 2002, 20:38   #13
DirtyLowMoFo
Member
 
Join Date: Aug 2002
Posts: 58
nucleo

change the name of the variable from status to something else eg. state (i think status is allready defined as a variable in std.mi, not sure bout that tho)
DirtyLowMoFo is offline   Reply With Quote
Old 8th September 2002, 20:54   #14
nucleo
Junior Member
 
Join Date: Aug 2002
Posts: 20
Thx Dirty, but

when I named the variable to 'state' (I think it should be indifferent how I call it) the compiler send an other syntax error message:

syntay error... if (state == 1) {
exited with code 4

What's the problem now? I don't understand... I don't...
nucleo is offline   Reply With Quote
Old 8th September 2002, 21:07   #15
DirtyLowMoFo
Member
 
Join Date: Aug 2002
Posts: 58
wot about this?

code:
____________________________________________________________________
#include "c:\Program Files\Winamp3\Lib\std.mi"

Global int state;
Global Layer layer1, layer2, layer3;
Global Button infobutton;

System.onScriptLoaded() {
state = 1;
Layout mainLayout = getContainer("Main").getLayout("Normal");
layer1 = mainLayout.getObject("layer1");
layer2 = mainLayout.getObject("layer2");
layer3 = mainLayout.getObject("layer3");
infobutton = mainLayout.getObject("infobutton");
}

infobutton.onLeftClick() {

if (state == 1) {
layer1.show();
layer2.hide();
layer3.hide();
state = 2;
}

if (state == 2) {
layer1.hide();
layer2.show();
layer3.hide();
state = 3;
}

if (state == 3) {
layer1.hide();
layer2.hide();
layer3.show();
state = 1;
}
}
________________________________________________________________
DirtyLowMoFo is offline   Reply With Quote
Old 8th September 2002, 21:31   #16
nucleo
Junior Member
 
Join Date: Aug 2002
Posts: 20
Thanks very,

it's compiled yet but doesn't work.
I'm working on it. (By the way I don't understand yet what was the problem with the previous version...)
nucleo is offline   Reply With Quote
Old 8th September 2002, 21:55   #17
DirtyLowMoFo
Member
 
Join Date: Aug 2002
Posts: 58
ok, sorry bout that, i have tried this & its working
code:
______________________________________________________________________
infobutton.onLeftClick() {

if (state == 1) {
layer1.show();
layer2.hide();
layer3.hide();
state = 2;
} else {

if (state == 2) {
layer1.hide();
layer2.show();
layer3.hide();
state = 3;
} else {

if (state == 3) {
layer1.hide();
layer2.hide();
layer3.show();
state = 1;
}
}
}
}
___________________________________________________________________
DirtyLowMoFo is offline   Reply With Quote
Old 8th September 2002, 21:59   #18
nucleo
Junior Member
 
Join Date: Aug 2002
Posts: 20
It impossible... i dont understand this compiler.

I write this code (only these 2 lines):

Global int state;
state = 1;


When I try to compile it, 'mc' tells:
"syntax error... state = 1; exited with code 4"
HOW IS THIS POSSIBLE??? Could anybody explain it?
nucleo is offline   Reply With Quote
Old 8th September 2002, 22:59   #19
nucleo
Junior Member
 
Join Date: Aug 2002
Posts: 20
Question

Dirty,

your last code is working, but not perfectly. I've had to insert these lines to after OnScriptLoaded:
layer1.show();
layer2.hide();
layer3.hide();
because when I launched the skin, all of the layers were visible.
But,
when i click on the button first time it doesn't do anything - later it works well. Any idea? And about my previous question?
nucleo is offline   Reply With Quote
Old 8th September 2002, 23:31   #20
nucleo
Junior Member
 
Join Date: Aug 2002
Posts: 20
OK, the final working code is:

#include "c:\Program Files\Winamp3\Lib\std.mi"

Global int state;
Global Layer layer1, layer2, layer3;
Global Button infobutton;

System.onScriptLoaded() {
state = 1;
Layout mainLayout = getContainer("Main").getLayout("Normal");
layer1 = mainLayout.getObject("layer1");
layer2 = mainLayout.getObject("layer2");
layer3 = mainLayout.getObject("layer3");
infobutton = mainLayout.getObject("infobutton");
layer1.show();
layer2.hide();
layer3.hide();
}

infobutton.onLeftClick() {

if (state == 1) {
layer1.hide();
layer2.show();
layer3.hide();
state = 2;
} else {

if (state == 2) {
layer1.hide();
layer2.hide();
layer3.show();
state = 3;
} else {

if (state == 3) {
layer1.show();
layer2.hide();
layer3.hide();
state = 1;
}
}
}
}


Thank You Dirty! Thanks indeed...
nucleo is offline   Reply With Quote
Old 9th September 2002, 00:13   #21
frisbeemonkey
Major Dude
 
frisbeemonkey's Avatar
 
Join Date: Jun 2002
Posts: 851
Hey nucleo,
Sorry I wasn't able to help you out with this, I was camping this weekend, and well it's hard to get online out in the woods, haha. I am glad you were able to get everything working though, and if you do run into more problems or have any questions feel free to ask, that's what the forums are for.
~FrisbeeMonkey
frisbeemonkey is offline   Reply With Quote
Old 9th September 2002, 11:25   #22
Samurai Deeper
Junior Member
 
Join Date: Jul 2001
Location: Paris/Strasbourg
Posts: 15
please make this thread sticky!!!
Samurai Deeper is offline   Reply With Quote
Old 9th September 2002, 16:48   #23
Syniq
Registered User
 
Join Date: Aug 2002
Posts: 15
THANK YOU!!!!

Thank you, Frisbee! This should help me a LOT.

You are a prince, man. A prince.


Syniq
Syniq is offline   Reply With Quote
Old 9th September 2002, 17:48   #24
nucleo
Junior Member
 
Join Date: Aug 2002
Posts: 20
Hi Frisbee,

don't worry about the weekend.
You could be sure I will come back here with different problems in scripting
nucleo is offline   Reply With Quote
Old 9th September 2002, 18:04   #25
nucleo
Junior Member
 
Join Date: Aug 2002
Posts: 20
Anyway the original code is working now (there was a small mistake in it):


#include "c:\Program Files\Winamp3\Lib\std.mi"

Global int state;
Global Layer layer1, layer2, layer3;
Global Button infobutton;

System.onScriptLoaded() {
state = 1;
Layout mainLayout = getContainer("Main").getLayout("Normal");
layer1 = mainLayout.getObject("layer1");
layer2 = mainLayout.getObject("layer2");
layer3 = mainLayout.getObject("layer3");
infobutton = mainLayout.getObject("infobutton");
layer1.show();
layer2.hide();
layer3.hide();
}

infobutton.onLeftClick() {
if (state < 3) {
state = state + 1;
} else {
state = 1;
}

if (state == 1) {
layer1.show();
layer2.hide();
layer3.hide();
}

if (state == 2) {
layer1.hide();
layer2.show();
layer3.hide();
}

if (state == 3) {
layer1.hide();
layer2.hide();
layer3.show();
}
}
nucleo is offline   Reply With Quote
Old 9th September 2002, 19:42   #26
dstro
Junior Member
 
dstro's Avatar
 
Join Date: Sep 2002
Posts: 32
wow u guys continue to amaze me

even an example skin has to look amazing

good job i really like
dstro is offline   Reply With Quote
Old 9th September 2002, 20:13   #27
frisbeemonkey
Major Dude
 
frisbeemonkey's Avatar
 
Join Date: Jun 2002
Posts: 851
MAKI skin update

Hey everyone,
I've updated the MAKI skin like I said I would earlier. I've made the scripts a lot easier to use, commented both the MAKI scripts and the XML to make everything more clear(I hope), fixed two bugs in the animated seek script, and made the skin smaller courtesy of PNGCrush. If this skin doesn't have a simple script that you would like an example of, head over to MAKI Cheats where I have all the scripts included in here posted along new ones on the way. I'll also try to fill any requests.
Until next time,
~FrisbeeMonkey
Attached Files
File Type: wal maki.wal (80.1 KB, 432 views)
frisbeemonkey is offline   Reply With Quote
Old 9th September 2002, 23:20   #28
nucleo
Junior Member
 
Join Date: Aug 2002
Posts: 20
Question

Hi Frisbee and everybody,

I hope you can help me (again) guys. I'd like to write a sript, with the following function: there's a 100 pixel lenght slider. If I move the slider it shows frames on a separated animatedlayer. The animated layer's got 10 frames.
Here's the code what I graved:

#include "c:\Program Files\Winamp3\Lib\std.mi"

Global int sliderpos;
Global int framenumber;
Global Slider sliderexample;
Global Animatedlayer indicator;

System.onScriptLoaded() {
Layout mainLayout = getContainer("Main").getLayout("Normal");
sliderexample = mainLayout.getObject("sliderexample");
indicator = mainLayout.getObject("indicator");
sliderpos = sliderexample.getPosition()/10;
framenumber = sliderpos;
indicator.gotoFrame(framenumber);
}

indicator.gotoFrame(int framenumber) {
sliderpos = sliderexample.getPosition()/10;
framenumber = sliderpos;
}

Naturally it doesn't work. Can You tell me what's the matter with it? Anyway if I declare an Int variable and I divide it, does it returns with an undivided value (I mean non floating number)?
nucleo is offline   Reply With Quote
Old 9th September 2002, 23:27   #29
nucleo
Junior Member
 
Join Date: Aug 2002
Posts: 20
Question

And one more question (sorry),

does "slider.getPosition()" give a relative pixel coordinate? In previous case (slider length is 100) the value will be between 0 and 99?
nucleo is offline   Reply With Quote
Old 10th September 2002, 00:23   #30
nucleo
Junior Member
 
Join Date: Aug 2002
Posts: 20
OK i see it returns with a value 0 to 255.
nucleo is offline   Reply With Quote
Old 10th September 2002, 01:24   #31
frisbeemonkey
Major Dude
 
frisbeemonkey's Avatar
 
Join Date: Jun 2002
Posts: 851
Hey nucleo,
What exactly do you want your slider to do? If you are looking for an animated seek script, this skin has one, or if you want an animated volume script, check out the MAKI Cheats sticky at the top of this forum.
If that's not the case, I'll try to help you with the code you pasted here.
First off, this:
indicator.gotoFrame(int framenumber) {
sliderpos = sliderexample.getPosition()/10;
framenumber = sliderpos;
}
is not right. You used gotoFrame properly in your onScriptLoaded, but you cannot use it like this. gotoFrame isn't triggered when something changes, it tells something to change. I think you want something like:
SliderExample.onPostedPosition(int p) {
framenumber = (p/255)*10;
indicator.gotoFrame(framenumber);
}
Also, notice I divided the position by 255, then multiplied by 10? Dividing by 255 gets what percent of 255 you are at, then multiplying by 10 tells it what frame you should use. Say p returned as 127. 127/255 is about .5 or 50% .5 * 10 is 5, so it would go to frame 5. Make sense?
~FrisbeeMonkey
frisbeemonkey is offline   Reply With Quote
Old 10th September 2002, 17:28   #32
Lion King
Major Dude
 
Join Date: Jan 2001
Posts: 1,670
thanks for your great tutorial skin!

some suggestions:
since the skin is rectangular could you make it dock to the component windows like the default skin and lounge?
the volume arrows suck, I don't want to click a thousand times to turn down the volume. Is it possible to let the volume go up/down while you hold down the mousebutton on that arrow?

an example for a mute button would be nice.
Lion King is offline   Reply With Quote
Old 10th September 2002, 17:42   #33
frisbeemonkey
Major Dude
 
frisbeemonkey's Avatar
 
Join Date: Jun 2002
Posts: 851
Hey LionKing,
It does dock, just much of the skin is transparent around the edges. I did this on the left side so the drawer could slide out. The rest was left like that in case I ever added any other demos and needed somewhere for the drawer to slide out, etc(which I think I am gonna add a drawer that reacts to mouseovers to the bottom)
The volume arrows DID suck. But there have been two subsequent releases of the skin, both of which utilized the autorepeating script by willfisher. Get the most recent version and try them out.
And a mute button is a good idea, I'll add that soon.
~FrisbeeMonkey
frisbeemonkey is offline   Reply With Quote
Old 10th September 2002, 20:36   #34
nucleo
Junior Member
 
Join Date: Aug 2002
Posts: 20
Hi there,

Here is a working code (look at my previous posts):

#include "c:\Program Files\Winamp3\Lib\std.mi"

Global int p;
Global int framenumber;
Global Slider sliderexample;
Global Animatedlayer indicator;

System.onScriptLoaded() {
Layout mainLayout = getContainer("Main").getLayout("Normal");
sliderexample = mainLayout.getObject("sliderexample");
indicator = mainLayout.getObject("indicator");
p = sliderexample.GetPosition();
if (p == 255) {
framenumber = 9;
} else {
framenumber = (p/255)*10;
}
indicator.gotoFrame(framenumber);
}

SliderExample.onSetPosition(int p) {
if (p == 255) {
framenumber = 9;
} else {
framenumber = (p/255)*10;
}
indicator.gotoFrame(framenumber);
}



Thanks for your help Frisbee!
Everybody can use this code for example a volume slider, wich shows a diagram in a display.
nucleo is offline   Reply With Quote
Old 10th September 2002, 22:54   #35
PJay Tycy
Senior Member
 
Join Date: Jan 2002
Posts: 252
Hey Frisbeemonkey,

An idea I got from a question in this forum: A "stop playing after this song is finished"-script shouldn't be too hard if you use "System.onTitleChange()" :-)


PJay
PJay Tycy is offline   Reply With Quote
Old 11th September 2002, 07:30   #36
frisbeemonkey
Major Dude
 
frisbeemonkey's Avatar
 
Join Date: Jun 2002
Posts: 851
MAKI Skin Update

All right, more scripts added to this skin.

Now there is a mute script that sets the volume to 0 when on, returns to the previous value when turned off. Also included is a drawer that opens/closes on mouseovers. Both of these features are brought to you by the letter M, haha. There's also a little toy I threw in there just for kicks(you can see it in the screenshot, under the A) It was originally just a proof of concept for my Soundwave skin, but I figured I'd leave it in.
Be sure to read the readme.txt. I've redone how the XML was organized just because it was getting too cluttered(you know it's bad when I can't find stuff and I wrote the thing) I don't feel like going into detail, just read the readme.
Hopefully tomorrow sometime I'll have that stop-after-current-song button working. Not sure it will be as easy as onTitleChange though, since some people like to listen to one song over and over and over and... Who knows, it might work even in that case. I'll try that first.
Time to maki like a tree and leave,
~FrisbeeMonkey
Attached Files
File Type: wal maki.wal (92.1 KB, 468 views)
frisbeemonkey is offline   Reply With Quote
Old 11th September 2002, 07:37   #37
simon snowflake
Skin Wizard
(Forum King)
 
simon snowflake's Avatar
 
Join Date: Aug 2000
Location: Gent, Belgium. does anybody know where the toilets are?
Posts: 4,636
Send a message via ICQ to simon snowflake
I dont see the thing under the A.
maybe wrong file uploaded?

don't be a thief of your own life.... : DEXYD - Digitally EXpressing Your Dreams

Join the Winamp Enthusiasts Forum - Join the Winamp Skin Love facebook group:
simon snowflake is offline   Reply With Quote
Old 11th September 2002, 07:42   #38
YtseJam
Forum King
 
YtseJam's Avatar
 
Join Date: Dec 2000
Location: Israel
Posts: 2,399
Send a message via ICQ to YtseJam Send a message via AIM to YtseJam
No... I think he means that thingie under the song title. Look at the original image at the first page of this thread.
YtseJam is offline   Reply With Quote
Old 11th September 2002, 07:56   #39
simon snowflake
Skin Wizard
(Forum King)
 
simon snowflake's Avatar
 
Join Date: Aug 2000
Location: Gent, Belgium. does anybody know where the toilets are?
Posts: 4,636
Send a message via ICQ to simon snowflake
sorry I did n't read the readme.

Thats phun

maybe you could use the pidgeon and let the skin follow?

don't be a thief of your own life.... : DEXYD - Digitally EXpressing Your Dreams

Join the Winamp Enthusiasts Forum - Join the Winamp Skin Love facebook group:
simon snowflake is offline   Reply With Quote
Old 11th September 2002, 18:11   #40
frisbeemonkey
Major Dude
 
frisbeemonkey's Avatar
 
Join Date: Jun 2002
Posts: 851
Heh, see, it is called the Readme.txt as opposed to the DoNotReadme.txt. I didn't want it to be visible on default as it was more just for fun, not really to teach MAKI. It probably won't even be in the next release. Glad you found/enjoyed it though.
And did you mean to have the skin follow the pigeon? That's funny, I was actually thinking of making a useless add-on that did something much like that. You have a little fish and a shark. The shark would swim to wherever you moved the fish. If the shark catches the fish, well, that's the end of the fish. Maybe there would be a bucket to get more fish from? I gave up on that idea though, my graphical skills need to improve a lot before I try something like that.
Bye for now,
~FrisbeeMonkey
frisbeemonkey 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