package sk.stuba.fiit.perconik.eclipse.ui.console; import javax.annotation.Nullable; import org.eclipse.jface.text.IDocument; import org.eclipse.swt.custom.StyledText; import org.eclipse.ui.console.TextConsolePage; import org.eclipse.ui.console.TextConsoleViewer; import org.eclipse.ui.part.IPage; import sk.stuba.fiit.perconik.eclipse.ui.Parts; /** * Static utility methods pertaining to Eclipse text console pages. * * @author Pavol Zbell * @since 1.0 */ public final class TextConsolePages { private TextConsolePages() {} public static TextConsolePage from(@Nullable final IPage page) { return page instanceof TextConsolePage ? (TextConsolePage) page : null; } public static TextConsoleViewer getTextConsoleViewer(@Nullable final TextConsolePage page) { return page != null ? page.getViewer() : null; } public static StyledText getStyledText(@Nullable final TextConsolePage page) { return Parts.getStyledText(getTextConsoleViewer(page)); } public static IDocument getDocument(@Nullable final TextConsolePage page) { return Parts.getDocument(getTextConsoleViewer(page)); } }