/*******************************************************************************
* Copyright (c) 2012 xored software, Inc. All rights reserved. This program and the accompanying
* materials are made available under the terms of the Eclipse Public License v1.0 which accompanies
* this distribution, and is available at http://www.eclipse.org/legal/epl-v10.html Contributors:
* xored software, Inc. - initial API and implementation (Yuri Strot)
******************************************************************************/
package com.xored.glance.ui.viewers.descriptors;
import com.xored.glance.internal.ui.viewers.SourceViewerControl;
import com.xored.glance.ui.sources.ITextSource;
import org.eclipse.jface.text.ITextViewer;
import org.eclipse.jface.text.source.SourceViewer;
import org.eclipse.swt.widgets.Control;
/**
* @author Yuri Strot
*/
public class SourceViewerDescriptor extends AbstractViewerDescriptor {
@Override
public ITextSource createSource(Control control) {
return new SourceViewerControl((SourceViewer) getTextViewer(control));
}
@Override
public boolean isValid(Control control) {
ITextViewer viewer = getTextViewer(control);
if (viewer instanceof SourceViewer) {
SourceViewer sViewer = (SourceViewer) viewer;
if (sViewer.getAnnotationModel() != null && sViewer.getDocument() != null) {
return true;
}
}
return false;
}
}