reference/ocr-new/comp_menu.tcl
author viric@llimona
Thu, 18 May 2006 23:12:51 +0200
changeset 0 6b8091ca909a
permissions -rw-r--r--
Init from working directory of svn repository.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
     1
set Comp_menu_up 0
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
     2
#current component ascii value
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
     3
set curCompId " "
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
     4
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
     5
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
     6
set comp_menux 0
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
     7
set comp_menuy 0
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
     8
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
     9
proc init_component_menu { w x y } {
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    10
    global BACKGROUND  FOREGROUND FONT Comp_menu_up  global comp_menux \
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    11
	    comp_menuy validComponent
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    12
 
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    13
   
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    14
    if { $Comp_menu_up == 1 } {
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    15
	focus .comp_menu.menu
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    16
	return 1
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    17
    }
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    18
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    19
    set  Comp_menu_up 1
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    20
    toplevel .comp_menu
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    21
    set comp_menux  [expr int([expr $x+50])+ 200]
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    22
    set comp_menuy  [expr int([expr $y])+ 100]
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    23
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    24
    wm geometry .comp_menu +$comp_menux+$comp_menuy 
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    25
    wm title .comp_menu "Component..."
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    26
    frame  .comp_menu.menu -background $BACKGROUND
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    27
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    28
    button .comp_menu.menu.join -text "Join" -command component_join \
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    29
	    -bg $BACKGROUND -fg $FOREGROUND -font $FONT
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    30
    button .comp_menu.menu.horiz  -text "Horizontal Split" \
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    31
	    -command component_horizontal_split \
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    32
	    -bg $BACKGROUND -fg $FOREGROUND -font $FONT 
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    33
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    34
    button .comp_menu.menu.vert -text "Vertical Split" -command \
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    35
	    component_vertical_split \
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    36
	    -bg $BACKGROUND -fg $FOREGROUND -font $FONT
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    37
    button .comp_menu.menu.learn -text "Learn" -command component_learn \
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    38
	    -bg $BACKGROUND -fg $FOREGROUND -font $FONT
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    39
    button .comp_menu.menu.close -text "Cancel" -command {  
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    40
	grab release .comp_menu 
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    41
	destroy .comp_menu; set Comp_menu_up 0 ;  } \
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    42
 	    -bg $BACKGROUND -fg $FOREGROUND -font $FONT
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    43
 
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    44
   pack .comp_menu.menu  .comp_menu.menu.join .comp_menu.menu.horiz \
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    45
	    .comp_menu.menu.vert .comp_menu.menu.learn \
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    46
	    .comp_menu.menu.close -fill x
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    47
   focus .comp_menu.menu	
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    48
   #grab .comp_menu	
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    49
    
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    50
}
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    51
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    52
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    53
proc component_join { } {
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    54
global Comp_menu_up
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    55
puts stdout "component_join"
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    56
grab release .comp_menu.menu
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    57
#temporarily bind <Double-1> to join components
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    58
bind .main_window.display.work_space <Double-1> {
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    59
    component_select %W %x %y 
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    60
    # joins this selection with next selected component
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    61
    JOIN_COMP
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    62
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    63
    #put <Double -1> back to the old setting
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    64
    bind .main_window.display.work_space <Double-1> {
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    65
	component_select %W [%W canvasx %x]  [%W canvasy %y] 
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    66
        init_component_menu %W [%W canvasx %x]  [%W canvasy %y] 
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    67
    }
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    68
}
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    69
destroy .comp_menu
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    70
set Comp_menu_up 0
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    71
}    
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    72
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    73
proc component_horizontal_split { } {
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    74
global Comp_menu_up
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    75
puts stdout "component_horizontal_split"
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    76
grab release .comp_menu.menu
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    77
SPLIT_COMP_HORIZ
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    78
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    79
destroy .comp_menu
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    80
set Comp_menu_up 0
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    81
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    82
}
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    83
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    84
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    85
proc component_learn { } {
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    86
    global Comp_menu_up curCompId comp_menux comp_menuy
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    87
puts stdout "component_learn"
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    88
#pops up a little window to put in id for component
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    89
    global save_ascii_geometry BACKGROUND FOREGROUND FONT SMALLFONT write_image
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    90
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    91
    
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    92
    toplevel .learn_comp -background $BACKGROUND
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    93
    wm geometry .learn_comp  +[expr $comp_menux +20]+[expr $comp_menuy +20]
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    94
    wm title .learn_comp  "Learn Component Id"
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    95
           grab set .learn_comp
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    96
   
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    97
    
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    98
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    99
    label .learn_comp.image -bitmap @$write_image -foreground $FOREGROUND -background $BACKGROUND
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
   100
    frame .learn_comp.s -background $BACKGROUND
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
   101
    label .learn_comp.s.txt -text "Learn Component as:" -foreground $FOREGROUND -background $BACKGROUND -font $SMALLFONT    
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
   102
entry .learn_comp.s.ent -relief sunken -bd 2 -textvariable curCompId -foreground $FOREGROUND -background $BACKGROUND -font $SMALLFONT    
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
   103
    pack .learn_comp.s.txt .learn_comp.s.ent -side top
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
   104
    frame .learn_comp.buttons
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
   105
button .learn_comp.buttons.ok -text OK -command { LEARN_COMP $curCompId ; \
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
   106
    grab release .learn_comp; destroy .learn_comp}  -fg $FOREGROUND -background $BACKGROUND -font $SMALLFONT -width 5
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
   107
button .learn_comp.buttons.cancel -text Cancel -command {destroy .learn_comp } -fg $FOREGROUND -background $BACKGROUND -font $SMALLFONT -width 5
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
   108
    pack .learn_comp.buttons.ok .learn_comp.buttons.cancel -side left -expand 1 -fill x 	
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
   109
    pack .learn_comp.image .learn_comp.s .learn_comp.buttons -side top
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
   110
    .learn_comp.s.ent icursor 0
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
   111
    .learn_comp.s.ent select range 0 10
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
   112
    focus .learn_comp.s.ent
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
   113
 
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
   114
    bind .learn_comp.s.ent <Return> {
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
   115
	LEARN_COMP $curCompId
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
   116
	grab release .learn_comp
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
   117
	destroy .learn_comp
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
   118
    }
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
   119
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
   120
destroy .comp_menu
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
   121
set Comp_menu_up 0
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
   122
}
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
   123
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
   124
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
   125
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
   126
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
   127
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
   128
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
   129
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
   130
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
   131
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
   132
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
   133