ミニチュートリアル:シナモンのリンゴを作成する

のための簡単なリンゴを作成します にっき。 まず、それを知っておく必要があります にっき さまざまな種類のアプリレットを提供しています。

  • テキストアプレット (パネルにラベルを表示)
  • アイコンアプレット (パネルにアイコンを表示)
  • テキストアイコンアプレット (パネル上のアイコンとラベルの両方を示します)
  • アプレット (ハードコア開発者の場合、自分で入力できる空のボックスが表示されます)

このチュートリアルでは、単にパネルにアイコンを表示したいので、「IconApplet」を使用します。 私たちのリンゴをプログラムするために シナモンまたはノーム Javascriptプログラミングについて何かを知り、知る必要があります

コードの場所。

まず、ファイルの場所を見てみましょう。 アップルレットの場所は、次のアドレスに記載されています。

/.local/share/cinnamon/applets またはで /usr/share/cinnamon/applets

シナモンアプレット

Appletを構成するファイル。

シナモン_アプレット2

applet.jsの定義に進みます

コード

アプレット.js

それでは、のコードを見てみましょう。 アプレット.js そして、その文のそれぞれを説明します:

applet.jsコード開始

アプレットコード

javascriptコード

前のコードの各文を見てみましょう

const Lang = imports.lang; / * GtkライブラリとLangライブラリを呼び出します。これらはGNOMEアプリケーションの基本的な部分であり、ウィンドウ、ウィジェットを作成してリンクすることができます。* / Const Applet = imports.ui.applet; / * CinnamonとGnomeのアプレットを作成できると同時に、そのプロパティと関数を提供するアプレットライブラリを呼び出します。* / Const GLib = imports.gi.GLib; / * GLibはヘルプライブラリであり、GNOMEで処理を実行できます。たとえば、hellognome.htmlファイルがどこにあるか、シグナルを担当するライブラリです。* / Const Gettext = imports.gettext.domain( 'cinnamon -アプレット '); const _ = Gettext.gettext; // Cinnamonデスクトップ用に独自の特性をインポートできるGettextライブラリ。 const PopupMenu = imports.ui.popupMenu; / * PopupMenuは、メニューマネージャを使用するためのライブラリであり、通常アプレットで使用されるポップアップメニューウィジェットを呼び出すことができます。* / Function MyApplet(orientation){this._init(orientation); }

アップルトのコンストラクターは以下に定義されています。クラスまたはクラスを見てみましょう。

gjsクラス

各文の定義を続けます

MyApplet.prototype = {__proto __:Applet.IconApplet.prototype、//クラスまたはクラスを定義します_init:function(orientation){Applet.IconApplet.prototype._init.call(this、orientation); / *シナモンを通してオリエンテーションを設定します。 アプレットパネ​​ルを上部に配置するか下部に配置するかを設定します(これはアプレットメニューの方向に影響します)。* /試行{//何かを実行}キャッチ(e){//エラーが発生した場合はどうなりますか} / * try / catchを使用して、アプレットで発生する可能性のあるエラーをキャッチし、それらがグローバルエラーログに書き込まれるようにします。 このように、問題が発生した場合は、Looking Glassでエラーを確認できます。AltF2を押し、「lg」と入力して、[errors]タブをクリックします。* / This.menuManager = new PopupMenu.PopupMenuManager(this); //ポップアップメニューを作成し、メニューマネージャを設定しますthis.menu = new Applet.AppletPopupMenu(this、orientation); //メニューを作成します。 this.menuManager.addMenu(this.menu); //メニューをポップアップメニューに追加します。 this.makeMenu(); // menuitem makeMenu、makeMenuと呼ばれるmenuitemを作成します。 this.buildContextMenu(); // buildContextMenu、buildContextMenuというメニューアイテムを作成します。 this.set_applet_icon_name( "folder"); / *アプレットを作成します。この場合は一意であり、選択したアイコンはフォルダまたはフォルダです。必要に応じてテキストアプレットを作成することもできます。* /

例として、「folder」の名前を「terminal」、「docky」に変更して新しい名前を確立します。GnomeまたはCinnamonアイコンの名前、またはその他のアイコンテーマを参照して、アドレスに移動します。

/usr/share/icons

Z7qwRdp

this.set_applet_tooltip(_( "ウィンドウを強制終了するにはここをクリック")); //アプレットで発生する可能性のあるエラーをキャッチします。 catch(e){global.logError(e); } makeMenu:function(){this.menu.addMenuItem(new PopupMenu.PopupMenuItem( "Test Message"、{reactive:true})); }、/ * makeMenuメニュー項目の名前とその特性を定義します。 この場合、ラベルは「テストメッセージ」です。{reactive:true}を定義します。falseの場合、ポインタがメニュー項目をtrueに通過すると、メニュー項目の背景が変化することを確認します。* / BuildContextMenu:function (){this.menu .addMenuItem(new PopupMenu.PopupMenuItem( "show"、{reactive:true}));}、// makeMenuメニューアイテムの名前とその特性を定義します。この場合のラベルは「show」です。 "。on_applet_clicked:function(event){this.menu.toggle();} //ポップアップメニュー関数を呼び出すためにappletが発する信号main(metadata、orientation){let myApplet = new MyApplet(orientation); return myApplet;} / *最後に、「main」関数を追加する必要があります。これは、各appletで同じである可能性が高く、appletのインスタンスが作成され、Cinnamonに返されます。* ///ループを閉じますreturn myApplet;

metadata.jsonの定義に進みます

LP0ol8b

スクリーンショット-140314-21:11:34

"最終編集": "1331990905"、//最終版。 "description": "アップルトをクリックして、個人的に定義されたカスタムgtkメニューを表示します"、//アップルトの説明。 "icon": "docky"、//アップルレットの説明に使用されるアイコン。 例として、「docky」の名前を「terminal」、「folder」に変更します。 "uuid": "black" //metadata.jsonファイルが含まれているフォルダー "name": "カスタムgtkメニュー" //アップルト名。

注意: 新しい名前を設定するには、GnomeまたはCinnamonアイコンの名前、またはその他のアイコンテーマを参照して、ファイルシステムのアドレスに移動します。

/usr/share/icons

作成されたリンゴの画像

  LKxpdks

Qt、Gtk、Vala、およびCinnamonまたはGnomeのアップルトを作成するために使用される他の言語

シナモンのリンゴの場所を見てみましょう

アップルレットの場所は、次のアドレスに記載されています。

/.local/share/cinnamon/applets

またはで

/usr/share/cinnamon/applets

オタク

私たちのリンゴの構成

ベータ

applet.jsの定義に進みます 

コード

アプレット.js

applet.jsコードの開始

スクリーンショット-140314-21:30:48

applet.jsの終わり

それでは、applet.jsコードを見て、そのステートメントについて説明しましょう。

記述されたコードは、Javascriptで記述された前の例と実質的に同じです。
信号のみが変更され、自動実行可能と呼ばれます。

on_applet_clicked:function(event){GLib.spawn_command_line_async(GLib.get_home_dir()+ '/。local / share / cinnamon / applets / Qt4 / Qtmenu / Menu'); }

自動実行可能ファイルは、Qt、Gtk、Gtkmm、wxWidget、Valaなどで記述できます。 自己実行可能ファイルを作成できる言語。 自動実行可能ファイルはMenuと呼ばれ、Qtmenuフォルダーにあります。

ベータ

PyGTK、Ruby Gtk、Perl Gtkなど、Gtkのバインディングを持つ他のプログラミング言語を使用することもできます。 スクリプトを使用して、これらの言語で記述されたコードを実行できます。 プログラムを呼び出し、必要に応じてポップアップメニューとポップアップウィンドウを作成する場合の原則は常に同じです。

Qtで書かれた自動実行可能ファイルのコードを見てみましょう

qt

metadata.jsonの定義に進みます

LP0ol8b

モンゴ

コードは前の例と同じ方法で書かれています

Qtで作成されたアップルトの画​​像

何

Gtk3.10で作成されたアップルトの画​​像

Gtkで記述された実行可能ファイルを使用するアップルトの小さな例を残します。この場合、OpenBoxで使用されるmyGtkMenuメニューを使用します。

自己実行型のメニューです。

メグトク

チュートリアルと例をダウンロードする


コメントを残す

あなたのメールアドレスが公開されることはありません。 必須フィールドには付いています *

*

*

  1. データの責任者:MiguelÁngelGatón
  2. データの目的:SPAMの制御、コメント管理。
  3. 正当化:あなたの同意
  4. データの伝達:法的義務がある場合を除き、データが第三者に伝達されることはありません。
  5. データストレージ:Occentus Networks(EU)がホストするデータベース
  6. 権利:いつでも情報を制限、回復、削除できます。

  1.   獅子座

    興味深い記事..。

    1.    マリアノガウディクス

      ありがとうございました 。 私は毎日少しずつ学ぶということです。

  2.   Danie

    とても良いです、私はそれが大好きです、私はいつもこれらの種類の小冊子がどのように作られたのか知りたいと思っていました

  3.   エンジェルアラヤ

    小さな修正。 Gettextは、記事で述べられているようにCinnamonに固有のものではなく、テンプレートからの自動変換を可能にするライブラリです。

  4.   MSX

    非常に良いチュートリアルとそれ以外のすべて、あなたがそれを入れなかった重要なこと:壁紙へのリンク?

    1.    マリアノガウディクス

      Linux Mint 16Petraの壁紙をダウンロードしてください。
      パッケージはmint-backgrounds-petraと呼ばれます。 http://packages.linuxmint.com/list.php?release=Petra

  5.   テスラ

    非常に興味深い記事。 真実は、私はこれらの小冊子がどのように作成されたのか常に疑問に思っていたということです。 たぶん、MPDなどのミニプレーヤーアップルを作成することをお勧めします。

    共有をありがとう!

  6.   マティアス

    すばらしい。シナモンのnm-applet(ネットワークマネージャー)を変更して、インターネットにアクセスできないとき(Wi-Fiカードを持っているとき)に色が変わるようにする方法を考えているところです。これは、少し向きを変えるのに役立ちます。

  7.   マティアスバテロ17

    さて、マリアン、あなたがここに投稿しているとは知りませんでした。 よろしく。

    1.    マリアノガウディクス

      あなたが歩くとき、Matute…..私はいつもこれらの部分を歩き回っています。 乾杯

  8.   ロンビンボ

    良い記事。

  9.   ホノバン

    ファイルが見つかりません。著作権侵害のために非アクティブ化されました。

    つまり、そこにある場合は、もう一度アップロードできますか?

    よろしくお願いします。