VCL for PHP チャートコンポーネント - パート3 - 初期設定

By: Tomohiro Takahashi

Abstract: この記事では、VCL for PHP チャートコンポーネントの作成について解説します。なお、この記事はDelphi for PHPの開発者であるJose Leon氏のブログを再構成したものです。

VCL for PHP チャートコンポーネント - 初期設定

前回の記事では、ラッパーを記述するための要件を収集する方法を学びました。これから、コンポーネントのファイルを配置するフォルダをセットアップし、コードを記述していこうと思います。

コンポーネントのフォルダ

コンポーネントはIDEが使用するVCL for PHPのフォルダの中に存在しなければなりません。デフォルトでは C:\Program Files\CodeGear\Delphi for PHP\2.0\vcl になります。それでは、その中にopenchartというフォルダを作成しましょう。

全機能が動作するために含める必要のあるOpen Flash Chartライブラリのファイルを特定しなければなりません。たいてい私はサンプルやドキュメントを含めたすべてのものをコピーするようにしています。このような手法は、作者が配布したパッケージを尊重しするものですし、また、将来のアップグレードが容易になります。

今回は、PHP用でないAPIを除いた、全てのものを含めます。これがvcl\openchartフォルダのコンテンツとなるはずです。

Hide image

コンポーネントとパッケージ

コンポーネントとは、VCL for PHPの基本クラスを継承したクラスです。これにより、IDEがそのコンポーネントを利用できるようになります。ツールパレットに表示するコンポーネントのアイコンの場所や、プロパティを処理する方法をIDEに知らせるためにパッケージを作成する必要があります。

コンポーネントとパッケージの基本的なコードを作成するために、メニュー項目の[コンポーネント]|[新規コンポーネント]にある、新規コンポーネントウィザードを使用します。

この際、継承元のクラス、新しいコンポーネントの名前、新しいコンポーネントを配置するパレットページなど、いくつかの情報を入力する必要があります。

Hide image

[OK]ボタンを押すと、次の2つのファイルが生成されます:

unit1.inc.php

<?php
require_once("vcl/vcl.inc.php");
//Includes

//Class definition
class OpenChart extends Control
{
    function __construct($aowner = null)
    {
        parent::__construct($aowner);
    }

    function dumpContents()
    {
        parent::dumpContents();
    }
}

?>

unit1.package.php

<?php
require_once("vcl/vcl.inc.php");
use_unit("designide.inc.php");

setPackageTitle("Put the title of your package here");
//Change this setting to the path where the icons for the components reside
setIconPath("./icons");

//Change yourunit.inc.php to the php file which contains the component code
registerComponents("OpenChart",array("OpenChart"),"unit1.inc.php");
?>

両方ともvcl\openchartフォルダに保存して、名前を openchart.inc.php と openchart.package.php にしてください。

パッケージのカスタマイズおよびインストール

パッケージをインストールする前に、パッケージのタイトルの変更などのカスタマイズを行わなければなりません:

setPackageTitle("Charting Library for VCL for PHP");

また、コンポーネントのユニットが配置されるパスを変更してください:

registerComponents("OpenChart",array("OpenChart"),"openchart/openchart.inc.php");

IDEがどこからコンポーネントのアイコンを探し出すかを指定することもできます。それらのアイコンは、IDEがツールパレット上でコンポーネントを表現するために使用されます。

setIconPath("./icons");

パッケージに含まれる全ての情報はIDEのための情報です。ですから、アプリケーションとともに .packageファイル を配布する必要はありません。

最後に、controls.inc.phpにあるControl基本クラスが見つけられるよう、ユニットを追加する必要があります:

require_once("vcl/vcl.inc.php");
//Includes
use_unit("controls.inc.php");

以上で、IDEにパッケージをインストールする準備が整いました。[コンポーネント]|[パッケージ]を選択して、[追加]ボタンをクリックし、openchart.package.phpのある場所を探して開きます。パッケージがインストールされ、ツールパレットのOpenChartカテゴリにコンポーネントが表示されます。

この新しいコンポーネントをページにドロップすると何も無い空白の矩形が表示されますが、これが基本となるコンポーネントです。次の記事では機能を追加します。

Server Response from: ETNASC02