Changeset 146:221e73937bc7
- Timestamp:
- Jan 4, 2010, 4:35:36 PM (15 years ago)
- Branch:
- default
- Phase:
- public
- Files:
-
- 4 added
- 2 deleted
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
config.json
r136 r146 5 5 [ 6 6 { 7 "path" : "../qooxdoo-0.8.3-sdk/tool/data/config/application.json", 8 "as" : "appconf" 7 "path" : "${QOOXDOO_PATH}/tool/data/config/application.json" 9 8 } 9 ], 10 11 "export" : 12 [ 13 "api", 14 "build", 15 "clean", 16 "distclean", 17 "fix", 18 "info", 19 "inspector", 20 "lint", 21 "migration", 22 "pretty", 23 "profiling", 24 "source", 25 "source-all", 26 "test", 27 "test-source", 28 "translation" 10 29 ], 11 30 … … 13 32 { 14 33 "APPLICATION" : "pf", 15 "QOOXDOO_PATH" : "../qooxdoo- 0.8.3-sdk",16 "Q OOXDOO_URI" : "../${QOOXDOO_PATH}",17 " QXTHEME" : "qx.theme.Modern",34 "QOOXDOO_PATH" : "../qooxdoo-1.0-sdk", 35 "QXTHEME" : "pf.theme.Theme", 36 "API_EXCLUDE" : ["qx.test.*", "${APPLICATION}.theme.*", "${APPLICATION}.test.*"], 18 37 "LOCALES" : [ "en" ], 38 "CACHE" : "${TMPDIR}/cache_new", 19 39 "ROOT" : ".", 20 "APPLICATION_FILES" : "index.html pf.html sprintf.js wz_jsgraphics.js 21 entities.js", 40 "APPLICATION_FILES" : "index.html pf.html wz_jsgraphics.js entities.js", 22 41 "APPLICATION_RESOURCE_FILTER" : true, 23 42 "APPLICATION_COMPLETE_SOURCE" : false … … 26 45 "jobs" : 27 46 { 28 "api" :29 {30 "extend" : ["appconf::api"]31 },32 33 47 "build" : 34 48 { 35 "extend" : ["appconf::build"],36 49 37 "settings" :38 {39 "qx.legacy.theme" : "qx.legacy.theme.ClassicRoyale"40 },41 42 "require" :43 {44 "pf.Application" : [ "qx.legacy.theme.ClassicRoyale" ]45 },46 47 50 "copy-files" : 48 51 { 49 52 "target" : "${BUILD_PATH}", 50 "files" : [" index.html", "pf.html", "wz_jsgraphics.js", "entities.js"]53 "files" : ["pf.html", "wz_jsgraphics.js", "entities.js"] 51 54 }, 52 55 … … 56 59 "resource-filter" : true 57 60 } 58 },59 60 "clean" :61 {62 "extend" : ["appconf::clean"]63 },64 65 "distclean" :66 {67 "extend" : ["appconf::distclean"]68 },69 70 "fix" :71 {72 "extend" : ["appconf::fix"]73 },74 75 "lint" :76 {77 "extend" : ["appconf::lint"]78 },79 80 "migration" :81 {82 "extend" : ["appconf::migration"]83 },84 85 "pretty" :86 {87 "extend" : ["appconf::pretty"]88 },89 90 "publish" :91 {92 "extend" : ["appconf::publish"]93 },94 95 "source" :96 {97 "extend" : ["appconf::source"],98 99 "settings" :100 {101 "qx.legacy.theme" : "qx.legacy.theme.ClassicRoyale"102 },103 "require" :104 {105 "pf.Application" : [ "qx.legacy.theme.ClassicRoyale" ]106 }107 },108 109 "test" :110 {111 "extend" : ["appconf::test"]112 },113 114 "test-source" :115 {116 "extend" : ["appconf::test-source"]117 },118 119 "translate" :120 {121 "extend" : ["appconf::translate"]122 61 } 123 124 62 } 125 63 } -
source/class/pf/Application.js
r144 r146 10 10 11 11 /* ************************************************************************ 12 13 12 14 13 #asset(pf/image/*.png) … … 170 169 } else { 171 170 var tree = this.entity_tree; 172 var leaf = tree.getSelectedElement();173 if (leaf && leaf.classname == "qx. legacy.ui.tree.TreeFile" && explorer_is_seen) {171 var leaf = getSingleTreeSelectedItem(tree); 172 if (leaf && leaf.classname == "qx.ui.tree.TreeFile" && explorer_is_seen) { 174 173 this.loadWikiButton.setEnabled(true); 175 174 } else { … … 190 189 191 190 var tree = this.entity_tree; 192 var leaf = tree.getSelectedElement();193 194 if (leaf && leaf.classname == "qx. legacy.ui.tree.TreeFile" && explorer_is_seen) {191 var leaf = getSingleTreeSelectedItem(tree); 192 193 if (leaf && leaf.classname == "qx.ui.tree.TreeFile" && explorer_is_seen) { 195 194 if (this.isFavorite(leaf)) { 196 195 this.editMenuButtonAddToFav.setEnabled(false); … … 206 205 } 207 206 207 function getSingleTreeSelectedItem(tree) 208 { 209 var sels = tree.getSelection(); 210 if (sels && sels.length == 1) { 211 return sels[0]; 212 } else { 213 return null; 214 } 215 } 216 208 217 function treeMenuCB(ev) 209 218 { … … 214 223 menu.hide(); 215 224 } else { 216 var leaf = ev.getTarget(); 217 var el = leaf.getElement(); 218 219 if (leaf.classname == "qx.legacy.ui.tree.TreeFile") { 225 var w = ev.getTarget(); 226 var leaf = null; 227 if (w.classname == "qx.ui.tree.TreeFile") { 228 leaf = w; 229 } else 230 if (w.getLayoutParent().classname == "qx.ui.tree.TreeFile") { 231 leaf = w.getLayoutParent(); 232 } 233 234 if (leaf) { 220 235 if (this.isFavorite(leaf)) { 221 236 this.treeMenuButtonAddToFav.setEnabled(false); … … 230 245 } 231 246 232 // position the menu 233 menu.setLeft(ev.getClientX()); 234 menu.setTop(ev.getClientY()); 235 247 // position & show the menu 248 menu.placeToMouse(ev); 236 249 menu.show(); 237 250 }; 238 251 239 ev.stopPropagation();252 // ev.stopPropagation(); 240 253 } 241 254 } … … 286 299 { 287 300 var tree = this.entity_tree; 288 var leaf = tree.getSelectedElement();301 var leaf = getSingleTreeSelectedItem(tree); 289 302 290 303 if (!leaf) { … … 311 324 { 312 325 var tree = this.entity_tree; 313 var leaf = tree.getSelectedElement();326 var leaf = getSingleTreeSelectedItem(tree); 314 327 315 328 if (!leaf) { … … 339 352 function clickTreeCB(ev) 340 353 { 341 var e = ev.getTarget(); 342 if (e.isSelected()) { 354 var tree = ev.getTarget(); 355 var e = getSingleTreeSelectedItem(tree); 356 if (e) { 343 357 var entity = e.getUserData("entity"); 344 358 345 359 if (entity) { 346 360 this.gui_entity_units.update(entity.dimension, … … 364 378 qx.Class.define("pf.Application", 365 379 { 366 extend : qx.application.Inline, 367 include : [qx.legacy.application.MGuiCompat], 380 extend : qx.application.Standalone, 368 381 369 382 /* … … 410 423 this.gui_T_r.setNumValue(this.plasma.r.getT()); 411 424 this.gui_Z_r.setValue(this.plasma.r.getQ()); 412 this.gui_Zcore.setValue( this.plasma.r.getQ() + 1);425 this.gui_Zcore.setValue((this.plasma.r.getQ() + 1) + ''); 413 426 this.gui_M_r.setValue(this.plasma.r.getM()); 414 427 … … 469 482 { 470 483 var tree = this.entity_tree; 471 var leaf = tree.getSelectedElement();484 var leaf = getSingleTreeSelectedItem(tree); 472 485 473 486 if (!leaf) { … … 481 494 if (entity) { 482 495 var v = this.evaluateEntityValue(entity, species); 483 var scale = this.gui_entity_units.getSelected ().getValue();496 var scale = this.gui_entity_units.getSelectedValue(); 484 497 485 498 name = this.getEntityFullName(entity, species); … … 496 509 this.gui_entity_section.setValue(section); 497 510 498 this.gui_entity_value.setNumValue(value); 511 if (isFinite(value)) { 512 this.gui_entity_value.setNumValue(value); 513 } else { 514 this.gui_entity_value.setValue(""); 515 } 499 516 500 517 if (this.prefs.autoLoadWiki) { 501 518 this.showWikiPage(entity); 502 519 } else { 503 this. gui_wiki.setSource(null);520 this.showWikiPage(null); 504 521 } 505 522 }, … … 597 614 var icon = "pf/image/" + s.id + "_small.png"; 598 615 599 leaf = new qx. legacy.ui.tree.TreeFile(entity.name, icon);600 leaf. addListener("changeSelected", clickTreeCB, this);616 leaf = new qx.ui.tree.TreeFile(entity.name); 617 leaf.setIcon(icon); 601 618 leaf.addListener("contextmenu", treeMenuCB, this); 602 619 leaf.setUserData("entity", entity); … … 611 628 break; 612 629 default: 613 leaf = new qx.legacy.ui.tree.TreeFile(entity.name, 614 "pf/image/all_small.png"); 615 leaf.addListener("changeSelected", clickTreeCB, this); 630 leaf = new qx.ui.tree.TreeFile(entity.name); 631 leaf.setIcon("pf/image/all_small.png"); 616 632 leaf.addListener("contextmenu", treeMenuCB, this); 617 633 leaf.setUserData("entity", entity); … … 661 677 { 662 678 var lv = this.favoritesListView; 663 var rowData = lv.getData(); 664 rowData.length = 0; 679 var tm = lv.getTableModel(); 665 680 666 681 var dimension = this.gui_compare_dim.getSelectedValue(); 667 682 668 683 var scale = this.gui_compare_units.getSelectedValue(); 684 685 var rowData = new Array(); 669 686 670 687 for (var i = 0; i < this.favorites.length; i++) { … … 687 704 var value = scale*this.evaluateEntityValue(entity, species); 688 705 689 rowData.push( { s_icon : {icon : icon,690 iconWidth : 16,691 iconHeight : 16 },692 name : {text : name },693 section : {text : entity.section },694 value : {text : pf.util.Format.numPrint(value)}695 });696 }697 698 lv.updateSort();699 lv.update();706 rowData.push([icon, name, entity.section, 707 pf.util.Format.numPrint(value)]); 708 } 709 710 tm.setData(rowData, false); 711 var sidx = tm.getSortColumnIndex(); 712 tm.sortByColumn(sidx, tm.isSortAscending()); 713 714 lv.updateContent(); 715 // lv.updateSort(); 716 // lv.update(); 700 717 }, 701 718 … … 703 720 { 704 721 var lv = this.legendListView; 705 var rowData = lv.getData(); 706 rowData.length = 0; 722 var tm = lv.getTableModel(); 723 724 var rowData = new Array(); 707 725 708 726 var dimension = this.gui_compare_dim.getSelectedValue(); … … 727 745 var color = fav.color; 728 746 729 rowData.push({ s_icon : {icon : icon, 730 iconWidth : 16, 731 iconHeight : 16 }, 732 name : {text : name }, 733 color : {text : color, 734 textColor : color }, 735 favorite : fav 736 }); 737 } 738 lv.update(); 747 rowData.push({"icon": icon, "name": name, "color": color, 748 "favorite": fav}); 749 } 750 751 tm.setDataAsMapArray(rowData); 752 // lv.updateContent(); 739 753 }, 740 754 … … 742 756 renderTabPage : function(label, icon, checked) 743 757 { 744 var tab_id, page_id; 745 746 tab_id = new qx.legacy.ui.pageview.tabview.Button(label, icon); 747 this.tabbar.add(tab_id); 748 page_id = new qx.legacy.ui.pageview.tabview.Page(tab_id); 749 page_id.setHeight("100%"); 750 page_id.setPadding(10, 10, 10, 10); 751 page_id.setBackgroundColor("white"); 752 this.tabpane.add(page_id); 758 var page_id; 759 760 page_id = new qx.ui.tabview.Page(label, icon); 761 page_id.setPadding(0, 0, 0, 0); 762 this.tabview.add(page_id); 753 763 754 764 if (checked) { 755 t ab_id.setChecked(true);765 this.tabview.setSelection(page_id); 756 766 } 757 767 … … 761 771 renderParametersTab : function() 762 772 { 773 var fr, gl, rc, rc1, rc2; 774 763 775 var page_id = this.renderTabPage("Parameters", 764 776 "pf/image/tab-parameters.png", true); 765 766 var fr, gl, rc0, rc, rc1, rc2; 767 768 rc0 = new qx.legacy.ui.layout.VerticalBoxLayout; 769 rc0.setWidth("100%"); 770 rc0.setHeight("auto"); 771 rc0.setSpacing(1); 772 page_id.add(rc0); 773 774 fr = new qx.legacy.ui.groupbox.GroupBox("Configuration name", 777 page_id.setLayout(new qx.ui.layout.VBox(1)); 778 779 fr = new qx.ui.groupbox.GroupBox("Configuration name", 775 780 "pf/image/info.png"); 776 fr.setDimension("100%", "auto"); 777 fr.setBackgroundColor("#e1eeff"); 778 fr.getLegendObject().setBackgroundColor("#e1eeff"); 781 fr.setLayout(new qx.ui.layout.VBox()); 782 779 783 this.gui_configName = 780 new qx. legacy.ui.basic.Atom(this.prefs.currentConfigName);784 new qx.ui.basic.Atom(this.prefs.currentConfigName); 781 785 fr.add(this.gui_configName); 782 rc0.add(fr); 783 784 rc = new qx.legacy.ui.layout.HorizontalBoxLayout; 785 rc.setWidth("100%"); 786 rc.setHeight("auto"); 787 rc.setSpacing(1); 788 rc0.add(rc); 789 790 rc1 = new qx.legacy.ui.layout.VerticalBoxLayout; 791 rc1.setWidth("50%"); 792 rc1.setHeight("auto"); 793 rc1.setSpacing(2); 794 rc.add(rc1); 795 796 rc2 = new qx.legacy.ui.layout.VerticalBoxLayout; 797 rc2.setWidth("50%"); 798 rc2.setHeight("auto"); 799 rc2.setSpacing(2); 800 rc.add(rc2); 801 802 fr = new qx.legacy.ui.groupbox.GroupBox("Electrons", 786 page_id.add(fr); 787 788 789 rc = new qx.ui.container.Composite(new qx.ui.layout.HBox(1)); 790 page_id.add(rc); 791 792 rc1 = new qx.ui.container.Composite(new qx.ui.layout.VBox(2)); 793 rc.add(rc1, {flex : 1}); 794 795 rc2 = new qx.ui.container.Composite(new qx.ui.layout.VBox(2)); 796 rc.add(rc2, {flex : 1}); 797 798 799 fr = new qx.ui.groupbox.GroupBox("Electrons", 803 800 "pf/image/e_small.png"); 804 fr.setDimension("100%", "auto"); 805 fr.setBackgroundColor("#eeeeff"); 806 fr.getLegendObject().setBackgroundColor("#eeeeff"); 801 fr.setLayout(new qx.ui.layout.VBox()); 807 802 808 803 rc1.add(fr); 809 804 810 gl = new qx.legacy.ui.layout.GridLayout; 811 gl.setWidth("100%"); 812 gl.setVerticalSpacing(4); 813 gl.setHorizontalSpacing(6); 814 gl.setColumnCount(2); 815 gl.setColumnWidth(0, "25%"); 816 gl.setColumnWidth(1, "75%"); 817 gl.setRowCount(2); 818 gl.setRowHeight(0, 30); 819 gl.setRowHeight(1, 30); 805 var layout = new qx.ui.layout.Grid(4, 6); 806 layout.setColumnWidth(0, 80); 807 layout.setColumnFlex(1, 1); 808 gl = new qx.ui.container.Composite(layout); 820 809 821 810 fr.add(gl); … … 824 813 825 814 // N_e 826 l = new qx.legacy.ui.basic.Label("N<sub>e</sub> (cm<sup>-3</sup>):"); 827 gl.add(l, 0, 0); 815 l = new qx.ui.basic.Label("N<sub>e</sub> (cm<sup>-3</sup>):"); 816 l.setRich(true); 817 gl.add(l, {row: 0, column: 0}); 828 818 e = new pf.ui.TextField(this.plasma.e.getN()); 829 gl.add(e, 1, 0);819 gl.add(e, {row: 0, column: 1}); 830 820 e.addListener("changeValue", changeN_e, this); 831 821 this.gui_N_e = e; 832 822 833 823 // T_e 834 l = new qx.legacy.ui.basic.Label("T<sub>e</sub> (eV):"); 835 gl.add(l, 0, 1); 824 l = new qx.ui.basic.Label("T<sub>e</sub> (eV):"); 825 l.setRich(true); 826 gl.add(l, {row: 1, column: 0}); 836 827 e = new pf.ui.TextField(this.plasma.e.getT()); 837 gl.add(e, 1, 1);828 gl.add(e, {row: 1, column: 1}); 838 829 e.addListener("changeValue", changeT_e, this); 839 830 this.gui_T_e = e; 840 841 842 fr = new qx.legacy.ui.groupbox.GroupBox("Ions", 831 832 fr = new qx.ui.groupbox.GroupBox("Ions", 843 833 "pf/image/i_small.png"); 844 fr.setDimension("100%", "auto"); 845 fr.setBackgroundColor("#ffeeee"); 846 fr.getLegendObject().setBackgroundColor("#ffeeee"); 834 fr.setLayout(new qx.ui.layout.VBox()); 847 835 848 836 rc1.add(fr); 849 837 850 gl = new qx.legacy.ui.layout.GridLayout; 851 gl.setWidth("100%"); 852 gl.setVerticalSpacing(4); 853 gl.setHorizontalSpacing(6); 854 gl.setColumnCount(2); 855 gl.setColumnWidth(0, "25%"); 856 gl.setColumnWidth(1, "75%"); 857 gl.setRowCount(4); 858 gl.setRowHeight(0, 30); 859 gl.setRowHeight(1, 30); 860 gl.setRowHeight(2, 30); 861 gl.setRowHeight(3, 30); 838 layout = new qx.ui.layout.Grid(4, 6); 839 layout.setColumnWidth(0, 80); 840 layout.setColumnFlex(1, 1); 841 gl = new qx.ui.container.Composite(layout); 862 842 863 843 fr.add(gl); 864 844 865 845 // Z_i 866 l = new qx.legacy.ui.basic.Label("Z<sub>i</sub>:"); 867 gl.add(l, 0, 0); 868 e = new pf.ui.Spinner(1, this.plasma.i.getQ(), 100); 869 gl.add(e, 1, 0); 870 e.addListener("change", changeZ_i, this); 846 l = new qx.ui.basic.Label("Z<sub>i</sub>:"); 847 l.setRich(true); 848 gl.add(l, {row: 0, column: 0}); 849 e = new qx.ui.form.Spinner(1, this.plasma.i.getQ(), 100); 850 gl.add(e, {row: 0, column: 1}); 851 e.addListener("changeValue", changeZ_i, this); 871 852 this.gui_Z_i = e; 872 853 873 854 // M_i 874 l = new qx.legacy.ui.basic.Label("M<sub>i</sub>:"); 875 gl.add(l, 0, 1); 876 e = new pf.ui.Spinner(1, this.plasma.i.getM(), 200); 877 gl.add(e, 1, 1); 878 e.addListener("change", changeM_i, this); 855 l = new qx.ui.basic.Label("M<sub>i</sub>:"); 856 l.setRich(true); 857 gl.add(l, {row: 1, column: 0}); 858 e = new qx.ui.form.Spinner(1, this.plasma.i.getM(), 200); 859 gl.add(e, {row: 1, column: 1}); 860 e.addListener("changeValue", changeM_i, this); 879 861 this.gui_M_i = e; 880 862 881 863 // T_i 882 l = new qx.legacy.ui.basic.Label("T<sub>i</sub> (eV):"); 883 gl.add(l, 0, 2); 864 l = new qx.ui.basic.Label("T<sub>i</sub> (eV):"); 865 l.setRich(true); 866 gl.add(l, {row: 2, column: 0}); 884 867 e = new pf.ui.TextField(this.plasma.i.getT()); 885 gl.add(e, 1, 2);868 gl.add(e, {row: 2, column: 1}); 886 869 e.addListener("changeValue", changeT_i, this); 887 870 this.gui_T_i = e; 888 871 889 872 // N_i 890 l = new qx.legacy.ui.basic.Label("N<sub>i</sub> (cm<sup>-3</sup>):"); 891 gl.add(l, 0, 3); 873 l = new qx.ui.basic.Label("N<sub>i</sub> (cm<sup>-3</sup>):"); 874 l.setRich(true); 875 gl.add(l, {row: 3, column: 0}); 892 876 e = new pf.ui.TextField(this.plasma.i.getN()); 893 gl.add(e, 1, 3);877 gl.add(e, {row: 3, column: 1}); 894 878 e.setReadOnly(true); 895 879 this.gui_N_i = e; 896 880 897 898 fr = new qx.legacy.ui.groupbox.GroupBox("Radiators", 881 fr = new qx.ui.groupbox.GroupBox("Radiators", 899 882 "pf/image/r_small.png"); 900 fr.setDimension("100%", "auto"); 901 fr.setBackgroundColor("#eeffee"); 902 fr.getLegendObject().setBackgroundColor("#eeffee"); 883 fr.setLayout(new qx.ui.layout.VBox()); 903 884 904 885 rc2.add(fr); 905 886 906 gl = new qx.legacy.ui.layout.GridLayout; 907 gl.setWidth("100%"); 908 gl.setVerticalSpacing(4); 909 gl.setHorizontalSpacing(6); 910 gl.setColumnCount(2); 911 gl.setColumnWidth(0, "25%"); 912 gl.setColumnWidth(1, "75%"); 913 gl.setRowCount(5); 914 gl.setRowHeight(0, 30); 915 gl.setRowHeight(1, 30); 916 gl.setRowHeight(2, 30); 917 gl.setRowHeight(3, 30); 918 gl.setRowHeight(4, 30); 887 layout = new qx.ui.layout.Grid(4, 6); 888 layout.setColumnWidth(0, 80); 889 layout.setColumnFlex(1, 1); 890 gl = new qx.ui.container.Composite(layout); 919 891 920 892 fr.add(gl); 921 893 922 923 894 // Z_r 924 l = new qx.legacy.ui.basic.Label("Z<sub>r</sub>:"); 925 gl.add(l, 0, 0); 926 e = new pf.ui.Spinner(0, this.plasma.r.getQ(), 100); 927 gl.add(e, 1, 0); 928 e.addListener("change", changeZ_r, this); 895 l = new qx.ui.basic.Label("Z<sub>r</sub>:"); 896 l.setRich(true); 897 gl.add(l, {row: 0, column: 0}); 898 e = new qx.ui.form.Spinner(0, this.plasma.r.getQ(), 100); 899 gl.add(e, {row: 0, column: 1}); 900 e.addListener("changeValue", changeZ_r, this); 929 901 this.gui_Z_r = e; 930 902 931 903 // M_r 932 l = new qx.legacy.ui.basic.Label("M<sub>r</sub>:"); 933 gl.add(l, 0, 1); 934 e = new pf.ui.Spinner(1, this.plasma.r.getM(), 200); 935 gl.add(e, 1, 1); 936 e.addListener("change", changeM_r, this); 904 l = new qx.ui.basic.Label("M<sub>r</sub>:"); 905 l.setRich(true); 906 gl.add(l, {row: 1, column: 0}); 907 e = new qx.ui.form.Spinner(1, this.plasma.r.getM(), 200); 908 gl.add(e, {row: 1, column: 1}); 909 e.addListener("changeValue", changeM_r, this); 937 910 this.gui_M_r = e; 938 911 939 912 // T_r 940 l = new qx.legacy.ui.basic.Label("T<sub>r</sub> (eV):"); 941 gl.add(l, 0, 2); 913 l = new qx.ui.basic.Label("T<sub>r</sub> (eV):"); 914 l.setRich(true); 915 gl.add(l, {row: 2, column: 0}); 942 916 e = new pf.ui.TextField(this.plasma.r.getT()); 943 gl.add(e, 1, 2);917 gl.add(e, {row: 2, column: 1}); 944 918 e.addListener("changeValue", changeT_r, this); 945 919 this.gui_T_r = e; 946 920 947 921 // P_r 948 l = new qx.legacy.ui.basic.Label("P<sub>r</sub> (%):"); 949 gl.add(l, 0, 3); 950 e = new pf.ui.Spinner(0, 100*this.plasma.P_r, 100); 951 gl.add(e, 1, 3); 952 e.addListener("change", changeP_r, this); 922 l = new qx.ui.basic.Label("P<sub>r</sub> (%):"); 923 l.setRich(true); 924 gl.add(l, {row: 3, column: 0}); 925 e = new qx.ui.form.Spinner(0, 100*this.plasma.P_r, 100); 926 gl.add(e, {row: 3, column: 1}); 927 e.addListener("changeValue", changeP_r, this); 953 928 this.gui_P_r = e; 954 929 955 930 // N_r 956 l = new qx.legacy.ui.basic.Label("N<sub>r</sub> (cm<sup>-3</sup>):"); 957 gl.add(l, 0, 4); 931 l = new qx.ui.basic.Label("N<sub>r</sub> (cm<sup>-3</sup>):"); 932 l.setRich(true); 933 gl.add(l, {row: 4, column: 0}); 958 934 e = new pf.ui.TextField(this.plasma.r.getN()); 959 935 e.setReadOnly(true); 960 gl.add(e, 1, 4);936 gl.add(e, {row: 4, column: 1}); 961 937 this.gui_N_r = e; 962 938 963 939 964 fr = new qx. legacy.ui.groupbox.GroupBox("Fields",940 fr = new qx.ui.groupbox.GroupBox("Fields", 965 941 "pf/image/field_small.png"); 966 fr.setDimension("100%", "auto"); 967 fr.setBackgroundColor("#ffffdd"); 968 fr.getLegendObject().setBackgroundColor("#ffffdd"); 942 fr.setLayout(new qx.ui.layout.VBox()); 969 943 970 944 rc1.add(fr); 971 945 972 gl = new qx.legacy.ui.layout.GridLayout; 973 gl.setWidth("100%"); 974 gl.setVerticalSpacing(4); 975 gl.setHorizontalSpacing(6); 976 gl.setColumnCount(2); 977 gl.setColumnWidth(0, "25%"); 978 gl.setColumnWidth(1, "75%"); 979 gl.setRowCount(1); 980 gl.setRowHeight(0, 30); 946 layout = new qx.ui.layout.Grid(4, 6); 947 layout.setColumnWidth(0, 80); 948 layout.setColumnFlex(1, 1); 949 gl = new qx.ui.container.Composite(layout); 981 950 982 951 fr.add(gl); 983 952 984 953 985 l = new qx.legacy.ui.basic.Label("B (T):"); 986 gl.add(l, 0, 0); 954 l = new qx.ui.basic.Label("B (T):"); 955 l.setRich(true); 956 gl.add(l, {row: 0, column: 0}); 987 957 e = new pf.ui.TextField(this.plasma.B); 988 gl.add(e, 1, 0);958 gl.add(e, {row: 0, column: 1}); 989 959 e.addListener("changeValue", changeB, this); 990 960 this.gui_B = e; 991 961 992 962 // Atomic system frame 993 fr = new qx. legacy.ui.groupbox.GroupBox("Atomic system",963 fr = new qx.ui.groupbox.GroupBox("Atomic system", 994 964 "pf/image/all_small.png"); 995 fr.setDimension("100%", "auto"); 996 fr.setBackgroundColor("#ffffdd"); 997 fr.getLegendObject().setBackgroundColor("#ffffdd"); 965 fr.setLayout(new qx.ui.layout.VBox()); 998 966 999 967 rc2.add(fr); 1000 968 1001 gl = new qx.legacy.ui.layout.GridLayout; 1002 gl.setWidth("100%"); 1003 gl.setVerticalSpacing(4); 1004 gl.setHorizontalSpacing(6); 1005 gl.setColumnCount(2); 1006 gl.setColumnWidth(0, "25%"); 1007 gl.setColumnWidth(1, "75%"); 1008 gl.setRowCount(3); 1009 gl.setRowHeight(0, 30); 1010 gl.setRowHeight(1, 30); 1011 gl.setRowHeight(2, 30); 969 layout = new qx.ui.layout.Grid(4, 6); 970 layout.setColumnWidth(0, 80); 971 layout.setColumnFlex(1, 1); 972 gl = new qx.ui.container.Composite(layout); 1012 973 1013 974 fr.add(gl); 1014 975 1015 l = new qx.legacy.ui.basic.Label("Z<sub>core</sub>:"); 1016 gl.add(l, 0, 0); 1017 e = new qx.legacy.ui.form.TextField(this.plasma.r.getQ() + 1); 976 l = new qx.ui.basic.Label("Z<sub>core</sub>:"); 977 l.setRich(true); 978 gl.add(l, {row: 0, column: 0}); 979 e = new qx.ui.form.TextField((this.plasma.r.getQ() + 1) + ''); 1018 980 e.setReadOnly(true); 1019 gl.add(e, 1, 0);981 gl.add(e, {row: 0, column: 1}); 1020 982 this.gui_Zcore = e; 1021 983 1022 l = new qx.legacy.ui.basic.Label("n<sub>u</sub>:"); 1023 gl.add(l, 0, 1); 1024 e = new pf.ui.Spinner(2, this.plasma.n_u, 1000); 1025 gl.add(e, 1, 1); 1026 e.addListener("change", changeN_u, this); 984 l = new qx.ui.basic.Label("n<sub>u</sub>:"); 985 l.setRich(true); 986 gl.add(l, {row: 1, column: 0}); 987 e = new qx.ui.form.Spinner(2, this.plasma.n_u, 1000); 988 gl.add(e, {row: 1, column: 1}); 989 e.addListener("changeValue", changeN_u, this); 1027 990 this.gui_n_u = e; 1028 991 1029 l = new qx.legacy.ui.basic.Label("n<sub>l</sub>:"); 1030 gl.add(l, 0, 2); 1031 e = new pf.ui.Spinner(1, this.plasma.n_l, 1000); 1032 gl.add(e, 1, 2); 1033 e.addListener("change", changeN_l, this); 992 l = new qx.ui.basic.Label("n<sub>l</sub>:"); 993 l.setRich(true); 994 gl.add(l, {row: 2, column: 0}); 995 e = new qx.ui.form.Spinner(1, this.plasma.n_l, 1000); 996 gl.add(e, {row: 2, column: 1}); 997 e.addListener("changeValue", changeN_l, this); 1034 998 this.gui_n_l = e; 1035 999 }, … … 1039 1003 var page_id = this.renderTabPage("Explorer", 1040 1004 "pf/image/tab-explorer.png", false); 1041 1042 var sp = new qx.legacy.ui.splitpane.HorizontalSplitPane(300, "1*"); 1043 sp.set( 1044 { 1045 left : 1, 1046 right : 1, 1047 top : 1, 1048 bottom : 1, 1049 border : "inset-thin", 1050 showKnob : true 1005 page_id.setLayout(new qx.ui.layout.VBox); 1006 1007 var sp = new qx.ui.splitpane.Pane("horizontal"); 1008 page_id.add(sp, {height: "100%"}); 1009 1010 // Create container with fixed dimensions for the left: 1011 var left_pane = new qx.ui.container.Composite(new qx.ui.layout.Grow).set({ 1012 width: 250, 1013 decorator : "main" 1051 1014 }); 1052 page_id.add(sp); 1053 1054 var left_pane = sp.getLeftArea(); 1055 left_pane.setBackgroundColor("white"); 1056 left_pane.setBorder("inset-thin"); 1057 var right_pane = sp.getRightArea(); 1058 right_pane.setBackgroundColor("white"); 1059 right_pane.setBorder("inset-thin"); 1060 var tree = new qx.legacy.ui.tree.Tree("Browser"); 1061 tree.set( 1062 { 1063 overflow : "scroll", 1064 height : "100%", 1065 width : "100%", 1066 paddingLeft : 4, 1067 paddingTop : 4 1015 1016 // Create container for the right: 1017 var right_pane = new qx.ui.container.Composite(new qx.ui.layout.VBox(4)).set({ 1018 padding : 4, 1019 decorator : "main" 1068 1020 }); 1021 1022 sp.add(left_pane, 0, {flex: 1}); 1023 sp.add(right_pane, 1, {flex: 2}); 1024 1025 1026 var tree = new qx.ui.tree.Tree("Browser"); 1069 1027 left_pane.add(tree); 1070 1028 … … 1073 1031 var folder; 1074 1032 1075 folder = new qx.legacy.ui.tree.TreeFolder("Dimensionless"); 1076 folder.setAlwaysShowPlusMinusSymbol(true); 1077 folder.addListener("changeSelected", clickTreeCB, this); 1078 tree.add(folder); 1033 var root = new qx.ui.tree.TreeFolder("Root"); 1034 root.setOpen(true); 1035 tree.setRoot(root); 1036 tree.setHideRoot(true); 1037 tree.setRootOpenClose(true); 1038 tree.setOpenMode("none"); 1039 1040 tree.addListener("changeSelection", clickTreeCB, this); 1041 1042 folder = new qx.ui.tree.TreeFolder("Dimensionless"); 1043 root.add(folder); 1079 1044 this.gui_folder_none = folder; 1080 1045 1081 folder = new qx.legacy.ui.tree.TreeFolder("Length"); 1082 folder.setAlwaysShowPlusMinusSymbol(true); 1083 folder.addListener("changeSelected", clickTreeCB, this); 1084 tree.add(folder); 1046 folder = new qx.ui.tree.TreeFolder("Length"); 1047 root.add(folder); 1085 1048 this.gui_folder_length = folder; 1086 1049 1087 folder = new qx.legacy.ui.tree.TreeFolder("Frequency"); 1088 folder.setAlwaysShowPlusMinusSymbol(true); 1089 folder.addListener("changeSelected", clickTreeCB, this); 1090 tree.add(folder); 1050 folder = new qx.ui.tree.TreeFolder("Frequency"); 1051 root.add(folder); 1091 1052 this.gui_folder_freq = folder; 1092 1053 1093 folder = new qx.legacy.ui.tree.TreeFolder("Velocity"); 1094 folder.setAlwaysShowPlusMinusSymbol(true); 1095 folder.addListener("changeSelected", clickTreeCB, this); 1096 tree.add(folder); 1054 folder = new qx.ui.tree.TreeFolder("Velocity"); 1055 root.add(folder); 1097 1056 this.gui_folder_vel = folder; 1098 1057 1099 folder = new qx.legacy.ui.tree.TreeFolder("Area"); 1100 folder.setAlwaysShowPlusMinusSymbol(true); 1101 folder.addListener("changeSelected", clickTreeCB, this); 1102 tree.add(folder); 1058 folder = new qx.ui.tree.TreeFolder("Area"); 1059 root.add(folder); 1103 1060 this.gui_folder_area = folder; 1104 1061 1105 folder = new qx.legacy.ui.tree.TreeFolder("Energy"); 1106 folder.setAlwaysShowPlusMinusSymbol(true); 1107 folder.addListener("changeSelected", clickTreeCB, this); 1108 tree.add(folder); 1062 folder = new qx.ui.tree.TreeFolder("Energy"); 1063 root.add(folder); 1109 1064 this.gui_folder_energy = folder; 1110 1065 1111 folder = new qx.legacy.ui.tree.TreeFolder("Pressure"); 1112 folder.setAlwaysShowPlusMinusSymbol(true); 1113 folder.addListener("changeSelected", clickTreeCB, this); 1114 tree.add(folder); 1066 folder = new qx.ui.tree.TreeFolder("Pressure"); 1067 root.add(folder); 1115 1068 this.gui_folder_pressure = folder; 1116 1069 1117 folder = new qx.legacy.ui.tree.TreeFolder("Power density"); 1118 folder.setAlwaysShowPlusMinusSymbol(true); 1119 folder.addListener("changeSelected", clickTreeCB, this); 1120 tree.add(folder); 1070 folder = new qx.ui.tree.TreeFolder("Power density"); 1071 root.add(folder); 1121 1072 this.gui_folder_power_density = folder; 1122 1073 1123 folder = new qx.legacy.ui.tree.TreeFolder("Power spectral density"); 1124 folder.setAlwaysShowPlusMinusSymbol(true); 1125 folder.addListener("changeSelected", clickTreeCB, this); 1126 tree.add(folder); 1074 folder = new qx.ui.tree.TreeFolder("Power spectral density"); 1075 root.add(folder); 1127 1076 this.gui_folder_spectral_power_density = folder; 1128 1077 1129 folder = new qx.legacy.ui.tree.TreeFolder("Miscellaneous"); 1130 folder.setAlwaysShowPlusMinusSymbol(true); 1131 folder.addListener("changeSelected", clickTreeCB, this); 1132 tree.add(folder); 1078 folder = new qx.ui.tree.TreeFolder("Miscellaneous"); 1079 root.add(folder); 1133 1080 this.gui_folder_misc = folder; 1134 1081 1082 1083 1135 1084 this.populateTree(); 1136 1085 1137 tree.setHideNode(true);1138 tree.setRootOpenClose(true);1139 1140 1086 // Build context-sensitive popup menu 1141 this.treeMenu = new qx. legacy.ui.menu.Menu;1087 this.treeMenu = new qx.ui.menu.Menu; 1142 1088 var button; 1143 1089 1144 button = new qx. legacy.ui.menu.Button("Add to Favorites",1090 button = new qx.ui.menu.Button("Add to Favorites", 1145 1091 "pf/image/favorite-add.png"); 1146 1092 button.addListener("execute", addToFavCB, this); 1147 1093 this.treeMenu.add(button); 1148 1094 this.treeMenuButtonAddToFav = button; 1149 button = new qx. legacy.ui.menu.Button("Remove from Favorites",1095 button = new qx.ui.menu.Button("Remove from Favorites", 1150 1096 "pf/image/favorite-delete.png"); 1151 1097 button.addListener("execute", removeFromFavCB, this); … … 1156 1102 1157 1103 1158 var vbl = new qx.legacy.ui.layout.VerticalBoxLayout("vertical"); 1159 vbl.set( 1160 { 1161 height : "100%", 1162 width : "100%", 1163 padding : 4, 1164 spacing : 10 1165 }); 1166 right_pane.add(vbl); 1167 1168 var gl = new qx.legacy.ui.layout.GridLayout; 1169 gl.set( 1170 { 1171 height : "auto", 1172 left : 4, 1173 right : 4, 1174 top : 4, 1175 verticalSpacing : 4, 1176 horizontalSpacing : 6 1177 }); 1178 1179 gl.setColumnCount(3); 1180 gl.setColumnWidth(0, "15%"); 1181 gl.setColumnWidth(1, "60%"); 1182 gl.setColumnWidth(2, "20%"); 1183 gl.setRowCount(3); 1184 gl.setRowHeight(0, 30); 1185 gl.setRowHeight(1, 30); 1186 gl.setRowHeight(2, 30); 1187 1104 var layout = new qx.ui.layout.Grid(4, 6); 1105 layout.setColumnFlex(0, 3); 1106 layout.setColumnFlex(1, 12); 1107 layout.setColumnFlex(2, 4); 1108 layout.setColumnMinWidth(0, 50); 1109 layout.setColumnMaxWidth(2, 150); 1110 var gl = new qx.ui.container.Composite(layout); 1111 1188 1112 var l, e; 1189 1190 l = new qx.legacy.ui.basic.Label("Name:"); 1191 gl.add(l, 0, 0); 1192 e = new qx.legacy.ui.form.TextField(); 1113 1114 1115 l = new qx.ui.basic.Label("Name:"); 1116 gl.add(l, {row: 0, column: 0}); 1117 e = new qx.ui.form.TextField(); 1193 1118 e.setReadOnly(true); 1194 1119 this.gui_entity_name = e; 1195 gl.add(e, 1, 0);1196 1197 l = new qx. legacy.ui.basic.Label("Value:");1198 gl.add(l, 0, 1);1120 gl.add(e, {row: 0, column: 1, colSpan: 2}); 1121 1122 l = new qx.ui.basic.Label("Value:"); 1123 gl.add(l, {row: 1, column: 0}); 1199 1124 e = new pf.ui.TextField(""); 1200 1125 e.setReadOnly(true); 1201 gl.add(e, 1, 1);1126 gl.add(e, {row: 1, column: 1}); 1202 1127 this.gui_entity_value = e; 1203 1128 1204 1129 e = new pf.UnitSelector(); 1205 e.addListener("changeSelect ed", changeUnitsCB, this);1206 gl.add(e, 2, 1);1130 e.addListener("changeSelection", changeUnitsCB, this); 1131 gl.add(e, {row: 1, column: 2}); 1207 1132 this.gui_entity_units = e; 1208 1133 1209 l = new qx. legacy.ui.basic.Label("Section:");1210 gl.add(l, 0, 2);1211 e = new qx. legacy.ui.form.TextField();1134 l = new qx.ui.basic.Label("Section:"); 1135 gl.add(l, {row: 2, column: 0}); 1136 e = new qx.ui.form.TextField(); 1212 1137 e.setReadOnly(true); 1213 1138 this.gui_entity_section = e; 1214 gl.add(e, 1, 2); 1215 1216 vbl.add(gl); 1217 1218 var frame = new qx.legacy.ui.embed.Iframe(); 1219 frame.set({ width : '100%', height : '2*' }); 1220 1221 vbl.add(frame); 1139 gl.add(e, {row: 2, column: 1, colSpan: 2}); 1140 1141 right_pane.add(gl, {flex: 1}); 1142 1143 var frame = new qx.ui.embed.Iframe(); 1144 1145 right_pane.add(frame, {flex : 3 }); 1222 1146 1223 1147 this.gui_wiki = frame; … … 1228 1152 var page_id = this.renderTabPage("Compare", 1229 1153 "pf/image/tab-compare.png"); 1230 1231 var bl = new qx.legacy.ui.layout.VerticalBoxLayout("vertical"); 1232 bl.setWidth("100%"); 1233 bl.setHeight("100%"); 1234 bl.setSpacing(10); 1154 page_id.setLayout(new qx.ui.layout.VBox(1)); 1155 1156 var bl = new qx.ui.container.Composite(new qx.ui.layout.VBox(10)); 1235 1157 page_id.add(bl); 1236 1158 1237 var rc = new qx.legacy.ui.layout.HorizontalBoxLayout; 1238 rc.setWidth("100%"); 1239 rc.setHeight("auto"); 1240 rc.setSpacing(10); 1159 var rc = new qx.ui.container.Composite(new qx.ui.layout.HBox(10)); 1241 1160 bl.add(rc); 1242 1161 1243 1162 var l, e; 1244 l = new qx. legacy.ui.basic.Label("Dimension:");1245 e = new pf.ui.ComboBox;1246 e .add(new qx.legacy.ui.form.ListItem("Frequency", null, "frequency"));1247 e.add (new qx.legacy.ui.form.ListItem("Length", null, "length"));1248 e.add (new qx.legacy.ui.form.ListItem("Velocity", null, "velocity"));1249 e.add (new qx.legacy.ui.form.ListItem("Energy", null, "energy"));1250 e.add (new qx.legacy.ui.form.ListItem("Pressure", null, "pressure"));1251 e.add (new qx.legacy.ui.form.ListItem("Area", null, "area"));1252 e.add (new qx.legacy.ui.form.ListItem("Power density", null, "power_density"));1253 e.add (new qx.legacy.ui.form.ListItem("Power spectral density",1254 null, "spectral_power_density"));1255 e.add (new qx.legacy.ui.form.ListItem("Electric field", null, "efield"));1256 e.add (new qx.legacy.ui.form.ListItem("None", null, "none"));1257 e.addListener("changeSelect ed", function(ev) {1163 l = new qx.ui.basic.Label("Dimension:"); 1164 rc.add(l); 1165 e = new pf.ui.SelectBox; 1166 e.addItem("None", "none"); 1167 e.addItem("Length", "length"); 1168 e.addItem("Frequency", "frequency"); 1169 e.addItem("Velocity", "velocity"); 1170 e.addItem("Area", "area"); 1171 e.addItem("Energy", "energy"); 1172 e.addItem("Pressure", "pressure"); 1173 e.addItem("Power density", "power_density"); 1174 e.addItem("Power spectral density", "spectral_power_density"); 1175 e.addItem("Electric field", "efield"); 1176 e.addListener("changeSelection", function(ev) { 1258 1177 var dimension = this.gui_compare_dim.getSelectedValue(); 1259 1178 this.gui_compare_units.update(dimension, … … 1262 1181 this.updateLegendListView(); 1263 1182 }, this); 1264 rc.add( l,e);1183 rc.add(e); 1265 1184 this.gui_compare_dim = e; 1266 1267 l = new qx.legacy.ui.basic.Label("Units:"); 1185 1186 l = new qx.ui.basic.Label("Units:"); 1187 rc.add(l); 1268 1188 e = new pf.UnitSelector(); 1269 e.addListener("changeSelected", function(ev) { 1189 e.update("none"); 1190 e.addListener("changeSelection", function(ev) { 1270 1191 this.updateFavoritesListView(); 1271 1192 }, this); 1272 rc.add( l,e);1193 rc.add(e); 1273 1194 this.gui_compare_units = e; 1274 1195 1275 var lc = 1276 { 1277 s_icon : { label : "", 1278 width : 24, 1279 type : "iconHtml", 1280 align : "center", 1281 sortable : false }, 1282 name : { label : "Name", 1283 width : 300, 1284 type : "text", 1285 align : "left", 1286 sortable : true, 1287 sortProp : "text" }, 1288 section : { label : "Section", 1289 width : 120, 1290 type : "text", 1291 align : "left", 1292 sortable : true, 1293 sortProp : "text" }, 1294 value : { label : "Value", 1295 width : 120, 1296 type : "text", 1297 align : "right", 1298 sortable : true, 1299 sortProp : "text", 1300 sortMethod : qx.legacy.util.Compare.byFloatString } 1301 }; 1302 1303 var lv = new qx.legacy.ui.listview.ListView(new Array, lc); 1304 1305 lv.setWidth("100%"); 1306 lv.setHeight("2*"); 1307 lv.setBackgroundColor("white"); 1308 lv.setBorder("dark-shadow"); 1196 // table model 1197 var tm = new qx.ui.table.model.Simple(); 1198 tm.setColumns([ "", "Name", "Section", "Value" ]); 1199 1200 tm.setColumnEditable(0, false); 1201 tm.setColumnEditable(1, false); 1202 tm.setColumnEditable(2, false); 1203 tm.setColumnEditable(3, false); 1204 1205 tm.setColumnSortable(0, false); 1206 1207 tm.setSortMethods(3, function(row1, row2) { 1208 var obj1 = parseFloat(row1[arguments.callee.columnIndex]); 1209 var obj2 = parseFloat(row2[arguments.callee.columnIndex]); 1210 return (obj1 > obj2) ? 1 : ((obj1 == obj2) ? 0 : -1); 1211 }); 1212 1213 // table list 1214 var lv = new qx.ui.table.Table(tm); 1215 1216 lv.setStatusBarVisible(false); 1217 lv.setShowCellFocusIndicator(false); 1218 lv.setColumnVisibilityButtonVisible(false); 1219 1220 lv.setColumnWidth(0, 24); 1221 lv.setColumnWidth(1, 300); 1222 lv.setColumnWidth(2, 120); 1223 1224 var renderer = new qx.ui.table.cellrenderer.Image(16, 16); 1225 lv.getTableColumnModel().setDataCellRenderer(0, renderer); 1309 1226 1310 1227 bl.add(lv); … … 1319 1236 canvas.setPrintable(true); 1320 1237 1321 var pname = this.guiParameter.get Value();1238 var pname = this.guiParameter.getSelectedValue(); 1322 1239 var vmin = this.guiMinParam.getNumValue(); 1323 1240 var vmax = this.guiMaxParam.getNumValue(); … … 1480 1397 1481 1398 canvas.setViewportCoordinates(0.15, 0.1, 0.9, 0.9); 1482 dwx = Math.abs(wxmax - wxmin);1399 var dwx = Math.abs(wxmax - wxmin); 1483 1400 if (dwx == 0) { 1484 1401 dwx = wxmax; 1485 1402 } 1486 dwy = Math.abs(wymax - wymin);1403 var dwy = Math.abs(wymax - wymin); 1487 1404 if (dwy == 0) { 1488 1405 wymin = 0.0; … … 1534 1451 showWikiPage : function(entity) 1535 1452 { 1536 var url ;1453 var url = "about:blank"; 1537 1454 if (entity && entity.wikiLink) { 1538 1455 url = "http://en.wikipedia.org/w/index.php?title=" + 1539 1456 entity.wikiLink + "&printable=yes"; 1540 } else {1541 url = null;1542 1457 } 1543 1458 … … 1548 1463 { 1549 1464 var tree = this.entity_tree; 1550 var leaf = tree.getSelectedElement();1465 var leaf = getSingleTreeSelectedItem(tree); 1551 1466 1552 1467 if (!leaf) { … … 1568 1483 var page_id = this.renderTabPage("Plot", 1569 1484 "pf/image/tab-plot.png"); 1570 1571 var sp = new qx.legacy.ui.splitpane.HorizontalSplitPane("1*", 300); 1572 sp.set( 1573 { 1574 height : "100%", 1575 width : "100%", 1576 left : 1, 1577 right : 1, 1578 top : 1, 1579 bottom : 1, 1580 border : "inset-thin", 1581 showKnob : true 1485 page_id.setLayout(new qx.ui.layout.VBox); 1486 1487 var sp = new qx.ui.splitpane.Pane("horizontal"); 1488 page_id.add(sp, {height: "100%"}); 1489 1490 var left_pane = new qx.ui.container.Composite(new qx.ui.layout.Grow).set({ 1491 width: 470, 1492 decorator : "main" 1582 1493 }); 1583 page_id.add(sp); 1584 1585 var left_pane = sp.getLeftArea(); 1586 left_pane.setBackgroundColor("white"); 1587 left_pane.setBorder("inset-thin"); 1588 var right_pane = sp.getRightArea(); 1589 right_pane.setBackgroundColor("white"); 1590 right_pane.setBorder("inset-thin"); 1591 1494 var right_pane = new qx.ui.container.Composite(new qx.ui.layout.VBox(4)).set({ 1495 padding : 4, 1496 decorator : "main" 1497 }); 1498 1499 sp.add(left_pane, 0); 1500 sp.add(right_pane, 1); 1501 1592 1502 var canvas = new pf.ui.canvas.Plotter(); 1593 canvas.set(1594 {1595 height : "100%",1596 width : "100%"1597 });1598 1503 left_pane.add(canvas); 1599 1504 this.canvas = canvas; 1600 1505 1601 1602 var vbl = new qx.legacy.ui.layout.VerticalBoxLayout("vertical"); 1603 vbl.set( 1604 { 1605 height : "100%", 1606 width : "100%", 1607 padding : 4, 1608 spacing : 10 1609 }); 1610 right_pane.add(vbl); 1611 1612 var gl = new qx.legacy.ui.layout.GridLayout; 1613 gl.set( 1614 { 1615 height : "auto", 1616 width : "100%", 1617 left : 4, 1618 right : 4, 1619 top : 4, 1620 verticalSpacing : 4, 1621 verticalSpacing : 4, 1622 horizontalSpacing : 6 1623 }); 1624 1625 gl.setColumnCount(2); 1626 gl.setColumnWidth(0, 150); 1627 gl.setColumnWidth(1, 100); 1628 gl.setRowCount(5); 1629 gl.setRowHeight(0, 30); 1630 gl.setRowHeight(1, 30); 1631 gl.setRowHeight(2, 30); 1632 gl.setRowHeight(3, 30); 1633 gl.setRowHeight(4, 30); 1634 vbl.add(gl); 1506 var layout = new qx.ui.layout.Grid(4, 6); 1507 var gl = new qx.ui.container.Composite(layout); 1635 1508 1636 1509 var l, e; 1637 1510 1638 var btn = new qx. legacy.ui.form.Button("Redraw", "pf/image/tab-plot.png");1511 var btn = new qx.ui.form.Button("Redraw", "pf/image/tab-plot.png"); 1639 1512 btn.addListener("execute", this.drawCB, this); 1640 gl.add(btn, 0, 0);1641 1642 l = new qx. legacy.ui.basic.Label("Parameter to vary:");1643 e = new pf.ui. ComboBox;1644 e.add (new qx.legacy.ui.form.ListItem("N_e", null, "N_e"));1645 e.add (new qx.legacy.ui.form.ListItem("T", null, "T"));1646 e.add (new qx.legacy.ui.form.ListItem("T_e", null, "T_e"));1647 e.add (new qx.legacy.ui.form.ListItem("T_i", null, "T_i"));1648 e.add (new qx.legacy.ui.form.ListItem("T_r", null, "T_r"));1649 e.add (new qx.legacy.ui.form.ListItem("T_i,r", null, "T_i,r"));1650 e.add (new qx.legacy.ui.form.ListItem("B", null, "B"));1513 gl.add(btn, {row: 0, column: 0}); 1514 1515 l = new qx.ui.basic.Label("Parameter to vary:"); 1516 e = new pf.ui.SelectBox; 1517 e.addItem("N_e", "N_e"); 1518 e.addItem("T", "T"); 1519 e.addItem("T_e", "T_e"); 1520 e.addItem("T_i", "T_i"); 1521 e.addItem("T_r", "T_r"); 1522 e.addItem("T_i,r", "T_i,r"); 1523 e.addItem("B", "B"); 1651 1524 e.selectByValue("N_e"); 1652 1525 this.guiParameter = e; 1653 gl.add(l, 0, 1);1654 gl.add(e, 1, 1);1655 1656 l = new qx. legacy.ui.basic.Label("Minimum scale:");1526 gl.add(l, {row: 1, column: 0}); 1527 gl.add(e, {row: 1, column: 1}); 1528 1529 l = new qx.ui.basic.Label("Minimum scale:"); 1657 1530 e = new pf.ui.TextField(0.5); 1658 1531 this.guiMinParam = e; 1659 gl.add(l, 0, 2);1660 gl.add(e, 1, 2);1661 1662 l = new qx. legacy.ui.basic.Label("Maximum scale:");1532 gl.add(l, {row: 2, column: 0}); 1533 gl.add(e, {row: 2, column: 1}); 1534 1535 l = new qx.ui.basic.Label("Maximum scale:"); 1663 1536 e = new pf.ui.TextField(2.0); 1664 1537 this.guiMaxParam = e; 1665 gl.add(l, 0, 3);1666 gl.add(e, 1, 3);1667 1668 l = new qx. legacy.ui.basic.Label("Number of points:");1669 e = new pf.ui.Spinner(2, 20, 100);1538 gl.add(l, {row: 3, column: 0}); 1539 gl.add(e, {row: 3, column: 1}); 1540 1541 l = new qx.ui.basic.Label("Number of points:"); 1542 e = new qx.ui.form.Spinner(2, 20, 100); 1670 1543 this.guiParamPoints = e; 1671 gl.add(l, 0, 4); 1672 gl.add(e, 1, 4); 1673 1674 1675 var lc = 1676 { 1677 s_icon : { label : "", 1678 width : 24, 1679 type : "iconHtml", 1680 align : "center", 1681 sortable : false }, 1682 name : { label : "Name", 1683 width : 185, 1684 type : "text", 1685 align : "left", 1686 sortable : true, 1687 sortProp : "text" }, 1688 color : { label : "Color", 1689 width : 55, 1690 type : "text", 1691 align : "left", 1692 sortable : false } 1693 }; 1694 1695 var lv = new qx.legacy.ui.listview.ListView(new Array, lc); 1696 1697 lv.setWidth("100%"); 1698 lv.setHeight("2*"); 1699 // lv.setBackgroundColor("white"); 1700 lv.setBorder("dark-shadow"); 1544 gl.add(l, {row: 4, column: 0}); 1545 gl.add(e, {row: 4, column: 1}); 1546 1547 right_pane.add(gl); 1548 1549 1550 1551 var tm = new qx.ui.table.model.Simple(); 1552 tm.setColumns(["", "Name", "Color", ""], 1553 ["icon", "name", "color", "favorite"]); 1554 1555 tm.setColumnEditable(0, false); 1556 tm.setColumnEditable(1, false); 1557 tm.setColumnEditable(2, false); 1558 1559 tm.setColumnSortable(1, false); 1560 1561 // table list 1562 var lv = new qx.ui.table.Table(tm); 1563 lv.set({ 1564 height: 310 1565 }); 1566 1567 var cm = lv.getTableColumnModel(); 1568 cm.setColumnVisible(3, false); 1569 1570 lv.setStatusBarVisible(false); 1571 lv.setShowCellFocusIndicator(false); 1572 lv.setColumnVisibilityButtonVisible(false); 1573 1574 lv.setColumnWidth(0, 24); 1575 lv.setColumnWidth(1, 185); 1576 lv.setColumnWidth(2, 55); 1577 1578 var renderer = new qx.ui.table.cellrenderer.Image(16, 16); 1579 lv.getTableColumnModel().setDataCellRenderer(0, renderer); 1580 1581 right_pane.add(lv); 1582 this.legendListView = lv; 1583 1584 var sm = lv.getSelectionModel(); 1701 1585 1702 1586 lv.addListener("dblclick", function(ev) { 1703 1587 ev.stopPropagation(); 1704 var pane = this.getPane(); 1705 var item = pane.getSelectedItem(); 1706 if (!item) { 1588 1589 if (sm.isSelectionEmpty()) { 1707 1590 return; 1708 1591 } 1592 1593 var index = sm.getLeadSelectionIndex(); 1594 var item = tm.getRowDataAsMap(index); 1595 1709 1596 var favorite = item.favorite; 1710 1597 if (!favorite) { 1711 1598 return; 1712 1599 } 1713 mypop.setUserData("favorite", null); // avoid loop call 1714 mypop.setValue(favorite.color); 1715 mypop.setUserData("favorite", favorite); 1716 var el = this.getElement(); 1717 mypop.setTop(qx.legacy.html.Location.getPageBoxTop(el)); 1718 mypop.setLeft(qx.legacy.html.Location.getPageBoxLeft(el) - 1719 this.getWidthValue()); 1720 mypop.show(); 1600 cpop.setUserData("favorite", null); // avoid loop call 1601 cpop.setValue(favorite.color); 1602 cpop.setUserData("favorite", favorite); 1603 1604 cpop.placeToMouse(ev); 1605 cpop.open(); 1721 1606 }); 1722 1607 1723 vbl.add(lv); 1724 this.legendListView = lv; 1725 1726 var mytables = 1727 { 1728 core : { 1729 label : "Basic Colors", 1730 values : this.colorMap 1731 }, 1732 1733 recent : { 1734 label : "Recent Colors", 1735 values : [ ] 1736 } 1737 } 1738 1739 var mypop = new qx.legacy.ui.component.ColorPopup(mytables); 1740 // A hack 1741 mypop._layout.remove(mypop._automaticBtn); 1742 1743 mypop.addToDocument(); 1744 1745 mypop.addListener("changeValue", function(ev) { 1746 var color = ev.getValue(); 1747 var mypop = ev.getTarget(); 1748 var favorite = mypop.getUserData("favorite"); 1749 if (!favorite || !color) { 1750 return; 1751 } 1752 favorite.color = color; 1753 this.updateLegendListView(); 1754 this.drawAll(); 1755 }, this); 1756 1608 var cpop = new pf.ui.ColorPopup(this.colorMap); 1609 cpop.exclude(); 1610 1611 this.doc.add(cpop); 1612 1613 cpop.addListener("changeValue", function(ev) { 1614 var color = ev.getData(); 1615 var cpop = ev.getTarget(); 1616 var favorite = cpop.getUserData("favorite"); 1617 if (!favorite || !color) { 1618 return; 1619 } 1620 favorite.color = color; 1621 this.updateLegendListView(); 1622 this.drawAll(); 1623 }, this); 1757 1624 }, 1758 1625 … … 1771 1638 { 1772 1639 var lv = this.saveLoadConfigList; 1640 var tm = lv.getTableModel(); 1641 1773 1642 var configPtrs = this.prefs.configPtrs; 1774 1643 1775 var rowData = lv.getData(); 1776 rowData.length = 0; 1777 lv.getPane().getManager().deselectAll(); 1644 var rowData = new Array(); 1778 1645 1779 1646 var i; … … 1786 1653 d.setTime(configPtr.time); 1787 1654 1788 rowData.push({ name : {text : configPtr.name }, 1789 date : {text : df.format(d) } 1790 }); 1791 } 1792 1793 lv.updateSort(); 1794 lv.update(); 1655 rowData.push([configPtr.name, df.format(d)]); 1656 } 1657 1658 tm.setData(rowData, false); 1659 var sidx = tm.getSortColumnIndex(); 1660 tm.sortByColumn(sidx, tm.isSortAscending()); 1661 1662 lv.updateContent(); 1795 1663 }, 1796 1664 … … 1843 1711 var submenu, btn, q; 1844 1712 1845 var theme = qx.legacy.theme.manager.Color.getInstance().getColorTheme(); 1846 var bg = '#' + 1847 qx.util.ColorUtil.rgbToHexString(theme.colors['button']); 1848 1849 submenu = new qx.legacy.ui.menu.Menu; 1850 submenu.setBackgroundColor(bg); 1713 submenu = new qx.ui.menu.Menu; 1851 1714 this.doc.add(submenu); 1852 q = new qx. event.Command("Ctrl+O");1715 q = new qx.ui.core.Command("Ctrl+O"); 1853 1716 q.addListener("execute", this.openCB, this); 1854 btn = new qx. legacy.ui.menu.Button("Open...", "pf/image/open.png", q);1717 btn = new qx.ui.menu.Button("Open...", "pf/image/open.png", q); 1855 1718 submenu.add(btn); 1856 q = new qx. event.Command("Ctrl+S");1719 q = new qx.ui.core.Command("Ctrl+S"); 1857 1720 q.addListener("execute", this.saveConfigCB, this); 1858 btn = new qx. legacy.ui.menu.Button("Save", "pf/image/save.png", q);1721 btn = new qx.ui.menu.Button("Save", "pf/image/save.png", q); 1859 1722 submenu.add(btn); 1860 btn = new qx. legacy.ui.menu.Button("Save as...", "pf/image/save.png");1723 btn = new qx.ui.menu.Button("Save as...", "pf/image/save.png"); 1861 1724 btn.addListener("execute", this.saveAsCB, this); 1862 1725 submenu.add(btn); 1863 submenu.add(new qx. legacy.ui.menu.Separator);1864 q = new qx. event.Command("Ctrl+P");1726 submenu.add(new qx.ui.menu.Separator); 1727 q = new qx.ui.core.Command("Ctrl+P"); 1865 1728 q.addListener("execute", function(ev) { 1866 1729 window.print(); 1867 1730 }); 1868 btn = new qx. legacy.ui.menu.Button("Print...", "pf/image/print.png", q);1731 btn = new qx.ui.menu.Button("Print...", "pf/image/print.png", q); 1869 1732 submenu.add(btn); 1870 submenu.add(new qx. legacy.ui.menu.Separator);1871 q = new qx. event.Command("Ctrl+R");1733 submenu.add(new qx.ui.menu.Separator); 1734 q = new qx.ui.core.Command("Ctrl+R"); 1872 1735 q.addListener("execute", function(ev) { 1873 1736 if (!this.prefs.warnOnExit || … … 1877 1740 } 1878 1741 }, this); 1879 btn = new qx. legacy.ui.menu.Button("Restart", "pf/image/reset.png", q);1742 btn = new qx.ui.menu.Button("Restart", "pf/image/reset.png", q); 1880 1743 submenu.add(btn); 1881 submenu.add(new qx. legacy.ui.menu.Separator);1882 q = new qx. event.Command("Ctrl+Q");1744 submenu.add(new qx.ui.menu.Separator); 1745 q = new qx.ui.core.Command("Ctrl+Q"); 1883 1746 q.addListener("execute", function(ev) { 1884 1747 if (!this.prefs.warnOnExit || … … 1888 1751 } 1889 1752 }, this); 1890 btn = new qx. legacy.ui.menu.Button("Quit", "pf/image/exit.png", q);1753 btn = new qx.ui.menu.Button("Quit", "pf/image/exit.png", q); 1891 1754 submenu.add(btn); 1892 1755 1893 btn = new qx.legacy.ui.menubar.Button("File", submenu); 1894 btn.set({ paddingLeft : 7, paddingRight : 7 }); 1756 btn = new qx.ui.menubar.Button("File", null, submenu); 1895 1757 menubar.add(btn); 1896 1758 1897 1759 1898 submenu = new qx.legacy.ui.menu.Menu; 1899 submenu.setBackgroundColor(bg); 1900 submenu.addListener("beforeAppear", editMenuCB, this); 1760 submenu = new qx.ui.menu.Menu; 1761 submenu.addListener("appear", editMenuCB, this); 1901 1762 this.doc.add(submenu); 1902 btn = new qx. legacy.ui.menu.Button("Add to Favorites",1763 btn = new qx.ui.menu.Button("Add to Favorites", 1903 1764 "pf/image/favorite-add.png"); 1904 1765 btn.addListener("execute", addToFavCB, this); 1905 1766 this.editMenuButtonAddToFav = btn; 1906 1767 submenu.add(btn); 1907 btn = new qx. legacy.ui.menu.Button("Remove from Favorites",1768 btn = new qx.ui.menu.Button("Remove from Favorites", 1908 1769 "pf/image/favorite-delete.png"); 1909 1770 btn.addListener("execute", removeFromFavCB, this); 1910 1771 this.editMenuButtonRemFromFav = btn; 1911 1772 submenu.add(btn); 1912 submenu.add(new qx. legacy.ui.menu.Separator);1913 btn = new qx. legacy.ui.menu.Button("Preferences",1773 submenu.add(new qx.ui.menu.Separator); 1774 btn = new qx.ui.menu.Button("Preferences", 1914 1775 "pf/image/preferences.png"); 1915 1776 btn.addListener("execute", this.prefsCB, this); 1916 1777 submenu.add(btn); 1917 1778 1918 btn = new qx.legacy.ui.menubar.Button("Edit", submenu); 1919 btn.set({ paddingLeft : 7, paddingRight : 7 }); 1779 btn = new qx.ui.menubar.Button("Edit", null, submenu); 1920 1780 menubar.add(btn); 1921 1781 1922 1782 1923 submenu = new qx.legacy.ui.menu.Menu; 1924 submenu.setBackgroundColor(bg); 1925 submenu.addListener("beforeAppear", viewMenuCB, this); 1926 1927 var subMenu1 = new qx.legacy.ui.menu.Menu; 1928 subMenu1.setBackgroundColor(bg); 1929 button = new qx.legacy.ui.menu.CheckBox("Fundamental", 1930 null, this.showFundamental); 1931 button.addListener("execute", showFundamentalCB, this); 1932 subMenu1.add(button); 1933 button = new qx.legacy.ui.menu.CheckBox("Spectroscopy", 1934 null, this.showSpectroscopy); 1935 button.addListener("execute", showSpectroscopyCB, this); 1936 subMenu1.add(button); 1937 button = new qx.legacy.ui.menu.CheckBox("Waves", 1938 null, this.showWaves); 1939 button.addListener("execute", showWavesCB, this); 1940 subMenu1.add(button); 1941 button = new qx.legacy.ui.menu.CheckBox("Collisions", 1942 null, this.showCollisions); 1943 button.addListener("execute", showCollisionsCB, this); 1944 subMenu1.add(button); 1945 this.showSectionsButton = new qx.legacy.ui.menu.Button("Show Sections", 1783 submenu = new qx.ui.menu.Menu; 1784 submenu.addListener("appear", viewMenuCB, this); 1785 1786 var subMenu1 = new qx.ui.menu.Menu; 1787 btn = new qx.ui.menu.CheckBox("Fundamental"); 1788 btn.setValue(this.showFundamental); 1789 btn.addListener("execute", showFundamentalCB, this); 1790 subMenu1.add(btn); 1791 btn = new qx.ui.menu.CheckBox("Spectroscopy"); 1792 btn.setValue(this.showSpectroscopy); 1793 btn.addListener("execute", showSpectroscopyCB, this); 1794 subMenu1.add(btn); 1795 btn = new qx.ui.menu.CheckBox("Waves"); 1796 btn.setValue(this.showWaves); 1797 btn.addListener("execute", showWavesCB, this); 1798 subMenu1.add(btn); 1799 btn = new qx.ui.menu.CheckBox("Collisions"); 1800 btn.setValue(this.showCollisions); 1801 btn.addListener("execute", showCollisionsCB, this); 1802 subMenu1.add(btn); 1803 this.showSectionsButton = new qx.ui.menu.Button("Show Sections", 1946 1804 null, null, subMenu1); 1947 1805 submenu.add(this.showSectionsButton); 1948 1806 1949 submenu.add(new qx.legacy.ui.menu.Separator); 1950 1951 var subMenu2 = new qx.legacy.ui.menu.Menu; 1952 subMenu2.setBackgroundColor(bg); 1953 button = new qx.legacy.ui.menu.CheckBox("Electrons", 1954 null, this.showElectrons) 1955 button.addListener("execute", showElectronsCB, this); 1956 subMenu2.add(button); 1957 button = new qx.legacy.ui.menu.CheckBox("Ions", 1958 null, this.showIons) 1959 button.addListener("execute", showIonsCB, this); 1960 subMenu2.add(button); 1961 button = new qx.legacy.ui.menu.CheckBox("Radiators", 1962 null, this.showRadiators) 1963 button.addListener("execute", showRadiatorsCB, this); 1964 subMenu2.add(button); 1965 this.showSpeciesButton = new qx.legacy.ui.menu.Button("Show Species", 1807 submenu.add(new qx.ui.menu.Separator); 1808 1809 var subMenu2 = new qx.ui.menu.Menu; 1810 btn = new qx.ui.menu.CheckBox("Electrons"); 1811 btn.setValue(this.showElectrons); 1812 btn.addListener("execute", showElectronsCB, this); 1813 subMenu2.add(btn); 1814 btn = new qx.ui.menu.CheckBox("Ions"); 1815 btn.setValue(this.showIons); 1816 btn.addListener("execute", showIonsCB, this); 1817 subMenu2.add(btn); 1818 btn = new qx.ui.menu.CheckBox("Radiators"); 1819 btn.setValue(this.showRadiators); 1820 btn.addListener("execute", showRadiatorsCB, this); 1821 subMenu2.add(btn); 1822 this.showSpeciesButton = new qx.ui.menu.Button("Show Species", 1966 1823 null, null, subMenu2); 1967 1824 submenu.add(this.showSpeciesButton); 1968 1825 1969 submenu.add(new qx. legacy.ui.menu.Separator);1970 q = new qx. event.Command("Ctrl+W");1826 submenu.add(new qx.ui.menu.Separator); 1827 q = new qx.ui.core.Command("Ctrl+W"); 1971 1828 q.addListener("execute", this.loadWikiCB, this); 1972 btn = new qx. legacy.ui.menu.Button("Load Wikipedia Article",1829 btn = new qx.ui.menu.Button("Load Wikipedia Article", 1973 1830 "pf/image/wikipedia.png", q); 1974 1831 submenu.add(btn); 1975 1832 this.loadWikiButton = btn; 1976 this.doc.add(submenu, subMenu1, subMenu2); 1977 1978 submenu.add(new qx.legacy.ui.menu.Separator); 1979 q = new qx.event.Command("Ctrl+L"); 1833 this.doc.add(submenu); 1834 this.doc.add(subMenu1); 1835 this.doc.add(subMenu2); 1836 1837 submenu.add(new qx.ui.menu.Separator); 1838 q = new qx.ui.core.Command("Ctrl+L"); 1980 1839 q.addListener("execute", this.drawCB, this); 1981 btn = new qx. legacy.ui.menu.Button("Redraw Plot",1840 btn = new qx.ui.menu.Button("Redraw Plot", 1982 1841 "pf/image/tab-plot.png", q); 1983 1842 submenu.add(btn); 1984 1843 this.redrawButton = btn; 1985 1844 1986 btn = new qx.legacy.ui.menubar.Button("View", submenu);1987 btn .set({ paddingLeft : 7, paddingRight : 7 });1845 1846 btn = new qx.ui.menubar.Button("View", null, submenu); 1988 1847 menubar.add(btn); 1989 1848 1990 1849 1991 submenu = new qx.legacy.ui.menu.Menu; 1992 submenu.setBackgroundColor(bg); 1850 var nvOptions = { 1851 width: 800, 1852 height: 600, 1853 scrollbars : true, 1854 resizable : true, 1855 menubar : false, 1856 status : false 1857 }; 1858 submenu = new qx.ui.menu.Menu; 1993 1859 this.doc.add(submenu); 1994 q = new qx. event.Command("F1");1860 q = new qx.ui.core.Command("F1"); 1995 1861 q.addListener("execute", function(ev) { 1996 1862 alert("Help system not implemented yet"); 1997 1863 }); 1998 btn = new qx. legacy.ui.menu.Button("Help Contents",1864 btn = new qx.ui.menu.Button("Help Contents", 1999 1865 "pf/image/help.png", q); 2000 1866 submenu.add(btn); 2001 btn = new qx. legacy.ui.menu.Button("NRL Plasma Formulary",1867 btn = new qx.ui.menu.Button("NRL Plasma Formulary", 2002 1868 "pf/image/nrl.png"); 2003 1869 btn.addListener("execute", function (ev) { 2004 var w = new qx.legacy.util.NativeWindow("http://wwwppd.nrl.navy.mil/nrlformulary/"); 2005 w.setDimension(800, 600); 2006 w.open(); 1870 var url = "http://wwwppd.nrl.navy.mil/nrlformulary/"; 1871 var w = qx.bom.Window.open(url, null, nvOptions); 2007 1872 }, this); 2008 1873 submenu.add(btn); 2009 btn = new qx. legacy.ui.menu.Button("Plasma at Wikipedia",1874 btn = new qx.ui.menu.Button("Plasma at Wikipedia", 2010 1875 "pf/image/wikipedia.png"); 2011 1876 btn.addListener("execute", function (ev) { 2012 var w = new qx.legacy.util.NativeWindow("http://en.wikipedia.org/wiki/Plasma_%28physics%29"); 2013 w.setDimension(800, 600); 2014 w.open(); 1877 var url = "http://en.wikipedia.org/wiki/Plasma_%28physics%29"; 1878 var w = qx.bom.Window.open(url, null, nvOptions); 2015 1879 }, this); 2016 1880 submenu.add(btn); 2017 submenu.add(new qx. legacy.ui.menu.Separator);2018 btn = new qx. legacy.ui.menu.Button("License Terms",1881 submenu.add(new qx.ui.menu.Separator); 1882 btn = new qx.ui.menu.Button("License Terms", 2019 1883 "pf/image/gnu.png"); 2020 1884 btn.addListener("execute", function (ev) { 2021 var w = new qx.legacy.util.NativeWindow("resource/pf/html/GPL.html"); 2022 w.setDimension(800, 600); 2023 w.open(); 1885 var url = "resource/pf/html/GPL.html"; 1886 var w = qx.bom.Window.open(url, null, nvOptions); 2024 1887 }, this); 2025 1888 submenu.add(btn); 2026 btn = new qx. legacy.ui.menu.Button("About...",1889 btn = new qx.ui.menu.Button("About...", 2027 1890 "pf/image/about.png"); 2028 1891 btn.addListener("execute", this.aboutCB, this); 2029 1892 submenu.add(btn); 2030 1893 2031 btn = new qx.legacy.ui.menubar.Button("Help", submenu); 2032 btn.set({ paddingLeft : 7, paddingRight : 7 }); 1894 btn = new qx.ui.menubar.Button("Help", null, submenu); 2033 1895 menubar.add(btn); 2034 1896 }, … … 2049 1911 var dims = new Object; 2050 1912 2051 dims.w = qx. legacy.html.Window.getInnerWidth(this.win);2052 dims.h = qx. legacy.html.Window.getInnerHeight(this.win);1913 dims.w = qx.bom.Element.Dimension.getWidth(this.win); 1914 dims.h = qx.bom.Element.Dimension.getHeight(this.win); 2053 1915 2054 1916 return dims; … … 2068 1930 2069 1931 if (prefstr) { 2070 this.prefs = qx.util.Json.parse Qx(prefstr);1932 this.prefs = qx.util.Json.parse(prefstr); 2071 1933 } 2072 1934 … … 2187 2049 } 2188 2050 2189 var config = qx.util.Json.parse Qx(configstr);2051 var config = qx.util.Json.parse(configstr); 2190 2052 2191 2053 if (config) { … … 2237 2099 createSaveLoadDialog : function() 2238 2100 { 2239 var w, rc , rc1, e, btn;2101 var w, rc1, e, btn; 2240 2102 // "Save as..." dialog 2241 w = new qx. legacy.ui.window.Window();2242 w.set Space(200, "auto", 100, 300);2103 w = new qx.ui.window.Window(); 2104 w.setLayout(new qx.ui.layout.VBox(10)); 2243 2105 w.setModal(true); 2244 2106 w.setShowMinimize(false); … … 2250 2112 } 2251 2113 }); 2252 2253 rc = new qx.legacy.ui.layout.VerticalBoxLayout("vertical"); 2254 rc.set({width : "100%", height : "100%", spacing : 4}); 2255 w.add(rc); 2256 2257 var tb = new qx.legacy.ui.toolbar.ToolBar(); 2258 var btn_delete = new qx.legacy.ui.toolbar.Button("Delete", 2114 2115 this.doc.add(w, {left: 200, top: 100}); 2116 this.saveLoadWindow = w; 2117 2118 var tb = new qx.ui.toolbar.ToolBar(); 2119 var btn_delete = new qx.ui.toolbar.Button("Delete", 2259 2120 "pf/image/delete.png"); 2260 var btn_rename = new qx. legacy.ui.toolbar.Button("Rename",2121 var btn_rename = new qx.ui.toolbar.Button("Rename", 2261 2122 "pf/image/rename.png"); 2262 2123 btn_delete.setEnabled(false); 2263 2124 btn_rename.setEnabled(false); 2264 var sep = new qx.legacy.ui.toolbar.Separator(); 2265 tb.add(sep, btn_delete, btn_rename); 2266 rc.add(tb); 2267 2268 var lc = 2269 { 2270 name : { label : "Configuration", 2271 width : 250, 2272 type : "text", 2273 align : "left", 2274 sortable : true, 2275 sortProp : "text" }, 2276 date : { label : "Last Modified", 2277 width : 180, 2278 type : "text", 2279 align : "right", 2280 sortable : true } 2281 }; 2282 2283 var lv = new qx.legacy.ui.listview.ListView(new Array, lc); 2284 2285 lv.setWidth("100%"); 2286 lv.setBorder("dark-shadow"); 2287 lv.setHeight("2*"); 2288 2125 var sep = new qx.ui.toolbar.Separator(); 2126 tb.add(sep); 2127 tb.add(btn_delete); 2128 tb.add(btn_rename); 2129 w.add(tb); 2130 2131 // table model 2132 var tm = new qx.ui.table.model.Simple(); 2133 tm.setColumns([ "Configuration", "Last Modified" ]); 2134 2135 tm.setColumnEditable(0, false); 2136 tm.setColumnEditable(1, false); 2137 2138 // table list 2139 var lv = new qx.ui.table.Table(tm); 2140 lv.set({ 2141 height: 250 2142 }); 2143 2144 lv.setStatusBarVisible(false); 2145 lv.setShowCellFocusIndicator(false); 2146 lv.setColumnVisibilityButtonVisible(false); 2147 2148 lv.setColumnWidth(0, 250); 2149 lv.setColumnWidth(1, 180); 2150 2289 2151 this.saveLoadConfigList = lv; 2290 rc.add(lv); 2152 w.add(lv); 2153 2154 var sm = lv.getSelectionModel(); 2155 sm.setSelectionMode(qx.ui.table.selection.Model.SINGLE_SELECTION); 2291 2156 2292 2157 btn_delete.addListener("execute", function(ev) { 2293 var pane = lv.getPane(); 2294 var item = pane.getSelectedItem(); 2295 if (item && confirm("Delete \"" + item.name.text + "\"?")) { 2296 this.removeConfig(item.name.text); 2158 if (!sm.isSelectionEmpty() && 2159 confirm("Delete \"" + rowData[0] + "\"?")) { 2160 var index = sm.getLeadSelectionIndex(); 2161 var rowData = tm.getRowData(index); 2162 this.removeConfig(rowData[0]); 2297 2163 this.updateSaveLoadList(); 2298 2164 } … … 2300 2166 2301 2167 btn_rename.addListener("execute", function(ev) { 2302 var pane = lv.getPane();2303 var item = pane.getSelectedItem();2304 if (item) {2305 var name = item.name.text;2168 if (!sm.isSelectionEmpty()) { 2169 var index = sm.getLeadSelectionIndex(); 2170 var rowData = tm.getRowData(index); 2171 var name = rowData[0]; 2306 2172 var newname = prompt("Rename \"" + name + "\" to", name); 2307 2173 if (newname && newname != name) { … … 2312 2178 this.gui_configName.setLabel(newname); 2313 2179 } 2180 this.saveLoadTextField.setValue(newname); 2314 2181 } 2315 2182 } 2316 2183 }, this); 2317 2184 2318 e = new pf.ui.TextField(); 2319 e.setWidth("100%"); 2320 rc.add(e); 2321 2185 e = new qx.ui.form.TextField(); 2186 w.add(e); 2322 2187 this.saveLoadTextField = e; 2323 2324 var sm = lv.getPane().getManager(); 2325 sm.setMultiSelection(false); 2188 2326 2189 sm.addListener("changeSelection", function(ev) { 2327 var item = this.getSelectedItem(); 2328 if (!item) { 2190 if (sm.isSelectionEmpty()) { 2329 2191 e.setValue(null); 2330 2192 btn_delete.setEnabled(false); 2331 2193 btn_rename.setEnabled(false); 2332 2194 } else { 2333 e.setValue(item.name.text); 2195 var index = sm.getLeadSelectionIndex(); 2196 var rowData = tm.getRowData(index); 2197 e.setValue(rowData[0]); 2334 2198 btn_rename.setEnabled(true); 2335 2199 btn_delete.setEnabled(true); … … 2337 2201 }); 2338 2202 2339 2340 rc1 = new qx.legacy.ui.layout.HorizontalBoxLayout("horizontal"); 2341 rc1.set({width : "100%", 2342 height : "auto", 2343 horizontalChildrenAlign : "right", 2344 verticalChildrenAlign : "bottom"}); 2345 rc.add(rc1); 2346 2347 btn = new qx.legacy.ui.form.Button("Cancel", 2203 rc1 = new qx.ui.container.Composite(new qx.ui.layout.HBox(1)); 2204 w.add(rc1); 2205 2206 btn = new qx.ui.form.Button("Cancel", 2348 2207 "pf/image/cancel.png"); 2349 2208 btn.addListener("execute", function(ev) { … … 2352 2211 rc1.add(btn); 2353 2212 2354 btn = new qx. legacy.ui.form.Button("OK",2213 btn = new qx.ui.form.Button("OK", 2355 2214 "pf/image/ok.png"); 2356 2215 btn.addListener("execute", function(ev) { … … 2387 2246 btn.setEnabled(null != name && name.length != 0); 2388 2247 }); 2389 2390 this.doc.add(w);2391 this.saveLoadWindow = w;2392 2248 }, 2393 2249 … … 2396 2252 var w; 2397 2253 // "Preferences..." dialog 2398 w = new qx. legacy.ui.window.Window("Preferences",2254 w = new qx.ui.window.Window("Preferences", 2399 2255 "pf/image/preferences.png"); 2400 w.setSpace(200, "auto", 100, "auto"); 2256 w.setLayout(new qx.ui.layout.VBox(10)); 2257 2401 2258 w.setModal(true); 2402 2259 w.setShowMinimize(false); 2403 2260 w.setShowMaximize(false); 2404 2261 2405 var vbl = new qx.legacy.ui.layout.VerticalBoxLayout("vertical"); 2406 vbl.setStretchChildrenOrthogonalAxis(false); 2407 w.add(vbl); 2262 w.addListener("keypress", function(ev) { 2263 if (ev.getKeyIdentifier() == "Escape") { 2264 w.close() 2265 } 2266 }); 2408 2267 2409 2268 var fr1, fr2, rc, l, e; 2410 2269 2411 fr1 = new qx.legacy.ui.groupbox.GroupBox("Default units"); 2412 fr1.setDimension("auto", "auto"); 2413 vbl.add(fr1); 2414 2415 rc = new qx.legacy.ui.layout.HorizontalBoxLayout; 2416 rc.setWidth("100%"); 2417 rc.setHeight("auto"); 2418 rc.setSpacing(10); 2270 fr1 = new qx.ui.groupbox.GroupBox("Default units"); 2271 fr1.setLayout(new qx.ui.layout.VBox()); 2272 w.add(fr1); 2273 2274 rc = new qx.ui.container.Composite(new qx.ui.layout.HBox(10)); 2419 2275 fr1.add(rc); 2420 2276 2421 l = new qx.legacy.ui.basic.Label("Dimension:"); 2422 e = new pf.ui.ComboBox; 2423 e.add(new qx.legacy.ui.form.ListItem("Frequency", null, "frequency")); 2424 e.add(new qx.legacy.ui.form.ListItem("Length", null, "length")); 2425 e.add(new qx.legacy.ui.form.ListItem("Velocity", null, "velocity")); 2426 e.add(new qx.legacy.ui.form.ListItem("Energy", null, "energy")); 2427 e.add(new qx.legacy.ui.form.ListItem("Pressure", null, "pressure")); 2428 e.add(new qx.legacy.ui.form.ListItem("Area", null, "area")); 2429 e.add(new qx.legacy.ui.form.ListItem("Power density", null, "power_density")); 2430 e.add(new qx.legacy.ui.form.ListItem("Power spectral density", 2431 null, "spectral_power_density")); 2432 e.add(new qx.legacy.ui.form.ListItem("Electric field", null, "efield")); 2433 e.addListener("changeSelected", function(ev) { 2277 l = new qx.ui.basic.Label("Dimension:"); 2278 e = new pf.ui.SelectBox; 2279 e.addItem("Length", "length"); 2280 e.addItem("Frequency", "frequency"); 2281 e.addItem("Velocity", "velocity"); 2282 e.addItem("Energy", "energy"); 2283 e.addItem("Pressure", "pressure"); 2284 e.addItem("Area", "area"); 2285 e.addItem("Power density", "power_density"); 2286 e.addItem("Power spectral density", "spectral_power_density"); 2287 e.addItem("Electric field", "efield"); 2288 e.addListener("changeSelection", function(ev) { 2434 2289 var dimension = ev.getTarget().getSelectedValue(); 2435 2290 this.gui_prefs_units.update(dimension, 2436 2291 this.prefs.units[dimension]); 2437 2292 }, this); 2438 rc.add(l, e); 2293 rc.add(l); 2294 rc.add(e); 2439 2295 this.gui_prefs_dim = e; 2440 2296 2441 l = new qx. legacy.ui.basic.Label("Units:");2297 l = new qx.ui.basic.Label("Units:"); 2442 2298 e = new pf.UnitSelector(); 2443 e.addListener("changeSelect ed", function(ev) {2299 e.addListener("changeSelection", function(ev) { 2444 2300 var dimension = this.gui_prefs_dim.getSelectedValue(); 2445 var units = ev.getTarget().get Value();2301 var units = ev.getTarget().getSelectedValue(); 2446 2302 this.prefs.units[dimension] = units; 2447 2303 }, this); 2448 rc.add(l, e); 2304 rc.add(l); 2305 rc.add(e); 2306 e.update("length"); 2449 2307 this.gui_prefs_units = e; 2450 2308 2451 fr2 = new qx.legacy.ui.groupbox.GroupBox("Interface"); 2452 fr2.setDimension("auto", "auto"); 2453 vbl.add(fr2); 2454 // A hack... 2455 fr1.addListener("appear", function(ev) { 2456 fr2.setWidth(this.getWidthValue()); 2457 }); 2458 2459 rc = new qx.legacy.ui.layout.VerticalBoxLayout; 2460 rc.setWidth("100%"); 2461 rc.setHeight("auto"); 2462 rc.setSpacing(10); 2309 fr2 = new qx.ui.groupbox.GroupBox("Interface"); 2310 fr2.setLayout(new qx.ui.layout.VBox()); 2311 w.add(fr2); 2312 2313 rc = new qx.ui.container.Composite(new qx.ui.layout.VBox(10)); 2463 2314 fr2.add(rc); 2464 2315 2465 e = new qx. legacy.ui.form.CheckBox("Load Wikipedia articles automatically");2466 e.set Checked(this.prefs.autoLoadWiki);2467 e.addListener("change Checked", function(ev) {2468 this.prefs.autoLoadWiki = ev.getTarget().get Checked();2316 e = new qx.ui.form.CheckBox("Load Wikipedia articles automatically"); 2317 e.setValue(this.prefs.autoLoadWiki); 2318 e.addListener("changeValue", function(ev) { 2319 this.prefs.autoLoadWiki = ev.getTarget().getValue(); 2469 2320 }, this); 2470 2321 rc.add(e); 2471 2322 2472 e = new qx. legacy.ui.form.CheckBox("Remember window dimensions on exit");2473 e.set Checked(this.prefs.rememberWindowSize);2474 e.addListener("change Checked", function(ev) {2475 this.prefs.rememberWindowSize = ev.getTarget().get Checked();2323 e = new qx.ui.form.CheckBox("Remember window dimensions on exit"); 2324 e.setValue(this.prefs.rememberWindowSize); 2325 e.addListener("changeValue", function(ev) { 2326 this.prefs.rememberWindowSize = ev.getTarget().getValue(); 2476 2327 }, this); 2477 2328 rc.add(e); 2478 2329 2479 e = new qx. legacy.ui.form.CheckBox("Warn on exit or restart");2480 e.set Checked(this.prefs.warnOnExit);2481 e.addListener("change Checked", function(ev) {2482 this.prefs.warnOnExit = ev.getTarget().get Checked();2330 e = new qx.ui.form.CheckBox("Warn on exit or restart"); 2331 e.setValue(this.prefs.warnOnExit); 2332 e.addListener("changeValue", function(ev) { 2333 this.prefs.warnOnExit = ev.getTarget().getValue(); 2483 2334 }, this); 2484 2335 rc.add(e); 2485 2486 this.doc.add(w );2336 2337 this.doc.add(w, {left: 200, top: 100}); 2487 2338 this.prefsWindow = w; 2488 2339 }, … … 2498 2349 { 2499 2350 this.base(arguments); 2500 this.compat();2501 2351 2502 2352 // Enable logging in debug variant … … 2509 2359 } 2510 2360 2511 this.doc = qx.legacy.ui.core.ClientDocument.getInstance();2512 this.win = this.doc.getWindowElement();2361 this.doc = this.getRoot(); 2362 // this.win = this.doc.getWindow(); 2513 2363 2514 2364 // Load prefs … … 2530 2380 2531 2381 this.colorMap = new Array("red", "blue", "green", "orange", 2532 "brown", "olive", "teal", "magenta", "gr ey", "black");2382 "brown", "olive", "teal", "magenta", "gray", "black"); 2533 2383 this.ncolor = 0; 2534 2384 2535 2385 // Top-level container 2536 this.bl_top = new qx.legacy.ui.layout.VerticalBoxLayout("vertical"); 2537 this.bl_top.setWidth("100%"); 2538 this.bl_top.setHeight("100%"); 2539 2540 this.bl_top.addToDocument(); 2386 var layout = new qx.ui.layout.VBox; 2387 this.bl_top = new qx.ui.container.Composite(layout); 2388 2389 this.doc.add(this.bl_top, {width : '100%'}); 2541 2390 2542 2391 // The menubar 2543 this.menubar = new qx. legacy.ui.menubar.MenuBar;2392 this.menubar = new qx.ui.menubar.MenuBar; 2544 2393 this.bl_top.add(this.menubar); 2545 2394 … … 2547 2396 this.buildMenu(); 2548 2397 2549 var tf1 = new qx.legacy.ui.pageview.tabview.TabView; 2550 tf1.set({ width : '100%', height : '2*' }); 2551 2552 this.bl_top.add(tf1); 2553 2554 this.tabbar = tf1.getBar(); 2555 this.tabpane = tf1.getPane(); 2556 this.tabpane.setHeight('3*'); 2557 this.tabpane.setPadding(0, 0, 0, 0); 2558 2398 this.tabview = new qx.ui.tabview.TabView; 2399 2400 this.bl_top.add(this.tabview); 2559 2401 // The "Parameters" tab 2560 2402 this.renderParametersTab(); … … 2576 2418 2577 2419 // "About..." dialog 2578 w = new qx.legacy.ui.window.Window("About Plasma Formulary",2420 var w = new qx.ui.window.Window("About Plasma Formulary", 2579 2421 "pf/image/about.png"); 2580 w.set Space(200, "auto", 100, "auto");2422 w.setLayout(new qx.ui.layout.VBox(10)); 2581 2423 w.setModal(true); 2582 2424 w.setShowMinimize(false); 2583 2425 w.setShowMaximize(false); 2426 2427 w.addListener("keypress", function(ev) { 2428 if (ev.getKeyIdentifier() == "Escape") { 2429 w.close() 2430 } 2431 }); 2584 2432 2585 2433 var version = qx.core.Version; 2586 2434 if (!version) { 2587 version = ' 0.8.3';2588 } 2589 str = 'Plasma Formulary Interactive.<br/>' +2590 '$Revision$.' +2591 '<p>Written by Evgeny Stambulchik.</p>' +2592 '<p>GUI built with the Qooxdoo-' +2593 version + ' toolkit.<br/>' +2594 'Using Walter Zorn jsGraphics for drawing.</p>';2595 2596 var a = new qx. legacy.ui.basic.Atom(str);2597 a.set ({ top: 4, left: 4 });2435 version = '1.0'; 2436 } 2437 var str = 'Plasma Formulary Interactive.<br/>' + 2438 '$Revision$.' + 2439 '<p>Written by Evgeny Stambulchik.</p>' + 2440 '<p>GUI built with the Qooxdoo-' + 2441 version + ' toolkit.<br/>' + 2442 'Using Walter Zorn jsGraphics for drawing.</p>'; 2443 2444 var a = new qx.ui.basic.Atom(str); 2445 a.setRich(true); 2598 2446 w.add(a); 2599 2447 2600 this.doc.add(w );2448 this.doc.add(w, {left: 200, top: 100}); 2601 2449 this.aboutWindow = w; 2602 2450 2603 2451 if (this.prefs.rememberWindowSize && this.prefs.dims) { 2604 self.resizeTo(this.prefs.dims.w, this.prefs.dims.h)2452 self.resizeTo(this.prefs.dims.w, this.prefs.dims.h) 2605 2453 } 2606 2454 2607 2455 // Handle resize events 2608 this.doc.addListener("windowresize", function(e) {2609 if (this.prefs.rememberWindowSize) {2610 this.prefs.dims = this.getWindowDimensions();2611 }2612 this.drawAll();2613 }, this);2456 // this.doc.addListener("windowresize", function(e) { 2457 // if (this.prefs.rememberWindowSize) { 2458 // this.prefs.dims = this.getWindowDimensions(); 2459 // } 2460 // this.drawAll(); 2461 // }, this); 2614 2462 }, 2615 2463 … … 2628 2476 2629 2477 this.base(arguments); 2630 this.compat();2631 2478 2632 2479 // Prompt user -
source/class/pf/UnitSelector.js
r61 r146 1 1 qx.Class.define("pf.UnitSelector", 2 2 { 3 extend: pf.ui. ComboBox,3 extend: pf.ui.SelectBox, 4 4 5 5 members: … … 15 15 this._dimension = dimension; 16 16 17 var list = this.get List();17 var list = this.getChildControl("list"); 18 18 19 19 // clear everything … … 81 81 82 82 if (def_units) { 83 var def_selected = list.findStringExact(def_units); 84 if (def_selected) { 85 selected = def_selected; 86 } 87 } 88 83 var models = new Array(def_units); 84 list.setModelSelection(models); 85 } else 89 86 if (selected) { 90 this.setSelected(selected); 87 var sels = Array(selected); 88 list.setSelection(sels); 91 89 } 92 90 } -
source/class/pf/ui/TextField.js
r79 r146 2 2 qx.Class.define("pf.ui.TextField", 3 3 { 4 extend: qx. legacy.ui.form.TextField,4 extend: qx.ui.form.TextField, 5 5 6 6 construct: function(v) { -
source/class/pf/ui/canvas/Canvas.js
r72 r146 1 1 qx.Class.define("pf.ui.canvas.Canvas", 2 2 { 3 extend: qx. legacy.ui.basic.Atom,3 extend: qx.ui.core.Widget, 4 4 5 5 construct: function() { 6 6 this.base(arguments); 7 7 8 this.addListener("appear", function(e) { 8 9 if (!this.jg) { 9 var element = this.get Element();10 var element = this.getContainerElement().getDomElement(); 10 11 this.jg = new jsGraphics(element); 11 12 // FIXME: get from qx … … 14 15 }, this); 15 16 }, 16 17 17 18 members: 18 19 { -
source/class/pf/ui/canvas/Plotter.js
r118 r146 46 46 construct: function() { 47 47 this.base(arguments); 48 49 this._setLayout(new qx.ui.layout.Basic()); 50 48 51 this.setCursor("crosshair"); 49 52 50 53 var v = new Array; 51 54 v.xmin = 0.1; … … 62 65 this.w = w; 63 66 64 var tracker = new qx.legacy.ui.basic.Atom("X:<br>Y:"); 65 tracker.setBorder("groove"); 67 var tracker = new qx.ui.basic.Label("X:<br>Y:"); 68 tracker.setRich(true); 69 tracker.setDecorator(new qx.ui.decoration.Single(1, "solid", "black")); 66 70 tracker.hide(); 67 71 tracker.dp = aPoint(); 68 72 tracker.vp = aPoint(); 69 73 tracker.wp = aPoint(); 70 this.add(tracker); 74 75 this._add(tracker, {left: 20, top:20}); 71 76 this.tracker = tracker; 72 73 this.setHorizontalChildrenAlign("left");74 this.setVerticalChildrenAlign("top");75 77 76 78 this.addListener("mousemove", function(ev) { 77 79 var tracker = this.tracker; 78 var el = this.get Element();79 tracker.dp.x = ev.get PageX() -80 qx. legacy.html.Location.getClientInnerLeft(el) - 1;81 tracker.dp.y = ev.get PageY() -82 qx. legacy.html.Location.getClientInnerTop(el) - 1;80 var el = this.getContainerElement().getDomElement(); 81 tracker.dp.x = ev.getViewportLeft() - 82 qx.bom.element.Location.getLeft(el); 83 tracker.dp.y = ev.getViewportTop() - 84 qx.bom.element.Location.getTop(el); 83 85 this.dPoint2vPoint(tracker.dp, tracker.vp); 84 86 this.vPoint2wPoint(tracker.vp, tracker.wp); 85 tracker.setLabel("X: " + pf.util.Format.numPrint(tracker.wp.x) + 87 88 tracker.setValue("X: " + pf.util.Format.numPrint(tracker.wp.x) + 86 89 "<br>Y: " + pf.util.Format.numPrint(tracker.wp.y)); 87 tracker.setLeft(tracker.dp.x + 12); 88 tracker.setTop(tracker.dp.y - 12); 90 91 tracker.setDomLeft(tracker.dp.x + 12); 92 tracker.setDomTop(tracker.dp.y + 12); 89 93 90 94 if (this.isInsideViewport(tracker.vp)) { … … 108 112 vPoint2dPoint: function(vp, p) 109 113 { 110 var width = this.getWidthValue(); 111 var height = this.getHeightValue(); 114 var dims = this.getInnerSize(); 115 var width = dims.width; 116 var height = dims.height; 112 117 113 118 p.x = Math.round(width*vp.x); … … 117 122 dPoint2vPoint: function(dp, vp) 118 123 { 119 var width = this.getWidthValue(); 120 var height = this.getHeightValue(); 124 var dims = this.getInnerSize(); 125 var width = dims.width; 126 var height = dims.height; 121 127 122 128 vp.x = dp.x/width; … … 149 155 } 150 156 151 p1 = aPoint();152 p2 = aPoint();157 var p1 = aPoint(); 158 var p2 = aPoint(); 153 159 154 160 this.vPoint2dPoint(vp1, p1); … … 165 171 } 166 172 167 p1 = aPoint();168 p2 = aPoint();173 var p1 = aPoint(); 174 var p2 = aPoint(); 169 175 170 176 this.vPoint2dPoint(vp1, p1); … … 197 203 } 198 204 199 p = aPoint();205 var p = aPoint(); 200 206 201 207 this.vPoint2dPoint(vp, p); … … 241 247 var wp = aPoint(); 242 248 243 dx = new Array;244 dy = new Array;249 var dx = new Array; 250 var dy = new Array; 245 251 for (var i = 0; i < x.length; i++) { 246 252 wp.x = x[i]; … … 307 313 308 314 var halign, valign; 315 var wmin, wmax; 309 316 if (axis == "x") { 310 317 wmin = w.xmin; … … 331 338 var nticks = (nmajor - 1)*2 + 1; 332 339 333 wstart = Math.floor(wmin/tmajor)*tmajor;340 var wstart = Math.floor(wmin/tmajor)*tmajor; 334 341 335 342 for (var i = 0; i < nticks; i++) {
Note: See TracChangeset
for help on using the changeset viewer.