Developer's Blog

UserAction Extension でオレオレスクリプトのススメ (4) – そして伝説へ –

世の中すっかりクリスマスモードですが、いかがお過ごしでしょうか?
謎の人です。こんにちわ。3G iPod nano をくれる人が私のサンタさん☆
前回

Sleipnir.API をちょっとだけ気軽に使える方法を。。。考えておきます。

とお約束しましたので、簡単な Perl モジュールをでっちあげ準備中ですよ。
目的は、前回の nazo_showExif.pl の


my $s = new Win32::OLE('Sleipnir.API');
my $doc_id = $s->GetDocumentID($s->ActiveIndex);
my $img = $s->GetWindowObject($doc_id)->event->srcElement;

みたいなのは、


my $s = Sleipnir->new;
my $img = $s->event->srcElement;

とシンプルに書きたいなぁ、と。


my $api = new Win32::OLE('Sleipnir.API');
my $id = $api->NewWindow('about:blank', 1);
$api->Navigate($id, 'http://www.fenrir.co.jp/');

みたいなのは、このままでわかりやすいと思うので、そのまま


my $api = Sleipnir->new;
my $id = $api->NewWindow('about:blank', 1);
$api->Navigate($id, 'http://www.fenrir.co.jp/');

みたいに書きたいなぁ、と。
では、スキンの人たちを見習って、情報漏洩。今、銀河の歴史に新たな 1 ページが・・・


screenshot
無意味 orz
あまりにも意味がないので、ドキュメントだけ先に出しときます。多分こんな感じになる。。。と思いますよ。
というわけで、UserAction Extension 関連は今回でひとまず終了。
次回は銀英伝 SeaHorse のお話でも。
ありがとうございました。

<br />
 名前<br />
        Sleipnir - Sleipnir.API を使うための Perl 拡張</p>
<p> 概要<br />
          use Sleipnir;<br />
          my $s = Sleipnir->new;<br />
          alert($s->AppPath);</p>
<p>          my $str = $s->document->getElementById('foo')->innerHTML;<br />
          $s->MessageBox($str);</p>
<p>          my $id = $s->NewWindow('about:blank', 1);<br />
          $s->Navigate($id, 'http://www.fenrir.co.jp/');</p>
<p> 説明<br />
        Sleipnir.API の各プロパティ/メソッドを、同じ名前で利用できます。<br />
        また、いくつかの (多分) 有用なメソッドを提供します。<br />
        本ドキュメントでは、Sleipnir.API とは違う部分について説明します。</p>
<p> メソッド<br />
        id<br />
            Sleipnir.API.GetDocumentID を呼び出し、アクティブなドキュメントの<br />
            固有 ID を取得します。この ID は Sleipnir.API から利用される ID で、<br />
            HTML タグ属性としての id とは異なります。</p>
<p>              $obj->id;<br />
             は<br />
              $obj->GetDocumentID($obj->ActiveIndex);<br />
             と同じ意味です</p>
<p>        document(id)<br />
            Sleipnir.API.GetDocumentObject を呼び出し、ドキュメント・オブジェ<br />
            クトを取得します。引数 id を省略した場合は、アクティブなドキュメン<br />
            トのオブジェクトです。このオブジェクトの扱いは、JavaScript の<br />
            "window.document" と同じです。</p>
<p>              var str = document.getElementById(id).innerHTML # JavaScript<br />
              my $str = $obj->document->getElementById($id)->innerHTML; # This module</p>
<p>        window(id)<br />
            Sleipnir.API.GetWindowObject を呼び出し、ウィンドウ・オブジェクト<br />
            を取得します。引数 id を省略した場合は、アクティブなウィンドウの<br />
            オブジェクトです。このオブジェクトの扱いは、JavaScript の "window"<br />
            と同じです。</p>
<p>              $obj->window;<br />
             は<br />
              $obj->GetDocumentObject($obj->id);<br />
             と同じ意味です。</p>
<p>        event<br />
            JavaScript の "window.event" と同じです。</p>
<p>        get_charset<br />
            HTML から meta タグを探し、charset に指定されている文字列を取得<br />
            します。複数指定されている場合は最初のものを、指定されていない<br />
            場合は空文字列を返します。</p>
<p> 参考<br />
        Sleipnir インストールディレクトリの documents¥Sleipnir-API.txt も<br />
        ご覧ください。</p>
<p> 作者<br />
        User and Fenrir & Co.</p>
<p>

Copyright © 2019 Fenrir Inc. All rights reserved.