Changeset 136


Ignore:
Timestamp:
01/16/09 08:34:52 (4 years ago)
Author:
jeroen
Message:

inserted model initialization into the player so it's very easy to create your own player

Location:
trunk/as3
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/as3/com/jeroenwijering/player/Model.as

    r135 r136  
    66 
    77import com.jeroenwijering.events.*; 
    8 import com.jeroenwijering.models.*; 
     8import com.jeroenwijering.models.BasicModel; 
    99import com.jeroenwijering.player.*; 
    1010import com.jeroenwijering.utils.*; 
     
    6666                } 
    6767                item = controller.playlist[config['item']]; 
    68                 if(!models[item['type']]) { 
    69                         loadModel(item['type']); 
    70                 } 
    7168                if(models[item['type']]) { 
    7269                        models[item['type']].load(item); 
     
    8178 
    8279 
    83         /** Initialize a new model. **/ 
    84         private function loadModel(typ:String):void { 
    85                 switch(typ) { 
    86                         case 'camera': 
    87                                 models[typ] = new CameraModel(this); 
    88                                 break; 
    89                         case 'http': 
    90                                 models[typ] = new HTTPModel(this); 
    91                                 break; 
    92                         case 'image': 
    93                                 models[typ] = new ImageModel(this); 
    94                                 break; 
    95                         case 'lighttpd': 
    96                                 models[typ] = new LighttpdModel(this); 
    97                                 break; 
    98                         case 'nginx': 
    99                                 models[typ] = new NginxModel(this); 
    100                                 break; 
    101                         case 'rtmp': 
    102                                 models[typ] = new RTMPModel(this); 
    103                                 break; 
    104                         case 'sound': 
    105                                 models[typ] = new SoundModel(this); 
    106                                 break; 
    107                         case 'video': 
    108                                 models[typ] = new VideoModel(this); 
    109                                 break; 
    110                         case 'youtube': 
    111                                 models[typ] = new YoutubeModel(this); 
    112                                 break; 
    113                 } 
     80        /** Load a new playback model. **/ 
     81        public function loadModel(mdl:BasicModel,typ:String):void { 
     82                models[typ] = mdl; 
    11483        }; 
    11584 
  • trunk/as3/com/jeroenwijering/player/Player.as

    r135 r136  
    66 
    77import com.jeroenwijering.events.*; 
     8import com.jeroenwijering.models.*; 
    89import com.jeroenwijering.plugins.*; 
    910import com.jeroenwijering.utils.Configger; 
     
    115116                view = new View(config,skin,sploader,controller,model); 
    116117                controller.closeMVC(model,view); 
     118                loadModels(); 
    117119                loadPlugins(); 
    118120        }; 
    119121 
    120122 
    121         /** MVC inited; now init built-in plugins and load external ones. **/ 
     123        /** Initialize all playback models. **/ 
     124        protected function loadModels():void { 
     125                model.loadModel(new CameraModel(model),'camera'); 
     126                model.loadModel(new HTTPModel(model),'http'); 
     127                model.loadModel(new ImageModel(model),'image'); 
     128                model.loadModel(new LighttpdModel(model),'lighttpd'); 
     129                model.loadModel(new NginxModel(model),'nginx'); 
     130                model.loadModel(new RTMPModel(model),'rtmp'); 
     131                model.loadModel(new SoundModel(model),'sound'); 
     132                model.loadModel(new VideoModel(model),'video'); 
     133                model.loadModel(new YoutubeModel(model),'youtube'); 
     134        }; 
     135 
     136 
     137        /** Init built-in plugins and load external ones. **/ 
    122138        protected function loadPlugins():void { 
    123139                sploader.addPlugin(new Display(),'display'); 
  • trunk/as3/com/jeroenwijering/plugins/Controlbar.as

    r135 r136  
    164164        private function itemHandler(evt:ControllerEvent=null):void { 
    165165                try { 
    166                         if(view.playlist && view.playlist.length > 1 && view.config['playlist'] != 'none') { 
     166                        if(view.playlist && view.playlist.length > 1 && view.config['playlist'] == 'none') { 
    167167                                bar.prevButton.visible = bar.nextButton.visible = true; 
    168168                        } else { 
Note: See TracChangeset for help on using the changeset viewer.