/[eiffelstudio]/branches/Eiffel_57_docking/Src/Eiffel/interface/new_graphical/formatters/eb_class_info_formatter.e
ViewVC logotype

Contents of /branches/Eiffel_57_docking/Src/Eiffel/interface/new_graphical/formatters/eb_class_info_formatter.e

Parent Directory Parent Directory | Revision Log Revision Log


Revision 61912 - (show annotations)
Sun Jul 30 05:54:26 2006 UTC (13 years, 4 months ago) by manus
File size: 4124 byte(s)
EiffelStudio docking branch. It only contains modified classes needed to get the docking version of EiffelStudio.
1 indexing
2 description : "Command to display information concerning a compiled class."
3 legal: "See notice at end of class."
4 status: "See notice at end of class."
5 author : "Xavier Rousselot"
6 date : "$Date$"
7 revision : "$Revision$"
8
9 deferred class
10 EB_CLASS_INFO_FORMATTER
11
12 inherit
13 EB_FORMATTER
14 redefine
15 new_button
16 end
17
18 SHARED_FORMAT_INFO
19
20 feature -- Access
21
22 new_button: EV_TOOL_BAR_RADIO_BUTTON is
23 -- Create a new toolbar button and associate it with `Current'.
24 do
25 Result := Precursor
26 Result.drop_actions.extend (agent on_class_drop)
27 end
28
29 feature -- Properties
30
31 associated_class: CLASS_C
32 -- Class about which information is displayed.
33
34 is_dotnet_formatter: BOOLEAN is
35 -- Is Current able to format .NET class texts?
36 deferred
37 end
38
39 is_dotnet_mode: BOOLEAN
40 -- Is Current class a .NET class?
41
42 feature -- Status setting
43
44 set_dotnet_mode (a_flag: BOOLEAN) is
45 -- Set whether formatting in .NET mode to 'a_flag'
46 do
47 is_dotnet_mode := a_flag
48 ensure
49 mode_is_flag: is_dotnet_mode = a_flag
50 end
51
52 feature -- Formatting
53
54 save_in_file is
55 -- Save output format to a file.
56 require else
57 class_non_void: associated_class /= Void
58 do
59 --|FIXME XR: To be implemented.
60 end
61
62 feature {NONE} -- Implementation
63
64 reset_display is
65 -- Clear all graphical output.
66 deferred
67 end
68
69 file_name: FILE_NAME is
70 -- Name of the file in which displayed information may be stored.
71 require else
72 class_non_void: associated_class /= Void
73 do
74 create Result.make_from_string (associated_class.name)
75 Result.add_extension (post_fix)
76 end
77
78 temp_header: STRING is
79 -- Temporary header displayed during the format processing.
80 do
81 Result := Interface_names.l_Working_formatter.twin
82 Result.append (command_name)
83 Result.append (Interface_names.l_Of_class)
84 if associated_class /= Void then
85 Result.append (associated_class.name)
86 else
87
88 end
89
90 Result.append (Interface_names.l_Three_dots)
91 end
92
93 header: STRING is
94 -- Header displayed when current formatter is selected.
95 do
96 if associated_class /= Void then
97 Result := capital_command_name.twin
98 Result.append (Interface_names.l_Of_class)
99 Result.append (associated_class.name_in_upper)
100 else
101 Result := Interface_names.l_Not_in_system_no_info
102 end
103 end
104
105 feature {NONE} -- Properties
106
107 on_class_drop (cs: CLASSI_STONE) is
108 -- Notify `manager' of the dropping of `cs'.
109 do
110 if not selected then
111 execute
112 end
113 manager.set_stone (cs)
114 end
115
116 empty_widget: EV_WIDGET is
117 -- Widget displayed when no information can be displayed.
118 local
119 def: EV_STOCK_COLORS
120 do
121 create def
122 create {EV_CELL} Result
123 Result.set_background_color (def.White)
124 Result.drop_actions.extend (agent on_class_drop)
125 end
126
127 indexing
128 copyright: "Copyright (c) 1984-2006, Eiffel Software"
129 license: "GPL version 2 (see http://www.eiffel.com/licensing/gpl.txt)"
130 licensing_options: "http://www.eiffel.com/licensing"
131 copying: "[
132 This file is part of Eiffel Software's Eiffel Development Environment.
133
134 Eiffel Software's Eiffel Development Environment is free
135 software; you can redistribute it and/or modify it under
136 the terms of the GNU General Public License as published
137 by the Free Software Foundation, version 2 of the License
138 (available at the URL listed under "license" above).
139
140 Eiffel Software's Eiffel Development Environment is
141 distributed in the hope that it will be useful, but
142 WITHOUT ANY WARRANTY; without even the implied warranty
143 of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
144 See the GNU General Public License for more details.
145
146 You should have received a copy of the GNU General Public
147 License along with Eiffel Software's Eiffel Development
148 Environment; if not, write to the Free Software Foundation,
149 Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
150 ]"
151 source: "[
152 Eiffel Software
153 356 Storke Road, Goleta, CA 93117 USA
154 Telephone 805-685-1006, Fax 805-685-6869
155 Website http://www.eiffel.com
156 Customer support http://support.eiffel.com
157 ]"
158
159 end -- class EB_CLASS_INFO_FORMATTER
160

Properties

Name Value
svn:eol-style native
svn:keywords Author Date Id Revision

  ViewVC Help
Powered by ViewVC 1.1.23