note description: "Set of Extensions for Estudio debug menu ..." legal: "See notice at end of class." status: "See notice at end of class." date: "$Date$" revision: "$Revision$" deferred class ESTUDIO_DEBUG_EXTENSION_SET feature {NONE} -- Initialization make (m: ESTUDIO_DEBUG_MENU) -- Initialize `Current'. do estudio_debug_menu := m end estudio_debug_menu: ESTUDIO_DEBUG_MENU feature -- Access is_valid: BOOLEAN do Result := not extensions.is_empty end extensions: ARRAY [detachable ESTUDIO_DEBUG_EXTENSION] deferred end feature -- Change frozen attach_to_menu (a_menu: EV_MENU) require is_valid: is_valid local m: EV_MENU l_exts: like extensions e: detachable ESTUDIO_DEBUG_EXTENSION i: INTEGER do if a_menu /= Void then m := a_menu else m := estudio_debug_menu end from l_exts := extensions i := l_exts.lower until i > l_exts.upper loop e := l_exts [i] if e /= Void then e.attach_to_menu (m) else m.extend (create {EV_MENU_SEPARATOR}) end i := i + 1 end end note copyright: "Copyright (c) 1984-2010, Eiffel Software" license: "GPL version 2 (see http://www.eiffel.com/licensing/gpl.txt)" licensing_options: "http://www.eiffel.com/licensing" copying: "[ This file is part of Eiffel Software's Eiffel Development Environment. Eiffel Software's Eiffel Development Environment is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2 of the License (available at the URL listed under "license" above). Eiffel Software's Eiffel Development Environment is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with Eiffel Software's Eiffel Development Environment; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA ]" source: "[ Eiffel Software 5949 Hollister Ave., Goleta, CA 93117 USA Telephone 805-685-1006, Fax 805-685-6869 Website http://www.eiffel.com Customer support http://support.eiffel.com ]" end