Revision: 54468
http://brlcad.svn.sourceforge.net/brlcad/?rev=54468&view=rev
Author: bob1961
Date: 2013-02-22 12:28:10 +0000 (Fri, 22 Feb 2013)
Log Message:
-----------
Upgrade Archer's tree view to accommodate the hierarchy associated with the
dsp, ebm, extrude, revolve and vol primitives.
Modified Paths:
--------------
brlcad/trunk/src/tclscripts/archer/ArcherCore.tcl
Modified: brlcad/trunk/src/tclscripts/archer/ArcherCore.tcl
===================================================================
--- brlcad/trunk/src/tclscripts/archer/ArcherCore.tcl 2013-02-22 11:32:54 UTC
(rev 54467)
+++ brlcad/trunk/src/tclscripts/archer/ArcherCore.tcl 2013-02-22 12:28:10 UTC
(rev 54468)
@@ -3901,9 +3901,24 @@
}
fillTreeColumns $cnode $_ctext
- if {!$_flat && $ctype == "comb"} {
- set tree [getTreeFromGData $cgdata]
- set mlist [getTreeMembers $tree]
+ if {!$_flat} {
+ set mlist ""
+ switch -- $ctype {
+ "comb" {
+ set tree [getTreeFromGData $cgdata]
+ set mlist [getTreeMembers $tree]
+ }
+ "dsp" -
+ "ebm" -
+ "vol" {
+ set mlist [$itk_component(ged) get $_ctext file]
+ }
+ "extrude" -
+ "revolve" {
+ set mlist [$itk_component(ged) get $_ctext sk_name]
+ }
+ }
+
if {$mlist != ""} {
removeTreeNodeTag $cnode $TREE_OPENED_TAG
$itk_component(newtree) item $cnode -open false
@@ -4377,7 +4392,13 @@
set cgdata [$itk_component(ged) get $ctext]
set ctype [lindex $cgdata 0]
- if {$ctype == "comb" && [info exists mPNode2CList($cnode)]} {
+ if {($ctype == "comb" ||
+ $ctype == "dsp" ||
+ $ctype == "ebm" ||
+ $ctype == "extrude" ||
+ $ctype == "revolve" ||
+ $ctype == "vol") &&
+ [info exists mPNode2CList($cnode)]} {
# If this node has never been opened ...
if {[addTreeNodeTag $cnode $TREE_OPENED_TAG]} {
# Remove placeholder
@@ -4385,32 +4406,62 @@
$itk_component(newtree) delete $placeholder
unset mPNode2CList($cnode)
- set tree [getTreeFromGData $cgdata]
- foreach gctext [getTreeMembers $tree] {
- if {[catch {$itk_component(ged) get $gctext} gcgdata]} {
- set op [getTreeOp $ctext $gctext]
- set img [getTreeImage $gctext "invalid" $op]
+ switch -- $ctype {
+ "comb" {
+ set tree [getTreeFromGData $cgdata]
+ foreach gctext [getTreeMembers $tree] {
+ if {[catch {$itk_component(ged) get $gctext} gcgdata]} {
+ set op [getTreeOp $ctext $gctext]
+ set img [getTreeImage $gctext "invalid" $op]
+ set gcnode [$itk_component(newtree) insert $cnode
end \
+ -tags $TREE_POPUP_TAG \
+ -text $gctext \
+ -image $img]
+
+ fillTreeColumns $gcnode $gctext
+
+ lappend mText2Node($gctext) [list $gcnode $cnode]
+ set mNode2Text($gcnode) $gctext
+ lappend mPNode2CList($cnode) [list $gctext $gcnode]
+ set mCNode2PList($gcnode) [list $ctext $cnode]
+
+ continue
+ }
+
+ # Add gchild members
+ if {$mEnableListView} {
+ fillTree $cnode $gctext 1 1
+ } else {
+ fillTree $cnode $gctext 0 0
+ }
+ }
+ }
+ "dsp" -
+ "ebm" -
+ "vol" {
+ set gctext [$itk_component(ged) get $ctext file]
set gcnode [$itk_component(newtree) insert $cnode end \
-tags $TREE_POPUP_TAG \
-text $gctext \
- -image $img]
-
+ -image $mImage_other]
fillTreeColumns $gcnode $gctext
lappend mText2Node($gctext) [list $gcnode $cnode]
set mNode2Text($gcnode) $gctext
lappend mPNode2CList($cnode) [list $gctext $gcnode]
set mCNode2PList($gcnode) [list $ctext $cnode]
-
- continue
}
+ "extrude" -
+ "revolve" {
+ set gctext [$itk_component(ged) get $ctext sk_name]
- # Add gchild members
- if {$mEnableListView} {
- fillTree $cnode $gctext 1 1
- } else {
- fillTree $cnode $gctext 0 0
+ # Add gchild members
+ if {$mEnableListView} {
+ fillTree $cnode $gctext 1 1
+ } else {
+ fillTree $cnode $gctext 0 0
+ }
}
}
}
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_d2d_feb
_______________________________________________
BRL-CAD Source Commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/brlcad-commits