+link rel
[www.jankratochvil.net.git] / project / captive / Preview.html.pl
index a4c8248..8630c18 100755 (executable)
@@ -27,27 +27,50 @@ use warnings;
 
 BEGIN{ open F,"Makefile"; our $top_dir=pop @{[split /\s/,(grep /^top_srcdir/,<F>)[0]]}; eval "use lib '$top_dir'"; close F; }
 use My::Web;
+Wrequire 'My::Project';
 
 
 My::Web->init(
                "__PACKAGE__"=>__PACKAGE__,
                "title"=>'Captive NTFS Technology Preview',
+               "head_css"=>"
+td { padding: 10px; text-align: center; }
+table { border-collapse: collapse; border-style: solid; }
+",
+               "WebConfig::heading_novskip"=>1,
                );
 My::Web->heading();
+print My::Project->section("captive");
 
 print "<h1>Captive NTFS Technology Preview</h1>\n";
 
-print img("doc/dia/parent-connector","Parent connector");
-print img("doc/dia/inheritance","Sandboxing/Inheritance");
-print img("doc/dia/cache-manager","NT Cache Manager");
-print img("doc/arch-W32","Microsoft Windows Subsystems Architecture");
-print img("doc/arch-captive","Captive Subsystems Architecture");
-print img("doc/ratio","Functions Reusal Ratio");
-print img("doc/fig/functype_patched_wrap_fromw32","Wrapping of Call from W32 Code");
-print img("doc/ntdebug-windbg-boot","Windows NT Remote Kernel Debug Mode Boot");
-print img("captive-install-acquire","Captive Microsoft Windows Drivers Acquire");
-print img("doc/dia/arch-all","Captive Components Architecture");
-print img("doc/dia/TraceFS","TraceFS Hooking");
+sub preview_img ($$;$)
+{
+my($file_base,$text,$comment)=@_;
+
+       return <<"HERE";
+<table border="1" align="center">
+<tr><td>@{[ img $file_base,$text ]}</td></tr>
+<tr><td><b>$text</b>@{[ map((!$_ ? "" : "<br />$_"),$comment) ]}</td></tr>
+</table>
+@{[ vskip "3ex" ]}
+HERE
+}
+
+print preview_img 'doc/ntdebug-ntfs','WinDbg Remote NT Kernel NTFS Debugging';
+print preview_img 'doc/dia/arch-all','Captive Components Architecture',''
+               .'<font color="red">Red color</font> indicates Captive components for the most common LUFS use case.<br />'
+               .'<font color="violet">Violet color</font> indicates system components for the most common LUFS use case.';
+print preview_img 'doc/arch-captive','Captive Subsystems Architecture';
+print preview_img 'doc/arch-W32','Original Microsoft Windows Subsystems Architecture';
+print preview_img 'doc/ratio','Functions Reusal Ratio';
+print preview_img 'doc/fig/functype_patched_wrap_fromw32','Code Wrapping of Call from Microsoft Windows Code';
+print preview_img 'doc/dia/inheritance','Sandboxing Scheme with GObject Inheritance';
+print preview_img 'doc/dia/parent-connector','Parent Connector for Sandbox Slave Restarts Handling';
+print preview_img 'doc/dia/cache-manager','NT Cache Manager Scheme';
+print preview_img 'doc/ntdebug-windbg-boot','Windows NT Remote Kernel Debug Mode During System Boot';
+print preview_img 'doc/dia/TraceFS','TraceFS Debugging Hook for NT Cache Manager Analysis';
+print preview_img 'captive-install-acquire','Captive Microsoft Windows Drivers Acquire Utility';
 
 
 My::Web->footer();