Changeset 5948 for trunk/gui/scripts/map.tcl
- Timestamp:
- Dec 16, 2015 1:19:34 PM (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/gui/scripts/map.tcl
r5947 r5948 32 32 public method addLayer { type name paramArray driver driverParamArray {stylesheet {}} {script {}} {selectors {}} } 33 33 public method addViewpoint { name props } 34 public method deleteLayer { layerName } 34 35 public method earthfile {} 36 public method hasLayer { layerName } 35 37 public method hints { args } 36 38 public method isGeocentric {} … … 58 60 private variable _tree ""; # Tree of information about the map. 59 61 private variable _isValid 0; 60 private common _nextLayer 0; # Counter used to generate unique61 # layer names.62 62 private common _nextSelector 0; 63 63 private common _nextViewpoint 0; # Counter used to generate unique … … 147 147 foreach layer [$layers children -type layer] { 148 148 # Unique identifier for layer. 149 set name "layer[incr _nextLayer]" 149 set name [$map element -as id "layers.$layer"] 150 if {[hasLayer $name]} { 151 puts stderr "ERROR: Duplicate layer ID '$name', skipping" 152 continue 153 } 150 154 set child [$_tree insert $parent -label $name] 151 155 set layerType [$layers get $layer.type] … … 153 157 error "invalid layer type \"$layerType\": should be one of [array names _layerTypes]" 154 158 } 155 $_tree set $child "name" $ layer159 $_tree set $child "name" $name 156 160 $_tree set $child "type" $layerType 157 161 foreach key { label description attribution profile srs verticalDatum } { … … 453 457 454 458 itcl::body Rappture::Map::addLayer { type name paramArray driver driverParamArray {stylesheet {}} {script {}} {selectors {}} } { 455 set id "layer[incr _nextLayer]" 459 set id "$name" 460 if {[hasLayer $id]} { 461 error "Layer '$id' already exists" 462 } 456 463 set parent [$_tree findchild root "layers"] 457 464 set child [$_tree insert $parent -label $id] … … 616 623 } 617 624 } 625 return $id 626 } 627 628 itcl::body Rappture::Map::deleteLayer { layerName } { 629 set id [$_tree findchild root->"layers" $layerName] 630 if { $id < 0 } { 631 error "unknown layer \"$layerName\"" 632 } 633 $_tree delete $id 618 634 } 619 635 … … 657 673 } 658 674 return [$_tree get $id] 675 } 676 677 itcl::body Rappture::Map::hasLayer { layerName } { 678 set id [$_tree findchild root->"layers" $layerName] 679 if { $id < 0 } { 680 return 0 681 } else { 682 return 1 683 } 659 684 } 660 685
Note: See TracChangeset
for help on using the changeset viewer.