අපි සරල ඇප්ලට් එකක් නිර්මාණය කරන්නයි යන්නේ කුරුඳු. ආරම්භ කිරීමට නම් අපි එය දැන සිටිය යුතුය කුරුඳු විවිධ වර්ගයේ ඇප්ලෙට් ඉදිරිපත් කරයි:
- පෙළ යෙදුම (පුවරුවේ ලේබලයක් පෙන්වයි)
- අයිකන් ඇප්ලට් (පුවරුවේ අයිකනයක් පෙන්වයි)
- පෙළ අයිකන් ඇප්ලට් (පුවරුවේ අයිකනයක් සහ ලේබලයක් යන දෙකම දක්වයි)
- ඇප්ලෙට් (ඔබට පුරවා ගත හැකි හිස් පෙට්ටියක් පෙන්වන දෘ c ාංග සංවර්ධකයින් සඳහා)
මෙම නිබන්ධනයේදී, අපට අවශ්ය වන්නේ පැනලයේ අයිකනයක් ප්රදර්ශනය කිරීමටය, එබැවින් අපි "අයිකන ඇප්ලෙට්" භාවිතා කරමු. අපගේ ඇප්ලෙට් ක්රමලේඛනය කිරීම සඳහා කුරුඳු හෝ ග්නෝම් අපි ජාවාස්ක්රිප්ට් හි සමහර වැඩසටහන් දැනගෙන දැන සිටිය යුතුයි
අපගේ කේතයේ පිහිටීම.
පළමුව, අපගේ ගොනුවේ පිහිටීම දෙස බලමු. අපගේ යෙදුමේ පිහිටීම පහත ලිපිනයන්හි දක්වා ඇත:
/.local/share/cinnamon/applets
හෝ ඉන් /usr/share/cinnamon/applets
අපගේ ඇප්ලෙට් සෑදෙන ගොනු.
අපි applet.js නිර්වචනය කිරීමට ඉදිරියට යමු
දැන් අපි කේතය බැලීමට ඉදිරියට යමු applet.js එහි එක් එක් වාක්ය පැහැදිලි කරන්න:
applet.js කේත ආරම්භය
අපගේ පෙර කේතයේ සෑම වාක්යයක්ම බලමු
const Lang = imports.lang; / * අපි Gtk සහ Lang පුස්තකාලයන් ඉල්ලා සිටිමු, ඒවා ඕනෑම GNOME යෙදුමක මූලික අංගයක් වන අතර, ඒවා අපට කවුළු, විජට් සෑදීමට සහ ඒවා සම්බන්ධ කිරීමට ඉඩ දෙයි. * / Const Applet = imports.ui.applet; / * අපි කුරුඳු සහ ග්නෝම් සඳහා ඇප්ලට් එකක් නිර්මාණය කිරීමට ඉඩ දෙන ඇප්ලෙට් පුස්තකාලයට ආයාචනා කරන අතර ඒ සමඟම එහි ගුණාංග සහ ක්රියාකාරකම් අපට ලබා දේ. * / කොන්ස්ට් ජීලිබ් = imports.gi.GLib; / * GLib යනු උපකාරක පුස්තකාලයකි, එය අපට GNOME හි දේවල් කිරීමට ඉඩ දෙයි, උදාහරණයක් ලෙස hellognome.html ගොනුව කොහේදැයි කියන්න, එය සං als ා භාරව සිටින පුස්තකාලයයි. * / Const Gettext = imports.gettext.domain ('කුරුඳු -applets '); const _ = Gettext.gettext; // කුරුඳු ඩෙස්ක්ටොප් එකේ ලක්ෂණ ආනයනය කිරීමට අපට ඉඩ සලසන Gettext පුස්තකාලය. const PopupMenu = imports.ui.popupMenu; / * පොප්අප් මෙනූ යනු මෙනු කළමණාකරු භාවිතා කිරීමට ඇති පුස්තකාලයකි, එය සාමාන්යයෙන් ඇප්ලෙට් වල භාවිතා වන උත්පතන-මෙනු විජට් කැඳවීමට අපට ඉඩ දෙයි. * / ක්රියාකාරී MyApplet (දිශානතිය) {this._init (දිශානතිය); }
අපගේ ඇප්ලෙට් හි ඉදිකිරීම්කරු පහත අර්ථ දක්වා ඇත, අපගේ පංතිය හෝ පන්තිය දෙස බලමු:
එක් එක් වාක්යයේ අර්ථ දැක්වීම සමඟ අපි ඉදිරියට යමු
MyApplet.prototype = {__proto__: Applet.IconApplet.prototype, // අපි අපගේ පන්තිය හෝ පන්තිය අර්ථ දක්වමු _init: function (දිශානතිය) {Applet.IconApplet.prototype._init.call (මෙය, දිශානතිය); / * අපි කුරුඳු හරහා දිශානතිය සකස් කරමු. ඇප්ලෙට් පැනලය ඉහළින් හෝ පහළින් තිබේද යන්න අපි සකසා ඇත්තෙමු (මෙය ඇප්ලෙට් මෙනු වල දිශානතියට බලපෑමක් ඇති කරයි). * / උත්සාහ කරන්න {// යමක් කරන්න} අල්ලන්න (ඉ) {// දෝෂයක් සිදුවුවහොත් කුමක් සිදුවේද? App / * අපගේ ඇප්ලෙට් හි ඇතිවිය හැකි දෝෂ හඳුනා ගැනීමට සහ ඒවා ගෝලීය දෝෂ ලොගයට ලියා ඇති බවට තහවුරු කර ගැනීමට අපි උත්සාහයක් / ඇල්ලීමක් භාවිතා කරමු. මේ ආකාරයෙන්, යමක් වැරදුනහොත්, ඔබට පෙනීමේ වීදුරුවෙහි දෝෂය දැකිය හැකිය: Alt F2 ඔබන්න, "lg" ටයිප් කර "දෝෂ" ටැබය මත ක්ලික් කරන්න. * / This.menuManager = නව PopupMenu.PopupMenuManager (මෙය); // උත්පතන මෙනුව සාදා මෙනු කළමණාකරු සකසන්න this.menu = නව Applet.AppletPopupMenu (මෙය, දිශානතිය); // අපි මෙනුවක් නිර්මාණය කරමු. this.menuManager.addMenu (this.menu); // අපි මෙනුව උත්පතන මෙනුවට එකතු කරමු. this.makeMenu (); // menuitem makeMenu, අපි makeMenu නමින් මෙනුවක් නිර්මාණය කරමු. this.buildContextMenu (); // buildContextMenu, අපි buildContextMenu නමින් මෙනුවක් නිර්මාණය කරමු. this.set_applet_icon_name ("ෆෝල්ඩරය"); / * අපි ඇප්ලෙට් එක සාදන්නෙමු, මෙම නඩුව අද්විතීයයි, තෝරාගත් නිරූපකය ෆෝල්ඩරය හෝ ෆෝල්ඩරය වේ, අපට අවශ්ය නම් පෙළ ඇප්ලෙට් එකක් ද ස්ථාපිත කළ හැකිය. * /
උදාහරණයක් ලෙස "ෆෝල්ඩරයේ" නම "ටර්මිනලය" ලෙසත්, නව නම් පිහිටුවීම සඳහා "ඩොකි" ලෙසත් වෙනස් කරන්න. Gnome හෝ කුරුඳු අයිකන වල නම හෝ වෙනත් අයිකන තේමාවක් බලන්න, ලිපිනය වෙත යන්න.
/usr/share/icons
this.set_applet_tooltip (_ ("කවුළුවක් මරා දැමීමට මෙහි ක්ලික් කරන්න")); // අපගේ ඇප්ලෙට් හි ඇතිවිය හැකි දෝෂ හඳුනා ගැනීමට අල්ලා ගන්න. catch (e) {global.logError (e); } makeMenu: function () {this.menu.addMenuItem (නව PopupMenu.PopupMenuItem ("පරීක්ෂණ පණිවිඩය", {ප්රතික්රියාශීලී: සත්ය})); }, / * අපි makeMenu menuitem හි නම සහ එහි ලක්ෂණ අර්ථ දක්වන්නෙමු. මෙම අවස්ථාවෙහිදී ලේබලය පරීක්ෂණ පණිවිඩය වේ. අපි {ප්රතික්රියාශීලී: සත්යය යන්න අර්ථ දක්වන්නෙමු. මෙනුටෙම් එක හරහා සත්යය හරහා දර්ශකය පසුකර යන විට මෙනුවෙහි පසුබිම වෙනස් වන බව අපි තහවුරු කරමු. එය අසත්ය නම් ප්රතිවිරුද්ධ දේ සිදු වේ. * / BuildContextMenu: function () {this.menu .addMenuItem (නව PopupMenu.PopupMenuItem ("පෙන්වන්න", {ප්රතික්රියාශීලී: සත්ය}));}, // අපි MakeMenu මෙනුවෙහි නම සහ එහි ලක්ෂණ නිර්වචනය කරමු. මෙම අවස්ථාවේදී ලේබලය "පෙන්වන්න ". on_applet_clicked: function (event) {this.menu.toggle ();} // පොප්අප්-මෙනු ශ්රිතය ප්රධාන (පාර-දත්ත, දිශානතිය) ලෙස හැඳින්වීමට ඇප්ලට් මඟින් විමෝචනය කරන සං Sign ාව my myApplet = නව MyApplet (දිශානතිය); මගේ යෙදුම්; myApplet;
අපි metadata.json යන්න අර්ථ දැක්වීමට ඉදිරියට යමු
"අවසන් වරට සංස්කරණය කරන ලදි": "1331990905", // අවසන් සංස්කරණය. "description": "පුද්ගලිකව නිර්වචනය කරන ලද gtk මෙනුවක් පෙන්වීමට ඇප්ලෙට් එක මත ක්ලික් කරන්න", // ඇප්ලෙට් විස්තරය. "නිරූපකය": "docky", // ඇප්ලෙට් විස්තරය සඳහා භාවිතා කරන අයිකන. උදාහරණයක් ලෙස "ඩොකි" යන නම "ටර්මිනල්", "ෆෝල්ඩරය" ලෙස වෙනස් කරන්න. "uuid": "black" // අපගේ metadata.json ගොනුව ඇතුළත් කර ඇති ෆෝල්ඩරය "name": "Custom gtk menu" // Applet name.
Nota: නව නම් සැකසීමට ග්නෝම් හෝ කුරුඳු අයිකන වල නම හෝ වෙනත් අයිකන තේමාවක් බලන්න, ගොනු පද්ධති ලිපිනය වෙත යන්න.
/usr/share/icons
ඇප්ලෙට් හි රූපය නිර්මාණය කරන ලදි
Qt, Gtk, Vala සහ කුරුඳු හෝ Gnome සඳහා ඇප්ලට් එකක් සෑදීමට භාවිතා කරන වෙනත් භාෂා
කුරුඳු සඳහා අපගේ ඇප්ලෙට් එකේ පිහිටීම බලමු
අපගේ ඇප්ලෙට්හි පිහිටීම පහත ලිපිනයන්හි දක්වා ඇත:
/.local/share/cinnamon/applets
හෝ ඉන්
/usr/share/cinnamon/applets
අපගේ ඇප්ලෙට් සංයුතිය
අපි applet.js නිර්වචනය කිරීමට ඉදිරියට යමු
Applet.js කේතය ආරම්භ කිරීම
Applet.js හි අවසානය
දැන් අපි applet.js කේතය දෙස බලා එහි ප්රකාශ පැහැදිලි කරමු.
ලියා ඇති කේතය ප්රායෝගිකව ජාවාස්ක්රිප්ට් සමඟ ලියා ඇති පෙර උදාහරණයට සමාන වේ.
සං signal ාව පමණක් වෙනස් කර ඇති අතර, එය අපගේ ස්වයංක්රීයව ක්රියාත්මක කළ හැකි යැයි කියනු ඇත.
on_applet_clicked: ශ්රිතය (සිද්ධිය) {GLib.spawn_command_line_async (GLib.get_home_dir () + '/.local/share/cinnamon/applets/Qt4/Qtmenu/Menu'); }
අපගේ ස්වයංක්රීයව ක්රියාත්මක කළ හැකි දේ Qt, Gtk, Gtkmm, wxWidget, Vala ආදිය සමඟ ලිවිය හැකිය. ස්වයං ක්රියාත්මක කළ හැකි භාෂා නිර්මාණය කළ හැකි භාෂා. අපගේ ස්වයංක්රීයව ක්රියාත්මක කළ හැකි මෙනුව ලෙස හැඳින්වෙන අතර එය Qtmenu ෆෝල්ඩරයේ ඇත.
Gtk සඳහා බන්ධන ඇති වෙනත් ක්රමලේඛන භාෂාවන් ද අපට භාවිතා කළ හැකිය. PyGTK, Ruby Gtk, Perl Gtk, ආදිය. එම භාෂාවලින් ලියා ඇති කේතය ක්රියාත්මක කිරීමට ස්ක්රිප්ට් භාවිතයෙන් භාවිතා කළ හැකිය. අපගේ අවශ්යතා අනුව වැඩසටහන් ඇමතීම, උත්පතන මෙනුව සහ උත්පතන කවුළුව නිර්මාණය කිරීම මූලධර්මය සැමවිටම සමාන වේ.
Qt සමඟ ලියා ඇති අපගේ ස්වයංක්රීයව ක්රියාත්මක කළ හැකි කේතය බලමු
අපි metadata.json යන්න අර්ථ දැක්වීමට ඉදිරියට යමු
කේතය ලියා ඇත්තේ පෙර උදාහරණයට සමානය
Qt සමඟ නිර්මාණය කරන ලද ඇප්ලට් රූපය
Gtk 3.10 සමඟ සාදන ලද ඇප්ලෙට් හි රූපය
Gtk හි ලිවිය හැකි ක්රියාත්මක කළ හැකි යෙදුමක් භාවිතා කරන කුඩා උදාහරණයක් මෙන්න, මේ අවස්ථාවේ දී අපි OpenBox හි භාවිතා කරන myGtkMenu මෙනුව ගනිමු.
එය ස්වයං ක්රියාත්මක කිරීමේ මෙනුවකි.
අදහස් 12 ක්, ඔබේ අදහස් තබන්න
සිත්ගන්නා ලිපිය ...
ඔබට ස්තුතියි . මගේ කියන්නේ අපි හැමදාම ටිකක් ඉගෙන ගන්නවා.
ඉතා හොඳයි, මම එයට කැමතියි, මට නිතරම අවශ්ය වූයේ මේ ආකාරයේ ඇප්ලෙට් සෑදූ ආකාරය දැන ගැනීමටයි
කුඩා නිවැරදි කිරීමක්. ලිපියේ සඳහන් වන පරිදි Gettext කුරුඳු සඳහා විශේෂිත දෙයක් නොවේ, එය ස්වයංක්රීය පරිවර්තන සිදු කළ හැකි සහ සැකිලි වලින් ලබා දෙන පුස්තකාලයකි.
ඉතා හොඳ නිබන්ධනයක් සහ ඒ සියල්ලම නමුත් ඔබ එය නොතැබූ වැදගත් දෙය: බිතුපතට සබැඳිය?
ලිනක්ස් මින්ට් 16 පෙට්රා බිතුපත් බාගන්න.
පැකේජය මින්ට්-පසුබිම්-පෙට්රා ලෙස හැඳින්වේ: http://packages.linuxmint.com/list.php?release=Petra
ඉතා රසවත් ලිපියක්. සත්යය නම් මෙම ඇප්ලෙට් නිර්මාණය කරන්නේ කෙසේදැයි මම නිතරම කල්පනා කර තිබීමයි. සමහර විට එම්පීඩී හෝ ඊට සමාන දෙයක් සඳහා කුඩා ක්රීඩක ඇප්ලට් එකක් සෑදීමට මා දිරිමත් කරනු ඇත.
බෙදා ගැනීමට ස්තූතියි!
විශිෂ්ටයි, කුරුඳුගේ එන්එම්-ඇප්ලෙට් (ජාල කළමණාකරු) වෙනස් කරන්නේ කෙසේදැයි මම හදුනාගෙන සිටිමි, එවිට මට අන්තර්ජාල ප්රවේශයක් නොමැති විට එය වර්ණය වෙනස් කරයි, (මට වයි-ෆයි කාඩ්පතක් තිබේ), මෙය මට දිශානතියට උපකාරී වේ ටිකක්.
හොඳයි, මේරියන්, මම දැනගෙන හිටියේ නැහැ ඔයා මෙතන පළ කරනවා කියලා. සුභ පැතුම්.
ඔබ ඇවිදින විට, මතූට්… .. මම සෑම විටම මෙම කොටස් වටා ඇවිදින්නෙමි. චියර්ස්
හොඳ ලිපියක්.
ප්රකාශන අයිතිය උල්ලං for නය කිරීම සඳහා ගොනුව අක්රිය කර ඇත.
මා අදහස් කළේ ඔබ සතුව එය තිබේ නම් ඔබට එය නැවත උඩුගත කළ හැකිද ???. කරුණාකර.
ඔබට ස්තුතියි.