Index: tolbase/lib/toltk/tolmethods.tcl
===================================================================
--- tolbase/lib/toltk/tolmethods.tcl	(revision 6c8a66a64942b649cc4c27efee4a3e0727e208e8)
+++ tolbase/lib/toltk/tolmethods.tcl	(revision c61d3f9a6b39f06f74390c59fa4316060d5c94e9)
@@ -249,5 +249,6 @@
 
 #/////////////////////////////////////////////////////////////////////////////
-proc Tol_SetChartMethod { title source gcfFile geometry filetosave lstNames type lstPairs } {
+proc Tol_SetChartMethod { title source gcfFile geometry filetosave lstNames
+                          type lstPairs {holdon ""}} {
 #
 # PURPOSE: Hook of Chart method
@@ -266,4 +267,5 @@
 #   lstPairs -> when type is 0 pairs is the list of correspondence beetwen index
 #               columns to data columns (x-y pairs)
+#   holdon   -> tell if the new graph goes into a new context or an existing one
 #
 #/////////////////////////////////////////////////////////////////////////////
@@ -281,7 +283,17 @@
   }
   # MDI
-  set tl [::project::CreateForm \
-    -title $wTitle -type Graphs -iniconfig SetGraph -geometry $geometry]
-  $tl setgeometry $geometry  
+  if {$holdon ne "" && (![winfo exists $holdon] || [winfo class $holdon] ne "Mdidoc")} {
+    Tol_HciWriter "<W>[mc {Graphic requested to be drawn on %s but that graphic context does not exist or is not a valid grafic windows} $holdon]</W>"
+    set holdon ""
+  } 
+  if {[winfo exists $holdon]} {
+    set tl $holdon
+  } else {
+    puts "no existe '$holdon' por eso ... ::project::CreateForm"
+
+    set tl [::project::CreateForm \
+                -title $wTitle -type Graphs -iniconfig SetGraph -geometry $geometry]
+    $tl setgeometry $geometry
+  }
   set top [$tl getframe]
   # if source is a list is interpreted as a set name and indexes accesing a element
@@ -303,14 +315,21 @@
   set Instance [::SetGraphDialog::DrawSet $top.g $cmd $source $type $lstPairs \
     $lstNames $gcfFile [list $title]]
-  bind $top.g <Destroy> +[list ::tol::tableset destroy $cmd]
-  if { [llength $source] > 1} {
-    bind $top.g <Destroy> +[list ::tol::stack release $source]
-  }
-  pack $top.g -fill both -expand yes
-  update
-  ::bayesGraph::GrapOptApplyAxisTicks $Instance ${Instance}::options gr,0
-  if { [string length $filetosave] } {
-    ::bayesGraph::TakePhoto $Instance $filetosave
-    after idle "destroy $tl"
+  if {$holdon ne ""} {
+    ::tol::tableset destroy $cmd
+    if { [llength $source] > 1} {
+      ::tol::stack release $source
+    }
+  } else {
+    bind $top.g <Destroy> +[list ::tol::tableset destroy $cmd]
+    if { [llength $source] > 1} {
+      bind $top.g <Destroy> +[list ::tol::stack release $source]
+    }
+    pack $top.g -fill both -expand yes
+    update
+    ::bayesGraph::GrapOptApplyAxisTicks $Instance ${Instance}::options gr,0
+    if { [string length $filetosave] } {
+      ::bayesGraph::TakePhoto $Instance $filetosave
+      after idle "destroy $tl"
+    }
   }
   return $tl
