liste-ports.js (1226B)
1 function MListePorts(estEntrée) { 2 makeUid(this); 3 this.estEntrée = estEntrée; 4 makeCollection(this, 'ports'); 5 } 6 7 function VListePorts(mListePorts, emplacement) { 8 makeView(this, 'vListePorts', emplacement, 'vPorts', 'vNouveauPort'); 9 10 this.cbClickPort = []; 11 this.vPortsFilles = []; 12 var that = this; 13 14 // Actions 15 this.actionNouveauPort = function() { 16 mListePorts.addPorts(new MPort()); 17 }; 18 19 this.clickPort = function(mPort) { 20 singleton.portClickA.mListePorts = mListePorts; 21 faireCallbacks(that.cbClickPort, mPort); 22 }; 23 24 this.ajoutPort = function(mListePorts, mPort) { 25 var vp = new VPort(mPort, that.parties.vPorts); 26 that.vPortsFilles.push(vp); 27 vp.onClick(that.clickPort); 28 }; 29 30 this.vueNormale = function() { 31 } 32 33 // Binding 34 mListePorts.onAddPorts(this.ajoutPort); 35 for (var i = 0; i < mListePorts.ports.length; i++) { 36 this.ajoutPort(mListePorts, mListePorts.ports[i]); 37 } 38 39 this.parties.vNouveauPort.click(this.actionNouveauPort); 40 41 this.onClickPort = function(callback) { 42 that.cbClickPort.push(callback); 43 }; 44 45 // Défauts 46 this.vueNormale(); 47 }