www

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README

instance-log.js (1727B)


      1 function MInstanceLog() {
      2     $.extend(this, {
      3         uid: singleton.uid(),
      4         // Propriétés
      5         log: null,
      6         pause: false
      7     });
      8 }
      9 
     10 function VInstanceLog(vMondeParente) {
     11     $.extend(this,(
     12         $('#vue-log')
     13             .jqote({})
     14             .appendTo(vMondeParente)));
     15     
     16     this.vBarreTitre = this.find('.barre-titre');
     17     this.vTitre = this.find('.titre');
     18     this.vBoutonPause = this.find('.log.pause');
     19     this.vBoutonPlay = this.find('.log.play');
     20     this.vMessages = this.find('.messages');
     21     
     22     this.doPlay = function() {
     23         this.vMessages.stop().scrollToLast(200);
     24         this.vBoutonPause.show();
     25         this.vBoutonPlay.hide();
     26     };
     27     this.doPause = function() {
     28         this.vMessages.stop();
     29         this.vBoutonPause.hide();
     30         this.vBoutonPlay.show();
     31     };
     32     this.ajoutMessage = function(msg, scroll) {
     33         this.vMessages.append($('<div/>').text(msg));
     34         if (scroll) this.vMessages.stop().scrollToLast(100);
     35     }
     36     
     37     this.draggable();
     38     this.resizable();
     39     this.vMessages.css('top', this.vBarreTitre.outerHeight());
     40     this.doPlay();
     41 }
     42 
     43 function CInstanceLog(mInstanceLog, vMondeParente) {
     44     this.modèle = mInstanceLog;
     45     this.vue = new VInstanceLog(vMondeParente);
     46     
     47     var that = this;
     48     this.vue.vBoutonPause.add(this.vue.vBoutonPlay)
     49         .click(function() {
     50             if (that.modèle.pause) {
     51                 that.modèle.pause = false;
     52                 that.vue.doPlay();
     53             } else {
     54                 that.modèle.pause = true;
     55                 that.vue.doPause();
     56             }
     57         });
     58 
     59     this.modèle.log.onMessage(function(msg) {
     60         that.vue.ajoutMessage(msg, !that.modèle.pause)
     61     });
     62 }