/[eiffelstudio]/branches/Eiffel_57_docking/Src/Eiffel/interface/new_graphical/case_tool/eiffel_view/cluster_figure.e
ViewVC logotype

Diff of /branches/Eiffel_57_docking/Src/Eiffel/interface/new_graphical/case_tool/eiffel_view/cluster_figure.e

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 58325 by manus, Thu Apr 20 16:05:16 2006 UTC revision 58518 by tedf, Thu Apr 27 20:21:42 2006 UTC
# Line 8  indexing Line 8  indexing
8    
9  deferred class  deferred class
10          EIFFEL_CLUSTER_FIGURE          EIFFEL_CLUSTER_FIGURE
11            
12  inherit  inherit
13          EG_RESIZABLE_CLUSTER_FIGURE          EG_RESIZABLE_CLUSTER_FIGURE
14                  redefine                  redefine
# Line 19  inherit Line 19  inherit
19                          on_linkable_add,                          on_linkable_add,
20                          on_handle_start,                          on_handle_start,
21                          on_handle_end,                          on_handle_end,
22                          recycle                          recycle,
23                            xml_element,
24                            set_with_xml_element
25                  end                  end
26                    
27          EB_CONSTANTS          EB_CONSTANTS
28                  undefine                  undefine
29                          default_create                          default_create
30                  end                  end
31    
32            EB_PIXMAPABLE_ITEM_PIXMAP_FACTORY
33                    undefine
34                            default_create
35                    end
36    
37  feature {NONE} -- Initialization  feature {NONE} -- Initialization
38    
39          default_create is          default_create is
40                          -- Create an CLUSTER_FIGURE.                          -- Create an CLUSTER_FIGURE.
41                  do                  do
42                          Precursor {EG_RESIZABLE_CLUSTER_FIGURE}                          Precursor {EG_RESIZABLE_CLUSTER_FIGURE}
43                            
44                          set_accept_cursor (cursors.cur_cluster)                          set_accept_cursor (cursors.cur_cluster)
45                          set_deny_cursor (cursors.cur_x_cluster)                          set_deny_cursor (cursors.cur_x_cluster)
46                            
47                          start_actions.extend (agent save_position)                          start_actions.extend (agent save_position)
48                          end_actions.extend (agent extend_history)                          end_actions.extend (agent extend_history)
49                          move_actions.extend (agent on_move)                          move_actions.extend (agent on_move)
50                            create label_pixmap
51                  end                  end
52                    
53          initialize is          initialize is
54                          -- Initialize `Current' with `model'.                          -- Initialize `Current' with `model'.
55                  do                  do
# Line 54  feature -- Status report Line 62  feature -- Status report
62    
63          is_iconified: BOOLEAN          is_iconified: BOOLEAN
64                          -- Is `Current' iconified.                          -- Is `Current' iconified.
65                    
66  feature -- Access  feature -- Access
67    
68          model: ES_CLUSTER          model: ES_CLUSTER
69                          -- Model for `Current'.                          -- Model for `Current'.
70                            
71          world: EIFFEL_WORLD is          world: EIFFEL_WORLD is
72                          -- World `Current' is part of.                          -- World `Current' is part of.
73                  do                  do
74                          Result ?= Precursor {EG_RESIZABLE_CLUSTER_FIGURE}                          Result ?= Precursor {EG_RESIZABLE_CLUSTER_FIGURE}
75                  end                  end
76                    
77            label_pixmap: EV_MODEL_PICTURE
78                            -- The pixmap for the label.
79    
80  feature -- Element change  feature -- Element change
81    
82          recycle is          recycle is
# Line 79  feature -- Element change Line 90  feature -- Element change
90                                  model.needed_on_diagram_changed_actions.prune_all (agent on_needed_on_diagram_changed)                                  model.needed_on_diagram_changed_actions.prune_all (agent on_needed_on_diagram_changed)
91                          end                          end
92                  end                  end
93                    
94                    
95          apply_right_angles is          apply_right_angles is
96                          -- Apply right angles to all links in `links' and all elements in `Current'.                          -- Apply right angles to all links in `links' and all elements in `Current'.
97                  local                  local
# Line 121  feature -- Element change Line 132  feature -- Element change
132                          end                          end
133                  end                  end
134    
135    feature -- XML
136    
137            group_id_string: STRING is "GROUP_ID"
138                            -- Group id
139    
140            cluster_id_string: STRING is "CLUSTER_ID"
141                            -- ES_CLUSTER id string
142    
143            xml_element (node: XM_ELEMENT): XM_ELEMENT is
144                            -- Xml element representing `Current's state.
145                    do
146                            Result := Precursor {EG_RESIZABLE_CLUSTER_FIGURE} (node)
147                            node.add_attribute (group_id_string, xml_namespace, model.group_id)
148                            node.add_attribute (cluster_id_string, xml_namespace, model.cluster_id)
149                    end
150    
151            set_with_xml_element (node: XM_ELEMENT) is
152                            -- Retrive state from `node'.
153                    do
154                            node.forth
155                            node.forth
156                            Precursor {EG_RESIZABLE_CLUSTER_FIGURE} (node)
157                                    -- Discard "CLUSTER_ID" and "GROUP_ID", since they have been read in factory.
158                    end
159    
160  feature {EG_LAYOUT} -- Layouting  feature {EG_LAYOUT} -- Layouting
161    
162          set_to_minimum_size is          set_to_minimum_size is
163                          -- Set `Current's to `minimum_size'.                          -- Set `Current's to `minimum_size'.
164                  deferred                  deferred
165                  end                  end
166                    
167  feature {EIFFEL_WORLD} -- Show/Hide  feature {EIFFEL_WORLD} -- Show/Hide
168    
169          disable_shown is          disable_shown is
# Line 136  feature {EIFFEL_WORLD} -- Show/Hide Line 172  feature {EIFFEL_WORLD} -- Show/Hide
172                  ensure                  ensure
173                          set: not is_shown                          set: not is_shown
174                  end                  end
175                    
176          enable_shown is          enable_shown is
177                          -- Show `Current'.                          -- Show `Current'.
178                  deferred                  deferred
179                  ensure                  ensure
180                          set: is_shown                          set: is_shown
181                  end                  end
182                    
183          is_shown: BOOLEAN          is_shown: BOOLEAN
184                          -- Is `Current' shown?                          -- Is `Current' shown?
185                    
186  feature {EIFFEL_CLUSTER_FIGURE} -- Expand/Collapse  feature {EIFFEL_CLUSTER_FIGURE} -- Expand/Collapse
187    
188          collapse is          collapse is
# Line 163  feature {EIFFEL_CLUSTER_FIGURE} -- Expan Line 199  feature {EIFFEL_CLUSTER_FIGURE} -- Expan
199                          until                          until
200                                  after                                  after
201                          loop                          loop
202                                  linkable_figure ?= item                                                  linkable_figure ?= item
203                                  if linkable_figure /= Void then                                  if linkable_figure /= Void then
204                                          if linkable_figure.is_show_requested then                                          if linkable_figure.is_show_requested then
205                                                  linkable_figure.hide                                                  linkable_figure.hide
# Line 193  feature {EIFFEL_CLUSTER_FIGURE} -- Expan Line 229  feature {EIFFEL_CLUSTER_FIGURE} -- Expan
229                          resizer_bottom_right.disable_sensitive                          resizer_bottom_right.disable_sensitive
230                          resizer_bottom_left.disable_sensitive                          resizer_bottom_left.disable_sensitive
231                  end                  end
232                    
233          expand is          expand is
234                          -- Show all not iconified elements in `Current'.                          -- Show all not iconified elements in `Current'.
235                  local                  local
# Line 248  feature {EIFFEL_CLUSTER_FIGURE} -- Expan Line 284  feature {EIFFEL_CLUSTER_FIGURE} -- Expan
284                          resizer_bottom_right.enable_sensitive                          resizer_bottom_right.enable_sensitive
285                          resizer_bottom_left.enable_sensitive                          resizer_bottom_left.enable_sensitive
286                  end                  end
287                    
288  feature {NONE} -- Implementation  feature {NONE} -- Implementation
289    
290          on_needed_on_diagram_changed is          on_needed_on_diagram_changed is
# Line 269  feature {NONE} -- Implementation Line 305  feature {NONE} -- Implementation
305                  do                  do
306                          saved_x := port_x                          saved_x := port_x
307                          saved_y := port_y                          saved_y := port_y
308                            
309                  end                  end
310                    
311          saved_x, saved_y: INTEGER          saved_x, saved_y: INTEGER
312                          -- Saved positions.                          -- Saved positions.
313                            
314          on_move (ax, ay: INTEGER; x_tilt, y_tilt, pressure: DOUBLE; screen_x, screen_y: INTEGER) is          on_move (ax, ay: INTEGER; x_tilt, y_tilt, pressure: DOUBLE; screen_x, screen_y: INTEGER) is
315                          -- Cluster is moving.                          -- Cluster is moving.
316                  do                  do
# Line 298  feature {NONE} -- Implementation Line 334  feature {NONE} -- Implementation
334                                  set_is_fixed (True)                                  set_is_fixed (True)
335                          end                          end
336                  end                  end
337                    
338          on_linkable_add (a_linkable: EG_LINKABLE) is          on_linkable_add (a_linkable: EG_LINKABLE) is
339                          -- `a_linkable' was added to the cluster.                          -- `a_linkable' was added to the cluster.
340                  local                  local
# Line 319  feature {NONE} -- Implementation Line 355  feature {NONE} -- Implementation
355                                  end                                  end
356                                  extend (linkable_fig)                                  extend (linkable_fig)
357                                  linkable_fig.set_cluster (Current)                                  linkable_fig.set_cluster (Current)
358                                    
359                                  from                                  from
360                                          l_world.links.start                                          l_world.links.start
361                                  until                                  until
# Line 356  feature {NONE} -- Implementation Line 392  feature {NONE} -- Implementation
392                          end                          end
393                          request_update                          request_update
394                  end                  end
395                    
396          on_handle_start is          on_handle_start is
397                          -- User started to move `Current'.                          -- User started to move `Current'.
398                  do                  do
# Line 365  feature {NONE} -- Implementation Line 401  feature {NONE} -- Implementation
401                                  set_is_fixed (True)                                  set_is_fixed (True)
402                          end                          end
403                  end                  end
404                    
405          on_handle_end is          on_handle_end is
406                          -- User ended to move `Current'.                          -- User ended to move `Current'.
407                  do                  do
# Line 390  feature {NONE} -- Implementation Line 426  feature {NONE} -- Implementation
426                                  i := i + 1                                  i := i + 1
427                          end                          end
428                  end                  end
429                    
430          on_pebble_request: CLUSTER_STONE is          on_pebble_request: CLUSTER_FIGURE_STONE is
431                          -- Pebble request.                          -- Pebble request.
432                  do                  do
433                          if model /= Void then                          if model /= Void then
434                                  create Result.make (model.cluster_i)                                  create Result.make (Current)
435                          end                          end
436                  end                  end
437    

Legend:
Removed from v.58325  
changed lines
  Added in v.58518

  ViewVC Help
Powered by ViewVC 1.1.23