0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

ArduBlock のカスタマイズ 上級編

Last updated at Posted at 2023-09-02

「ArduBlock のカスタマイズ はじめて編」
https://qiita.com/nanbuwks/items/6bb036b5e915a5b24bd4
では、最低限の引き出しとブロックを作成し、

「ArduBlock のカスタマイズ 中級編」
https://qiita.com/nanbuwks/items/f2067f06a0012791ee3d
では、もう少し複雑なブロックを作成しました。

上級編では、更に設定をしていきます。

パラメータのプルダウンメニュー

こんな感じにしたい。これは DigitalPin のブロックで、GPIOポート番号が選択できるようになっている。

image.png

これは、主に src/main/resources/com/ardublock/block/ardublock.xml  で作業する。

src/main/resources/com/ardublock/block/ardublock.xml

BlockDrawer の設定

まず、選択肢をすべてブロックで定義しておく。今回は選択肢は2つなので、2つを定義。

</BlockDrawer>
                        <BlockDrawer button-color="50 180 70" name="bd.plant" type="factory">
                                <BlockGenusMember>pinListPlant_beep</BlockGenusMember>
                                <BlockGenusMember>pinListPlant_pump1</BlockGenusMember>
                                <BlockGenusMember>pinListPlant_pump2</BlockGenusMember>
                                <BlockGenusMember>pinListPlant_valve</BlockGenusMember>
                         </BlockDrawer>

image.png

                <BlockGenus name="pinListPlant_pump1" kind="data" color="60 100 30" initlabel="bg.pinListCleaner_right_back" editable-label="no">
                        <BlockConnectors>
                                <BlockConnector connector-type="number" connector-kind="plug"/>
                        </BlockConnectors>
                </BlockGenus>
                <BlockGenus name="pinListPlant_pump2" kind="data" color="60 100 30" initlabel="bg.pinListCleaner_right_back" editable-label="no">
                        <BlockConnectors>
                                <BlockConnector connector-type="number" connector-kind="plug"/>
                        </BlockConnectors>
                </BlockGenus>



BlockFamily でひとまとめ


このように定義されたものは、以下で BlockFamily として定義される。

        <BlockFamilies>
.
.
.

                <BlockFamily>
                        <FamilyMember>pinListPlant_pump1</FamilyMember>
                        <FamilyMember>pinListPlant_pump2</FamilyMember>
                </BlockFamily>


        </BlockFamilies>

このようにすると、選択肢が選択できるようになる。

image.png

あとは BlockDrawer を必要なものを選んで整理。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?