ワークスペース コメントは、テキストを入力できるグラフィック要素です。通常は、テキストベースのプログラミング言語のコメントと同様に、コードに関する事項を文書化するために使用されます。
ワークスペースのコメントを有効にする
アプリケーションでワークスペース コメントを有効にするには、ユーザーがコメントを作成する方法を提供する必要があります。この方法の 1 つは、ワークスペース コメントを作成するコンテキスト メニュー項目を追加することです。次のコードを使用して、ワークスペースのコメントの作成、削除、複製を行うデフォルトのコンテキスト メニュー項目を登録できます。
// This should be called on page load. It can be called before or after
// you inject your workspace.
Blockly.ContextMenuItems.registerCommentOptions();
独自のコンテキスト メニュー オプションを作成したり、ユーザーがワークスペースのコメントを追加する別の方法を追加したりすることもできます。コンテキスト メニュー オプションの詳細については、コンテキスト メニューをご覧ください。
コメントを視覚的にカスタマイズする
ワークスペースのコメントの外観をカスタマイズする方法はいくつかあります。これらは テーマではなく CSS を使用します。コメントのさまざまな部分の色とサイズはほとんど制御できますが、位置は制御できません。
色の CSS 変数
commentFillColour
CSS 変数を設定して、テキスト エリアの背景色を変更できます。commentBorderColour
CSS 変数を設定すると、コメントの上部バーとコメントの枠線の色を変更できます。
.blocklyWorkspace {
--commentFillColour: blue;
--commentBorderColour: red;
}
CSS クラス
コメントビューのさまざまな要素には、さまざまな CSS クラスが割り当てられています。これにより、要素のスタイルを変更できます。
CSS クラス | 画像 |
---|---|
blocklyComment 、blocklyDraggable |
![]() |
blocklySelected 、blocklyCommentHighlight |
![]() ![]() |
blocklyCollapsed |
![]() |
blocklyCommentTopbar |
![]() |
blocklyFoldoutIcon |
![]() |
blocklyCommentPreview 、blocklyText |
![]() |
blocklyDeleteIcon |
![]() |
blocklyText |
![]() |
blocklyResizeHandle |
![]() |
基本的な CSS の使用
ほとんどの場合、適切な CSS クラスを使用してカスタム属性を適用できます。
.blocklyCommentTopbarBackground {
height: 50px;
}
テキストの CSS
ただし、テキストの場合は、レンダラによって生成された CSS をオーバーライドするために、より具体的に指定する必要があります。
/* Modifies the preview text. */
.blocklyComment .blocklyCommentPreview.blocklyText {
fill: blue;
}
/* Modifies the input text. */
.blocklyComment .blocklyText {
color: blue;
}
選択したハイライトの CSS
コメントが選択されたときにハイライト表示するには、コメントが折りたたまれているかどうかによって CSS を適用するオブジェクトを変更する必要があります。折りたたまれている場合は blocklyCommentTopbarBackground
に CSS を適用し、それ以外の場合は blocklyCommentHighlight
に適用します。
/* Highlight when expanded. */
.blocklySelected .blocklyCommentHighlight {
stroke: #fc3;
stroke-width: 3px;
}
/* Hide normal highlight when collapsed. */
.blocklyCollapsed.blocklySelected .blocklyCommentHighlight {
stroke: none;
}
/* Instead apply the collapsed highlight to the top bar. */
.blocklyCollapsed.blocklySelected .blocklyCommentTopbarBackground {
stroke: #fc3;
stroke-width: 3px;
}
アイコン
blocklyFoldoutIcon
、blocklyDeleteIcon
、blocklyResizeHandle
の各クラスはすべて <image>
要素に適用されます。つまり、アイコンの色や形を変更したい場合は、別の画像をメディア フォルダに含めることができます。
イメージ名 | 画像 |
---|---|
foldout-icon.svg |
![]() |
delete-icon.svg |
![]() |
resize-handle.svg |
![]() |
削除アイコン
削除アイコンはデフォルトで非表示になっています。有効にする場合は、CSS を使用して表示する必要があります。
.blocklyDeleteIcon {
display: block;
}
デフォルトのサイズ
デフォルトのコメント サイズを設定するには、静的プロパティ Blockly.comments.CommentView.defaultCommentSize
を設定します。
Blockly.comments.CommentView.defaultCommentSize = new Blockly.utils.Size(200, 200);