summaryrefslogtreecommitdiffstats
path: root/ds9/library
diff options
context:
space:
mode:
authorWilliam Joye <wjoye@cfa.harvard.edu>2018-06-20 17:31:39 (GMT)
committerWilliam Joye <wjoye@cfa.harvard.edu>2018-06-20 17:31:39 (GMT)
commit08ce7322f91b7ce101b1fdec438db11a33140100 (patch)
tree9d81ae637298a73a91f09a57b345bad877ca2f52 /ds9/library
parentd8a46fb55ae9ce363612f91a453413533bbfa307 (diff)
downloadblt-08ce7322f91b7ce101b1fdec438db11a33140100.zip
blt-08ce7322f91b7ce101b1fdec438db11a33140100.tar.gz
blt-08ce7322f91b7ce101b1fdec438db11a33140100.tar.bz2
add ds9 analysis send parser
Diffstat (limited to 'ds9/library')
-rw-r--r--ds9/library/analysis.tcl65
-rw-r--r--ds9/library/source.tcl2
2 files changed, 65 insertions, 2 deletions
diff --git a/ds9/library/analysis.tcl b/ds9/library/analysis.tcl
index eaba1fb..927ee02 100644
--- a/ds9/library/analysis.tcl
+++ b/ds9/library/analysis.tcl
@@ -1743,9 +1743,9 @@ proc AnalysisMessage {type message} {
}
switch -- [tk_messageBox -message $message -type $type] {
- ok {return 1}
+ ok -
yes {return 1}
- cancel {return 0}
+ cancel -
default {return 0}
}
}
@@ -1851,6 +1851,17 @@ proc AnalysisCmdLoad {} {
}
proc ProcessSendAnalysisCmd {proc id param sock fn} {
+ global parse
+ set parse(proc) $proc
+ set parse(id) $id
+ set parse(sock) $sock
+ set parse(fn) $fn
+
+ analysissend::YY_FLUSH_BUFFER
+ analysissend::yy_scan_string $param
+ analysissend::yyparse
+ return
+
global ianalysis
global ime
@@ -1897,3 +1908,53 @@ proc ProcessSendAnalysisCmd {proc id param sock fn} {
}
}
}
+
+proc AnalysisSendCmd {} {
+ global ianalysis
+
+ for {set ii 0} {$ii<$ianalysis(menu,count)} {incr ii} {
+ append result "\#$ii menu"
+ append result "\n$ianalysis(menu,$ii,item)"
+ append result "\n$ianalysis(menu,$ii,template)"
+ if {$ianalysis(menu,$ii,cmd) != {web}} {
+ append result "\nmenu"
+ append result "\n$ianalysis(menu,$ii,cmd)"
+ } else {
+ append result "\n$ianalysis(menu,$ii,cmd)"
+ append result "\n$ianalysis(menu,$ii,var)"
+ }
+ append result "\n\n"
+ }
+ for {set ii 0} {$ii<$ianalysis(bind,count)} {incr ii} {
+ set key [string range $ianalysis(bind,$ii,item) 1 1]
+ append result "\#$ii bind"
+ append result "\nbind key $ianalysis(bind,$ii,item)"
+ append result "\n$ianalysis(bind,$ii,template)"
+ append result "\nbind $key"
+ append result "\n$ianalysis(bind,$ii,cmd)"
+ append result "\n\n"
+ }
+
+ ProcessSendCmdResult {.ans} $result
+}
+
+proc AnalysisSendCmdEntry {txt} {
+ set result {}
+ AnalysisEntry $txt result
+ ProcessSendCmdTxt $result
+}
+
+proc AnalysisSendCmdMessage {type txt} {
+ ProcessSendCmdTxt [AnalysisMessage $type $txt]
+}
+
+proc AnalysisSendCmdTask {} {
+ global ianalysis
+
+ # invoke by name
+ for {set ii 0} {$ii<$ianalysis(menu,count)} {incr ii} {
+ append result "$ii $ianalysis(menu,$ii,item)\n"
+ }
+
+ ProcessSendCmdTxt $result
+}
diff --git a/ds9/library/source.tcl b/ds9/library/source.tcl
index c2a344a..0d19362 100644
--- a/ds9/library/source.tcl
+++ b/ds9/library/source.tcl
@@ -192,6 +192,8 @@ source $ds9(root)/library/alignparser.tcl
source $ds9(root)/library/alignlex.tcl
source $ds9(root)/library/analysisparser.tcl
source $ds9(root)/library/analysislex.tcl
+source $ds9(root)/library/analysissendparser.tcl
+source $ds9(root)/library/analysissendlex.tcl
source $ds9(root)/library/arrayparser.tcl
source $ds9(root)/library/arraylex.tcl
source $ds9(root)/library/backupparser.tcl