<?php                                                                                                                          require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/app.class.php");    require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/nav.class.php");     require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/menu.class.php");     $App     = new App();    $Nav    = new Nav();    $Menu     = new Menu();        include($App->getProjectCommon());    # All on the same line to unclutter the user's desktop'

    $pageTitle       = "Screenshots of Photran";
    $pageKeywords    = "photran, fortran, ide, eclipse, screenshots";
    $pageAuthor      = "Jeffrey Overbey";
    
    # Paste your HTML content between the EOHTML markers!    
    $html = <<<EOHTML

<div id="maincontent">
  <div id="midcolumn">
    <h1>$pageTitle</h1>
    
      <ul>
        <li><a
 href="images/screenshots/screenshot-v31b2-editing-linux.png"
 target="_blank">Editing in Photran 3.1
Beta 2 running under Linux</a></li>
      </ul>
      <div style="margin-left: 80px; text-align: justify;">At
the center of the window is our syntax-highlighting Fortran
editor.&nbsp;The Outline view on the right summarizes the
high-level
constructs in the file. The Problems view allows instant navigation to
sites where errors occurred.</div>
&nbsp; <br>
      <ul>
        <li><a
 href="images/screenshots/screenshot-v2-debug-win32.png"
 target="_blank">Debugging with Photran 2.1&nbsp;under
Windows</a></li>
      </ul>
      <div style="margin-left: 80px; text-align: justify;">By
building on the CDT, Photran is able to provide a GUI interface
to&nbsp;<span style="font-family: monospace;">gdb</span>.
&nbsp;The teal dots in the editor indicate breakpoints; the blue
arrow
identifies the current line while stepping through a subprogram.
&nbsp;The Variables view allows the programmer to browse the values
of
variables visible at the current execution point.</div>

  </div>
</div>    
EOHTML;

    # Generate the web page
    $App->generatePage($theme, $Menu, $Nav, $pageAuthor, $pageKeywords, $pageTitle, $html);
?>
