summaryrefslogtreecommitdiffstats
path: root/ds9/library
diff options
context:
space:
mode:
authorWilliam Joye <wjoye@cfa.harvard.edu>2019-07-21 19:45:28 (GMT)
committerWilliam Joye <wjoye@cfa.harvard.edu>2019-07-21 19:45:28 (GMT)
commit6fa87fd9727fd1df8e1e294936a06daeaa68486e (patch)
treef363fd7fe99b09f280a8ef0788e2a0a6227d3572 /ds9/library
parentdbf954dbfeeafc4423ac2951c6afe5a02881e502 (diff)
downloadblt-6fa87fd9727fd1df8e1e294936a06daeaa68486e.zip
blt-6fa87fd9727fd1df8e1e294936a06daeaa68486e.tar.gz
blt-6fa87fd9727fd1df8e1e294936a06daeaa68486e.tar.bz2
support multiple graphs per plot
Diffstat (limited to 'ds9/library')
-rw-r--r--ds9/library/plotbar.tcl2
-rw-r--r--ds9/library/plotdialog.tcl81
-rw-r--r--ds9/library/plotline.tcl70
-rw-r--r--ds9/library/plotscatter.tcl70
-rw-r--r--ds9/library/util.tcl5
5 files changed, 142 insertions, 86 deletions
diff --git a/ds9/library/plotbar.tcl b/ds9/library/plotbar.tcl
index aa7ac5c..4c05ec3 100644
--- a/ds9/library/plotbar.tcl
+++ b/ds9/library/plotbar.tcl
@@ -76,7 +76,7 @@ proc PlotBarMenus {varname} {
$var(mb).databar add command -label "[msgcat::mc {Name}]..." \
-command [list DatasetNameDialog $varname]
- PlotColorMenu $var(mb).databar.color $varname graph,color \
+ PlotColorMenu $var(mb).databar.color $varname graph,ds,color \
[list PlotBarUpdateElement $varname]
# Relief
diff --git a/ds9/library/plotdialog.tcl b/ds9/library/plotdialog.tcl
index 0b4897a..878adfc 100644
--- a/ds9/library/plotdialog.tcl
+++ b/ds9/library/plotdialog.tcl
@@ -543,87 +543,6 @@ proc PlotLineShapeMenu {which var} {
-variable $var -value arrow
}
-proc PlotShapeMenu {varname which} {
- upvar #0 $varname var
- global $varname
-
- # Shape
- menu $var(mb).$which.shape
- $var(mb).$which.shape add radiobutton \
- -label [msgcat::mc {None}] \
- -variable ${varname}(graph,ds,shape,symbol) -value none \
- -command [list $var(graph,proc,updateelement) $varname]
- $var(mb).$which.shape add radiobutton \
- -label [msgcat::mc {Circle}] \
- -variable ${varname}(graph,ds,shape,symbol) -value circle \
- -command [list $var(graph,proc,updateelement) $varname]
- $var(mb).$which.shape add radiobutton \
- -label [msgcat::mc {Square}] \
- -variable ${varname}(graph,ds,shape,symbol) -value square \
- -command [list $var(graph,proc,updateelement) $varname]
- $var(mb).$which.shape add radiobutton \
- -label [msgcat::mc {Diamond}] \
- -variable ${varname}(graph,ds,shape,symbol) -value diamond \
- -command [list $var(graph,proc,updateelement) $varname]
- $var(mb).$which.shape add radiobutton \
- -label [msgcat::mc {Plus}] \
- -variable ${varname}(graph,ds,shape,symbol) -value plus \
- -command [list $var(graph,proc,updateelement) $varname]
- $var(mb).$which.shape add radiobutton \
- -label [msgcat::mc {Cross}] \
- -variable ${varname}(graph,ds,shape,symbol) -value cross \
- -command [list $var(graph,proc,updateelement) $varname]
- $var(mb).$which.shape add radiobutton \
- -label [msgcat::mc {Simple Plus}] \
- -variable ${varname}(graph,ds,shape,symbol) -value splus \
- -command [list $var(graph,proc,updateelement) $varname]
- $var(mb).$which.shape add radiobutton \
- -label [msgcat::mc {Simple Cross}] \
- -variable ${varname}(graph,ds,shape,symbol) -value scross \
- -command [list $var(graph,proc,updateelement) $varname]
- $var(mb).$which.shape add radiobutton \
- -label [msgcat::mc {Triangle}] \
- -variable ${varname}(graph,ds,shape,symbol) -value triangle \
- -command [list $var(graph,proc,updateelement) $varname]
- $var(mb).$which.shape add radiobutton \
- -label [msgcat::mc {Arrow}] \
- -variable ${varname}(graph,ds,shape,symbol) -value arrow \
- -command [list $var(graph,proc,updateelement) $varname]
- $var(mb).$which.shape add separator
- $var(mb).$which.shape add checkbutton \
- -label [msgcat::mc {Fill}] \
- -variable ${varname}(graph,ds,shape,fill) \
- -command [list $var(graph,proc,updateelement) $varname]
- $var(mb).$which.shape add cascade -label [msgcat::mc {Color}] \
- -menu $var(mb).$which.shape.color
-
- PlotColorMenu $var(mb).$which.shape.color $varname graph,ds,shape,color \
- [list $var(graph,proc,updateelement) $varname]
-}
-
-proc PlotErrorMenu {varname which} {
- upvar #0 $varname var
- global $varname
-
- menu $var(mb).$which.error
- $var(mb).$which.error add checkbutton -label [msgcat::mc {Show}] \
- -variable ${varname}(graph,ds,error) \
- -command [list $var(proc,updateelement) $varname]
- $var(mb).$which.error add checkbutton -label [msgcat::mc {Cap}] \
- -variable ${varname}(graph,ds,error,cap) \
- -command [list $var(proc,updateelement) $varname]
- $var(mb).$which.error add separator
- $var(mb).$which.error add cascade -label [msgcat::mc {Color}] \
- -menu $var(mb).$which.error.color
- $var(mb).$which.error add cascade -label [msgcat::mc {Width}] \
- -menu $var(mb).$which.error.width
-
- PlotColorMenu $var(mb).$which.error.color $varname graph,ds,error,color \
- [list $var(proc,updateelement) $varname]
- WidthDashMenu $var(mb).$which.error.width $varname graph,ds,error,width {} \
- [list $var(proc,updateelement) $varname] {}
-}
-
proc PlotExportDialog {varname format} {
upvar #0 $varname var
global $varname
diff --git a/ds9/library/plotline.tcl b/ds9/library/plotline.tcl
index d8bc422..e275332 100644
--- a/ds9/library/plotline.tcl
+++ b/ds9/library/plotline.tcl
@@ -83,7 +83,57 @@ proc PlotLineMenus {varname} {
-command [list DatasetNameDialog $varname]
# Shape
- PlotShapeMenu $varname dataline
+ menu $var(mb).dataline.shape
+ $var(mb).dataline.shape add radiobutton \
+ -label [msgcat::mc {None}] \
+ -variable ${varname}(graph,ds,shape,symbol) -value none \
+ -command [list PlotLineUpdateElement $varname]
+ $var(mb).dataline.shape add radiobutton \
+ -label [msgcat::mc {Circle}] \
+ -variable ${varname}(graph,ds,shape,symbol) -value circle \
+ -command [list PlotLineUpdateElement $varname]
+ $var(mb).dataline.shape add radiobutton \
+ -label [msgcat::mc {Square}] \
+ -variable ${varname}(graph,ds,shape,symbol) -value square \
+ -command [list PlotLineUpdateElement $varname]
+ $var(mb).dataline.shape add radiobutton \
+ -label [msgcat::mc {Diamond}] \
+ -variable ${varname}(graph,ds,shape,symbol) -value diamond \
+ -command [list PlotLineUpdateElement $varname]
+ $var(mb).dataline.shape add radiobutton \
+ -label [msgcat::mc {Plus}] \
+ -variable ${varname}(graph,ds,shape,symbol) -value plus \
+ -command [list PlotLineUpdateElement $varname]
+ $var(mb).dataline.shape add radiobutton \
+ -label [msgcat::mc {Cross}] \
+ -variable ${varname}(graph,ds,shape,symbol) -value cross \
+ -command [list PlotLineUpdateElement $varname]
+ $var(mb).dataline.shape add radiobutton \
+ -label [msgcat::mc {Simple Plus}] \
+ -variable ${varname}(graph,ds,shape,symbol) -value splus \
+ -command [list PlotLineUpdateElement $varname]
+ $var(mb).dataline.shape add radiobutton \
+ -label [msgcat::mc {Simple Cross}] \
+ -variable ${varname}(graph,ds,shape,symbol) -value scross \
+ -command [list PlotLineUpdateElement $varname]
+ $var(mb).dataline.shape add radiobutton \
+ -label [msgcat::mc {Triangle}] \
+ -variable ${varname}(graph,ds,shape,symbol) -value triangle \
+ -command [list PlotLineUpdateElement $varname]
+ $var(mb).dataline.shape add radiobutton \
+ -label [msgcat::mc {Arrow}] \
+ -variable ${varname}(graph,ds,shape,symbol) -value arrow \
+ -command [list PlotLineUpdateElement $varname]
+ $var(mb).dataline.shape add separator
+ $var(mb).dataline.shape add checkbutton \
+ -label [msgcat::mc {Fill}] \
+ -variable ${varname}(graph,ds,shape,fill) \
+ -command [list PlotLineUpdateElement $varname]
+ $var(mb).dataline.shape add cascade -label [msgcat::mc {Color}] \
+ -menu $var(mb).dataline.shape.color
+
+ PlotColorMenu $var(mb).dataline.shape.color $varname graph,ds,shape,color \
+ [list PlotLineUpdateElement $varname]
# Smooth
menu $var(mb).dataline.smooth
@@ -148,7 +198,23 @@ proc PlotLineMenus {varname} {
[list PlotLineUpdateElement $varname]
# Error
- PlotErrorMenu $varname dataline
+ menu $var(mb).dataline.error
+ $var(mb).dataline.error add checkbutton -label [msgcat::mc {Show}] \
+ -variable ${varname}(graph,ds,error) \
+ -command [list PlotLineUpdateElement $varname]
+ $var(mb).dataline.error add checkbutton -label [msgcat::mc {Cap}] \
+ -variable ${varname}(graph,ds,error,cap) \
+ -command [list PlotLineUpdateElement $varname]
+ $var(mb).dataline.error add separator
+ $var(mb).dataline.error add cascade -label [msgcat::mc {Color}] \
+ -menu $var(mb).dataline.error.color
+ $var(mb).dataline.error add cascade -label [msgcat::mc {Width}] \
+ -menu $var(mb).dataline.error.width
+
+ PlotColorMenu $var(mb).dataline.error.color $varname graph,ds,error,color \
+ [list PlotLineUpdateElement $varname]
+ WidthDashMenu $var(mb).dataline.error.width $varname \
+ graph,ds,error,width {} [list PlotLineUpdateElement $varname] {}
}
proc PlotLineAddGraph {varname} {
diff --git a/ds9/library/plotscatter.tcl b/ds9/library/plotscatter.tcl
index 0aca541..1b48f6f 100644
--- a/ds9/library/plotscatter.tcl
+++ b/ds9/library/plotscatter.tcl
@@ -76,10 +76,76 @@ proc PlotScatterMenus {varname} {
-command [list DatasetNameDialog $varname]
# Shape
- PlotShapeMenu $varname datascatter
+ menu $var(mb).datascatter.shape
+ $var(mb).datascatter.shape add radiobutton \
+ -label [msgcat::mc {None}] \
+ -variable ${varname}(graph,ds,shape,symbol) -value none \
+ -command [list PlotScatterUpdateElement $varname]
+ $var(mb).datascatter.shape add radiobutton \
+ -label [msgcat::mc {Circle}] \
+ -variable ${varname}(graph,ds,shape,symbol) -value circle \
+ -command [list PlotScatterUpdateElement $varname]
+ $var(mb).datascatter.shape add radiobutton \
+ -label [msgcat::mc {Square}] \
+ -variable ${varname}(graph,ds,shape,symbol) -value square \
+ -command [list PlotScatterUpdateElement $varname]
+ $var(mb).datascatter.shape add radiobutton \
+ -label [msgcat::mc {Diamond}] \
+ -variable ${varname}(graph,ds,shape,symbol) -value diamond \
+ -command [list PlotScatterUpdateElement $varname]
+ $var(mb).datascatter.shape add radiobutton \
+ -label [msgcat::mc {Plus}] \
+ -variable ${varname}(graph,ds,shape,symbol) -value plus \
+ -command [list PlotScatterUpdateElement $varname]
+ $var(mb).datascatter.shape add radiobutton \
+ -label [msgcat::mc {Cross}] \
+ -variable ${varname}(graph,ds,shape,symbol) -value cross \
+ -command [list PlotScatterUpdateElement $varname]
+ $var(mb).datascatter.shape add radiobutton \
+ -label [msgcat::mc {Simple Plus}] \
+ -variable ${varname}(graph,ds,shape,symbol) -value splus \
+ -command [list PlotScatterUpdateElement $varname]
+ $var(mb).datascatter.shape add radiobutton \
+ -label [msgcat::mc {Simple Cross}] \
+ -variable ${varname}(graph,ds,shape,symbol) -value scross \
+ -command [list PlotScatterUpdateElement $varname]
+ $var(mb).datascatter.shape add radiobutton \
+ -label [msgcat::mc {Triangle}] \
+ -variable ${varname}(graph,ds,shape,symbol) -value triangle \
+ -command [list PlotScatterUpdateElement $varname]
+ $var(mb).datascatter.shape add radiobutton \
+ -label [msgcat::mc {Arrow}] \
+ -variable ${varname}(graph,ds,shape,symbol) -value arrow \
+ -command [list PlotScatterUpdateElement $varname]
+ $var(mb).datascatter.shape add separator
+ $var(mb).datascatter.shape add checkbutton \
+ -label [msgcat::mc {Fill}] \
+ -variable ${varname}(graph,ds,shape,fill) \
+ -command [list PlotScatterUpdateElement $varname]
+ $var(mb).datascatter.shape add cascade -label [msgcat::mc {Color}] \
+ -menu $var(mb).datascatter.shape.color
+
+ PlotColorMenu $var(mb).datascatter.shape.color $varname \
+ graph,ds,shape,color [list PlotScatterUpdateElement $varname]
# Error
- PlotErrorMenu $varname datascatter
+ menu $var(mb).datascatter.error
+ $var(mb).datascatter.error add checkbutton -label [msgcat::mc {Show}] \
+ -variable ${varname}(graph,ds,error) \
+ -command [list PlotScatterUpdateElement $varname]
+ $var(mb).datascatter.error add checkbutton -label [msgcat::mc {Cap}] \
+ -variable ${varname}(graph,ds,error,cap) \
+ -command [list PlotScatterUpdateElement $varname]
+ $var(mb).datascatter.error add separator
+ $var(mb).datascatter.error add cascade -label [msgcat::mc {Color}] \
+ -menu $var(mb).datascatter.error.color
+ $var(mb).datascatter.error add cascade -label [msgcat::mc {Width}] \
+ -menu $var(mb).datascatter.error.width
+
+ PlotColorMenu $var(mb).datascatter.error.color $varname \
+ graph,ds,error,color [list PlotScatterUpdateElement $varname]
+ WidthDashMenu $var(mb).datascatter.error.width $varname \
+ graph,ds,error,width {} [list PlotScatterUpdateElement $varname] {}
}
diff --git a/ds9/library/util.tcl b/ds9/library/util.tcl
index 919c26a..fea19f3 100644
--- a/ds9/library/util.tcl
+++ b/ds9/library/util.tcl
@@ -252,6 +252,11 @@ proc ProcessCmdCVAR0 {cmd} {
eval $cmd $cvarname
}
+proc ProcessCmdCVAROpt {cmd opt} {
+ global cvarname
+ eval $cmd $cvarname $opt
+}
+
proc ProcessCmdCVAR {key value {cmd {}}} {
global cvarname
upvar #0 $cvarname cvar