Changeset 212:99534b6c5b50
- Timestamp:
- Feb 15, 2011, 12:39:32 PM (13 years ago)
- Branch:
- default
- Phase:
- public
- Location:
- source
- Files:
-
- 6 added
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
source/class/pf/Application.js
r209 r212 315 315 // Add to the list of favorites 316 316 var fav = new Object; 317 fav.entity = leaf.getUserData("entity"); 318 fav.species = leaf.getUserData("species"); 319 fav.color = this.nextColor(); 317 fav.entity = leaf.getUserData("entity"); 318 fav.s1 = leaf.getUserData("s1"); 319 fav.s2 = leaf.getUserData("s2"); 320 fav.color = this.nextColor(); 320 321 this.favorites.push(fav); 321 322 … … 339 340 leaf.setTextColor(this.leafColor); 340 341 341 var entity = leaf.getUserData("entity"); 342 var species = leaf.getUserData("species"); 342 var entity = leaf.getUserData("entity"); 343 var s1 = leaf.getUserData("s1"); 344 var s2 = leaf.getUserData("s2"); 343 345 344 346 // Remove from the list of favorites 345 347 for (var k = 0; k < this.favorites.length; k++) { 346 348 var fav = this.favorites[k]; 347 if (fav.entity == entity && fav.s pecies == species) {349 if (fav.entity == entity && fav.s1 == s1 && fav.s2 == s2) { 348 350 this.favorites.splice(k, 1); 349 351 break; … … 454 456 455 457 456 getEntityFullName : function (entity, species) 458 getSpeciesName : function(species) { 459 var name; 460 461 switch (species.id) { 462 case "e": 463 name = "electrons"; 464 break; 465 case "i": 466 name = "ions"; 467 break; 468 case "r": 469 name = "radiators"; 470 break; 471 default: 472 name = null; 473 break; 474 } 475 476 return name; 477 }, 478 479 getEntityFullName : function(entity, s1, s2) 457 480 { 458 481 var name = entity.name; 459 if (entity.nspecies == 1) { 482 switch (entity.nspecies) { 483 case 2: 484 name += " (" + this.getSpeciesName(s1) + "/" + 485 this.getSpeciesName(s2) + ")"; 486 break; 487 case 1: 460 488 var prepos = entity.prepos; 461 489 if (!prepos) { 462 490 prepos = "of"; 463 491 } 464 name += " " + prepos + " "; 465 switch (species.id) { 466 case "e": 467 name += "electrons"; 468 break; 469 case "i": 470 name += "ions"; 471 break; 472 case "r": 473 name += "radiators"; 474 break; 475 } 492 name += " " + prepos + " " + this.getSpeciesName(s1); 493 break; 494 default: 495 break; 476 496 } 477 497 … … 479 499 }, 480 500 481 evaluateEntityValue : function(entity, s pecies)501 evaluateEntityValue : function(entity, s1, s2) 482 502 { 483 503 var formula; 484 if (entity.nspecies == 1) { 485 var species_str = "this.plasma." + species.id; 486 formula = entity.formula.replace(/\%s1/g, species_str); 487 } else { 504 switch (entity.nspecies) { 505 case 1: 506 var s1_str = "this.plasma." + s1.id; 507 formula = entity.formula.replace(/\%s1/g, s1_str); 508 break; 509 case 2: 510 var s1_str = "this.plasma." + s1.id; 511 var s2_str = "this.plasma." + s2.id; 512 formula = entity.formula.replace(/\%s1/g, s1_str); 513 formula = formula.replace(/\%s2/g, s2_str); 514 break; 515 default: 488 516 formula = entity.formula; 517 break; 489 518 } 490 519 var v = eval(formula); … … 502 531 } 503 532 504 var entity = leaf.getUserData("entity"); 505 var species = leaf.getUserData("species"); 533 var entity = leaf.getUserData("entity"); 534 var s1 = leaf.getUserData("s1"); 535 var s2 = leaf.getUserData("s2"); 506 536 507 537 var name, section, value; 508 538 if (entity) { 509 var v = this.evaluateEntityValue(entity, s pecies);539 var v = this.evaluateEntityValue(entity, s1, s2); 510 540 var scale = this.gui_entity_units.getSelectedValue(); 511 541 512 name = this.getEntityFullName(entity, s pecies);542 name = this.getEntityFullName(entity, s1, s2); 513 543 section = entity.section; 514 544 value = v*scale … … 538 568 isFavorite : function(leaf) 539 569 { 540 var entity = leaf.getUserData("entity"); 541 var species = leaf.getUserData("species"); 570 var entity = leaf.getUserData("entity"); 571 var s1 = leaf.getUserData("s1"); 572 var s2 = leaf.getUserData("s2"); 542 573 543 574 for (var k = 0; k < this.favorites.length; k++) { 544 575 var fav = this.favorites[k]; 545 if (fav.entity == entity && fav.s pecies == species) {576 if (fav.entity == entity && fav.s1 == s1 && fav.s2 == s2) { 546 577 return true; 547 578 break; … … 552 583 }, 553 584 554 addEntityLeaf : function(entity, s pecies)585 addEntityLeaf : function(entity, s1, s2) 555 586 { 556 587 var icon; 557 if (species) { 558 icon = "pf/image/" + species.id + "_small.png"; 588 589 if (s1 && s2) { 590 icon = "pf/image/" + s1.id + s2.id + "_small.png"; 591 } else 592 if (s1) { 593 icon = "pf/image/" + s1.id + "_small.png"; 559 594 } else { 560 595 icon = "pf/image/all_small.png"; … … 564 599 leaf.setIcon(icon); 565 600 leaf.addListener("contextmenu", treeMenuCB, this); 601 566 602 leaf.setUserData("entity", entity); 567 568 if (species) { 569 leaf.setUserData("species", species); 570 } 603 leaf.setUserData("s1", s1); 604 leaf.setUserData("s2", s2); 571 605 572 606 if (this.isFavorite(leaf)) { … … 657 691 for (var j = 0; j < sa.length; j++) { 658 692 var s = sa[j]; 659 leaf = this.addEntityLeaf(entity, s );693 leaf = this.addEntityLeaf(entity, s, null); 660 694 folder.add(leaf); 661 695 } 662 696 break; 697 case 2: 698 for (var j = 0; j < sa.length; j++) { 699 var s1 = sa[j]; 700 for (var k = j; k < sa.length; k++) { 701 var s2 = sa[k]; 702 leaf = this.addEntityLeaf(entity, s1, s2); 703 folder.add(leaf); 704 } 705 } 706 break; 663 707 default: 664 leaf = this.addEntityLeaf(entity, null );708 leaf = this.addEntityLeaf(entity, null, null); 665 709 folder.add(leaf); 666 710 break; … … 719 763 } 720 764 721 var species = fav.species; 765 var s1 = fav.s1; 766 var s2 = fav.s2; 722 767 723 768 var icon; 724 if (species) { 725 icon = "pf/image/" + species.id + "_small.png"; 769 if (s1 && s2) { 770 icon = "pf/image/" + s1.id + s2.id + "_small.png"; 771 } else 772 if (s1) { 773 icon = "pf/image/" + s1.id + "_small.png"; 726 774 } else { 727 775 icon = "pf/image/all_small.png"; 728 776 } 729 var name = this.getEntityFullName(entity, s pecies);730 var value = scale*this.evaluateEntityValue(entity, s pecies);777 var name = this.getEntityFullName(entity, s1, s2); 778 var value = scale*this.evaluateEntityValue(entity, s1, s2); 731 779 732 780 rowData.push([icon, name, entity.section, … … 760 808 } 761 809 762 var species = fav.species; 763 764 var name = this.getEntityFullName(entity, species); 810 var s1 = fav.s1; 811 var s2 = fav.s2; 812 813 var name = this.getEntityFullName(entity, s1, s2); 765 814 var color = fav.color; 766 815 … … 1350 1399 } 1351 1400 1352 var species = fav.species; 1353 var vname = this.getEntityFullName(entity, species); 1401 var s1 = fav.s1; 1402 var s2 = fav.s2; 1403 var vname = this.getEntityFullName(entity, s1, s2); 1354 1404 1355 1405 var set = new Object; … … 1386 1436 } 1387 1437 1388 var value = scale*this.evaluateEntityValue(entity, s pecies);1438 var value = scale*this.evaluateEntityValue(entity, s1, s2); 1389 1439 1390 1440 if (first) { … … 2068 2118 var sfav = new Object; 2069 2119 sfav.entity_id = fav.entity.id; 2070 if (fav.s pecies) {2071 sfav.s pecies_id = fav.species.id;2120 if (fav.s1) { 2121 sfav.s1_id = fav.s1.id; 2072 2122 } else { 2073 sfav.species_id = null; 2123 sfav.s1_id = null; 2124 } 2125 if (fav.s2) { 2126 sfav.s2_id = fav.s2.id; 2127 } else { 2128 sfav.s2_id = null; 2074 2129 } 2075 2130 sfav.color = fav.color; … … 2098 2153 var fav = new Object; 2099 2154 fav.entity = this.getEntityById(sfav.entity_id); 2155 // old format 2100 2156 if (sfav.species_id) { 2101 fav.species = this.getSpeciesById(sfav.species_id); 2157 fav.s1 = this.getSpeciesById(sfav.species_id); 2158 } else 2159 if (sfav.s1_id) { 2160 fav.s1 = this.getSpeciesById(sfav.s1_id); 2161 } 2162 2163 if (sfav.s2_id) { 2164 fav.s2 = this.getSpeciesById(sfav.s2_id); 2102 2165 } 2103 2166 fav.color = sfav.color;
Note: See TracChangeset
for help on using the changeset viewer.