diff options
author | William Joye <wjoye@cfa.harvard.edu> | 2018-03-27 19:26:41 (GMT) |
---|---|---|
committer | William Joye <wjoye@cfa.harvard.edu> | 2018-03-27 19:26:41 (GMT) |
commit | 9b374bf21bf2f0aa79a4483afc7ad59e257fdc6a (patch) | |
tree | 28326bedab5a8c2cb01d6eddce03af2440a6a820 /ds9/library | |
parent | 7f76c994086091d557369d840017244f7ff9e021 (diff) | |
download | blt-9b374bf21bf2f0aa79a4483afc7ad59e257fdc6a.zip blt-9b374bf21bf2f0aa79a4483afc7ad59e257fdc6a.tar.gz blt-9b374bf21bf2f0aa79a4483afc7ad59e257fdc6a.tar.bz2 |
add ds9 cataog parser
Diffstat (limited to 'ds9/library')
-rw-r--r-- | ds9/library/cat.tcl | 119 | ||||
-rw-r--r-- | ds9/library/catdialog.tcl | 6 |
2 files changed, 83 insertions, 42 deletions
diff --git a/ds9/library/cat.tcl b/ds9/library/cat.tcl index fb072b4..6df8ca7 100644 --- a/ds9/library/cat.tcl +++ b/ds9/library/cat.tcl @@ -1236,47 +1236,6 @@ proc PrefsDialogCatalog {} { # Process Cmds -proc CatalogSymbolLoadCmd {fn} { - global cvarname - global $cvarname - - if {[file exists $fn]} { - starbase_read ${cvarname}(symdb) $fn - CATGenerate $cvarname - } else { - Error "[msgcat::mc {Unable to open file}] $fn" - return - } -} - -proc CatalogSymbolAddCmd {} { - global cvarname - global $cvarname - - set row [expr [starbase_nrows ${cvarname}(symdb)]+1] - starbase_rowins ${cvarname}(symdb) $row - starbase_set ${cvarname}(symdb) $row \ - [starbase_colnum ${cvarname}(symdb) shape] $pcat(sym,shape) - starbase_set ${cvarname}(symdb) $row \ - [starbase_colnum ${cvarname}(symdb) color] $pcat(sym,color) - starbase_set ${cvarname}(symdb) $row \ - [starbase_colnum ${cvarname}(symdb) width] $pcat(sym,width) - starbase_set ${cvarname}(symdb) $row \ - [starbase_colnum ${cvarname}(symdb) font] $pcat(sym,font) - starbase_set ${cvarname}(symdb) $row \ - [starbase_colnum ${cvarname}(symdb) fontsize] \ - $pcat(sym,font,size) - starbase_set ${cvarname}(symdb) $row \ - [starbase_colnum ${cvarname}(symdb) fontweight] \ - $pcat(sym,font,weight) - starbase_set ${cvarname}(symdb) $row \ - [starbase_colnum ${cvarname}(symdb) fontslant] \ - $pcat(sym,font,slant) - starbase_set ${cvarname}(symdb) $row \ - [starbase_colnum ${cvarname}(symdb) units] $pcat(sym,units) - CATGenerate ${cvarname}name -} - proc CatalogSAMPCmd {name} { global cvarname global $cvarname @@ -1795,7 +1754,7 @@ proc ProcessCatalog {varname iname cvarname} { } } remove { - starbase_rowdel $cvar(symdb) $row + starbase_rowdecd l $cvar(symdb) $row CATGenerate $cvarname } save { @@ -1944,6 +1903,82 @@ proc CatalogCmdSave {cvarname fn writer} { } } +proc CatalogCmdSymbol {col value} { + global cvarname + global $cvarname + upvar #0 $cvarname cvar + global $cvar(symdb) + + starbase_set $cvar(symdb) $cvar(row) [starbase_colnum $cvar(symdb) $col] $value + CATGenerate $cvarname +} + +proc CatalogCmdSymbolAdd {} { + global cvarname + global $cvarname + upvar #0 $cvarname cvar + global $cvar(symdb) + + global pcat + + set row [expr [starbase_nrows $cvar(symdb)]+1] + starbase_rowins $cvar(symdb) $row + starbase_set $cvar(symdb) $row \ + [starbase_colnum $cvar(symdb) shape] $pcat(sym,shape) + starbase_set $cvar(symdb) $row \ + [starbase_colnum $cvar(symdb) color] $pcat(sym,color) + starbase_set $cvar(symdb) $row \ + [starbase_colnum $cvar(symdb) width] $pcat(sym,width) + starbase_set $cvar(symdb) $row \ + [starbase_colnum $cvar(symdb) font] $pcat(sym,font) + starbase_set $cvar(symdb) $row \ + [starbase_colnum $cvar(symdb) fontsize] \ + $pcat(sym,font,size) + starbase_set $cvar(symdb) $row \ + [starbase_colnum $cvar(symdb) fontweight] \ + $pcat(sym,font,weight) + starbase_set $cvar(symdb) $row \ + [starbase_colnum $cvar(symdb) fontslant] \ + $pcat(sym,font,slant) + starbase_set $cvar(symdb) $row \ + [starbase_colnum $cvar(symdb) units] $pcat(sym,units) + CATGenerate $cvarname +} + +proc CatalogCmdSymbolRemove {} { + global cvarname + global $cvarname + upvar #0 $cvarname cvar + global $cvar(symdb) + + starbase_rowdel $cvar(symdb) $cvar(row) + CATGenerate $cvarname +} + +proc CatalogCmdSymbolLoad {fn} { + global cvarname + upvar #0 $cvarname cvar + global $cvarname + global $cvar(symdb) + + if {[file exists $fn]} { + starbase_read $cvar(symdb) $fn + CATGenerate $cvarname + } else { + Error "[msgcat::mc {Unable to open file}] $fn" + return + } +} + +proc CatalogCmdSymbolSave {fn} { + global cvarname + global $cvarname + upvar #0 $cvarname cvar + global $cvar(symdb) + + starbase_write $cvar(symdb) $fn +} + proc ProcessSendCatalogCmd {proc id param sock fn} { global icat diff --git a/ds9/library/catdialog.tcl b/ds9/library/catdialog.tcl index 86eff53..f399790 100644 --- a/ds9/library/catdialog.tcl +++ b/ds9/library/catdialog.tcl @@ -684,6 +684,12 @@ proc CATCrosshair {varname} { proc CATDestroy {varname} { upvar #0 $varname var + + # can happen from xpa,samp,command line + if {![info exists var]} { + return + } + global $varname global $var(catdb) global $var(tbldb) |