#f fichier xtext/state.tcl
#f 
#f Contient tout ce qui touche la gestion de l'état d'un document
#f dont les fonctionnalités suivantes :
#f   - getState, setState
#f   - undo/redo (avec pushState...)
#f   - markDirty, markClean
#f 
# 
# 
# $Id :            $
# $Author :        $
# $Date :          $
# $Revision :      $
# $Name :          $
# 
# 

package provide xtext 2.0


## xtext_markDirty -- mark widget w as dirty (modified)
# 
# Cette procédure sera profondément modifiée, 
# Elle se contentera peut-etre d'emettre un <<modifiedText>>
# ET de faire un update 
# 
# En attendant elle émule l'ancienne proc "te:tb:mark_dirty"
# 
# ATTENTION : te:tb:mark_dirty est toujours utilisé ! à nettoyer
#             mais traiter globalement tout ce qui gere le dirty (isDirty...)
# 
proc xtext_markDirty {w {w2 .}} {
    global xtext
    set xtext($w,modified) 1
}

## xtext_markClean -- mark widget w as clean (same state as file)
# 
proc xtext_markClean {w {w2 .}} {
    global xtext
    set xtext($w,modified) 0
}

## xtext_isDirty --  true if w is dirty (modified) else 0
# 
proc xtext_isDirty {w} {
  global xtext
  return $xtext($w,modified)
}

# ./
