From 071832337409b3ff7cf063d16e1072e96d2d86f1 Mon Sep 17 00:00:00 2001 From: William Joye Date: Fri, 7 Jun 2019 14:32:20 -0400 Subject: support multiple graphs per plot --- ds9/library/catplot.tcl | 3 +-- ds9/library/markeranalysishist.tcl | 1 - ds9/library/markeranalysispanda.tcl | 3 +-- ds9/library/markeranalysisplot2d.tcl | 1 - ds9/library/markeranalysisplot3d.tcl | 1 - ds9/library/markeranalysisradial.tcl | 1 - ds9/library/plot.tcl | 26 +++++++++++--------------- ds9/library/plotbar.tcl | 6 +----- ds9/library/plotconfig.tcl | 3 ++- ds9/library/plotdata.tcl | 14 +++++--------- ds9/library/plotline.tcl | 6 +----- ds9/library/plotprocess.tcl | 5 ++--- ds9/library/plotscatter.tcl | 6 +----- 13 files changed, 25 insertions(+), 51 deletions(-) diff --git a/ds9/library/catplot.tcl b/ds9/library/catplot.tcl index d8040dd..7dc2bcc 100644 --- a/ds9/library/catplot.tcl +++ b/ds9/library/catplot.tcl @@ -87,9 +87,8 @@ proc CATPlotGenerate {varname} { } PlotDeleteAllDataSet $vvarname - PlotDataSet $vvarname $dim $rr + PlotAddDataSet $vvarname $dim $rr PlotTitle $vvarname $var(title) $xtitle $ytitle - $vvar(proc,updategraph) $vvarname PlotStats $vvarname PlotList $vvarname } diff --git a/ds9/library/markeranalysishist.tcl b/ds9/library/markeranalysishist.tcl index 556241c..cb0c0ac 100644 --- a/ds9/library/markeranalysishist.tcl +++ b/ds9/library/markeranalysishist.tcl @@ -95,7 +95,6 @@ proc MarkerAnalysisHistogramCB {frame id} { set vvar(graph,ds,fill) 1 $vvar(proc,updateelement) $vvarname - $vvar(proc,updategraph) $vvarname } PlotStats $vvarname diff --git a/ds9/library/markeranalysispanda.tcl b/ds9/library/markeranalysispanda.tcl index b99a0c4..8ff80a9 100644 --- a/ds9/library/markeranalysispanda.tcl +++ b/ds9/library/markeranalysispanda.tcl @@ -104,8 +104,7 @@ proc MarkerAnalysisPandaCB {frame id} { } PlotDeleteAllDataSet $vvarname - PlotDataSet $vvarname 3 [$frame get marker $id analysis panda $sys] - $vvar(proc,updategraph) $vvarname + PlotAddDataSet $vvarname 3 [$frame get marker $id analysis panda $sys] PlotStats $vvarname PlotList $vvarname } diff --git a/ds9/library/markeranalysisplot2d.tcl b/ds9/library/markeranalysisplot2d.tcl index a791ca9..08b1a74 100644 --- a/ds9/library/markeranalysisplot2d.tcl +++ b/ds9/library/markeranalysisplot2d.tcl @@ -183,7 +183,6 @@ proc MarkerAnalysisPlot2dCB {frame id} { if {!$ping} { PlotExternal $vvarname $vvar(proc,updateelement) $vvarname - $vvar(proc,updategraph) $vvarname } PlotStats $vvarname diff --git a/ds9/library/markeranalysisplot3d.tcl b/ds9/library/markeranalysisplot3d.tcl index 5f5f178..6a0b04c 100644 --- a/ds9/library/markeranalysisplot3d.tcl +++ b/ds9/library/markeranalysisplot3d.tcl @@ -190,7 +190,6 @@ proc MarkerAnalysisPlot3dCB {frame id} { if {!$ping} { PlotExternal $vvarname $vvar(proc,updateelement) $vvarname - $vvar(proc,updategraph) $vvarname } PlotStats $vvarname diff --git a/ds9/library/markeranalysisradial.tcl b/ds9/library/markeranalysisradial.tcl index 480dbe8..e55e0ee 100644 --- a/ds9/library/markeranalysisradial.tcl +++ b/ds9/library/markeranalysisradial.tcl @@ -120,7 +120,6 @@ proc MarkerAnalysisRadialCB {frame id} { if {!$ping} { PlotExternal $vvarname $vvar(proc,updateelement) $vvarname - $vvar(proc,updategraph) $vvarname } PlotStats $vvarname diff --git a/ds9/library/plot.tcl b/ds9/library/plot.tcl index f7a9b33..52f9ecf 100644 --- a/ds9/library/plot.tcl +++ b/ds9/library/plot.tcl @@ -19,20 +19,6 @@ proc PlotDef {} { PlotDefState } -# Canvas -proc PlotLayoutCanvas {varname} { - upvar #0 $varname var - global $varname - - foreach cc $var(graphs) { - pack forget $var($cc) - } - - foreach cc $var(graphs) { - pack $var($cc) -side top -expand yes -fill both - } -} - # Graph proc PlotAddGraph {varname} { upvar #0 $varname var @@ -57,6 +43,9 @@ proc PlotAddGraph {varname} { PlotInitGraph $varname + $var(proc,updategraph) $varname + $var(proc,updatecanvas) $varname + # set up zoom stack, assuming mode is zoom global ds9 switch $ds9(wm) { @@ -65,7 +54,14 @@ proc PlotAddGraph {varname} { aqua {Blt_ZoomStack $var(graph) -mode release -button "ButtonPress-2"} } - PlotLayoutCanvas $varname + # layout + foreach cc $var(graphs) { + pack forget $var($cc) + } + + foreach cc $var(graphs) { + pack $var($cc) -side top -expand yes -fill both + } } proc PlotDeleteGraph {varname} { diff --git a/ds9/library/plotbar.tcl b/ds9/library/plotbar.tcl index 01fe9f2..8372bf3 100644 --- a/ds9/library/plotbar.tcl +++ b/ds9/library/plotbar.tcl @@ -31,9 +31,7 @@ proc PlotBar {tt wtt title xaxis yaxis dim data} { global $varname PlotBarDialog $varname $wtt $title $xaxis $yaxis - PlotDataSet $varname $dim $data - - $var(proc,updategraph) $varname + PlotAddDataSet $varname $dim $data PlotStats $varname PlotList $varname } @@ -126,8 +124,6 @@ proc PlotBarDialog {varname wtt title xaxis yaxis} { [list PlotBarUpdateElement $varname] WidthDashMenu $var(mb).data.error.width $varname graph,ds,error,width {} \ [list PlotBarUpdateElement $varname] {} - - $var(proc,updatecanvas) $varname } proc PlotBarAddGraph {varname} { diff --git a/ds9/library/plotconfig.tcl b/ds9/library/plotconfig.tcl index b64e5dc..c616b80 100644 --- a/ds9/library/plotconfig.tcl +++ b/ds9/library/plotconfig.tcl @@ -180,8 +180,9 @@ proc PlotLoadConfigFile {varname filename} { unset var(grid,log) } - $var(proc,updategraph) $varname $var(proc,updateelement) $varname + $var(proc,updategraph) $varname + $var(proc,updatecanvas) $varname } proc PlotSaveConfig {varname} { diff --git a/ds9/library/plotdata.tcl b/ds9/library/plotdata.tcl index fc2e7dd..2849ccc 100644 --- a/ds9/library/plotdata.tcl +++ b/ds9/library/plotdata.tcl @@ -4,7 +4,7 @@ package provide DS9 1.0 -proc PlotDataSet {varname dim data} { +proc PlotAddDataSet {varname dim data} { upvar #0 $varname var global $varname @@ -15,8 +15,6 @@ proc PlotDataSet {varname dim data} { # second data set PlotDataSetOne $varname "4.2" $data - - $var(proc,updateelement) $varname } 5 { # first data set @@ -24,10 +22,10 @@ proc PlotDataSet {varname dim data} { # second data set PlotDataSetOne $varname "5.2" $data - - $var(proc,updateelement) $varname } - default {PlotDataSetOne $varname $dim $data} + default { + PlotDataSetOne $varname $dim $data + } } } @@ -352,9 +350,7 @@ proc PlotLoadDataFile {varname filename dim} { close $ch PlotRaise $varname - - PlotDataSet $varname $dim $data - $var(proc,updategraph) $varname + PlotAddDataSet $varname $dim $data PlotStats $varname PlotList $varname } diff --git a/ds9/library/plotline.tcl b/ds9/library/plotline.tcl index b846012..a78b1b0 100644 --- a/ds9/library/plotline.tcl +++ b/ds9/library/plotline.tcl @@ -31,9 +31,7 @@ proc PlotLine {tt wtt title xaxis yaxis dim data} { global $varname PlotLineDialog $varname $wtt $title $xaxis $yaxis - PlotDataSet $varname $dim $data - - $var(proc,updategraph) $varname + PlotAddDataSet $varname $dim $data PlotStats $varname PlotList $varname } @@ -140,8 +138,6 @@ proc PlotLineDialog {varname wtt title xaxis yaxis} { # Error PlotErrorMenu $varname - - $var(proc,updatecanvas) $varname } proc PlotLineAddGraph {varname} { diff --git a/ds9/library/plotprocess.tcl b/ds9/library/plotprocess.tcl index 0283af0..15e5e69 100644 --- a/ds9/library/plotprocess.tcl +++ b/ds9/library/plotprocess.tcl @@ -232,8 +232,7 @@ proc PlotCmdData {dim} { } PlotRaise $cvarname - PlotDataSet $cvarname $dim $parse(buf) - $cvar(proc,updategraph) $cvarname + PlotAddDataSet $cvarname $dim $parse(buf) PlotStats $cvarname PlotList $cvarname } @@ -317,7 +316,7 @@ proc PlotCmdFontStyle {which value} { } } - $cvar(proc,updategraph) $cvarname + $cvar(proc,updatecanvas) $cvarname } proc PlotCmdExport {format fn} { diff --git a/ds9/library/plotscatter.tcl b/ds9/library/plotscatter.tcl index 85ad1f0..182d2c4 100644 --- a/ds9/library/plotscatter.tcl +++ b/ds9/library/plotscatter.tcl @@ -31,9 +31,7 @@ proc PlotScatter {tt wtt title xaxis yaxis dim data} { global $varname PlotScatterDialog $varname $wtt $title $xaxis $yaxis - PlotDataSet $varname $dim $data - - $var(proc,updategraph) $varname + PlotAddDataSet $varname $dim $data PlotStats $varname PlotList $varname } @@ -70,8 +68,6 @@ proc PlotScatterDialog {varname wtt title xaxis yaxis} { # Error PlotErrorMenu $varname - - $var(proc,updatecanvas) $varname } proc PlotScatterAddGraph {varname} { -- cgit v0.12