文書のモードに応じて、ボタンを隠すには

文書の編集ボタンは、読み取りモード中だけ表示したいし、保存ボタンは編集モード中にだけ表示したい。 こういうときは、表示に条件式を設定する。

文書のモードに応じて表示/非表示を切り替える

文書のモードに応じて表示/非表示を切り替えるには、コントロールの「表示」を式で制御すればいい。

式は、各種設定の脇にある◇をクリックする。

表示制御

「値の計算...」を選ぶと、スクリプトエディタが開く。

スクリプトエディタ

ここに書く式の結果がtrueなら表示、falseなら非表示となる。

編集モードに応じて、表示を制御する式

「現在の文書が編集モードかどうか」を返す関数があるのでは、と推測する。 先ほど開いたスクリプトエディタを眺めてみると、「currentDocument」というのがある。どうやらこれがそれっぽい。

currentDocumentを展開してみると、isEditable()というメソッドがある。これが現在の文書が編集モードなら、trueを返してくれる。 よって、スクリプトエディタで以下の式を書けば、編集モードの間は表示される式になる。

  currentDocument.isEditable()
  

ちなみに、ここに記述する式はJavaScriptになる。

よって、編集モード中に隠したいボタン(編集ボタンなど)はJavaScriptの文法に従って、以下のように書けばいい。

  !currentDocument.isEditable()
  

「グローバルオブジェクト」というのは、XPageのページが存在している間、そのXPage内に用意されている「オブジェクト」。 ここからいろんなオブジェクトをたぐり寄せていき、いろんな操作を行うことができる。

従来のNotesのNotesSessionのようなものだと思えばいい。