Как я заставляю окно инструментальных средств открывать модальное диалоговое окно в основанном на Eclipse проекте?

Обратите внимание, что это не решает процесс обмена файлами cookie, так как в целом это плохая практика.

Вы должны использовать JSONP в качестве своего типа:

From $. ajax: запросы на междоменные и dataType: запросы «jsonp» не поддерживают синхронную работу.

$.ajax(
    { 
      type: "POST",
      url: "http://example.com/api/getlist.json",
      dataType: 'jsonp',
      xhrFields: {
           withCredentials: true
      },
      crossDomain: true,
      beforeSend: function(xhr) {
            xhr.setRequestHeader("Cookie", "session=xxxyyyzzz");
      },
      success: function(){
           alert('success');
      },
      error: function (xhr) {
             alert(xhr.responseText);
      }
    }
);
19
задан Tirno 14 January 2009 в 15:37
поделиться

3 ответа

От представления или редактора (эта часть легка):

this.getSite().getWorkbenchWindow().getShell()

Откуда-либо, получите доступ к представлению или редактору и тому же как выше.

при нахождении в классе, где у Вас нет доступа к представлению или редактору, Вы, вероятно, не хотите называть любой код UI, но если Вы действительно хотите выстрелить себе в ногу:

PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell()
24
ответ дан 30 November 2019 в 02:34
поделиться

Часть кода из предыдущего ответа будет работать. Однако имейте в виду, что можно только открыть диалоговое окно от потока UI. При открытии диалогового окна от другого потока, например, фонового процесса необходимо сделать что-то вроде этого:

PlatformUI.getWorkbench().getDisplay().asyncExec(new Runnable() {
    public void run() {
        Shell activeShell = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell();
    }
});

Иначе Вы получите исключение при создании диалогового окна.

28
ответ дан 30 November 2019 в 02:34
поделиться

Не совсем точно, что Вы хотите сделать, но Вы, возможно, должны использовать SWT.APPLICATION_MODAL, SWT.DIALOG_TRIM и т.д. при создании диалогового окна для создания этого модальным диалоговым окном (но возможно это не то, чем вопрос был о).

Посмотрите этот ссылка для большего количества информации

0
ответ дан 30 November 2019 в 02:34
поделиться
Другие вопросы по тегам:

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