JavaScript DHTML/SmartClient/Tree
Содержание
Add node to tree
<!--
Isomorphic SmartClient
Copyright(c) 1998 and beyond Isomorphic Software, Inc.
"SmartClient" is a trademark of Isomorphic Software, Inc.
All rights reserved.
Open Source License
SmartClient source code, located under the source/ directory, and the resulting assembled modules
in isomorphic/system/modules/, as well as JavaScript and CSS files under the isomorphic/skins directory are
licensed under the terms of the GNU Lesser General Public License, version 3.
The text of the LGPLv3 license is available online at http://www.gnu.org/licenses/lgpl-3.0.html
If your project precludes the use of this license, or if you"d like to support SmartClient LGPL,
we encourage you to buy a commercial license.
Icon Experience Collection
Selected 16x16 icons within the isomorphic/skins directory are part of the Icon Experience collection
(http://www.iconexperience.ru) and may be freely used with any SmartClient components without charge,
but may not be used as part of screen designs separate from SmartClient components without a purchase
of a license from Icon Experience. We are working to replace these icons as soon as possible.
All other media found under the isomorphic/skins directory may be used under the LGPLv3.
Commercial Licenses
A number of commercial licenses are available for purchase. Please see http://smartclient.ru/license.
Warranty Disclaimer
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General
Public License for more details.
Copyright 2001 and beyond Isomorphic Software, Inc. Last revised July 20, 2008.
-->
<!-- The following code is revised from SmartClient demo code(SmartClient_70rc2_LGPL.zip).-->
<HTML><HEAD>
<SCRIPT>var isomorphicDir="isomorphic/";</SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Core.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Foundation.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Containers.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Grids.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Forms.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_DataBinding.js></SCRIPT>
<SCRIPT SRC=isomorphic/skins/SmartClient/load_skin.js></SCRIPT>
</HEAD><BODY BGCOLOR="papayawhip" MARGINHEIGHT=0 MARGINWIDTH=0 LEFTMARGIN=0 TOPMARGIN=0>
<TABLE WIDTH=100% CELLSPACING=0 CELLPADDING=5 BORDER=0><TR><TD CLASS=pageHeader BGCOLOR=WHITE>
TreeGrid initialization example
</TD><TD CLASS=pageHeader ALIGN=RIGHT BGCOLOR=WHITE>
Isomorphic SmartClient
</TD></TR></TABLE><TABLE WIDTH=100% CELLSPACING=0 CELLPADDING=0 BORDER=0><TR>
<TD BGCOLOR=336666><IMG SRC=images/blank.gif WIDTH=1 HEIGHT=4></TD></TR></TABLE>
<!--------------------------
Example code starts here
---------------------------->
<SCRIPT>
Tree.create({
ID:"animalTree",
root:
{name:"Zoo", children:[
{name:"Aquarium", children:[
{name:"Salt Water", children:[
{name:"Bottlenose Dolphin", quantity:5, scientificName:"Tursiops truncatus"},
{name:"Giant Pacific Octopus", quantity:1, scientificName:"Octopus dofleini"}
]},
{name:"Fresh Water", children:[
{name:"Freshwater Stingray", quantity:7, scientificName:"Potamotrygen motoro"}
]}
]},
{name:"Reptile House", children:[
{name:"Lizard House", children:[
{name:"Cuban Ground Iguana", quantity:29, scientificName:"Cyclura nubila nubila"},
{name:"Desert Iguana", quantity:14, scientificName:"Dipsosaurus dorsalis"},
{name:"Marbled Salamander", quantity:6, scientificName:"Ambystoma opacum"}
]},
{name:"Snake House", children:[
{name:"Indian Rock Python", quantity:1, scientificName:"Python molurus molurus"}
]}
]},
{name:"Monkey House", children:[
{name:"Howler Monkey", quantity:15, scientificName:"Alouatta spp."},
{name:"Orangutan", quantity:7, scientificName:"Pongo pygmaeus"},
{name:"Guinea Baboon", quantity:3, scientificName:"Papio papio"}
]},
{name:"Lion Enclosure", children:[
{name:"Lion", quantity:12, scientificName:"Panthera leo"}
]}
]}
});
var saltWaterTank = animalTree.find("Zoo/Aquarium/Salt Water");
var orangutanNode = animalTree.find("Zoo/Monkey House/Orangutan");
// Show the contents of some nodes
animalTree.openFolder(animalTree.find("Zoo/Aquarium"));
animalTree.openFolder(animalTree.find("Zoo/Aquarium/Salt Water"));
animalTree.openFolder(animalTree.find("Zoo/Monkey House"));
var animalFields = [
{name:"name", title:"Animal Name", width:250},
{name:"scientificName", title:"Scientific Name", width:150},
{name:"quantity", title:"Number", width:50}
];
TreeGrid.create({
ID:"animalViewer",
data:animalTree,
fields:animalFields,
left:50,
top:50,
width:500,
height:275,
canDragRecordsOut:true,
canAcceptDroppedRecords:true
});
Button.create({
left:50,
top:400,
width:150,
title:"Add Nurse Shark",
click:"animalTree.add({name:"Nurse Shark", quantity:1, scientificName:"Ginglymostoma cirratum"}, saltWaterTank); this.disable()"
});
</SCRIPT>
</BODY>
</HTML>
Animated tree: node collapse and open
<!--
Isomorphic SmartClient
Copyright(c) 1998 and beyond Isomorphic Software, Inc.
"SmartClient" is a trademark of Isomorphic Software, Inc.
All rights reserved.
Open Source License
SmartClient source code, located under the source/ directory, and the resulting assembled modules
in isomorphic/system/modules/, as well as JavaScript and CSS files under the isomorphic/skins directory are
licensed under the terms of the GNU Lesser General Public License, version 3.
The text of the LGPLv3 license is available online at http://www.gnu.org/licenses/lgpl-3.0.html
If your project precludes the use of this license, or if you"d like to support SmartClient LGPL,
we encourage you to buy a commercial license.
Icon Experience Collection
Selected 16x16 icons within the isomorphic/skins directory are part of the Icon Experience collection
(http://www.iconexperience.ru) and may be freely used with any SmartClient components without charge,
but may not be used as part of screen designs separate from SmartClient components without a purchase
of a license from Icon Experience. We are working to replace these icons as soon as possible.
All other media found under the isomorphic/skins directory may be used under the LGPLv3.
Commercial Licenses
A number of commercial licenses are available for purchase. Please see http://smartclient.ru/license.
Warranty Disclaimer
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General
Public License for more details.
Copyright 2001 and beyond Isomorphic Software, Inc. Last revised July 20, 2008.
-->
<!-- The following code is revised from SmartClient demo code(SmartClient_70rc2_LGPL.zip).-->
<HTML><HEAD>
<SCRIPT>var isomorphicDir="isomorphic/";</SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Core.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Foundation.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Containers.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Grids.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Forms.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_DataBinding.js></SCRIPT>
<SCRIPT SRC=isomorphic/skins/standard/load_skin.js></SCRIPT>
</HEAD><BODY BGCOLOR="silver">
<SCRIPT>
isc.Tree.create({
ID:"animalTree",
root:
{name:"Zoo", children:[
{name:"Aquarium", children:[
{name:"Salt Water", children:[
{name:"Bottlenose Dolphin"},
{name:"Giant Pacific Octopus"}
]},
{name:"Fresh Water", children:[
{name:"Freshwater Stingray"}
]}
]},
{name:"Reptile House", children:[
{name:"Lizard House", children:[
{name:"Cuban Ground Iguana"},
{name:"Desert Iguana"},
{name:"Marbled Salamander"}
]},
{name:"Snake House", children:[
{name:"Indian Rock Python"}
]},
{name:"Monkey House", children:[
{name:"Howler Monkey"},
{name:"Orangutan"},
{name:"Guinea Baboon"}
]},
{name:"Lion Enclosure", children:[
{name:"Lion"}
]}
]}
]}
});
isc.TreeGrid.create({
ID:"animalTreeGrid",
data:animalTree,
width: 300,
height:300,
animateFolders: true,
animateFolderSpeed: 100
});
</SCRIPT>
</BODY>
</HTML>
Close all tree nodes
<!--
Isomorphic SmartClient
Copyright(c) 1998 and beyond Isomorphic Software, Inc.
"SmartClient" is a trademark of Isomorphic Software, Inc.
All rights reserved.
Open Source License
SmartClient source code, located under the source/ directory, and the resulting assembled modules
in isomorphic/system/modules/, as well as JavaScript and CSS files under the isomorphic/skins directory are
licensed under the terms of the GNU Lesser General Public License, version 3.
The text of the LGPLv3 license is available online at http://www.gnu.org/licenses/lgpl-3.0.html
If your project precludes the use of this license, or if you"d like to support SmartClient LGPL,
we encourage you to buy a commercial license.
Icon Experience Collection
Selected 16x16 icons within the isomorphic/skins directory are part of the Icon Experience collection
(http://www.iconexperience.ru) and may be freely used with any SmartClient components without charge,
but may not be used as part of screen designs separate from SmartClient components without a purchase
of a license from Icon Experience. We are working to replace these icons as soon as possible.
All other media found under the isomorphic/skins directory may be used under the LGPLv3.
Commercial Licenses
A number of commercial licenses are available for purchase. Please see http://smartclient.ru/license.
Warranty Disclaimer
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General
Public License for more details.
Copyright 2001 and beyond Isomorphic Software, Inc. Last revised July 20, 2008.
-->
<!-- The following code is revised from SmartClient demo code(SmartClient_70rc2_LGPL.zip).-->
<HTML><HEAD>
<SCRIPT>var isomorphicDir="isomorphic/";</SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Core.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Foundation.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Containers.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Grids.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Forms.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_DataBinding.js></SCRIPT>
<SCRIPT SRC=isomorphic/skins/SmartClient/load_skin.js></SCRIPT>
</HEAD><BODY BGCOLOR="papayawhip" MARGINHEIGHT=0 MARGINWIDTH=0 LEFTMARGIN=0 TOPMARGIN=0>
<TABLE WIDTH=100% CELLSPACING=0 CELLPADDING=5 BORDER=0><TR><TD CLASS=pageHeader BGCOLOR=WHITE>
TreeGrid initialization example
</TD><TD CLASS=pageHeader ALIGN=RIGHT BGCOLOR=WHITE>
Isomorphic SmartClient
</TD></TR></TABLE><TABLE WIDTH=100% CELLSPACING=0 CELLPADDING=0 BORDER=0><TR>
<TD BGCOLOR=336666><IMG SRC=images/blank.gif WIDTH=1 HEIGHT=4></TD></TR></TABLE>
<!--------------------------
Example code starts here
---------------------------->
<SCRIPT>
Tree.create({
ID:"animalTree",
root:
{name:"Zoo", children:[
{name:"Aquarium", children:[
{name:"Salt Water", children:[
{name:"Bottlenose Dolphin", quantity:5, scientificName:"Tursiops truncatus"},
{name:"Giant Pacific Octopus", quantity:1, scientificName:"Octopus dofleini"}
]},
{name:"Fresh Water", children:[
{name:"Freshwater Stingray", quantity:7, scientificName:"Potamotrygen motoro"}
]}
]},
{name:"Reptile House", children:[
{name:"Lizard House", children:[
{name:"Cuban Ground Iguana", quantity:29, scientificName:"Cyclura nubila nubila"},
{name:"Desert Iguana", quantity:14, scientificName:"Dipsosaurus dorsalis"},
{name:"Marbled Salamander", quantity:6, scientificName:"Ambystoma opacum"}
]},
{name:"Snake House", children:[
{name:"Indian Rock Python", quantity:1, scientificName:"Python molurus molurus"}
]}
]},
{name:"Monkey House", children:[
{name:"Howler Monkey", quantity:15, scientificName:"Alouatta spp."},
{name:"Orangutan", quantity:7, scientificName:"Pongo pygmaeus"},
{name:"Guinea Baboon", quantity:3, scientificName:"Papio papio"}
]},
{name:"Lion Enclosure", children:[
{name:"Lion", quantity:12, scientificName:"Panthera leo"}
]}
]}
});
var saltWaterTank = animalTree.find("Zoo/Aquarium/Salt Water");
var orangutanNode = animalTree.find("Zoo/Monkey House/Orangutan");
// Show the contents of some nodes
animalTree.openFolder(animalTree.find("Zoo/Aquarium"));
animalTree.openFolder(animalTree.find("Zoo/Aquarium/Salt Water"));
animalTree.openFolder(animalTree.find("Zoo/Monkey House"));
var animalFields = [
{name:"name", title:"Animal Name", width:250},
{name:"scientificName", title:"Scientific Name", width:150},
{name:"quantity", title:"Number", width:50}
];
TreeGrid.create({
ID:"animalViewer",
data:animalTree,
fields:animalFields,
left:50,
top:50,
width:500,
height:275,
canDragRecordsOut:true,
canAcceptDroppedRecords:true
});
Button.create({
left:300,
top:450,
width:150,
title:"Close all nodes",
click:"animalTree.closeAll()"
});
</SCRIPT>
</BODY>
</HTML>
Customize tree skin
<!--
Isomorphic SmartClient
Copyright(c) 1998 and beyond Isomorphic Software, Inc.
"SmartClient" is a trademark of Isomorphic Software, Inc.
All rights reserved.
Open Source License
SmartClient source code, located under the source/ directory, and the resulting assembled modules
in isomorphic/system/modules/, as well as JavaScript and CSS files under the isomorphic/skins directory are
licensed under the terms of the GNU Lesser General Public License, version 3.
The text of the LGPLv3 license is available online at http://www.gnu.org/licenses/lgpl-3.0.html
If your project precludes the use of this license, or if you"d like to support SmartClient LGPL,
we encourage you to buy a commercial license.
Icon Experience Collection
Selected 16x16 icons within the isomorphic/skins directory are part of the Icon Experience collection
(http://www.iconexperience.ru) and may be freely used with any SmartClient components without charge,
but may not be used as part of screen designs separate from SmartClient components without a purchase
of a license from Icon Experience. We are working to replace these icons as soon as possible.
All other media found under the isomorphic/skins directory may be used under the LGPLv3.
Commercial Licenses
A number of commercial licenses are available for purchase. Please see http://smartclient.ru/license.
Warranty Disclaimer
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General
Public License for more details.
Copyright 2001 and beyond Isomorphic Software, Inc. Last revised July 20, 2008.
-->
<!-- The following code is revised from SmartClient demo code(SmartClient_70rc2_LGPL.zip).-->
<HTML><HEAD>
<SCRIPT>var isomorphicDir="isomorphic/";</SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Core.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Foundation.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Containers.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Grids.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Forms.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_DataBinding.js></SCRIPT>
<SCRIPT SRC=isomorphic/skins/SmartClient/load_skin.js></SCRIPT>
</HEAD><BODY BGCOLOR="papayawhip" MARGINHEIGHT=0 MARGINWIDTH=0 LEFTMARGIN=0 TOPMARGIN=0>
<TABLE WIDTH=100% CELLSPACING=0 CELLPADDING=5 BORDER=0><TR><TD CLASS=pageHeader BGCOLOR=WHITE>
Custom skin example
</TD><TD CLASS=pageHeader ALIGN=RIGHT BGCOLOR=WHITE>
Isomorphic SmartClient
</TD></TR></TABLE><TABLE WIDTH=100% CELLSPACING=0 CELLPADDING=0 BORDER=0><TR>
<TD BGCOLOR=336666><IMG SRC=images/blank.gif WIDTH=1 HEIGHT=4></TD></TR></TABLE>
<!--------------------------
Example code starts here
---------------------------->
<SCRIPT>
Tree.create({
ID:"animalTree",
root:
{name:"Zoo/", children:[
{name:"Aquarium/", children:[
{name:"Salt Water/", children:[
{name:"Bottlenose Dolphin", quantity:5, scientificName:"Tursiops truncatus"},
{name:"Giant Pacific Octopus", quantity:1, scientificName:"Octopus dofleini"}
]},
{name:"Fresh Water/", children:[
{name:"Freshwater Stingray", quantity:7, scientificName:"Potamotrygen motoro"}
]}
]},
{name:"Reptile House/", children:[
{name:"Lizard House/", children:[
{name:"Cuban Ground Iguana", quantity:29, scientificName:"Cyclura nubila nubila"},
{name:"Desert Iguana", quantity:14, scientificName:"Dipsosaurus dorsalis"},
{name:"Marbled Salamander", quantity:6, scientificName:"Ambystoma opacum"}
]},
{name:"Snake House/", children:[
{name:"Indian Rock Python", quantity:1, scientificName:"Python molurus molurus"}
]}
]},
{name:"Monkey House/", children:[
{name:"Howler Monkey", quantity:15, scientificName:"Alouatta spp."},
{name:"Orangutan", quantity:7, scientificName:"Pongo pygmaeus"},
{name:"Guinea Baboon", quantity:3, scientificName:"Papio papio"}
]},
{name:"Lion Enclosure/", children:[
{name:"Lion", quantity:12, scientificName:"Panthera leo"}
]}
]}
});
// Show the contents of some nodes
animalTree.openFolder(animalTree.find("Zoo/Aquarium/"));
animalTree.openFolder(animalTree.find("Zoo/Aquarium/Salt Water/"));
animalTree.openFolder(animalTree.find("Zoo/Monkey House/"));
animalTree.openFolder(animalTree.find("Zoo/Reptile House/"));
TreeGrid.create({
ID:"animalViewer",
data:animalTree,
left:50,
top:50,
width:300,
height:250,
showAllRecords:true,
canDragRecordsOut:true,
canAcceptDroppedRecords:true
});
</SCRIPT>
</BODY>
</HTML>
Drag and drop tree node
<!--
Isomorphic SmartClient
Copyright(c) 1998 and beyond Isomorphic Software, Inc.
"SmartClient" is a trademark of Isomorphic Software, Inc.
All rights reserved.
Open Source License
SmartClient source code, located under the source/ directory, and the resulting assembled modules
in isomorphic/system/modules/, as well as JavaScript and CSS files under the isomorphic/skins directory are
licensed under the terms of the GNU Lesser General Public License, version 3.
The text of the LGPLv3 license is available online at http://www.gnu.org/licenses/lgpl-3.0.html
If your project precludes the use of this license, or if you"d like to support SmartClient LGPL,
we encourage you to buy a commercial license.
Icon Experience Collection
Selected 16x16 icons within the isomorphic/skins directory are part of the Icon Experience collection
(http://www.iconexperience.ru) and may be freely used with any SmartClient components without charge,
but may not be used as part of screen designs separate from SmartClient components without a purchase
of a license from Icon Experience. We are working to replace these icons as soon as possible.
All other media found under the isomorphic/skins directory may be used under the LGPLv3.
Commercial Licenses
A number of commercial licenses are available for purchase. Please see http://smartclient.ru/license.
Warranty Disclaimer
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General
Public License for more details.
Copyright 2001 and beyond Isomorphic Software, Inc. Last revised July 20, 2008.
-->
<!-- The following code is revised from SmartClient demo code(SmartClient_70rc2_LGPL.zip).-->
<HEAD>
<SCRIPT>var isomorphicDir="isomorphic/";</SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Core.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Foundation.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Containers.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Grids.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Forms.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_DataBinding.js></SCRIPT>
<SCRIPT SRC=isomorphic/skins/standard/load_skin.js></SCRIPT>
</HEAD><BODY BGCOLOR="silver">
<SCRIPT>
isc.Tree.create({ID:"partsTree1", root:{children:[
{name:"Bin 1", children:[
{name:"Blue Cube",},
{name:"Yellow Cube", },
{name:"Green Cube", }
]},
{name:"Bin 2", children:[
{name:"Blue Piece", },
{name:"Yellow Piece", },
{name:"Green Piece", icon:"http://www.wbex.ru/style/logo.png"}
]}
]}})
isc.Tree.create({ID:"partsTree2", root:{children:[
{name:"Bin 3", children:[
{name:"Blue Part",},
{name:"Green Part",},
{name:"Yellow Part",}
]}
]}})
partsTree1.openAll();
partsTree2.openAll();
isc.defineClass("PartsTreeGrid","TreeGrid").addProperties({
width:200, height:200,
showEdges:true, border:"0px", bodyStyleName:"normal",
alternateRecordStyles:true, showHeader:false, leaveScrollbarGap:false,
emptyMessage:"<br>Drag & drop parts here",
manyItemsImage:"cubes_all.png",
appImgDir:"pieces/16/"
})
isc.HStack.create({membersMargin:10, height:160, members:[
isc.PartsTreeGrid.create({
ID:"myTree1",
data: partsTree1,
canReorderRecords: true,
canAcceptDroppedRecords: true,
canDragRecordsOut: true,
dragDataAction: "move"
}),
isc.VStack.create({width:32, height:74, layoutAlign:"center", membersMargin:10, members:[
isc.Img.create({src:"icons/32/arrow_right.png", width:32, height:32,
click:"myTree2.transferSelectedData(myTree1)"
}),
isc.Img.create({src:"icons/32/arrow_left.png", width:32, height:32,
click:"myTree1.transferSelectedData(myTree2)"
})
]}),
isc.PartsTreeGrid.create({
ID:"myTree2",
left:250,
data: partsTree2,
canDragRecordsOut: true,
canAcceptDroppedRecords: true,
canReorderRecords: true
})
]})
</SCRIPT>
</BODY>
Open all tree nodes
<!--
Isomorphic SmartClient
Copyright(c) 1998 and beyond Isomorphic Software, Inc.
"SmartClient" is a trademark of Isomorphic Software, Inc.
All rights reserved.
Open Source License
SmartClient source code, located under the source/ directory, and the resulting assembled modules
in isomorphic/system/modules/, as well as JavaScript and CSS files under the isomorphic/skins directory are
licensed under the terms of the GNU Lesser General Public License, version 3.
The text of the LGPLv3 license is available online at http://www.gnu.org/licenses/lgpl-3.0.html
If your project precludes the use of this license, or if you"d like to support SmartClient LGPL,
we encourage you to buy a commercial license.
Icon Experience Collection
Selected 16x16 icons within the isomorphic/skins directory are part of the Icon Experience collection
(http://www.iconexperience.ru) and may be freely used with any SmartClient components without charge,
but may not be used as part of screen designs separate from SmartClient components without a purchase
of a license from Icon Experience. We are working to replace these icons as soon as possible.
All other media found under the isomorphic/skins directory may be used under the LGPLv3.
Commercial Licenses
A number of commercial licenses are available for purchase. Please see http://smartclient.ru/license.
Warranty Disclaimer
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General
Public License for more details.
Copyright 2001 and beyond Isomorphic Software, Inc. Last revised July 20, 2008.
-->
<!-- The following code is revised from SmartClient demo code(SmartClient_70rc2_LGPL.zip).-->
<HTML><HEAD>
<SCRIPT>var isomorphicDir="isomorphic/";</SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Core.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Foundation.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Containers.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Grids.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Forms.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_DataBinding.js></SCRIPT>
<SCRIPT SRC=isomorphic/skins/SmartClient/load_skin.js></SCRIPT>
</HEAD><BODY BGCOLOR="papayawhip" MARGINHEIGHT=0 MARGINWIDTH=0 LEFTMARGIN=0 TOPMARGIN=0>
<TABLE WIDTH=100% CELLSPACING=0 CELLPADDING=5 BORDER=0><TR><TD CLASS=pageHeader BGCOLOR=WHITE>
TreeGrid initialization example
</TD><TD CLASS=pageHeader ALIGN=RIGHT BGCOLOR=WHITE>
Isomorphic SmartClient
</TD></TR></TABLE><TABLE WIDTH=100% CELLSPACING=0 CELLPADDING=0 BORDER=0><TR>
<TD BGCOLOR=336666><IMG SRC=images/blank.gif WIDTH=1 HEIGHT=4></TD></TR></TABLE>
<!--------------------------
Example code starts here
---------------------------->
<SCRIPT>
Tree.create({
ID:"animalTree",
root:
{name:"Zoo", children:[
{name:"Aquarium", children:[
{name:"Salt Water", children:[
{name:"Bottlenose Dolphin", quantity:5, scientificName:"Tursiops truncatus"},
{name:"Giant Pacific Octopus", quantity:1, scientificName:"Octopus dofleini"}
]},
{name:"Fresh Water", children:[
{name:"Freshwater Stingray", quantity:7, scientificName:"Potamotrygen motoro"}
]}
]},
{name:"Reptile House", children:[
{name:"Lizard House", children:[
{name:"Cuban Ground Iguana", quantity:29, scientificName:"Cyclura nubila nubila"},
{name:"Desert Iguana", quantity:14, scientificName:"Dipsosaurus dorsalis"},
{name:"Marbled Salamander", quantity:6, scientificName:"Ambystoma opacum"}
]},
{name:"Snake House", children:[
{name:"Indian Rock Python", quantity:1, scientificName:"Python molurus molurus"}
]}
]},
{name:"Monkey House", children:[
{name:"Howler Monkey", quantity:15, scientificName:"Alouatta spp."},
{name:"Orangutan", quantity:7, scientificName:"Pongo pygmaeus"},
{name:"Guinea Baboon", quantity:3, scientificName:"Papio papio"}
]},
{name:"Lion Enclosure", children:[
{name:"Lion", quantity:12, scientificName:"Panthera leo"}
]}
]}
});
var saltWaterTank = animalTree.find("Zoo/Aquarium/Salt Water");
var orangutanNode = animalTree.find("Zoo/Monkey House/Orangutan");
// Show the contents of some nodes
animalTree.openFolder(animalTree.find("Zoo/Aquarium"));
animalTree.openFolder(animalTree.find("Zoo/Aquarium/Salt Water"));
animalTree.openFolder(animalTree.find("Zoo/Monkey House"));
var animalFields = [
{name:"name", title:"Animal Name", width:250},
{name:"scientificName", title:"Scientific Name", width:150},
{name:"quantity", title:"Number", width:50}
];
TreeGrid.create({
ID:"animalViewer",
data:animalTree,
fields:animalFields,
left:50,
top:50,
width:500,
height:275,
canDragRecordsOut:true,
canAcceptDroppedRecords:true
});
Button.create({
left:50,
top:450,
width:150,
title:"Open all nodes",
click:"animalTree.openAll()"
});
</SCRIPT>
</BODY>
</HTML>
Remove node from tree
<!--
Isomorphic SmartClient
Copyright(c) 1998 and beyond Isomorphic Software, Inc.
"SmartClient" is a trademark of Isomorphic Software, Inc.
All rights reserved.
Open Source License
SmartClient source code, located under the source/ directory, and the resulting assembled modules
in isomorphic/system/modules/, as well as JavaScript and CSS files under the isomorphic/skins directory are
licensed under the terms of the GNU Lesser General Public License, version 3.
The text of the LGPLv3 license is available online at http://www.gnu.org/licenses/lgpl-3.0.html
If your project precludes the use of this license, or if you"d like to support SmartClient LGPL,
we encourage you to buy a commercial license.
Icon Experience Collection
Selected 16x16 icons within the isomorphic/skins directory are part of the Icon Experience collection
(http://www.iconexperience.ru) and may be freely used with any SmartClient components without charge,
but may not be used as part of screen designs separate from SmartClient components without a purchase
of a license from Icon Experience. We are working to replace these icons as soon as possible.
All other media found under the isomorphic/skins directory may be used under the LGPLv3.
Commercial Licenses
A number of commercial licenses are available for purchase. Please see http://smartclient.ru/license.
Warranty Disclaimer
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General
Public License for more details.
Copyright 2001 and beyond Isomorphic Software, Inc. Last revised July 20, 2008.
-->
<!-- The following code is revised from SmartClient demo code(SmartClient_70rc2_LGPL.zip).-->
<HTML><HEAD>
<SCRIPT>var isomorphicDir="isomorphic/";</SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Core.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Foundation.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Containers.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Grids.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_Forms.js></SCRIPT>
<SCRIPT SRC=isomorphic/system/modules/ISC_DataBinding.js></SCRIPT>
<SCRIPT SRC=isomorphic/skins/SmartClient/load_skin.js></SCRIPT>
</HEAD><BODY BGCOLOR="papayawhip" MARGINHEIGHT=0 MARGINWIDTH=0 LEFTMARGIN=0 TOPMARGIN=0>
<TABLE WIDTH=100% CELLSPACING=0 CELLPADDING=5 BORDER=0><TR><TD CLASS=pageHeader BGCOLOR=WHITE>
TreeGrid initialization example
</TD><TD CLASS=pageHeader ALIGN=RIGHT BGCOLOR=WHITE>
Isomorphic SmartClient
</TD></TR></TABLE><TABLE WIDTH=100% CELLSPACING=0 CELLPADDING=0 BORDER=0><TR>
<TD BGCOLOR=336666><IMG SRC=images/blank.gif WIDTH=1 HEIGHT=4></TD></TR></TABLE>
<!--------------------------
Example code starts here
---------------------------->
<SCRIPT>
Tree.create({
ID:"animalTree",
root:
{name:"Zoo", children:[
{name:"Aquarium", children:[
{name:"Salt Water", children:[
{name:"Bottlenose Dolphin", quantity:5, scientificName:"Tursiops truncatus"},
{name:"Giant Pacific Octopus", quantity:1, scientificName:"Octopus dofleini"}
]},
{name:"Fresh Water", children:[
{name:"Freshwater Stingray", quantity:7, scientificName:"Potamotrygen motoro"}
]}
]},
{name:"Reptile House", children:[
{name:"Lizard House", children:[
{name:"Cuban Ground Iguana", quantity:29, scientificName:"Cyclura nubila nubila"},
{name:"Desert Iguana", quantity:14, scientificName:"Dipsosaurus dorsalis"},
{name:"Marbled Salamander", quantity:6, scientificName:"Ambystoma opacum"}
]},
{name:"Snake House", children:[
{name:"Indian Rock Python", quantity:1, scientificName:"Python molurus molurus"}
]}
]},
{name:"Monkey House", children:[
{name:"Howler Monkey", quantity:15, scientificName:"Alouatta spp."},
{name:"Orangutan", quantity:7, scientificName:"Pongo pygmaeus"},
{name:"Guinea Baboon", quantity:3, scientificName:"Papio papio"}
]},
{name:"Lion Enclosure", children:[
{name:"Lion", quantity:12, scientificName:"Panthera leo"}
]}
]}
});
var saltWaterTank = animalTree.find("Zoo/Aquarium/Salt Water");
var orangutanNode = animalTree.find("Zoo/Monkey House/Orangutan");
// Show the contents of some nodes
animalTree.openFolder(animalTree.find("Zoo/Aquarium"));
animalTree.openFolder(animalTree.find("Zoo/Aquarium/Salt Water"));
animalTree.openFolder(animalTree.find("Zoo/Monkey House"));
var animalFields = [
{name:"name", title:"Animal Name", width:250},
{name:"scientificName", title:"Scientific Name", width:150},
{name:"quantity", title:"Number", width:50}
];
TreeGrid.create({
ID:"animalViewer",
data:animalTree,
fields:animalFields,
left:50,
top:50,
width:500,
height:275,
canDragRecordsOut:true,
canAcceptDroppedRecords:true
});
Button.create({
left:300,
top:400,
width:150,
title:"Remove Orangutan",
click:"animalTree.remove(orangutanNode); this.disable()"
});
</SCRIPT>
</BODY>
</HTML>