5

私は GNOME デスクトップ アプリケーション開発の初心者なので、できるだけ多くのことを学ぼうとしています。JavaScript 用に書かれたdeveloper.gnome.orgにあるさまざまなチュートリアルを読みました。GObject Introspection を使用して、JavaScript で C ライブラリにアクセスできることを知っています。

デスクトップ アプリケーションでの JavaScript の使用は新しいため、多くのドキュメントはありません。いくつかのライブラリにアクセスするために、どのパラメーターでどの関数を使用できるかを知る方法があるかどうか疑問に思っていました。

たとえば、JavaScript で GTK を使用してボタンを作成するには、次のようにします。

this.mybutton = new GTK.Button({some code here});

使用できる関数の名前を知るにはどうすればよいですか? C 用に書かれたドキュメントを見て、JavaScript 用の関数の名前を特定する方法はありますか?

一部のライブラリについては、JavaScript 用に書かれたこのドキュメントを見たことがあります。GNOME アプリケーション開発について理解を深めるために、どんな助けも歓迎します。

4

2 に答える 2

5

私はあなたに同意します。ドキュメントはこの件に関してかなり低くなっています。
ほとんどの場合、他の開発者が既に作成したコードを見つけて、必要なものに変更しようとします。
C のドキュメントはhttp://developer.gnome.orgで完全に公開されており、ほとんどの場合、ほぼ同じ方法を使用できます。
この Web サイトをご覧になることをお勧めします: http://www.roojs.org/seed/gir-1.2-gtk-3.0/seed/
また、このサイト: http://zetcode.com/gui/ javascriptgtktutorial/
JavaScript の開発を頑張ってください!!!

于 2014-03-24T22:06:12.750 に答える
0

Gnome GJS ドキュメントの新しいホストがあります。

GIR ファイルを検索することで、その C ライブラリ関数にマップされた Javascript 関数を取得できます。各ライブラリには、イントロスペクション情報を含む XML ファイルが必要です。

私が以前に尋ねたある質問の例。

grep -rn gdk_keymap_get_default /usr/share/gir-1.0/

/usr/share/gir-1.0/Gdk-2.0.gir:16781:                c:identifier="gdk_keymap_get_default"
/usr/share/gir-1.0/Gdk-3.0.gir:15776:      <function name="get_default" c:identifier="gdk_keymap_get_default">

vim /usr/share/gir-1.0/Gdk-3.0.gir +15776

    <class name="Keymap"
           c:symbol-prefix="keymap"
           c:type="GdkKeymap"
           parent="GObject.Object"
           glib:type-name="GdkKeymap"
           glib:get-type="gdk_keymap_get_type">
      <doc xml:space="preserve">A #GdkKeymap defines the translation from keyboard state
(including a hardware key, a modifier mask, and active keyboard group)
to a keyval. This translation has two phases. The first phase is
to determine the effective keyboard group and level for the keyboard
state; the second phase is to look up the keycode/group/level triplet
in the keymap and see what keyval it corresponds to.</doc>
      <function name="get_default" c:identifier="gdk_keymap_get_default">
        <doc xml:space="preserve">Returns the #GdkKeymap attached to the default display.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve">the #GdkKeymap attached to the default display.</doc>
          <type name="Keymap" c:type="GdkKeymap*"/>
        </return-value>
      </function>
于 2015-08-16T11:34:50.387 に答える