• カテゴリ 開発用メモ の最新配信
  • RSS
  • RDF
  • ATOM

ブログ - XCL [2.1.5] のレンダリング

XCL [2.1.5] のレンダリング

カテゴリ : 
開発用メモ » XCL開発資料
執筆 : 
masa 2008/9/20
XCL ではレンダリングエンジンに smarty を使用している。

■RenderSystem
XCubeRoot が保持する RenderSystem によってレンダリングが実行される。
RenderSystem は公開側と管理側で分かれており、settings/site_default.ini に定義されている。

[RnderSystem]
Legacy_RenderSystem
Legacy_AdminRenderSystem

がそれぞれ使われる

RenderSystem は
XCube_Root::getRenderSystem($name)
で取得できる。
XCube_Root は 指定された RenderSystem がまだ存在しなければ、siteConfig の情報を使って作成する。

■Legacy_XoopsTpl extends XoopsTpl
Smarty を継承したテンプレートエンジン
RenderSystem に保持されている。
RenderSystemは、レンダリングを XoopsTpl に依頼する。

■RenderTarget
レンダリングする対象
レンダリング結果を保持する?
俗に言う(?) $render がこれである。


XCUBE_RENDER_TARGET_TYPE_BLOCK
XCUBE_RENDER_TARGET_TYPE_MAIN
XCUBE_RENDER_TARGET_TYPE_THEME
XCUBE_RENDER_TARGET_TYPE_BUFFER

$render->getAttribute('legacy_buffertype')

といった種類がある。

RenderTarget は
Legacy_RenderSystem::createRenderTarget($type, $option)
で作成される。


XCUBE_RENDER_TARGET_TYPE_BLOCK
 => XCube_RenderTarget
XCUBE_RENDER_TARGET_TYPE_MAIN
 => Legacy_RenderTargetMain
XCUBE_RENDER_TARGET_TYPE_THEME,XCUBE_RENDER_TARGET_TYPE_BUFFER
 => XCube_RenderTarget
  • トラックバック (0)
  • 閲覧 (5121)