Add Preview export modules back
Esse commit está contido em:
+58
-58
@@ -1,70 +1,70 @@
|
||||
/*
|
||||
Copyright 2008-2011 Gephi
|
||||
Authors : Mathieu Bastian
|
||||
Website : http://www.gephi.org
|
||||
Copyright 2008-2011 Gephi
|
||||
Authors : Mathieu Bastian
|
||||
Website : http://www.gephi.org
|
||||
|
||||
This file is part of Gephi.
|
||||
This file is part of Gephi.
|
||||
|
||||
DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
|
||||
DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
|
||||
|
||||
Copyright 2011 Gephi Consortium. All rights reserved.
|
||||
Copyright 2011 Gephi Consortium. All rights reserved.
|
||||
|
||||
The contents of this file are subject to the terms of either the GNU
|
||||
General Public License Version 3 only ("GPL") or the Common
|
||||
Development and Distribution License("CDDL") (collectively, the
|
||||
"License"). You may not use this file except in compliance with the
|
||||
License. You can obtain a copy of the License at
|
||||
http://gephi.org/about/legal/license-notice/
|
||||
or /cddl-1.0.txt and /gpl-3.0.txt. See the License for the
|
||||
specific language governing permissions and limitations under the
|
||||
License. When distributing the software, include this License Header
|
||||
Notice in each file and include the License files at
|
||||
/cddl-1.0.txt and /gpl-3.0.txt. If applicable, add the following below the
|
||||
License Header, with the fields enclosed by brackets [] replaced by
|
||||
your own identifying information:
|
||||
"Portions Copyrighted [year] [name of copyright owner]"
|
||||
The contents of this file are subject to the terms of either the GNU
|
||||
General Public License Version 3 only ("GPL") or the Common
|
||||
Development and Distribution License("CDDL") (collectively, the
|
||||
"License"). You may not use this file except in compliance with the
|
||||
License. You can obtain a copy of the License at
|
||||
http://gephi.org/about/legal/license-notice/
|
||||
or /cddl-1.0.txt and /gpl-3.0.txt. See the License for the
|
||||
specific language governing permissions and limitations under the
|
||||
License. When distributing the software, include this License Header
|
||||
Notice in each file and include the License files at
|
||||
/cddl-1.0.txt and /gpl-3.0.txt. If applicable, add the following below the
|
||||
License Header, with the fields enclosed by brackets [] replaced by
|
||||
your own identifying information:
|
||||
"Portions Copyrighted [year] [name of copyright owner]"
|
||||
|
||||
If you wish your version of this file to be governed by only the CDDL
|
||||
or only the GPL Version 3, indicate your decision by adding
|
||||
"[Contributor] elects to include this software in this distribution
|
||||
under the [CDDL or GPL Version 3] license." If you do not indicate a
|
||||
single choice of license, a recipient has the option to distribute
|
||||
your version of this file under either the CDDL, the GPL Version 3 or
|
||||
to extend the choice of license to its licensees as provided above.
|
||||
However, if you add GPL Version 3 code and therefore, elected the GPL
|
||||
Version 3 license, then the option applies only if the new code is
|
||||
made subject to such option by the copyright holder.
|
||||
If you wish your version of this file to be governed by only the CDDL
|
||||
or only the GPL Version 3, indicate your decision by adding
|
||||
"[Contributor] elects to include this software in this distribution
|
||||
under the [CDDL or GPL Version 3] license." If you do not indicate a
|
||||
single choice of license, a recipient has the option to distribute
|
||||
your version of this file under either the CDDL, the GPL Version 3 or
|
||||
to extend the choice of license to its licensees as provided above.
|
||||
However, if you add GPL Version 3 code and therefore, elected the GPL
|
||||
Version 3 license, then the option applies only if the new code is
|
||||
made subject to such option by the copyright holder.
|
||||
|
||||
Contributor(s):
|
||||
Contributor(s):
|
||||
|
||||
Portions Copyrighted 2011 Gephi Consortium.
|
||||
Portions Copyrighted 2011 Gephi Consortium.
|
||||
*/
|
||||
package org.gephi.io.exporter.preview;
|
||||
|
||||
import java.awt.Color;
|
||||
import java.awt.Image;
|
||||
import java.awt.image.BufferedImage;
|
||||
import java.io.OutputStream;
|
||||
import javax.imageio.ImageIO;
|
||||
import org.gephi.io.exporter.spi.ByteExporter;
|
||||
import org.gephi.io.exporter.spi.VectorExporter;
|
||||
import org.gephi.preview.api.G2DTarget;
|
||||
import org.gephi.preview.api.PreviewController;
|
||||
import org.gephi.preview.api.PreviewProperties;
|
||||
import org.gephi.preview.api.PreviewProperty;
|
||||
import org.gephi.preview.api.ProcessingTarget;
|
||||
import org.gephi.preview.api.RenderTarget;
|
||||
import org.gephi.project.api.Workspace;
|
||||
import org.gephi.utils.longtask.spi.LongTask;
|
||||
import org.gephi.utils.progress.Progress;
|
||||
import org.gephi.utils.progress.ProgressTicket;
|
||||
import org.openide.util.Lookup;
|
||||
import processing.core.PGraphicsJava2D;
|
||||
|
||||
/**
|
||||
*
|
||||
*
|
||||
* @author Mathieu Bastian
|
||||
*/
|
||||
public class PNGExporter implements VectorExporter, ByteExporter, LongTask {
|
||||
|
||||
|
||||
private ProgressTicket progress;
|
||||
private boolean cancel = false;
|
||||
private Workspace workspace;
|
||||
@@ -73,15 +73,15 @@ public class PNGExporter implements VectorExporter, ByteExporter, LongTask {
|
||||
private int height = 1024;
|
||||
private boolean transparentBackground = false;
|
||||
private int margin = 4;
|
||||
private ProcessingTarget target;
|
||||
|
||||
private G2DTarget target;
|
||||
|
||||
@Override
|
||||
public boolean execute() {
|
||||
Progress.start(progress);
|
||||
|
||||
|
||||
PreviewController controller = Lookup.getDefault().lookup(PreviewController.class);
|
||||
controller.getModel(workspace).getProperties().putValue(PreviewProperty.VISIBILITY_RATIO, 1.0);
|
||||
|
||||
|
||||
PreviewProperties props = controller.getModel(workspace).getProperties();
|
||||
props.putValue("width", width);
|
||||
props.putValue("height", height);
|
||||
@@ -91,7 +91,7 @@ public class PNGExporter implements VectorExporter, ByteExporter, LongTask {
|
||||
}
|
||||
props.putValue(PreviewProperty.MARGIN, new Float((float) margin));
|
||||
controller.refreshPreview(workspace);
|
||||
target = (ProcessingTarget) controller.getRenderTarget(RenderTarget.PROCESSING_TARGET, workspace);
|
||||
target = (G2DTarget) controller.getRenderTarget(RenderTarget.G2D_TARGET, workspace);
|
||||
if (target instanceof LongTask) {
|
||||
((LongTask) target).setProgressTicket(progress);
|
||||
}
|
||||
@@ -100,40 +100,40 @@ public class PNGExporter implements VectorExporter, ByteExporter, LongTask {
|
||||
props.removeSimpleValue("width");
|
||||
props.removeSimpleValue("height");
|
||||
props.removeSimpleValue(PreviewProperty.MARGIN);
|
||||
|
||||
|
||||
try {
|
||||
target.refresh();
|
||||
|
||||
|
||||
Progress.switchToIndeterminate(progress);
|
||||
|
||||
PGraphicsJava2D pg2 = (PGraphicsJava2D) target.getGraphics();
|
||||
|
||||
Image sourceImg = target.getImage();
|
||||
BufferedImage img = new BufferedImage(width, height, BufferedImage.TYPE_INT_ARGB);
|
||||
img.setRGB(0, 0, width, height, pg2.pixels, 0, width);
|
||||
img.getGraphics().drawImage(sourceImg, 0, 0, null);
|
||||
ImageIO.write(img, "png", stream);
|
||||
stream.close();
|
||||
|
||||
|
||||
props.putValue(PreviewProperty.BACKGROUND_COLOR, oldColor);
|
||||
} catch (Exception e) {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
|
||||
|
||||
Progress.finish(progress);
|
||||
|
||||
|
||||
return !cancel;
|
||||
}
|
||||
|
||||
|
||||
public int getHeight() {
|
||||
return height;
|
||||
}
|
||||
|
||||
|
||||
public void setHeight(int height) {
|
||||
this.height = height;
|
||||
}
|
||||
|
||||
|
||||
public int getWidth() {
|
||||
return width;
|
||||
}
|
||||
|
||||
|
||||
public void setWidth(int width) {
|
||||
this.width = width;
|
||||
}
|
||||
@@ -153,22 +153,22 @@ public class PNGExporter implements VectorExporter, ByteExporter, LongTask {
|
||||
public void setTransparentBackground(boolean transparentBackground) {
|
||||
this.transparentBackground = transparentBackground;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public void setWorkspace(Workspace workspace) {
|
||||
this.workspace = workspace;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public Workspace getWorkspace() {
|
||||
return workspace;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public void setOutputStream(OutputStream stream) {
|
||||
this.stream = stream;
|
||||
}
|
||||
|
||||
|
||||
public boolean cancel() {
|
||||
cancel = true;
|
||||
if (target instanceof LongTask) {
|
||||
@@ -176,7 +176,7 @@ public class PNGExporter implements VectorExporter, ByteExporter, LongTask {
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
public void setProgressTicket(ProgressTicket progressTicket) {
|
||||
this.progress = progressTicket;
|
||||
}
|
||||
|
||||
@@ -34,7 +34,7 @@
|
||||
<artifactId>org-netbeans-api-visual</artifactId>
|
||||
<groupId>org.netbeans.api</groupId>
|
||||
</exclusion>
|
||||
<exclusion>
|
||||
<exclusion>
|
||||
<artifactId>org-netbeans-core-execution</artifactId>
|
||||
<groupId>org.netbeans.modules</groupId>
|
||||
</exclusion>
|
||||
@@ -145,18 +145,18 @@
|
||||
<groupId>${project.groupId}</groupId>
|
||||
<artifactId>preview-api</artifactId>
|
||||
</dependency>
|
||||
<!-- <dependency>
|
||||
<dependency>
|
||||
<groupId>${project.groupId}</groupId>
|
||||
<artifactId>io-exporter-preview</artifactId>
|
||||
</dependency>-->
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>${project.groupId}</groupId>
|
||||
<artifactId>lib.validation</artifactId>
|
||||
</dependency>
|
||||
<!-- <dependency>
|
||||
<dependency>
|
||||
<groupId>${project.groupId}</groupId>
|
||||
<artifactId>preview-export-ui</artifactId>
|
||||
</dependency>-->
|
||||
</dependency>
|
||||
<!-- <dependency>
|
||||
<groupId>${project.groupId}</groupId>
|
||||
<artifactId>dynamic-api</artifactId>
|
||||
@@ -422,7 +422,7 @@
|
||||
<groupId>${project.groupId}</groupId>
|
||||
<artifactId>desktop-import</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<dependency>
|
||||
<groupId>${project.groupId}</groupId>
|
||||
<artifactId>desktop-preview</artifactId>
|
||||
</dependency><!--
|
||||
|
||||
@@ -1208,6 +1208,8 @@
|
||||
<module>modules/MostRecentFilesAPI</module>
|
||||
<module>modules/PerspectiveAPI</module>
|
||||
<module>modules/PreviewAPI</module>
|
||||
<module>modules/PreviewExport</module>
|
||||
<module>modules/PreviewExportUI</module>
|
||||
<module>modules/PreviewPlugin</module>
|
||||
<module>modules/ProcessorPlugin</module>
|
||||
<module>modules/ProcessorPluginUI</module>
|
||||
|
||||
Referência em uma Nova Issue
Bloquear um usuário