Как добавить кнопку raido и реализацию в BasicNewFileResourceWizard - PullRequest
0 голосов
/ 26 июня 2019

У меня есть мастер файлов, который создает файл CSS программно. Я хотел бы добавить дополнительный компонент в нижней части, как кнопка raio или флажок. Есть ли способ добавить его сюда и его базовую реализацию. Или я должен пойти с созданием собственного мастера?

public class MyNewFileWizard extends BasicNewFileResourceWizard
{
  WizardNewFileCreationPage mainPage;

  public static final String WIZARD_ID = "ui.wizard.MyNewFileWizard";

  public MyNewFileWizard()
  {
    super();
  }

  @Override
  public void addPages()
  {

    mainPage = new WizardNewFileCreationPage("New File Page", getSelection())
    {
      @Override
      protected InputStream getInitialContents()
      {
        StringBuilder sb = new StringBuilder();
        sb.append("SAMPLE_README_FILE");

        return new ByteArrayInputStream(sb.toString().getBytes());
      }
    };

    mainPage.setFileExtension("css");
    addPage(mainPage);
  }

  @Override
  public boolean performFinish()
  {
    IFile file = mainPage.createNewFile();
    if (file == null) {
      return false;
    }

    selectAndReveal(file);

    // Open editor on new file.
    IWorkbenchWindow dw = getWorkbench().getActiveWorkbenchWindow();
    try {
      if (dw != null) {
        IWorkbenchPage page = dw.getActivePage();
        if (page != null) {
          IDE.openEditor(page, file, true);
        }
      }
    }
    catch (PartInitException e) {
      //openError(dw.getShell(), "Problems opening editor", e.getMessage(), e);
    }

    return true;
  }
}

1 Ответ

1 голос
/ 26 июня 2019

Вы можете попробовать переопределить метод WizardNewFileCreationPage createAdvancedControls:

@Override
protected void createAdvancedControls(Composite parent)
{
  super.createAdvancedControls(parent);

  ... add your controls here
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...