diff options
| -rw-r--r-- | framework/3rdParty/geshi/highlight.css | 19 | ||||
| -rw-r--r-- | framework/Web/UI/TClientScriptManager.php | 5 | ||||
| -rw-r--r-- | framework/Web/UI/WebControls/TTextHighlighter.php | 10 | ||||
| -rw-r--r-- | tests/FunctionalTests/protected/pages/Home.page | 3 | 
4 files changed, 36 insertions, 1 deletions
diff --git a/framework/3rdParty/geshi/highlight.css b/framework/3rdParty/geshi/highlight.css index be000a83..00a53f41 100644 --- a/framework/3rdParty/geshi/highlight.css +++ b/framework/3rdParty/geshi/highlight.css @@ -93,4 +93,21 @@  .javascript .st0 {color: #3366CC;}
  .javascript .nu0 {color: #CC0000;}
  .javascript .me1 {color: #006600;}
 -.javascript .re0 {color: #0066FF;}
\ No newline at end of file +.javascript .re0 {color: #0066FF;}
 +
 +.source .copycode
 +{
 +	text-align: right;
 +	float: right;
 +}
 +
 +.source .copycode a
 +{
 +	cursor: pointer;
 +	color: blue;
 +}
 +
 +.source .copycode_hover a
 +{
 +	color: red;
 +}
 diff --git a/framework/Web/UI/TClientScriptManager.php b/framework/Web/UI/TClientScriptManager.php index be6611cd..7b85dbab 100644 --- a/framework/Web/UI/TClientScriptManager.php +++ b/framework/Web/UI/TClientScriptManager.php @@ -463,6 +463,11 @@ class TClientScriptManager extends TComponent  	}  */ +	public function renderJavascriptBlock($code) +	{ +		return "<script type=\"text/javascript\">\n/*<![CDATA[*/\n{$code}\n/*]]>*/\n</script>"; +	} +	  	public function renderStyleSheetFiles($writer)  	{  		$str=''; diff --git a/framework/Web/UI/WebControls/TTextHighlighter.php b/framework/Web/UI/WebControls/TTextHighlighter.php index 35f3cc23..de34b652 100644 --- a/framework/Web/UI/WebControls/TTextHighlighter.php +++ b/framework/Web/UI/WebControls/TTextHighlighter.php @@ -85,6 +85,7 @@ class TTextHighlighter extends TWebControl  	{
  		parent::onPreRender($writer);
  		$this->registerHighlightStyleSheet();
 +		$this->getPage()->getClientScript()->registerClientScript('prado');
  	}
  	/**
 @@ -138,7 +139,16 @@ class TTextHighlighter extends TWebControl  		if($this->getShowLineNumbers())
  			$geshi->enable_line_numbers(GESHI_NORMAL_LINE_NUMBERS);
  		$geshi->enable_classes();
 +		$geshi->set_header_content($this->getHeaderTemplate());
 +		
  		return $geshi->parse_code();
  	}
 +
 +	function getHeaderTemplate()
 +	{
 +		$id = $this->getClientID();
 +		$cs = $this->getPage()->getClientScript();
 +		return $cs->renderJavascriptBlock("new Prado.WebUI.TTextHighlighter('{$id}');");
 +	}
  }
  ?>
\ No newline at end of file diff --git a/tests/FunctionalTests/protected/pages/Home.page b/tests/FunctionalTests/protected/pages/Home.page index 9a49e3a2..bf2830d6 100644 --- a/tests/FunctionalTests/protected/pages/Home.page +++ b/tests/FunctionalTests/protected/pages/Home.page @@ -1,3 +1,6 @@  <com:TContent ID="Content">
 +<com:TForm>
  <h1>Prado Functional Tests</h1>
 +<com:TJavascriptLogger />
 +</com:TForm>
  </com:TContent>
\ No newline at end of file  | 
