+link rel
[www.jankratochvil.net.git] / project / captive / Preview.html.pl
1 #! /usr/bin/perl
2
3 # $Id$
4 # Captive project Preview page Perl template.
5 # Copyright (C) 2003 Jan Kratochvil <project-www.jankratochvil.net@jankratochvil.net>
6
7 # This program is free software; you can redistribute it and/or modify
8 # it under the terms of the GNU General Public License as published by
9 # the Free Software Foundation; exactly version 2 of June 1991 is required
10
11 # This program is distributed in the hope that it will be useful,
12 # but WITHOUT ANY WARRANTY; without even the implied warranty of
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14 # GNU General Public License for more details.
15
16 # You should have received a copy of the GNU General Public License
17 # along with this program; if not, write to the Free Software
18 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
19
20
21 package project::captive::Preview;
22 require 5.6.0;  # at least 'use warnings;' but we need some 5.6.0+ modules anyway
23 our $VERSION=do { my @r=(q$Revision$=~/\d+/g); sprintf "%d.".("%03d"x$#r),@r; };
24 our $CVS_ID=q$Id$;
25 use strict;
26 use warnings;
27
28 BEGIN{ open F,"Makefile"; our $top_dir=pop @{[split /\s/,(grep /^top_srcdir/,<F>)[0]]}; eval "use lib '$top_dir'"; close F; }
29 use My::Web;
30 Wrequire 'My::Project';
31
32
33 My::Web->init(
34                 "__PACKAGE__"=>__PACKAGE__,
35                 "title"=>'Captive NTFS Technology Preview',
36                 "head_css"=>"
37 td { padding: 10px; text-align: center; }
38 table { border-collapse: collapse; border-style: solid; }
39 ",
40                 "WebConfig::heading_novskip"=>1,
41                 );
42 My::Web->heading();
43 print My::Project->section("captive");
44
45 print "<h1>Captive NTFS Technology Preview</h1>\n";
46
47 sub preview_img ($$;$)
48 {
49 my($file_base,$text,$comment)=@_;
50
51         return <<"HERE";
52 <table border="1" align="center">
53 <tr><td>@{[ img $file_base,$text ]}</td></tr>
54 <tr><td><b>$text</b>@{[ map((!$_ ? "" : "<br />$_"),$comment) ]}</td></tr>
55 </table>
56 @{[ vskip "3ex" ]}
57 HERE
58 }
59
60 print preview_img 'doc/ntdebug-ntfs','WinDbg Remote NT Kernel NTFS Debugging';
61 print preview_img 'doc/dia/arch-all','Captive Components Architecture',''
62                 .'<font color="red">Red color</font> indicates Captive components for the most common LUFS use case.<br />'
63                 .'<font color="violet">Violet color</font> indicates system components for the most common LUFS use case.';
64 print preview_img 'doc/arch-captive','Captive Subsystems Architecture';
65 print preview_img 'doc/arch-W32','Original Microsoft Windows Subsystems Architecture';
66 print preview_img 'doc/ratio','Functions Reusal Ratio';
67 print preview_img 'doc/fig/functype_patched_wrap_fromw32','Code Wrapping of Call from Microsoft Windows Code';
68 print preview_img 'doc/dia/inheritance','Sandboxing Scheme with GObject Inheritance';
69 print preview_img 'doc/dia/parent-connector','Parent Connector for Sandbox Slave Restarts Handling';
70 print preview_img 'doc/dia/cache-manager','NT Cache Manager Scheme';
71 print preview_img 'doc/ntdebug-windbg-boot','Windows NT Remote Kernel Debug Mode During System Boot';
72 print preview_img 'doc/dia/TraceFS','TraceFS Debugging Hook for NT Cache Manager Analysis';
73 print preview_img 'captive-install-acquire','Captive Microsoft Windows Drivers Acquire Utility';
74
75
76 My::Web->footer();