プロジェクトモードでは,フォームオブジェクトのプロパティをCSSファイルで管理することができます。CSSは,HTMLを修飾するための言語として有名ですが,4Dの場合,フォームオブジェクトの属性つまりプロパティ全般をCSSで設定します。
たとえば,下記の要領でボタン・テキスト・入力オブジェクトのフォント名をまとめて設定することができます。
button,text,input {
font-family: Helvetica Neue;
font-size: 20px;
}
CSSのルールによれば,オブジェクトタイプ(HTMLの要素セレクターに相当)よりもオブジェクト名(HTMLのIDセレクターに相当)のほうがスペシフィシティ(詳細度)が高いので,プロパティリストに値が入力されていると,CSSはオーバーライドされ,レンダリングに反映されません。プロパティリストに入力された値はcontrol キーを押しながら項目名をクリックすることでクリアできます。
フォント名はfont-family
で指定しますが,システムフォントは自動スタイル経由で,つまりfont-theme
でnormal を指定することにより,間接的に指定します。
button,text,input {
font-theme: normal;
}
つまり「システムフォント」「system font」などの”フォント名”をfont-family
に指定するのは間違いです。ただし,CSSやプロパティリスト(.4DForm ファイル)でフォント名が特に指定されていなければ,結果的にシステムフォントが採用されます(ACI0104997の注記を参照)。
4D Web Serverの予約されたURL(いわゆるマジックURL)のうち,4DCGI
は特別な意味を持たず,実質的に無効となっています。
2003以前のバージョンでは,4DCGI
で始まるURLをリクエストすることにより,On Web Authentication およびOn Web Connection データベースメソッドを実行させることができました。2004以降,何であれ「未知のURL」つまりWebフォルダー内のリソースにマッチしないURLは,On Web Authentication およびOn Web Connection データベースメソッドを実行するので,4DCGI
で始まるURLに特別な意味はありません。4DCGI
の仕組みは,ハッキング防止のために残されていますが,実際には「未知のURL」と同じ動作になります。
On Mouse Move フォームイベントはフォームオブジェクト上でマウスポインターが動いた場合に加え,control shift alt などのモディファイアキーが押された場合にも発生します。たとえばテキスト入力オブジェクトがフォーカスされた状態で標準アクションのselectAll
を実行した場合,On Selection Change イベントだけが発生しますが,control/command+A を入力した場合,On Selection Change とOn Mouse Move の両方が発生します。これは仕様です。
リストボックス列特有のプロパティに関するドキュメントには,データソースの値が「On Display Detail イベントで計算されます」と記述されていますが,これはリストボックスの列ではなく,リストボックス全体に対して発生するフォームイベントのことを指しています。
フォームエディターでリストボックスの列を選択した場合,プロパティリストにフォームイベントのOn Display Detail は表示されません。プロジェクトモードであれば,.4DForm ファイルを編集することにより,列のレベルでOn Display Detail イベントを有効にすることができ,オブジェクトメソッドで 処理できるようになりますが,これは正式にサポートされている仕様ではないことに留意してください。
列のレベルでOn Display Detail が発生し,バイナリモードではこれを無効にできないのは,一種の不具合(ACI0099570, ACI0100429)ですが,既存のアプリケーションに与える影響を考慮し,動作はそのまま残されています。プロジェクトモードでは,フォームのソースコードを書き換えることにより,プロパティリストでは選択することができないはずのイベントを強制的に有効化することができますが,そのようにしてドキュメントに明記されていない歴史的な動作を意図的に利用することは勧められていません。
4D 20 R2以前のバージョンでは,「ログを使用」設定のブール値がストラクチャファイルまたはカタログに記録されていました。4D 20 R3以降,ユーザー設定が有効にされていれば,設定がbackup.4DSettings ファイル(XML形式)に記録され,優先的に適用されるようになりました(JournalFileEnabled
キー)。どちらに保存されている場合も「ログを使用」は新規データファイル作成時に反映される設定です。
設定を有効にした場合,ユーザーはデータファイル作成時にジャーナルファイルを選択または作成するように促され,ジャーナルファイルのパスはデータファイルに記録されます。
そのようなデータファイル(バックアップから復元した場合を含む)を開いた場合,ジャーナルファイルのパスが無効であれば,たとえ「ログを使用」が無効であっても,ユーザーはデータファイル作成時にジャーナルファイルを選択または作成するように促されます。逆に「ログを使用」が有効であれば,データファイルにジャーナルファイルのパスが記録されていなくても,ユーザーはデータファイル作成時にジャーナルファイルを選択または作成するように促されます。これは仕様です。