Skip to content
Snippets Groups Projects
Commit f5736792 authored by Tobias Ask's avatar Tobias Ask
Browse files

Merge branch '19-unable-to-include-other-documents' into 'master'

Resolve "Unable to include other documents"

Closes #19

See merge request !11
parents 37e676d3 75a7ecb2
No related branches found
No related tags found
1 merge request!11Resolve "Unable to include other documents"
Pipeline #
......@@ -8,7 +8,8 @@ Require-Bundle: org.eclipse.core.runtime,
org.eclipse.ui;bundle-version="3.109.0",
org.eclipse.ui.ide;bundle-version="3.13.0",
com.oracle.javafx.scenebuilder;bundle-version="8.0.0",
org.eclipse.e4.tools.compat;bundle-version="4.7.0"
org.eclipse.e4.tools.compat;bundle-version="4.7.0",
org.eclipse.core.resources
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
Import-Package: com.oracle.javafx.scenebuilder.app.selectionbar,
com.oracle.javafx.scenebuilder.kit.editor,
......
......@@ -27,5 +27,58 @@
name="Scene Builder">
</category>
</extension>
<extension
point="org.eclipse.ui.menus">
<menuContribution
allPopups="false"
locationURI="popup:org.eclipse.ui.popup.any?after=group.open">
<command
commandId="no.tobask.sb4e.includefxml"
label="Include in opened document"
style="push">
<visibleWhen>
<and>
<with
variable="activeMenuSelection">
<iterate
ifEmpty="false"
operator="and">
<adapt
type="org.eclipse.core.resources.IFile">
<test
property="org.eclipse.core.resources.name"
value="*.fxml">
</test>
</adapt>
</iterate>
<count
value="1">
</count>
</with>
<with
variable="activeEditorId">
<equals
value="sb4e.editors.FXMLEditor">
</equals>
</with>
</and>
</visibleWhen>
</command>
</menuContribution>
</extension>
<extension
point="org.eclipse.ui.commands">
<command
id="no.tobask.sb4e.includefxml"
name="Include fxml">
</command>
</extension>
<extension
point="org.eclipse.ui.handlers">
<handler
commandId="no.tobask.sb4e.includefxml"
class="no.tobask.sb4e.handlers.IncludeFxmlHandler">
</handler>
</extension>
</plugin>
......@@ -159,6 +159,7 @@ public class FXMLEditor extends EditorPart {
} catch (IOException e) {
e.printStackTrace();
}
editorController.startFileWatching();
String controllerName = editorController.getFxomDocument().getFxomRoot().getFxController();
editorController.setGlossary(new JavaProjectGlossary(controllerName, fxmlUrl,
editorWindowController.infoPanelController));
......
package no.tobask.sb4e.handlers;
import org.eclipse.core.commands.ExecutionEvent;
import org.eclipse.core.commands.ExecutionException;
import org.eclipse.core.commands.IHandler;
import org.eclipse.core.commands.IHandlerListener;
import org.eclipse.core.internal.resources.File;
import org.eclipse.core.resources.IFile;
import org.eclipse.core.runtime.IPath;
import org.eclipse.jface.viewers.ISelection;
import org.eclipse.jface.viewers.IStructuredSelection;
import org.eclipse.jface.viewers.TreePath;
import org.eclipse.jface.viewers.TreeSelection;
import org.eclipse.ui.IEditorPart;
import org.eclipse.ui.handlers.HandlerUtil;
import com.oracle.javafx.scenebuilder.app.DocumentWindowController.DocumentEditAction;
import com.oracle.javafx.scenebuilder.kit.editor.EditorController;
import com.oracle.javafx.scenebuilder.kit.editor.EditorController.EditAction;
import no.tobask.sb4e.editors.FXMLEditor;
public class IncludeFxmlHandler implements IHandler {
@Override
public void addHandlerListener(IHandlerListener handlerListener) {
// TODO Auto-generated method stub
}
@Override
public void dispose() {
// TODO Auto-generated method stub
}
@Override
public Object execute(ExecutionEvent event) throws ExecutionException {
ISelection menuSelection = HandlerUtil.getActiveMenuSelection(event);
if (menuSelection instanceof IStructuredSelection) {
IStructuredSelection treeSelection = (IStructuredSelection) menuSelection;
IFile selectedFile = (IFile) treeSelection.getFirstElement();
IEditorPart activeEditor = HandlerUtil.getActiveEditor(event);
if (activeEditor instanceof FXMLEditor) {
EditorController editorController = ((FXMLEditor) activeEditor).getEditorController();
editorController.performIncludeFxml(selectedFile.getLocation().toFile());
}
}
return null;
}
@Override
public boolean isEnabled() {
return true;
}
@Override
public boolean isHandled() {
return true;
}
@Override
public void removeHandlerListener(IHandlerListener handlerListener) {
// TODO Auto-generated method stub
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment