Всплывающая подсказка для отключенного ToolItem - RAP против RCP - PullRequest
0 голосов
/ 05 июня 2018

Есть ли способ отключить ToolItem в ToolBar и по-прежнему иметь его всплывающую подсказку?

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

Не знаю, если это уместно, но это код:

class CustomItem extends org.eclipse.jface.action.ContributionItem {

 @Override
    public void fill(final ToolBar toolBar, final int index) {

      toolItem = new ToolItem(toolBar, SWT.PUSH);

      // . . .

    }
}

Обновление:

Проект, в котором нужен этот код, является приложением RAP, и почему-то мне пришло в голову подумать, что могут быть некоторые различия по сравнению с RCP в отношении проблемы, с которой я столкнулся.

Ответ, предоставленный Subash J, таков:правильно для приложений RCP, но не будет работать для RAP.

После разговора с разработчиком RAP он указал мне на эту сообщенную ошибку: https://bugs.eclipse.org/bugs/show_bug.cgi?id=435750

Я обновил заголовок, так что это более наглядноСодержание сообщений.

1 Ответ

0 голосов
/ 05 июня 2018

Да, вы можете отключить ToolItem в панели инструментов и по-прежнему отображать подсказку.Попробуйте следующий код.

class CustomItem extends org.eclipse.jface.action.ContributionItem {

 @Override
    public void fill(final ToolBar toolBar, final int index) {
      final ToolItem toolItem = new ToolItem(toolBar, SWT.PUSH);
        toolItem.setText("Sample Tool Item 1");
        toolItem.setEnabled(false);
        toolItem.setToolTipText("Sample Tool Tip 1");

        final ToolItem toolItem2 = new ToolItem(toolBar, SWT.PUSH);
        toolItem2.setText("Sample Tool Item 2");
        toolItem2.setToolTipText("Sample Tool Tip 2");

    }
}

Вывод будет аналогичен приведенному ниже, где Sample Tool Item 1 отключен и одновременно отображается подсказка.

Output

...