diff options
Diffstat (limited to 'lib/pman/src/pman_module_info.erl')
-rw-r--r-- | lib/pman/src/pman_module_info.erl | 133 |
1 files changed, 0 insertions, 133 deletions
diff --git a/lib/pman/src/pman_module_info.erl b/lib/pman/src/pman_module_info.erl deleted file mode 100644 index 944fd4a462..0000000000 --- a/lib/pman/src/pman_module_info.erl +++ /dev/null @@ -1,133 +0,0 @@ -%% -%% %CopyrightBegin% -%% -%% Copyright Ericsson AB 1997-2012. All Rights Reserved. -%% -%% The contents of this file are subject to the Erlang Public License, -%% Version 1.1, (the "License"); you may not use this file except in -%% compliance with the License. You should have received a copy of the -%% Erlang Public License along with this software. If not, it can be -%% retrieved online at http://www.erlang.org/. -%% -%% Software distributed under the License is distributed on an "AS IS" -%% basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See -%% the License for the specific language governing rights and limitations -%% under the License. -%% -%% %CopyrightEnd% -%% --module(pman_module_info). --compile([{nowarn_deprecated_function,{gs,config,2}}, - {nowarn_deprecated_function,{gs,start,1}}]). - -%% Window with module information (View->Module Info...) - -%% External exports --export([start/1]). - -%% Record for keeping the loop state for the -%% module info process. --record(state, {topwin, % GS identifier for top window - editor, % GS identifier for editor - module, % Name of the viewed module - parent}). % Pid of the parent - -start(Module) -> - Self = self(), - spawn_link(fun() -> init(Module, Self) end). - -init(Module, Parent) -> - process_flag(trap_exit, true), - - GS = gs:start([{kernel,true}]), - Font = pman_win:font(GS), - - WinTitle = lists:flatten(io_lib:format("Pman - Module Info: ~p", - [Module])), - WinOptions = [{title,WinTitle}, {width,550}, {height, 400}, - {configure,true}, {keypress,true}, {destroy,true}], - TopWindow = gse:window(GS, WinOptions), - - %% File menu - MenuBar = gse:menubar(TopWindow, []), - MBFile = gse:menubutton(MenuBar, [{label,{text," File "}}, - {font,Font}, {underline, 1}]), - MenuFile = gse:menu(MBFile, []), - - gse:named_menuitem('Save buffer', MenuFile, - [{label,{text,"Save buffer..."}}, - {font,Font}, {underline,0}]), - gse:named_menuitem('Close', MenuFile, - [{label,{text,"Close"}}, - {font,Font}, {underline,0}]), - - %% Output part of window - Editor = gse:editor(TopWindow, - [{font,Font}, - {x,3}, {y,40}, {width,546}, {height,348}]), - gse:config(Editor, [{keypress,true}, - {insert,{'end',pman_win:module_data(Module)}}]), - gse:config(Editor, [{enable,false}, - {vscroll,right}, {hscroll,bottom}, - {wrap,none}]), - gse:map(TopWindow), - - State = #state{topwin=TopWindow, editor=Editor, module=Module, - parent=Parent}, - loop(State). - -loop(State) -> - - receive - %% Die if the parent dies - {'EXIT', Pid, _Reason} when Pid==State#state.parent -> - gse:destroy(State#state.topwin); - - %% Ignore other exit signals (from file dialog window) - {'EXIT', _Pid, _Reason} -> - loop(State); - - %% Window closed - {gs, _TopWindow, destroy, [], []} -> - ok; - - %% Window resized or moved - {gs, _TopWindow, configure ,_Data, [W,H,_X,_Y|_]} -> - gs:config(State#state.editor, [{width,W-3}, {height,H-40}]), - loop(State); - - %% Close - destroy window and exit process - {gs, 'Close', click, _Data, _Args} -> - gse:destroy(State#state.topwin), - ok; - - %% Save Buffer - make filename and save buffer to file - {gs, 'Save buffer', click, _Data, _Args} -> - save_buffer(State), - loop(State); - - %% Keyboard accelerator commands - {gs, _, keypress, [], [c,_,0,1]} -> % 'Close' - gse:destroy(State#state.topwin), - ok; - {gs, _, keypress, [], [s,_,0,1]} -> % 'Save buffer' - save_buffer(State), - loop(State); - {gs, _, keypress, _Data, _Args} -> - loop(State) - end. - -save_buffer(State) -> - DefaultFile = atom_to_list(State#state.module) ++ ".module_info", - Result = tool_utils:file_dialog([{type,save}, {file,DefaultFile}]), - case Result of - %% User selected a file, now save the result - {ok, File, _Dir} -> - gs:config(State#state.editor, {save,File}), - Msg = "Module information saved in file\n" ++ File, - tool_utils:notify(State#state.topwin, Msg); - - %% File dialog was cancelled in some way. - {error, _Reason} -> - ignore - end. |