Как удалить опцию меню редактирования?

Когда мы щелкаем правой кнопкой мыши главное меню на панели, мы получаем некоторые опции. Можно ли из этого удалить опцию «Редактировать меню»?

4
задан 8 April 2011 в 14:43

2 ответа

Хорошо, это не удаляет пункт меню, но делает его бесполезным, должно быть именно тем, что вам нужно:

Сначала создайте резервную копию alacarte, редактор меню:

[ 110]

Теперь откройте оригинал в вашем любимом текстовом редакторе:

sudo gedit /usr/bin/alacarte

В между концом большого комментария вверху и строкой с надписью import sys вставьте это:

import gtk
md = gtk.MessageDialog(None, 
    gtk.DIALOG_DESTROY_WITH_PARENT, gtk.MESSAGE_ERROR, 
    gtk.BUTTONS_CLOSE, "Not Allowed")
md.run()
md.destroy()
exit(1)

Конечно, вы можете заменить «Не разрешено» на любое сообщение об ошибке, которое вам нравится.

Теперь, когда вы нажмете «редактировать меню», появится следующее сообщение:

error message saying "not allowed"

Конечно, это не «безопасно», знающий пользователь будет в состоянии обойти это, но я думаю, это нормально в вашем случае. Я также не проверял, ломаются ли какие-либо другие приложения из-за этого, но, глядя на код, этого не должно происходить.

Примечание: если вы хотите использовать сообщение об ошибке, состоящее из символов вне ASCII, убедитесь, что в нем написано
# -*- coding: utf-8 -*- вверху (вторая или третья строка, не первый ) файла (по умолчанию).
В противном случае вы получите ошибку.

0
ответ дан 8 April 2011 в 14:43

Стефано и я говорили об этом сегодня в чате. Я думаю, что он работает в другом направлении, но у меня есть несколько основанных на источнике способов обойти это.

  1. Апплет Main Menubar является частью gnome-panel, так что вы можете загрузить исходный код для этого, внести изменения, чтобы удалить пункт меню Edit Menus, а затем упаковать его. Проблема заключается в том, что вы либо потеряете свои изменения, когда получите обновление, либо удерживаете версию пакета и будете работать без автоматических обновлений.

  2. Используйте меню другого типа. Есть несколько отличных вариантов с такими вещами, как Cardapio . Cardapio основан на Python, так что немного легче подчиниться своей воле. Просто отредактируйте /usr/lib/cardapio/Cardapio.py. У вас есть несколько вариантов здесь, вы можете сломать launch_edit_app(). Или вы можете выследить, где отображается опция, используя что-то вроде этого:

    grep -R 'launch_edit_app' /usr/lib/cardapio/
    

    Конечно, вы хотите заблокировать панель, чтобы кто-то просто добавил обычное меню.

0
ответ дан 8 April 2011 в 14:43

Другие вопросы по тегам:

Похожие вопросы: