
// Copyright (c) BVM Microsystems
// Developed by : Aadesh
// dated : 29 May 2004

var	   ss_base_img_path = "/Prods/ScrnShot/"
var	   ss_base_small_img_path = "/Prods/ScrnShot/Small/"

/*
B1 Highlight one or more path - js_DefineProperty.gif									fc_hilit.gif
B2 Flowchart of a while-loop - from js_gc.gif											fc_while.gif
B3 Comment-based flowchart - JS_ArenaAllocate - No Tracking Rect.gif					fc_cmnt.gif
A1 Code of regexp_compile.gif															code_reg.gif
A2 Condensed + Detailed view - regexp_compile - No tracking rect.gif					fc_dim_dtl.gif
A3 Flowchart and Code side-by-side - regexp_compile.gif									fc_code.gif
A4 Viewing Objects Type info - regexp_exec_sub - Original - No Tracking Rect.gif		fc_obj.gif
A5 Flowchart of a 350-line function - BuildArgArray.gif									fc_build.gif
Call Tree, Extract a call-path from a large tree.gif									graph_call.gif
Crystal C HTML report.gif																html_rep.gif
Function Outline New.gif																fun_outln.gif
Overview of Globals, Functions structs from each file.gif								glbls_fun_stru.gif
Commented_Version_of_JS_ArenaAllocate.gif												cmnts_ver.gif
UnCommented_Version_of_JS_ArenaAllocate.gif												uncmnt_ver.gif


Graphs-Highlighted parents and children.gif								Graphs_HLT_PC.gif
*/

var	   ss_rows = new Array();


ss_rows[0] = {'name' : 'Highlight one or more path of js_DefineProperty',     
			  'src' : 'fc_hilit.gif'			  
			   };
ss_rows[1] = {'name' : 'Flowchart of a while-loop  from js_gc',     
			  'src' : 'fc_while.gif'			  
			   };
ss_rows[2] = {'name' : 'Comment based flowchart of JS_ArenaAllocate',     
			  'src' : 'fc_cmnt.gif'			  
			   };
ss_rows[3] = {'name' : 'The code of regexp_compile',     
			  'src' : 'code_reg.gif'			  
			   };
ss_rows[4] = {'name' : 'Condensed and Detailed view of Flowchart',     
			  'src' : 'fc_dim_dtl.gif'			  
			   };
ss_rows[5] = {'name' : 'Side by side view of Flowchart and Code',     
			  'src' : 'fc_code.gif'			  
			   };
ss_rows[6] = {'name' : 'Viewing Objects Type info',     
			  'src' : 'fc_obj.gif'			  
			   };
ss_rows[7] = {'name' : 'Optimal-level flowchart of function BuildArgArray',     
			  'src' : 'fc_build.gif'			  
			   };
ss_rows[8] = {'name' : 'Call Tree, Extract a call-path from a large tree',     
			  'src' : 'graph_call.gif'			  
			   };
ss_rows[9] = {'name' : 'Crystal C HTML report',     
			  'src' : 'html_rep.gif'			  
			   };
ss_rows[10] = {'name' : 'Function Outline',     
			  'src' : 'fun_outln.gif'			  
			   };
ss_rows[11] = {'name' : 'Overview of Globals, Functions structs from each file',     
			  'src' : 'glbls_fun_stru.gif'			  
			   };
ss_rows[12] = {'name' : 'Commented Version of JS_ArenaAllocate',     
			  'src' : 'cmnts_ver.gif'			  
			   };
ss_rows[13] = {'name' : 'UnCommented Version of JS_ArenaAllocate',     
			  'src' : 'uncmnt_ver.gif'			  
			   };
ss_rows[14] = {'name' : 'Graphs-Highlighted parents and children',     
				'src' : 'Graphs_HLT_PC.gif'
			   };
ss_rows[15] = {'name' : 'Browse panel',     
				'src' : 'BrowseSwitchTo.gif'
			   };
ss_rows[16] = {'name' : 'Intelligent comment-editor',     
				'src' : 'Cmnt_ObjMeaning.gif'
			   };
ss_rows[17] = {'name' : 'Predited comment-phrases',     
				'src' : 'Cmnt_Pannel.gif'
			   };
ss_rows[18] = {'name' : 'Dockable windows',     
				'src' : 'DockedWindows.gif'
			   };
ss_rows[19] = {'name' : 'Best-fit flowchart for display',     
				'src' : 'FC_BestFit.gif'
			   };
ss_rows[20] = {'name' : 'Detailed flowchart',     
				'src' : 'FC_Detailed.gif'
			   };
ss_rows[21] = {'name' : 'Context-Sensitive popup on flowcharts',     
				'src' : 'FC_RightClick.gif'
			   };
ss_rows[22] = {'name' : 'Detailed file-report',     
				'src' : 'FileReport-of-jsregexp_c.gif'
			   };
ss_rows[23] = {'name' : 'Function properties',     
				'src' : 'FnProperties-of-regex-compile.gif'
			   };
ss_rows[24] = {'name' : 'Formatted code',     
				'src' : 'Formatted-Code-Example.gif'
			   };
ss_rows[25] = {'name' : 'Functional flowchart with code-coverage of a symbol',     
				'src' : 'FunctionalFlowchart-of-buildargarray-with-code-coverage.gif'
			   };
ss_rows[26] = {'name' : 'Software-metrics : volumewise',     
				'src' : 'FuncwiseLines-VolMetrics.gif'
			   };
ss_rows[27] = {'name' : 'Software-metrics : McCabes\' function-wise',     
				'src' : 'FuncWiseMcCabesCompMetrics.gif'
			   };
ss_rows[28] = {'name' : 'Tree form of #include files',     
				'src' : 'FileTree.gif'
			   };
ss_rows[29] = {'name' : 'Hilighted nodes in Graphs',     
				'src' : 'Graphs_HLT_PC.gif'
			   };
ss_rows[30] = {'name' : 'Software-metrics : Halstead measures',     
				'src' : 'Halstead_metrics.gif'
			   };
ss_rows[31] = {'name' : 'Level-1 flowchart',     
				'src' : 'Level1-Flowchart-of-BuildArgArray.gif'
			   };
ss_rows[32] = {'name' : 'Software-metrics : McCabes\' file-wise',     
				'src' : 'McCabesComplex-Filewise.gif'
			   };
ss_rows[33] = {'name' : 'Partial flowchart',     
				'src' : 'PartialDetailFlowchartofBuildArgArray.gif'
			   };
ss_rows[34] = {'name' : 'Project report',     
				'src' : 'Project_Report_Example.gif'
			   };
ss_rows[35] = {'name' : 'Project-browse information',     
				'src' : 'ProjectBrowseInformation.gif'
			   };
ss_rows[36] = {'name' : 'Project-files',     
				'src' : 'ProjectFiles.gif'
			   };
ss_rows[37] = {'name' : 'Software-metrics : for the whole project',     
				'src' : 'proj_metrics.gif'
			   };
ss_rows[38] = {'name' : 'Scope-wise occurrences in a tree-form',     
				'src' : 'Scopewise-Occurrences-in-a-Tree-Form.gif'
			   };
ss_rows[39] = {'name' : 'Software-metrics : volume by declarations',     
				'src' : 'vol_met_by_decl.gif'
			   };
ss_rows[40] = {'name' : 'Software-metrics : volume by number of lines',     
				'src' : 'vol_met_by_lines.gif'
			   };


ss_rows[41] = {'name' : 'HTML Documentation : Full Flowcharts in Documents',     
				'src' : 'html_FullFlowchartsInDocuments.gif'
			   };
ss_rows[42] = {'name' : 'HTML Documentation : Function Documentation',     
				'src' : 'html_FunctionDocumentation.gif'
			   };
ss_rows[43] = {'name' : 'HTML Documentation : Function wise by volume lines',     
				'src' : 'html_FunctionWiseByVolumeLines.gif'
			   };
ss_rows[44] = {'name' : 'HTML Documentation : Function wise McCabe Complexity',     
				'src' : 'html_FunctionWiseMcCabeComplexity.gif'
			   };
ss_rows[45] = {'name' : 'HTML Documentation : Overview',     
				'src' : 'html_Overview.gif'
			   };
ss_rows[46] = {'name' : 'HTML Documentation : Project Browse Tree',     
				'src' : 'html_ProjectBrowseTree.gif'
			   };
ss_rows[47] = {'name' : 'HTML Documentation : Source Listing',     
				'src' : 'html_SourceListing.gif'
			   };
ss_rows[48] = {'name' : 'HTML Documentation : View the Function Call Graph in Documentation',     
				'src' : 'html_ViewtheFunctionCallGraphInDocumentation.gif'
			   };

ss_rows[49] = {'name' : 'Configuring Static Checking',     
				'src' : 'ConfiguringStaticChecking.gif'
			   };

ss_rows[50] = {'name' : 'Customize Shapes for function calls in Flowcharts',     
				'src' : 'CustomizeShapesforFunctionCallsInFlowcharts.gif'
			   };

ss_rows[51] = {'name' : 'State Transition Diagrams',     
				'src' : 'StateTransitionDiagrams.gif'
			   };

ss_rows[52] = {'name' : 'Overview of MISRA C Static Checking',     
				'src' : 'overview_misrac_schk.gif'
			   };

ss_rows[53] = {'name' : 'Overview of HTML Documentation',     
				'src' : 'overview_htmldoccer.gif'
			   };
			   
ss_rows[54] = {'name' : 'Overview of DataFlow',     
				'src' : 'img_overview_dataflow.gif'
			   };
			   
ss_rows[55] = {'name' : 'Overview of CallFlow',     
				'src' : 'img_overview_callflow.gif'
			    };	
ss_rows[56] = {'name' : 'Overview of RichTrees',     
				'src' : 'RichTreeOf-ProcessArgs.GIF'
			    };				    

function opSSRows(c1,c2)
{
    var d = document;
    d.write("<tr>");
    d.write("<td class='SNAPSHOTSSTYL' WIDTH=20></td>");
	d.write("<td width=370 valign=top align=left class='SNAPSHOTSSTYL'>");
    
	if(c1 != -1 )
	{
	     d.write("<table border=0 cellspacing=0 cellpadding=2 width=365><tr>");
		 d.write("<td width=160 valign=top align=center class='SNAPSHOTSSTYL'>");
		 d.write("<a class='SNAPSHOTSSTYL' href=\"javascript:opSSPopBig("+ c1 +")\">");
		 d.write("<img border=0 src='" + ss_base_small_img_path + ss_rows[c1].src + "'>");
		 d.write("</a></td>");		
		 d.write("<td width=210 valign=MIDDLE align=left class='SNAPSHOTSSTYL'>");
		 d.write(ss_rows[c1].name );
		 d.write("</td></tr></table>");		
		
	}
	
	d.write("</td>");

	d.write("<td width=370 valign=top align=left class='SNAPSHOTSSTYL'>");
    
	if(c2 != -1 )
	{
	     d.write("<table border=0 cellspacing=0 cellpadding=2 width=365><tr>");
		 d.write("<td width=160 valign=top align=center class='SNAPSHOTSSTYL'>");
		 d.write("<a class='SNAPSHOTSSTYL' href=\"javascript:opSSPopBig(" + c2 + " )\">");
		 d.write("<img border=0 src='" + ss_base_small_img_path + ss_rows[c2].src + "'>");
		 d.write("</a></td>");		
		 d.write("<td width=210 valign=middle align=left class='SNAPSHOTSSTYL'>");
		 d.write(ss_rows[c2].name );
		 d.write("</td></tr></table>");		
		
	}
	
	d.write("</td>");

   d.write("</tr>");
}

function SSResizeWindow(gvn_wnd)
{
   var d;
   var selObj;
   
   d = gvn_wnd.document;
   
	if ( ie )	
	   selObj = d.all['ssimg'];
	else
	   selObj = d.getElementById( 'ssimg' );
	   
	if ( selObj != null )
	{
	 
	  var wd = selObj.width + 60;
	  var ht = selObj.height + 60+40;
	  
	  if ( wd > 800 || wd == NaN )
	     wd = 800;
	  
	  if ( ht > 600  || ht == NaN )
	     ht = 600;
	  
	  gvn_wnd.resizeTo( wd, ht );
	}
}


function opSSPopBig( elm_no )
{
	
	var urlpath;
	if(elm_no == 54 || elm_no == 55 || elm_no == 56)
		urlpath =  "../images/" + ss_rows[elm_no].src;
	else
		urlpath =  ss_base_img_path + ss_rows[elm_no].src;
		
	var OPN_wn ;
	if(window.ss_popup != null )
	{
	   if(window.ss_popup.closed)
	      window.ss_popup = null;
	}
	
	if(window.ss_popup == null )
	{
	    var		wn, w, h;
		if ( window.screen != null )
		{
			w = Math.max( window.screen.availWidth, 1024);
			h = Math.max( window.screen.availHeight, 768);
		}
		else
		{
			w = 1024;
			h = 768;
		}
		
		OPN_wn = window.open("","","scrollbars=yes,resizable=1,width=" + w + ",height=" + h + ",top=10,left=10");

		if(OPN_wn != null)
		{
			window.ss_popup = OPN_wn;
			OPN_wn.location="/prods/SSBig.asp?src=" + urlpath + "&ttl=" + ss_rows[elm_no].name;
		}
	}
	else
	{
	   var d;
	   var selObj;

	   OPN_wn = window.ss_popup;
	   d = OPN_wn.document;

//		if ( ie )	
//		   selObj = d.all['ssimgttl'];
//		else
//		   selObj = d.getElementById( 'ssimgttl' );
//
//		if ( selObj != null )
//		{
//		   selObj.innerText = ss_rows[elm_no].name ;
//		}


		if ( ie )	
		   selObj = d.all['ssimg'];
		else
		   selObj = d.getElementById( 'ssimg' );

		if ( selObj != null )
		{
		   selObj.src = urlpath ;
		   OPN_wn.focus();
		}
		

	}
		
/*	 
	if(OPN_wn != null)
	{
	     
		 OPN_wn.document.write("<script language='Javascript' src='/main.js'></script>");
	     OPN_wn.document.write("<script language='Javascript' src='/prods/prod.js'></script>");
	     OPN_wn.document.write("<img id='ssimg' src='"+ urlpath  + "' onLoad='SSResizeWindow(window);'>");
		 
	}
*/	
}



