A Flash Developer Resource Site

Results 1 to 1 of 1

Thread: Switch control from hor. to vert.

Threaded View

  1. #1
    Senior Member
    Join Date
    Feb 2002
    Posts
    272

    Switch control from hor. to vert.

    Hey all, I've been playing around with this mp3 player file and I'd like to change the orientation of the volume slider from horizontal to vertical. Can anyone tell me what I'd modify in this code to do that? I tried replacing the x's with y's, but then the slider is completely gone and the music doesn't play. Any help would be greatly appreciated! thanks!


    code:

    //defines a new sound object
    music = new Sound(this);
    trkInfo = new Date();


    //comment these three lines if you don't want it to play on startup
    playing = false;
    paused = false;
    loading = true;
    loop = true;
    ///////////////////////////////////////////////////////////////////

    //sets the beginning slider attributes
    vol_mc.slider_mc._x = 70;
    bal_mc.slider_mc._x = 50;
    pos_mc.slider_mc._x = 0;
    pos_mc.slider_mc._visible = false;
    vol_mc.slider_mc.slider.useHandCursor = false;
    bal_mc.slider_mc.slider.useHandCursor = false;
    pos_mc.slider_mc.slider.useHandCursor = false;
    scroller_mc.slider_mc.slider.useHandCursor = false;
    loop_mc.radio_mc.useHandCursor = false;
    shuffle_mc.radio_mc.useHandCursor = false;
    //controls which song is highlighted in the playlist, see attacher
    function select(){
    for(i in playlist_mc.target_mc){
    if(playlist_mc.target_mc[ i].songNum != songNum){
    playlist_mc.target_mc[ i].gotoAndStop(1);
    }
    else{
    playlist_mc.target_mc[ i].gotoAndStop(2);
    }

    }

    }

    songNum = 0;
    numTracks = songInfo.content.length;

    for(i = 0; i < numTracks; i++){
    songInfo.content[ i].songNum = i;
    playlist_mc.target_mc.attachMovie("playlistItem", "item" + i, (i+1), songInfo.content[ i]);
    playlist_mc.target_mc["item" + i]._y = i * 18;
    if(playlist_mc.target_mc["item" + i].title == songInfo.content[songNum].title){
    playlist_mc.target_mc["item" + i].gotoAndStop(2);
    }
    else{
    playlist_mc.target_mc["item" + i].gotoAndStop(1);
    }
    }

    scrollWindowHeight = 72;
    scrollMax = (playlist_mc.target_mc._y + playlist_mc.target_mc._height) - scrollWindowHeight;



    //loads the song
    music.loadSound(songInfo.content[songNum].path, false);

    //this is what makes the music fade when you hit the stop button
    function fadeOut() {
    if (music.getVolume()>0) {
    music.setVolume(music.getVolume()-4);
    } else {
    music.stop();
    pos_mc.slider_mc._visible = false;
    pos_mc.slider_mc._x = 0;
    }
    }

    //this function is called when the first song ends, or the next button is press. It moves to the next song
    function nextSong(){
    if(loop == true and skipLoop != true){
    music.stop();
    music.start(0, 0);
    }
    else{
    if(shuffle == true){
    songNum = Math.floor(Math.random()*(numTracks-1));
    }
    else{
    songNum++;
    if(songNum == songInfo.content.length){
    songNum = 0;
    }
    }
    loading = true;
    playing = false;
    paused = false;
    select();
    if(skipLoop == true){
    skipLoop = false;
    }
    music.loadSound(songInfo.content[songNum].path, false);
    }


    }

    //self explantory =)
    function prevSong(){
    songNum--;
    if(songNum < 0){
    songNum = songInfo.content.length - 1;
    }

    loading = true;
    playing = false;
    paused = false;

    select();
    music.loadSound(songInfo.content[songNum].path, false);

    }
    //this function controls the text in the info window and what actions the player will take next based on what button is pressed
    this.onEnterFrame = function() {
    dur = music.duration;
    pos = music.position;
    total = music.getBytesTotal();
    loaded = music.getBytesLoaded();

    //preloader
    if (loading == true) {
    if (music.getBytesLoaded() == music.getBytesTotal() and dur > 0){
    loading = false;
    playing = true;
    music.start(0,0);
    music.setVolume(vol_mc.slider_mc._x);
    music.setPan((bal_mc.slider_mc._x-50)*2);
    status = "playing";
    pos_mc.slider_mc._visible = true;
    }
    else{
    pos_mc.slider_mc._visible = false;

    if(music.getBytesTotal() != undefined){
    artist = Math.round(music.getBytesLoaded()/music.getBytesTotal()*100)+"% loaded";
    }
    else{
    artist = undefined;
    }

    title = undefined;
    status = "loading";
    }
    }

    //updates the sound attributes (vol, bal, etc...) and displays their info in the text fields
    else if (playing == true) {
    vol = music.getVolume() + "%";
    bal = music.getPan();
    if(whichDrag != "pos_mc"){
    pos_mc.slider_mc._x = (music.position/music.duration)*100;
    }

    music.setVolume(vol_mc.slider_mc._x);
    music.setPan((bal_mc.slider_mc._x-50)*2);
    titleArtist = songInfo.content[songNum].path;
    title = songInfo.content[songNum].title;
    artist = songInfo.content[songNum].artist;
    music.onSoundComplete = nextSong;

    } else{
    titleArtist = undefined;
    fadeOut();
    status = "stopped";
    }

    //controls the scrolling of the playlist
    if(scrolling == true){
    if(playlist_mc._height > scrollWindowHeight){
    percentScroll = (scroller_mc.slider_mc._y/(scroller_mc.scrollBg_mc._y + scroller_mc.scrollBg_mc._height));
    scrollValue = scrollMax*percentScroll;
    playlist_mc.target_mc._y = -(scrollValue);
    }
    }


    //displays the time
    if(timeWay == "forward" or timeWay == undefined){
    trkInfo.setSeconds(music.position/1000);
    trkInfo.setMinutes((music.position/1000)/60);
    trkInfo.setHours((music.position/1000)/3600);
    }
    else{
    trkInfo.setSeconds((music.duration -music.position)/1000);
    trkInfo.setMinutes(((music.duration -music.position)/1000)/60);
    trkInfo.setHours(((music.duration -music.position)/1000)/3600);
    }
    seconds = trkInfo.getSeconds();
    minutes = trkInfo.getMinutes();
    hours = trkInfo.getHours();


    if(seconds < 10){
    seconds = 0 + seconds.toString();
    }
    if(minutes < 10){
    minutes = 0 + minutes.toString();
    }
    if(hours < 10){
    hours = 0 + hours.toString();
    }

    trkHrs = Math.floor((music.duration/1000)/3600);
    trkMin = Math.floor((music.duration/1000)/60);
    trkSec = Math.floor((music.duration/1000) - (60*trkMin));
    if(trkSec < 10){
    trkSec = 0 + trkSec.toString();
    }
    if(trkMin < 10){
    trkMin = 0 + trkMin.toString();
    }
    if(trkHrs < 10){
    trkHrs = 0 + trkHrs.toString();
    }
    if(loading != true){
    time = hours + ":" + minutes + ":" + seconds;
    totalTrkTime = trkHrs + ":" + trkMin + ":" + trkSec;
    }
    else{
    time = undefined;
    totalTrkTime = undefined;
    }
    };

    ///////////////////////////////end onEnterFrame///////////////////////////////


    //controls the play button
    play_mc.onRelease = play_mc.onReleaseOutside = function() {
    if(playing != true or paused == true){
    if(loading != true){
    if(paused == true){
    seconds = pos/1000;
    music.start(seconds, 0);
    paused = false;
    }
    else if (loading != true) {
    loading = true;
    music.loadSound(songInfo.content[songNum].path, false);
    //music.start(0,0);
    }
    }
    }
    };

    //controls the stop button
    stop_mc.onRelease = stop_mc.onReleaseOutside = function () {
    //if(loading != true){
    loading =false;
    playing = false;
    paused = false;
    artist = undefined;
    title = undefined;
    //}
    };

    //controls the pause button
    pause_mc.onRelease = pause_mc.onReleaseOutside = function(){
    if(playing == true){
    if(paused == false){
    pos = music.position;
    music.stop();
    //playing = false;
    paused = true;
    }
    else{
    seconds = pos/1000;
    music.start(seconds, 0);
    paused = false;
    }
    }
    }

    //controls the next button
    next_mc.onRelease = next_mc.onReleaseOutside = function(){
    if(loading != true){
    skipLoop = true;
    nextSong();
    }
    }

    //controls the previous button
    back_mc.onRelease = back_mc.onReleaseOutside = function(){
    if(loading != true){
    prevSong();
    }
    }

    loop_mc.radio_mc.onRelease = shuffle_mc.radio_mc.onRelease = function(){
    if(this._parent._currentframe == 1){
    this._parent.gotoAndStop(2);
    }
    else{
    this._parent.gotoAndStop(1);
    }
    if(this._parent._name == "loop_mc"){
    if(loop == true){
    loop = false;
    }
    else{
    loop = true;
    }
    }
    if(this._parent._name == "shuffle_mc"){
    if(shuffle == true){
    shuffle = false;
    }
    else{
    shuffle = true;
    }
    }

    }

    //controls the sliders
    vol_mc.slider_mc.slider.onPress = bal_mc.slider_mc.slider.onPress=pos_mc.slider_mc.s lider.onPress=function () {
    whichDrag = this._parent._parent._name;
    this._parent.onMouseMove = function() {
    updateAfterEvent();
    };
    this._parent.startDrag(false, 0, this._y, 100, this._y);
    };

    vol_mc.slider_mc.slider.onRelease = vol_mc.slider_mc.slider.onReleaseOutside=
    bal_mc.slider_mc.slider.onRelease = bal_mc.slider_mc.slider.onReleaseOutside=
    pos_mc.slider_mc.slider.onRelease = pos_mc.slider_mc.slider.onReleaseOutside=
    function () {
    if(whichDrag == "pos_mc"){
    if(pos_mc.slider_mc._x == 100){
    pos_mc.slider_mc._x = 99.5;
    }
    newPos = (pos_mc.slider_mc._x*(music.duration/1000))/100;
    music.stop();
    music.start(newPos, 0);
    }
    whichDrag = undefined;
    beenDragged = "pos_mc";
    this._parent.onMouseMove = undefined;
    this._parent.stopDrag();
    if(bal_mc.slider_mc._x > 47 and bal_mc.slider_mc._x < 53){
    bal_mc.slider_mc._x=50;
    }
    };
    scroller_mc.slider_mc.slider.onPress = function(){
    scrolling = true;

    this._parent.startDrag(0, this._parent._x, this._parent._parent.scrollBg_mc._y,
    this._parent._x, this._parent._parent.scrollBg_mc._y + this._parent._parent.scrollBg_mc._height);
    }
    scroller_mc.slider_mc.slider.onRelease = function(){
    scrolling = false;
    this._parent.stopDrag();
    }

    //controls the button that changes the time display from time elapsed to time left, and vice versa
    timeButton_mc.onRelease = function(){
    if(timeWay == undefined){
    timeWay = "back";
    }
    else if(timeWay == "forward"){
    timeWay = "back";
    }
    else if(timeWay == "back"){
    timeWay = "forward";
    }
    }
    stop();




    EDIT: Added as tags to make code more readable - jbum
    Last edited by jbum; 10-13-2004 at 05:30 PM.
    Woody

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  




Click Here to Expand Forum to Full Width

HTML5 Development Center