| waybar-menu(5) | File Formats Manual | waybar-menu(5) |
نام (NAME)
waybar - ویژگی منو (menu)
نمای کلی (OVERVIEW)
برخی پودمانها از ویژگی 'menu' پشتیبانی میکنند که امکان داشتن یک منوی پاپآپ را هنگام انجام کلیک تعریفشده روی پودمان فراهم میسازد.
ویژگیها (PROPERTIES)
پودمانی که ویژگی 'menu' را پیادهسازی میکند، نیازمند ۳ ویژگی تعریفشده در پیکربندی خود است:
menu:
نوع: رشته (string)
رویدادی
(اکشنی) که
منو را باز
میکند.
اکشنهای
ممکن
عبارتند
از:
| گزینه (Option) | توضیحات (Description) |
| on-click | هنگام کلیک چپ روی پودمان |
| on-click-release | هنگام رها کردن دکمه چپ ماوس روی پودمان |
| on-double-click | هنگام دو بار کلیک چپ روی پودمان |
| on-triple-click | هنگام سه بار کلیک چپ روی پودمان |
| on-click-middle | هنگام کلیک وسط روی پودمان با استفاده از چرخ ماوس |
| on-click-middle-release | هنگام رها کردن دکمه چرخ ماوس روی پودمان |
| on-double-click-middle | هنگام دو بار کلیک وسط روی پودمان |
| on-triple-click-middle | هنگام سه بار کلیک وسط روی پودمان |
| on-click-right | هنگام راستکلیک روی پودمان |
| on-click-right-release | هنگام رها کردن دکمه راست ماوس روی پودمان |
| on-double-click-right | هنگام دو بار راستکلیک روی پودمان |
| on-triple-click-right | هنگام سه بار راستکلیک روی پودمان |
| on-click-backward | هنگام کلیک روی پودمان با دکمه عقب (backward) ماوس |
| on-click-backward-release | هنگام رها کردن دکمه عقب ماوس روی پودمان |
| on-double-click-backward | هنگام دو بار کلیک روی پودمان با دکمه عقب ماوس |
| on-triple-click-backward | هنگام سه بار کلیک روی پودمان با دکمه عقب ماوس |
| on-click-forward | هنگام کلیک روی پودمان با دکمه جلو (forward) ماوس |
| on-click-forward-release | هنگام رها کردن دکمه جلو ماوس روی پودمان |
| on-double-click-forward | هنگام دو بار کلیک روی پودمان با دکمه جلو ماوس |
| on-triple-click-forward | هنگام سه بار کلیک روی پودمان با دکمه جلو ماوس |
menu-file:
نوع: رشته (string)
مکان فایل
توصیفکننده
منو. باید
عنصری از
نوع
menu-actions:
نوع: آرایه (array)
عملیات
متناظر با
دکمههای
منو.
شناسههای
هر یک از
این
فایل منو (MENU-FILE)
فایل menu-file یک فایل `.xml` است که یک GtkBuilder را نمایش میدهد. مستندات مربوط به آن را میتوان در اینجا یافت: https://docs.gtk.org/gtk4/class.Builder.html
در اینجا، باید عنصری از نوع GtkMenu با شناسه "menu" وجود داشته باشد. هر یک از عملیات موجود در menu-actions از طریق شناسه (id) عناصر به عناصر موجود در فایل menu-file متصل میشوند.
مثال (EXAMPLE)
پیکربندی پودمان (Module config):
"custom/power": {
"format" : "⏻ ",
"tooltip": false,
"menu": "on-click",
"menu-file": "~/.config/waybar/power_menu.xml",
"menu-actions": {
"shutdown": "shutdown",
"reboot": "reboot",
"suspend": "systemctl suspend",
"hibernate": "systemctl hibernate",
},
},
~/.config/waybar/power_menu.xml :
<?xml version="1.0" encoding="UTF-8"?>
<interface>
<object class="GtkMenu" id="menu">
<child>
<object class="GtkMenuItem" id="suspend">
<property name="label">Suspend</property>
</object>
</child>
<child>
<object class="GtkMenuItem" id="hibernate">
<property name="label">Hibernate</property>
</object>
</child>
<child>
<object class="GtkMenuItem" id="shutdown">
<property name="label">Shutdown</property>
</object>
</child>
<child>
<object class="GtkSeparatorMenuItem" id="delimiter1"/>
</child>
<child>
<object class="GtkMenuItem" id="reboot">
<property name="label">Reboot</property>
</object>
</child>
</object>
</interface>
استایلدهی به منوها (STYLING MENUS)
- •
- menu استایل برای منو
- •
- menuitem استایل برای آیتمهای درون منو
مثال (EXAMPLE)
menu {
border-radius: 15px;
background: #161320;
color: #B5E8E0;
}
menuitem {
border-radius: 15px;
}
| 2026-08-31 |