source: trunk/source/interfaces/html/G4UIWin32_8hh-source.html@ 833

Last change on this file since 833 was 571, checked in by garnier, 18 years ago

r581@mac-90108: laurentgarnier | 2007-08-17 17:30:26 +0200
deplacement de frame

  • Property svn:mime-type set to text/html
File size: 12.2 KB
Line 
1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
3<title>G4UIWin32.hh Source File</title>
4<link href="doxygen.css" rel="stylesheet" type="text/css">
5</head><body>
6<!-- Generated by Doxygen 1.3.4 -->
7<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
8<h1>G4UIWin32.hh</h1><a href="G4UIWin32_8hh.html">Go to the documentation of this file.</a><div class="fragment"><pre>00001 <span class="comment">//</span>
900002 <span class="comment">// ********************************************************************</span>
1000003 <span class="comment">// * License and Disclaimer *</span>
1100004 <span class="comment">// * *</span>
1200005 <span class="comment">// * The Geant4 software is copyright of the Copyright Holders of *</span>
1300006 <span class="comment">// * the Geant4 Collaboration. It is provided under the terms and *</span>
1400007 <span class="comment">// * conditions of the Geant4 Software License, included in the file *</span>
1500008 <span class="comment">// * LICENSE and available at http://cern.ch/geant4/license . These *</span>
1600009 <span class="comment">// * include a list of copyright holders. *</span>
1700010 <span class="comment">// * *</span>
1800011 <span class="comment">// * Neither the authors of this software system, nor their employing *</span>
1900012 <span class="comment">// * institutes,nor the agencies providing financial support for this *</span>
2000013 <span class="comment">// * work make any representation or warranty, express or implied, *</span>
2100014 <span class="comment">// * regarding this software system or assume any liability for its *</span>
2200015 <span class="comment">// * use. Please see the license in the file LICENSE and URL above *</span>
2300016 <span class="comment">// * for the full disclaimer and the limitation of liability. *</span>
2400017 <span class="comment">// * *</span>
2500018 <span class="comment">// * This code implementation is the result of the scientific and *</span>
2600019 <span class="comment">// * technical work of the GEANT4 collaboration. *</span>
2700020 <span class="comment">// * By using, copying, modifying or distributing the software (or *</span>
2800021 <span class="comment">// * any work based on the software) you agree to acknowledge its *</span>
2900022 <span class="comment">// * use in resulting scientific publications, and indicate your *</span>
3000023 <span class="comment">// * acceptance of all terms of the Geant4 Software license. *</span>
3100024 <span class="comment">// ********************************************************************</span>
3200025 <span class="comment">//</span>
3300026 <span class="comment">//</span>
3400027 <span class="comment">// $Id: G4UIWin32.hh,v 1.14 2006/06/29 19:09:29 gunter Exp $</span>
3500028 <span class="comment">// GEANT4 tag $Name: geant4-08-01-patch-01 $</span>
3600029 <span class="comment">//</span>
3700030 <span class="preprocessor">#ifndef G4UIWin32_h</span>
3800031 <span class="preprocessor"></span><span class="preprocessor">#define G4UIWin32_h </span>
3900032 <span class="preprocessor"></span>
4000033 <span class="preprocessor">#if defined(G4UI_BUILD_WIN32_SESSION) || defined(G4UI_USE_WIN32)</span>
4100034 <span class="preprocessor"></span>
4200035 <span class="preprocessor">#include &lt;map&gt;</span>
4300036 <span class="preprocessor">#include &lt;vector&gt;</span>
4400037
4500038 <span class="preprocessor">#include "<a class="code" href="G4VBasicShell_8hh.html">G4VBasicShell.hh</a>"</span>
4600039 <span class="preprocessor">#include "<a class="code" href="G4VInteractiveSession_8hh.html">G4VInteractiveSession.hh</a>"</span>
4700040
4800041 <span class="preprocessor">#include "<a class="code" href="G4Win32_8hh.html">G4Win32.hh</a>"</span>
4900042
5000043 <span class="keyword">class </span><a class="code" href="classG4VInteractorManager.html">G4VInteractorManager</a>;
5100044
5200045 <span class="comment">// Class description :</span>
5300046 <span class="comment">//</span>
5400047 <span class="comment">// G4UIWin32 : class to handle a Windows interactive session.</span>
5500048 <span class="comment">// G4UIWin32 is the Windows version of G4UIterminal.</span>
5600049 <span class="comment">//</span>
5700050 <span class="comment">// A command box is at disposal for entering/recalling Geant4 commands.</span>
5800051 <span class="comment">// A menubar could be customized through the AddMenu, AddButton methods.</span>
5900052 <span class="comment">// Note that there are corresponding Geant4 commands to add a </span>
6000053 <span class="comment">// menus in the menubar and add buttons in a menu.</span>
6100054 <span class="comment">// Ex : </span>
6200055 <span class="comment">// /gui/addMenu test Test</span>
6300056 <span class="comment">// /gui/addButton test Init /run/initialize</span>
6400057 <span class="comment">// /gui/addButton test "Set gun" "/control/execute gun.g4m"</span>
6500058 <span class="comment">// /gui/addButton test "Run one event" "/run/beamOn 1"</span>
6600059 <span class="comment">//</span>
6700060 <span class="comment">// Command completion, by typing "tab" key, is available on the </span>
6800061 <span class="comment">// command line.</span>
6900062 <span class="comment">//</span>
7000063 <span class="comment">// Class description - end :</span>
7100064
72<a name="l00065"></a><a class="code" href="classG4UIWin32.html">00065</a> <span class="keyword">class </span><a class="code" href="classG4UIWin32.html">G4UIWin32</a> : <span class="keyword">public</span> <a class="code" href="classG4VBasicShell.html">G4VBasicShell</a>, <span class="keyword">public</span> <a class="code" href="classG4VInteractiveSession.html">G4VInteractiveSession</a> {
7300066 <span class="keyword">public</span>: <span class="comment">// With description</span>
7400067 <a class="code" href="classG4UIWin32.html#a0">G4UIWin32</a>();
7500068 <span class="comment">// The WinMain arguments have to be given.</span>
7600069 G4UIsession* <a class="code" href="classG4UIWin32.html#a1">SessionStart</a> ();
7700070 <span class="comment">// To enter interactive Win32 loop ; waiting/executing command,...</span>
7800071 <span class="keywordtype">void</span> <a class="code" href="classG4UIWin32.html#a2">AddMenu</a> (<span class="keyword">const</span> <span class="keywordtype">char</span>*,<span class="keyword">const</span> <span class="keywordtype">char</span>*);
7900072 <span class="comment">// To add a pulldown menu in the menu bar. </span>
8000073 <span class="comment">// First argument is the name of the menu.</span>
8100074 <span class="comment">// Second argument is the label of the cascade button.</span>
8200075 <span class="comment">// Ex : AddMenu("my_menu","My menu")</span>
8300076 <span class="keywordtype">void</span> <a class="code" href="classG4UIWin32.html#a3">AddButton</a> (<span class="keyword">const</span> <span class="keywordtype">char</span>*,<span class="keyword">const</span> <span class="keywordtype">char</span>*,<span class="keyword">const</span> <span class="keywordtype">char</span>*);
8400077 <span class="comment">// To add a push button in a pulldown menu.</span>
8500078 <span class="comment">// First argument is the name of the menu.</span>
8600079 <span class="comment">// Second argument is the label of the button.</span>
8700080 <span class="comment">// Third argument is the Geant4 command executed when the button is fired.</span>
8800081 <span class="comment">// Ex : AddButton("my_menu","Run","/run/beamOn 1"); </span>
8900082 <span class="keyword">public</span>:
9000083 <a class="code" href="classG4UIWin32.html#a4">~G4UIWin32</a> ();
9100084 <span class="keywordtype">void</span> <a class="code" href="classG4UIWin32.html#a5">Prompt</a> (G4String);
9200085 <span class="keywordtype">void</span> <a class="code" href="classG4UIWin32.html#a6">SessionTerminate</a> ();
9300086 <span class="keywordtype">void</span> <a class="code" href="classG4UIWin32.html#a7">PauseSessionStart</a> (G4String);
9400087 G4int <a class="code" href="classG4UIWin32.html#a8">ReceiveG4cout</a>(G4String);
9500088 G4int <a class="code" href="classG4UIWin32.html#a9">ReceiveG4cerr</a>(G4String);
9600089 G4String <a class="code" href="classG4UIWin32.html#a10">GetCommand</a> (<span class="keywordtype">int</span>);
9700090 <span class="keywordtype">void</span> <a class="code" href="classG4UIWin32.html#a11">TextAppendString</a>(<span class="keywordtype">char</span>*);
9800091 <span class="keyword">private</span>:
9900092 <span class="keywordtype">void</span> <a class="code" href="classG4UIWin32.html#d0">SecondaryLoop</a> (G4String);
10000093 G4bool <a class="code" href="classG4UIWin32.html#d1">GetHelpChoice</a>(G4int&amp;);
10100094 <span class="keywordtype">void</span> <a class="code" href="classG4UIWin32.html#d2">ExitHelp</a>();
10200095 <span class="keyword">private</span>:
103<a name="l00096"></a><a class="code" href="classG4UIWin32.html#r0">00096</a> <a class="code" href="classG4VInteractorManager.html">G4VInteractorManager</a>* <a class="code" href="classG4UIWin32.html#r0">interactorManager</a>;
104<a name="l00097"></a><a class="code" href="classG4UIWin32.html#r1">00097</a> HWND <a class="code" href="classG4UIWin32.html#r1">mainWindow</a>;
105<a name="l00098"></a><a class="code" href="classG4UIWin32.html#r2">00098</a> HWND <a class="code" href="classG4UIWin32.html#r2">textWindow</a>,<a class="code" href="classG4UIWin32.html#r3">editWindow</a>;
106<a name="l00099"></a><a class="code" href="classG4UIWin32.html#r4">00099</a> HMENU <a class="code" href="classG4UIWin32.html#r4">menuBar</a>,<a class="code" href="classG4UIWin32.html#r5">defaultMenu</a>;
107<a name="l00100"></a><a class="code" href="classG4UIWin32.html#r6">00100</a> std::map&lt;int,G4String, std::less&lt;int&gt; &gt; <a class="code" href="classG4UIWin32.html#r6">commands</a>;
108<a name="l00101"></a><a class="code" href="classG4UIWin32.html#r7">00101</a> <span class="keywordtype">void</span>* <a class="code" href="classG4UIWin32.html#r7">textBuffer</a>;
109<a name="l00102"></a><a class="code" href="classG4UIWin32.html#r8">00102</a> <span class="keywordtype">int</span> <a class="code" href="classG4UIWin32.html#r8">textRows</a>,<a class="code" href="classG4UIWin32.html#r9">textCols</a>;
11000103 <span class="keyword">static</span> LRESULT CALLBACK <a class="code" href="classG4UIWin32.html#h0">MainWindowProc</a>(HWND,UINT,WPARAM,LPARAM);
11100104 <span class="keyword">static</span> LRESULT CALLBACK <a class="code" href="classG4UIWin32.html#h1">TextWindowProc</a>(HWND,UINT,WPARAM,LPARAM);
11200105 <span class="keyword">static</span> LRESULT CALLBACK <a class="code" href="classG4UIWin32.html#h2">EditWindowProc</a>(HWND,UINT,WPARAM,LPARAM);
113<a name="l00106"></a><a class="code" href="classG4UIWin32.html#r10">00106</a> G4bool <a class="code" href="classG4UIWin32.html#r10">fHelp</a>;
114<a name="l00107"></a><a class="code" href="classG4UIWin32.html#r11">00107</a> G4int <a class="code" href="classG4UIWin32.html#r11">fHelpChoice</a>;
115<a name="l00108"></a><a class="code" href="classG4UIWin32.html#r12">00108</a> std::vector&lt;G4String&gt; <a class="code" href="classG4UIWin32.html#r12">fHistory</a>;
116<a name="l00109"></a><a class="code" href="classG4UIWin32.html#r13">00109</a> <span class="keywordtype">int</span> <a class="code" href="classG4UIWin32.html#r13">fHistoryPos</a>;
11700110 };
11800111
11900112 <span class="preprocessor">#endif</span>
12000113 <span class="preprocessor"></span>
12100114 <span class="preprocessor">#endif</span>
12200115 <span class="preprocessor"></span>
123</pre></div><hr size="1"><address style="align: right;"><small>Generated on Fri Jun 22 11:07:02 2007 by
124<a href="http://www.doxygen.org/index.html">
125<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
126</a>1.3.4 </small></address>
127</body>
128</html>
Note: See TracBrowser for help on using the repository browser.