February 15, 2015

iNotes 9をCustomizeしてみよう! -2-

テーマ:iNotes (DWA)

<話題の履歴>


iNotes 9をCustomizeしてみよう! -1-



前回は、iNotes 9をCustomizeするための環境を構築しました。


今回は、実際にiNotesのCustomizeを行って行きたいと思いますが、iNotes 9のCustomizeをするにあたって少し知っておかなければならないことがあります。


まずは、どのようなFormが使われるのかを理解します。

iNotesで基本的に使われる基本FormはForms9.nsfにListされています。


Forms9.nsfをNotes Clientで開いて、System\Forms Viewを開くと、以下のように表示されます。



iNotes_Customize_3


「s_」で始まるFormが基本的にClassic UIを使っている物、「l_」で始まる物がLite UIを使っている物となっており、これを見ると、「l_」で始まるFormが少ないことが分かります。



次に、DWA 7の時代から、iNotesには独自の略号のFunctionやVariableが提供されており、Codeはこの独自の略号で書かれています。

このCodeが曲者で、英字2-3文字のFunction名やVariable名となっていて、一体なのか?理解が出来ないのです。

Codeの容量を節約するために、このようなCodeになっているようです。

このCodeに関しても、Forms9.nsfのResource\Fileに「ObfuscationList.txt」として提供されており、内容は以下のようになっています。


============================================================
The keys on the left have replaced the following functions and variables in DWA code:
============================================================
AA IWAOfflineCtrl_DoInstall
AAA com_ibm_dwa_globals
AB getViewList
AC bEditable
AD refreshtree


これを見たから内容が理解できるというものではありませんが、iNotesのCodeではこの略号が多用されており、意味を理解する為にも、このTextをText EditorにCopyしていつでも検索して参照できるようにしておいた方が便利です。

Functionの引数などが解説されている訳ではありませんので、実際の使い方はCodeを参考にして使うしかありません。



最後に、iNotesで使われる日本語Textですが、これもDWA 7の頃はCodeの中に直接書かれていましたが、多言語対応翻訳を楽に行うためだと思いますが、Resourceとして提供されるようになっています。

これに関しても、Forms9.nsfのResource\Fileに「dwa_ja.properties」として提供されており、内容は以下のようになっています。


#---------------------------------------------
# Shimmer
#
# Copyright (c)2000-2008 Iris Associates, Inc.
#---------------------------------------------

#---------------------------------------------------------------------------
# Localizable text used by Shimmer applications
#---------------------------------------------------------------------------

(中略)


# s_mailaddrobj.h
# s_MailMemoRead.nx, s_MailMemoEdit.nx
L_RE=Re:
L_RE_SHORT_UPPERCASE=RE:
L_FW=Fw:
L_FW_SHORT_UPPERCASE=FW:
L_TO=\u5b9b\u5148:
L_CC=Cc:
L_BCC=Bcc:
L_FROM=\u9001\u4fe1\u8005:
L_SUBJECT=\u4ef6\u540d
:


英語の場合は直ぐに分かりますが、日本語の場合はUnicodeでEncodeされて格納されているため直ぐには分かりません。

この中身を見たり、語句を変更する場合は、Encode/Decodeを提供しているSite を利用して理解する必要があります。

例えば、「L_SUBJECT=\u4ef6\u540d:」をDecodeしてみると、以下のようになります。



iNotes_Customize_4


書き換える際も、UnicodeでEncodeしてこのFileを変更する必要がありますし、独自の定数を定義したい場合もこのFileに追加することで参照が出来るようになります。



今回は、最初に最低限理解しておかなければならない項目について簡単に解説しました。

次回は、Custome_JSやCustome_JS_Lite Subformで提供されているSample Codeを動かしながら中身を見てみます。


<続く>

いいね!した人  |  コメント(0)  |  リブログ(0)

いわまんさんの読者になろう

ブログの更新情報が受け取れて、アクセスが簡単になります

最近の画像つき記事
 もっと見る >>

コメント

[コメントをする]

コメント投稿

AD

Ameba人気のブログ

Amebaトピックス

      ランキング

      • 総合
      • 新登場
      • 急上昇
      • トレンド

      ブログをはじめる

      たくさんの芸能人・有名人が
      書いているAmebaブログを
      無料で簡単にはじめることができます。

      公式トップブロガーへ応募

      多くの方にご紹介したいブログを
      執筆する方を「公式トップブロガー」
      として認定しております。

      芸能人・有名人ブログを開設

      Amebaブログでは、芸能人・有名人ブログを
      ご希望される著名人の方/事務所様を
      随時募集しております。