|
@@ -8,7 +8,7 @@
|
|
<link rel="prev" href="../../tutorials/how-to/articles/pbr/pbr_part3.html">
|
|
<link rel="prev" href="../../tutorials/how-to/articles/pbr/pbr_part3.html">
|
|
<link rel="next" href="../system/appsettings.html">
|
|
<link rel="next" href="../system/appsettings.html">
|
|
<meta name="keywords" content="display, basegame, documentation, intro, intermediate, init, input, game, loop, rootnode, application, simpleapplication">
|
|
<meta name="keywords" content="display, basegame, documentation, intro, intermediate, init, input, game, loop, rootnode, application, simpleapplication">
|
|
- <meta name="generator" content="Antora 2.3.3">
|
|
|
|
|
|
+ <meta name="generator" content="Antora 3.0.1">
|
|
<link rel="stylesheet" href="../../../../_/css/site.css">
|
|
<link rel="stylesheet" href="../../../../_/css/site.css">
|
|
<meta property="og:image" content="https://wiki.jmonkeyengine.org/_/img/iconx128.png">
|
|
<meta property="og:image" content="https://wiki.jmonkeyengine.org/_/img/iconx128.png">
|
|
<meta property="og:description" content="SimpleApplication">
|
|
<meta property="og:description" content="SimpleApplication">
|
|
@@ -953,7 +953,7 @@
|
|
<li class="component is-current">
|
|
<li class="component is-current">
|
|
<span class="title">JME</span>
|
|
<span class="title">JME</span>
|
|
<ul class="versions">
|
|
<ul class="versions">
|
|
- <li class="version is-latest">
|
|
|
|
|
|
+ <li class="version">
|
|
<a href="../../../3.4/documentation.html">3.4</a>
|
|
<a href="../../../3.4/documentation.html">3.4</a>
|
|
</li>
|
|
</li>
|
|
<li class="version">
|
|
<li class="version">
|
|
@@ -967,7 +967,7 @@
|
|
<li class="component">
|
|
<li class="component">
|
|
<span class="title">Wiki Contribution</span>
|
|
<span class="title">Wiki Contribution</span>
|
|
<ul class="versions">
|
|
<ul class="versions">
|
|
- <li class="version is-latest">
|
|
|
|
|
|
+ <li class="version">
|
|
<a href="../../../../docs-wiki/3.4/wiki_contributor.html">3.4</a>
|
|
<a href="../../../../docs-wiki/3.4/wiki_contributor.html">3.4</a>
|
|
</li>
|
|
</li>
|
|
</ul>
|
|
</ul>
|
|
@@ -975,7 +975,7 @@
|
|
<li class="component">
|
|
<li class="component">
|
|
<span class="title">Wiki UI</span>
|
|
<span class="title">Wiki UI</span>
|
|
<ul class="versions">
|
|
<ul class="versions">
|
|
- <li class="version is-latest">
|
|
|
|
|
|
+ <li class="version">
|
|
<a href="../../../../wiki-ui/index.html">master</a>
|
|
<a href="../../../../wiki-ui/index.html">master</a>
|
|
</li>
|
|
</li>
|
|
</ul>
|
|
</ul>
|
|
@@ -1024,7 +1024,7 @@
|
|
</td>
|
|
</td>
|
|
<td class="content">
|
|
<td class="content">
|
|
<div class="paragraph">
|
|
<div class="paragraph">
|
|
-<p>For each game, you (directly or indirectly) extend SimpleApplication exactly once as the central class. If you need access to any SimpleApplication features from another game class, make the other class extend <a href="state/application_states.html" class="page">AbstractAppState</a> (don’t extend SimpleApplication once more).</p>
|
|
|
|
|
|
+<p>For each game, you (directly or indirectly) extend SimpleApplication exactly once as the central class. If you need access to any SimpleApplication features from another game class, make the other class extend <a href="state/application_states.html" class="xref page">AbstractAppState</a> (don’t extend SimpleApplication once more).</p>
|
|
</div>
|
|
</div>
|
|
</td>
|
|
</td>
|
|
</tr>
|
|
</tr>
|
|
@@ -1037,7 +1037,7 @@
|
|
<i class="fa icon-note" title="Note"></i>
|
|
<i class="fa icon-note" title="Note"></i>
|
|
</td>
|
|
</td>
|
|
<td class="content">
|
|
<td class="content">
|
|
-The SimpleApplication class is undergoing changes. To understand how these changes may affect your projects and how to best prepare for them, see <a href="../../tutorials/beginner/hello_simpleapplication.html#the-future-of-simpleapplication" class="page">The Future of SimpleApplication</a> topic in the “Hello SimpleApplication” tutorial for beginners.
|
|
|
|
|
|
+The SimpleApplication class is undergoing changes. To understand how these changes may affect your projects and how to best prepare for them, see <a href="../../tutorials/beginner/hello_simpleapplication.html#the-future-of-simpleapplication" class="xref page">The Future of SimpleApplication</a> topic in the “Hello SimpleApplication” tutorial for beginners.
|
|
</td>
|
|
</td>
|
|
</tr>
|
|
</tr>
|
|
</table>
|
|
</table>
|
|
@@ -1102,7 +1102,7 @@ public class MyBaseGame extends SimpleApplication {
|
|
getViewPort()</p>
|
|
getViewPort()</p>
|
|
</div></div></td>
|
|
</div></div></td>
|
|
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
|
|
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
|
|
-<p>The view object for the default camera. You can register advanced <a href="../effect/effects_overview.html" class="page">post-processor filters</a> here.</p>
|
|
|
|
|
|
+<p>The view object for the default camera. You can register advanced <a href="../effect/effects_overview.html" class="xref page">post-processor filters</a> here.</p>
|
|
</div></div></td>
|
|
</div></div></td>
|
|
</tr>
|
|
</tr>
|
|
<tr>
|
|
<tr>
|
|
@@ -1112,7 +1112,7 @@ setSettings()</p>
|
|
</div></div></td>
|
|
</div></div></td>
|
|
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
|
|
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
|
|
<p>Use this AppSettings object to specify the display width and height (by default 640x480), color bit depth, z-buffer bits, anti-aliasing samples, and update frequency, video and audio renderer, asset manager.<br>
|
|
<p>Use this AppSettings object to specify the display width and height (by default 640x480), color bit depth, z-buffer bits, anti-aliasing samples, and update frequency, video and audio renderer, asset manager.<br>
|
|
-See: <a href="../system/appsettings.html" class="page">AppSettings</a>.</p>
|
|
|
|
|
|
+See: <a href="../system/appsettings.html" class="xref page">AppSettings</a>.</p>
|
|
</div></div></td>
|
|
</div></div></td>
|
|
</tr>
|
|
</tr>
|
|
<tr>
|
|
<tr>
|
|
@@ -1121,7 +1121,7 @@ See: <a href="../system/appsettings.html" class="page">AppSettings</a>.</p>
|
|
getCamera()</p>
|
|
getCamera()</p>
|
|
</div></div></td>
|
|
</div></div></td>
|
|
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
|
|
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
|
|
-<p>The default <a href="../renderer/camera.html" class="page">camera</a> provides perspective projection, 45° field of view, near plane = 1 wu, far plane = 1000 wu.</p>
|
|
|
|
|
|
+<p>The default <a href="../renderer/camera.html" class="xref page">camera</a> provides perspective projection, 45° field of view, near plane = 1 wu, far plane = 1000 wu.</p>
|
|
</div></div></td>
|
|
</div></div></td>
|
|
</tr>
|
|
</tr>
|
|
<tr>
|
|
<tr>
|
|
@@ -1131,7 +1131,7 @@ getAssetManager()</p>
|
|
</div></div></td>
|
|
</div></div></td>
|
|
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
|
|
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
|
|
<p>An object that manages paths for loading models, textures, materials, sounds, etc.<br>
|
|
<p>An object that manages paths for loading models, textures, materials, sounds, etc.<br>
|
|
-By default the <a href="../asset/asset_manager.html" class="page">Asset Manager</a> paths are relative to your project’s root directory.</p>
|
|
|
|
|
|
+By default the <a href="../asset/asset_manager.html" class="xref page">Asset Manager</a> paths are relative to your project’s root directory.</p>
|
|
</div></div></td>
|
|
</div></div></td>
|
|
</tr>
|
|
</tr>
|
|
<tr>
|
|
<tr>
|
|
@@ -1140,7 +1140,7 @@ By default the <a href="../asset/asset_manager.html" class="page">Asset Manager<
|
|
getAudioRenderer()</p>
|
|
getAudioRenderer()</p>
|
|
</div></div></td>
|
|
</div></div></td>
|
|
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
|
|
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
|
|
-<p>This object gives you access to the jME3 <a href="../audio/audio.html" class="page">audio</a> system.</p>
|
|
|
|
|
|
+<p>This object gives you access to the jME3 <a href="../audio/audio.html" class="xref page">audio</a> system.</p>
|
|
</div></div></td>
|
|
</div></div></td>
|
|
</tr>
|
|
</tr>
|
|
<tr>
|
|
<tr>
|
|
@@ -1149,7 +1149,7 @@ getAudioRenderer()</p>
|
|
getListener()</p>
|
|
getListener()</p>
|
|
</div></div></td>
|
|
</div></div></td>
|
|
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
|
|
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
|
|
-<p>This object represents the user’s ear for the jME3 <a href="../audio/audio.html" class="page">audio</a> system.</p>
|
|
|
|
|
|
+<p>This object represents the user’s ear for the jME3 <a href="../audio/audio.html" class="xref page">audio</a> system.</p>
|
|
</div></div></td>
|
|
</div></div></td>
|
|
</tr>
|
|
</tr>
|
|
<tr>
|
|
<tr>
|
|
@@ -1158,7 +1158,7 @@ getListener()</p>
|
|
getInputManager()</p>
|
|
getInputManager()</p>
|
|
</div></div></td>
|
|
</div></div></td>
|
|
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
|
|
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
|
|
-<p>Use the <a href="../input/input_handling.html" class="page">inputManager</a> to configure your custom inputs (mouse movement, clicks, key presses, etc) and set mouse pointer visibility.</p>
|
|
|
|
|
|
+<p>Use the <a href="../input/input_handling.html" class="xref page">inputManager</a> to configure your custom inputs (mouse movement, clicks, key presses, etc) and set mouse pointer visibility.</p>
|
|
</div></div></td>
|
|
</div></div></td>
|
|
</tr>
|
|
</tr>
|
|
<tr>
|
|
<tr>
|
|
@@ -1167,7 +1167,7 @@ getInputManager()</p>
|
|
getStateManager()</p>
|
|
getStateManager()</p>
|
|
</div></div></td>
|
|
</div></div></td>
|
|
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
|
|
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
|
|
-<p>You use the Application’s state manager to activate <a href="state/application_states.html" class="page">AppStates</a>, such as <a href="../../physics/physics.html" class="page">Physics</a>.</p>
|
|
|
|
|
|
+<p>You use the Application’s state manager to activate <a href="state/application_states.html" class="xref page">AppStates</a>, such as <a href="../../physics/physics.html" class="xref page">Physics</a>.</p>
|
|
</div></div></td>
|
|
</div></div></td>
|
|
</tr>
|
|
</tr>
|
|
</tbody>
|
|
</tbody>
|
|
@@ -1205,7 +1205,7 @@ getStateManager()</p>
|
|
<p>restart()</p>
|
|
<p>restart()</p>
|
|
</div></div></td>
|
|
</div></div></td>
|
|
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
|
|
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
|
|
-<p>Loads modified <a href="../system/appsettings.html" class="page">AppSettings</a> into the current application context.</p>
|
|
|
|
|
|
+<p>Loads modified <a href="../system/appsettings.html" class="xref page">AppSettings</a> into the current application context.</p>
|
|
</div></div></td>
|
|
</div></div></td>
|
|
</tr>
|
|
</tr>
|
|
<tr>
|
|
<tr>
|
|
@@ -1223,8 +1223,8 @@ getStateManager()</p>
|
|
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
|
|
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
|
|
<p>Switch Context com.jme3.system.JmeContext.Type when starting the application:<br>
|
|
<p>Switch Context com.jme3.system.JmeContext.Type when starting the application:<br>
|
|
Type.Display – jME application runs in a window of its own. (This is the default.)<br>
|
|
Type.Display – jME application runs in a window of its own. (This is the default.)<br>
|
|
-Type.Canvas – jME application is embedded in a <a href="../../tutorials/how-to/java/swing_canvas.html" class="page">Swing Canvas</a>.<br>
|
|
|
|
-Type.Headless – jME application runs its event loop without calculating any view and without opening any window. Can be used for a <a href="../../networking/headless_server.html" class="page">Headless Server</a> application.<br>
|
|
|
|
|
|
+Type.Canvas – jME application is embedded in a <a href="../../tutorials/how-to/java/swing_canvas.html" class="xref page">Swing Canvas</a>.<br>
|
|
|
|
+Type.Headless – jME application runs its event loop without calculating any view and without opening any window. Can be used for a <a href="../../networking/headless_server.html" class="xref page">Headless Server</a> application.<br>
|
|
Type.OffscreenSurface – jME application view is not shown and no window opens, but everything calculated and cached as bitmap (back buffer) for use by other applications.</p>
|
|
Type.OffscreenSurface – jME application view is not shown and no window opens, but everything calculated and cached as bitmap (back buffer) for use by other applications.</p>
|
|
</div></div></td>
|
|
</div></div></td>
|
|
</tr>
|
|
</tr>
|
|
@@ -1248,7 +1248,7 @@ Type.OffscreenSurface – jME application view is not shown and no window opens,
|
|
getContext()</p>
|
|
getContext()</p>
|
|
</div></div></td>
|
|
</div></div></td>
|
|
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
|
|
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
|
|
-<p>The application context contains the renderer, <a href="../system/appsettings.html" class="page">AppSettings</a>, timer, etc. Typically, you do not directly access the context object.</p>
|
|
|
|
|
|
+<p>The application context contains the renderer, <a href="../system/appsettings.html" class="xref page">AppSettings</a>, timer, etc. Typically, you do not directly access the context object.</p>
|
|
</div></div></td>
|
|
</div></div></td>
|
|
</tr>
|
|
</tr>
|
|
<tr>
|
|
<tr>
|
|
@@ -1256,7 +1256,7 @@ getContext()</p>
|
|
<p>inputEnabled</p>
|
|
<p>inputEnabled</p>
|
|
</div></div></td>
|
|
</div></div></td>
|
|
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
|
|
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
|
|
-<p>this internal boolean is true if you want the system to listen for user inputs, and false if you just want to play a non-interactive scene. You change the boolean using <a href="../system/appsettings.html" class="page">AppSettings</a>.</p>
|
|
|
|
|
|
+<p>this internal boolean is true if you want the system to listen for user inputs, and false if you just want to play a non-interactive scene. You change the boolean using <a href="../system/appsettings.html" class="xref page">AppSettings</a>.</p>
|
|
</div></div></td>
|
|
</div></div></td>
|
|
</tr>
|
|
</tr>
|
|
<tr>
|
|
<tr>
|
|
@@ -1285,7 +1285,7 @@ getRenderer();</p>
|
|
getGuiViewPort()</p>
|
|
getGuiViewPort()</p>
|
|
</div></div></td>
|
|
</div></div></td>
|
|
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
|
|
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
|
|
-<p>The view object for the orthogonal <abbr title="Graphical User Interface">GUI</abbr> view. Only used internally for <a href="../ui/hud.html" class="page">HUD</a>s.</p>
|
|
|
|
|
|
+<p>The view object for the orthogonal <abbr title="Graphical User Interface">GUI</abbr> view. Only used internally for <a href="../ui/hud.html" class="xref page">HUD</a>s.</p>
|
|
</div></div></td>
|
|
</div></div></td>
|
|
</tr>
|
|
</tr>
|
|
<tr>
|
|
<tr>
|
|
@@ -1348,7 +1348,7 @@ getGuiViewPort()</p>
|
|
getRootNode()</p>
|
|
getRootNode()</p>
|
|
</div></div></td>
|
|
</div></div></td>
|
|
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
|
|
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
|
|
-<p>The root node of the scene graph. Attach a <a href="../scene/spatial.html" class="page">Spatial</a> to the rootNode and it appears in the 3D scene.</p>
|
|
|
|
|
|
+<p>The root node of the scene graph. Attach a <a href="../scene/spatial.html" class="xref page">Spatial</a> to the rootNode and it appears in the 3D scene.</p>
|
|
</div></div></td>
|
|
</div></div></td>
|
|
</tr>
|
|
</tr>
|
|
<tr>
|
|
<tr>
|
|
@@ -1357,7 +1357,7 @@ getRootNode()</p>
|
|
getGuiNode()</p>
|
|
getGuiNode()</p>
|
|
</div></div></td>
|
|
</div></div></td>
|
|
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
|
|
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
|
|
-<p>Attach flat <abbr title="Graphical User Interface">GUI</abbr> elements (such as <a href="../ui/hud.html" class="page">HUD</a> images and text) to this orthogonal <abbr title="Graphical User Interface">GUI</abbr> node to make them appear on the screen.</p>
|
|
|
|
|
|
+<p>Attach flat <abbr title="Graphical User Interface">GUI</abbr> elements (such as <a href="../ui/hud.html" class="xref page">HUD</a> images and text) to this orthogonal <abbr title="Graphical User Interface">GUI</abbr> node to make them appear on the screen.</p>
|
|
</div></div></td>
|
|
</div></div></td>
|
|
</tr>
|
|
</tr>
|
|
<tr>
|
|
<tr>
|
|
@@ -1442,7 +1442,7 @@ getFlyByCamera()</p>
|
|
<p>public void simpleInitApp()</p>
|
|
<p>public void simpleInitApp()</p>
|
|
</div></div></td>
|
|
</div></div></td>
|
|
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
|
|
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
|
|
-<p>Override this method to initialize the game scene. Here you load and create objects, attach Spatials to the rootNode, and bring everything in its starts position. See also <a href="state/application_states.html" class="page">Application States</a> for best practices.</p>
|
|
|
|
|
|
+<p>Override this method to initialize the game scene. Here you load and create objects, attach Spatials to the rootNode, and bring everything in its starts position. See also <a href="state/application_states.html" class="xref page">Application States</a> for best practices.</p>
|
|
</div></div></td>
|
|
</div></div></td>
|
|
</tr>
|
|
</tr>
|
|
<tr>
|
|
<tr>
|
|
@@ -1450,8 +1450,8 @@ getFlyByCamera()</p>
|
|
<p>public void simpleUpdate(float tpf)</p>
|
|
<p>public void simpleUpdate(float tpf)</p>
|
|
</div></div></td>
|
|
</div></div></td>
|
|
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
|
|
<td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
|
|
-<p>Override this method to hook into the <a href="update_loop.html" class="page">update loop</a>, all code you put here is repeated in a loop. Use this loop to poll the current game state and respond to changes, or to let the game mechanics generate encounters and initiate state changes. Use the float <code>tpf</code> as a factor to time actions relative to the <em>time per frame</em> in seconds: <code>tpf</code> is large on slow PCs, and small on fast PCs.<br>
|
|
|
|
-For more info on how to hook into the update loop, see <a href="state/application_states.html" class="page">Application States</a> and <a href="../scene/control/custom_controls.html" class="page">Custom Controls</a>.</p>
|
|
|
|
|
|
+<p>Override this method to hook into the <a href="update_loop.html" class="xref page">update loop</a>, all code you put here is repeated in a loop. Use this loop to poll the current game state and respond to changes, or to let the game mechanics generate encounters and initiate state changes. Use the float <code>tpf</code> as a factor to time actions relative to the <em>time per frame</em> in seconds: <code>tpf</code> is large on slow PCs, and small on fast PCs.<br>
|
|
|
|
+For more info on how to hook into the update loop, see <a href="state/application_states.html" class="xref page">Application States</a> and <a href="../scene/control/custom_controls.html" class="xref page">Custom Controls</a>.</p>
|
|
</div></div></td>
|
|
</div></div></td>
|
|
</tr>
|
|
</tr>
|
|
<tr>
|
|
<tr>
|
|
@@ -1472,7 +1472,7 @@ For more info on how to hook into the update loop, see <a href="state/applicatio
|
|
</td>
|
|
</td>
|
|
<td class="content">
|
|
<td class="content">
|
|
<div class="paragraph">
|
|
<div class="paragraph">
|
|
-<p>Use <code>app.setShowSettings(true);</code> to present the user with a splashscreen and the built-in display settings dialog when starting the game; or use <code>app.setShowSettings(false);</code> to hide the built-in screen (in this case, you may want to provide a custom splashscreen and settings panel). Set this boolean before calling <code>app.start()</code> in the <code>main()</code> method of the SimpleApplication. See also <a href="../system/appsettings.html" class="page">AppSettings</a>.</p>
|
|
|
|
|
|
+<p>Use <code>app.setShowSettings(true);</code> to present the user with a splashscreen and the built-in display settings dialog when starting the game; or use <code>app.setShowSettings(false);</code> to hide the built-in screen (in this case, you may want to provide a custom splashscreen and settings panel). Set this boolean before calling <code>app.start()</code> in the <code>main()</code> method of the SimpleApplication. See also <a href="../system/appsettings.html" class="xref page">AppSettings</a>.</p>
|
|
</div>
|
|
</div>
|
|
</td>
|
|
</td>
|
|
</tr>
|
|
</tr>
|
|
@@ -1484,7 +1484,7 @@ For more info on how to hook into the update loop, see <a href="state/applicatio
|
|
<h2 id="default-input-mappings"><a class="anchor" href="#default-input-mappings"></a>Default Input Mappings</h2>
|
|
<h2 id="default-input-mappings"><a class="anchor" href="#default-input-mappings"></a>Default Input Mappings</h2>
|
|
<div class="sectionbody">
|
|
<div class="sectionbody">
|
|
<div class="paragraph">
|
|
<div class="paragraph">
|
|
-<p>The following default navigational input actions are mapped by the default <code>flyCam</code> control in a SimpleApplication: You can use these mappings for debugging and testing until you implement custom <a href="../input/input_handling.html" class="page">input handling</a>.</p>
|
|
|
|
|
|
+<p>The following default navigational input actions are mapped by the default <code>flyCam</code> control in a SimpleApplication: You can use these mappings for debugging and testing until you implement custom <a href="../input/input_handling.html" class="xref page">input handling</a>.</p>
|
|
</div>
|
|
</div>
|
|
<table class="tableblock frame-all grid-all stretch">
|
|
<table class="tableblock frame-all grid-all stretch">
|
|
<colgroup>
|
|
<colgroup>
|