• Showing Page History #105992

Frequently used words (click to add to your profile)

javac++androidlinuxc#windowsobjective-ccocoa誰得qtpythonphprubygameguibathyscaphec計画中(planning stage)翻訳omegatframeworktwitterdomtestvb.netdirectxゲームエンジンbtronarduinopreviewer

新しいコントリビューションの追加

1. コントリビューションクラスの追加

  1. namespace nft.contributions.ui
  2. {
  3. /// <summary>
  4. /// CtbMenuItem の概要の説明です。
  5. /// </summary>
  6. public class CtbMenuItem : Contribution
  7. {
  8. /// <summary>
  9. /// Contributes a menu and submenu items to mainmenu.
  10. ///
  11. /// This contribution can add several items at once.
  12. /// </summary>
  13. public CtbMenuItem(Plugin p, ParamsReader e)
  14. : base(p, e)
  15. {
  16. // 実装を定義
  17. }
  18. }
  19. }

2. コントリビューションタイプの宣言 plugin.xmlに以下のような記述を追加する

  1. <declare-contribution type="MenuItem">
  2. <name>Menu items</name>
  3. <class name="nft.contributions.ui.CtbMenuItem"/>
  4. <!--<factory-class name="nft.framework.plugin.DefaultContributionFactory"/> 省略化-->
  5. </declare-contribution>

3. コントリビューションの追加 plugin.xmlに以下のような記述を追加する。 任意の数だけ記述することが出来る。2 とは別のplugin.xmlに書くこともできる。

  1. <contribution type="MenuItem" id="hogehoge">
  2. <name>Sample Menu Item</name>
  3. <description>サンプルのメニュー項目</description>
  4. <!--その他固有のパラメータ-->
  5. </contribution>

4. NeoFT起動 起動時にCtbMenuItemのコンストラクタが呼ばれるようになる。 引数 ParamsReader には 3 に記述したノードの内容が含まれる。