var		flow_img_arr = new Array();
var		tknspnl_img_arr = new Array();

tknspnl_img_arr[0]  = "tp1.gif";
tknspnl_img_arr[1]  = "tp2.gif";
tknspnl_img_arr[2]  = "tp3.gif";
tknspnl_img_arr[3]  = "tp4.gif";
tknspnl_img_arr[4]  = "tp5.gif";
tknspnl_img_arr[5]  = "tp6.gif";
tknspnl_img_arr[6]  = "tp7.gif";
tknspnl_img_arr[7]  = "tp8.gif";
tknspnl_img_arr[8]  = "tp9.gif";
tknspnl_img_arr[9]  = "tp10.gif";
tknspnl_img_arr[10] = "tp11.gif";
tknspnl_img_arr[11] = "tp12.gif";
tknspnl_img_arr[12] = "tp13.gif";
tknspnl_img_arr[13] = "tp14.gif";
tknspnl_img_arr[14] = "tp15.gif";
tknspnl_img_arr[15] = "tp16.gif";
tknspnl_img_arr[16] = "tp17.gif";
tknspnl_img_arr[17] = "tp18.gif";
tknspnl_img_arr[18] = "tp19.gif";
tknspnl_img_arr[19] = "tp20.gif";
tknspnl_img_arr[20] = "tp21.gif";
tknspnl_img_arr[21] = "tp22.gif";
tknspnl_img_arr[22] = "tp23.gif";
tknspnl_img_arr[23] = "tp24.gif";
tknspnl_img_arr[24] = "tp25.gif";
tknspnl_img_arr[25] = "tp26.gif";
tknspnl_img_arr[26] = "tp27.gif";
tknspnl_img_arr[27] = "tp28.gif";
tknspnl_img_arr[28] = "tp29.gif";

var		tkns_pnl_slides = { 'arr' : tknspnl_img_arr, 'curr_idx' : 0 };
var		flowchrt_slides = { 'arr' : null, 'curr_idx' : 0 };

function loadAllImages( slides)
{
	var		i, mobj;
	var 	d = document; 

	if( d.images != null )
	{ 
		if ( document.all )
	   		mobj = document.all['PRELOADMSG'];
	   	else
			mobj = document.getElementById( 'PRELOADMSG');
			
		if ( mobj != null )
			mobj.style.visibility = 'visible';
		
		if( !d.img_cllctn )  
			d.img_cllctn = new Array();

		var j = d.img_cllctn.length, tot_imgs = slides.arr.length; 

		slides.curr_idx=0;
		for (i = 0; i < tot_imgs; i ++ )
		{
			var		ipath = "/Prods/SlideImgs/" + slides.arr[i];
			if ( ipath.indexOf("#") != 0 )
			{ 
				d.img_cllctn[j] = new Image; 
				d.img_cllctn[j++].src = ipath;
			}
		}
		slidesGo( slides, 0 );

		if ( mobj != null )
			mobj.style.visibility = 'hidden';
	}
}

function slidesGoNext( slides )
{
	var		iobj;
	
	if ( document.all != null )
	   iobj = document.all['SLIDE_IMG'];
	else
	   iobj = document.getElementById( 'SLIDE_IMG' );
	
	if ( iobj != null )
	{
		if ( slides.curr_idx < slides.arr.length - 1 )
		{
			slides.curr_idx++;
			var		ipath = "/Prods/SlideImgs/" + slides.arr[slides.curr_idx];
			iobj.src = ipath;
		}
	}
}

function slidesGo( slides, idx )
{
	var		iobj;
	
	if ( document.all != null )
	   iobj = document.all['SLIDE_IMG'];
	else
	   iobj = document.getElementById( 'SLIDE_IMG' );
	
	if ( iobj != null )
	{
		if ( idx < slides.arr.length && idx >= 0 )
		{
			slides.curr_idx = idx;
			var		ipath = "/Prods/SlideImgs/" + slides.arr[slides.curr_idx];
			iobj.src = ipath;
		}
	}
}

function slidesGoPrev( slides )
{
	if ( document.all != null )
	   iobj = document.all['SLIDE_IMG'];
	else
	   iobj = document.getElementById( 'SLIDE_IMG' );
	
	if ( iobj != null )
	{
		if ( slides.curr_idx > 0 )
		{
			slides.curr_idx--;
			var		ipath = "/Prods/SlideImgs/" + slides.arr[slides.curr_idx];
			iobj.src = ipath;
		}
	}
}
