|
From: <had...@us...> - 2009-02-13 19:16:23
|
Revision: 4471
http://fudaa.svn.sourceforge.net/fudaa/?rev=4471&view=rev
Author: hadouxad
Date: 2009-02-13 19:16:17 +0000 (Fri, 13 Feb 2009)
Log Message:
-----------
* Ajout des librairies pdf et ps pour les export (ps foireux....)
* modification g?\195?\169n?\195?\169rales pour inclure ces formats dans tous les exports
* ajout des formats a2,a3 et a4 ainsi que la possibilit?\195?\169 de choisir portrait ou landscape
* calcul des pixels du format en fonction de la r?\195?\169solution ?\195?\169cran
* pour la rotation :concat?\195?\169nation de 2 transformation affines
* cr?\195?\169ation de m?\195?\169thode pour construire rapidement un rapport pdf
* avancement sur les fl?\195?\168ches connectors.
Modified Paths:
--------------
branches/Prepro-0.92-SNAPSHOT/ebli/src/org/fudaa/ebli/calque/ZEbliCalquesPanel.java
branches/Prepro-0.92-SNAPSHOT/fudaa/src/org/fudaa/fudaa/tr/post/TrPostLayoutPanelController.java
Added Paths:
-----------
branches/Prepro-0.92-SNAPSHOT/fudaa/src/org/fudaa/fudaa/tr/post/rapport/
branches/Prepro-0.92-SNAPSHOT/fudaa/src/org/fudaa/fudaa/tr/post/rapport/TrPostRapportLayout.java
Modified: branches/Prepro-0.92-SNAPSHOT/ebli/src/org/fudaa/ebli/calque/ZEbliCalquesPanel.java
===================================================================
--- branches/Prepro-0.92-SNAPSHOT/ebli/src/org/fudaa/ebli/calque/ZEbliCalquesPanel.java 2009-02-13 19:15:30 UTC (rev 4470)
+++ branches/Prepro-0.92-SNAPSHOT/ebli/src/org/fudaa/ebli/calque/ZEbliCalquesPanel.java 2009-02-13 19:16:17 UTC (rev 4471)
@@ -1073,7 +1073,7 @@
return conteneur;
}
- private JTable createTable() {
+ public JTable createTable() {
final List<String> liste = new ArrayList<String>(infosCreation_.keySet());
Collections.sort(liste);
final List<String> col = new ArrayList<String>();
Modified: branches/Prepro-0.92-SNAPSHOT/fudaa/src/org/fudaa/fudaa/tr/post/TrPostLayoutPanelController.java
===================================================================
--- branches/Prepro-0.92-SNAPSHOT/fudaa/src/org/fudaa/fudaa/tr/post/TrPostLayoutPanelController.java 2009-02-13 19:15:30 UTC (rev 4470)
+++ branches/Prepro-0.92-SNAPSHOT/fudaa/src/org/fudaa/fudaa/tr/post/TrPostLayoutPanelController.java 2009-02-13 19:16:17 UTC (rev 4471)
@@ -67,6 +67,7 @@
import org.fudaa.fudaa.tr.post.actions.TrPostActionDuplicate;
import org.fudaa.fudaa.tr.post.actions.TrPostActionDuplicateLayout;
import org.fudaa.fudaa.tr.post.dialogSpec.TrPostWizardCreateScope;
+import org.fudaa.fudaa.tr.post.rapport.TrPostRapportLayout;
import org.netbeans.api.visual.widget.Widget;
import com.memoire.bu.BuDesktop;
@@ -332,8 +333,8 @@
nodeFleche.setTitle("Fleche simple");
// nodeFleche.setCreator(new EbliWidgetCreatorShape(new ShapeCreatorFlecheSimple()));
- nodeFleche.setCreator(new EbliWidgetCreatorArrowEditor(new EbliEditorArrow()));
- // nodeFleche.setCreator(new EbliWidgetCreatorConnectionWidget());
+ // nodeFleche.setCreator(new EbliWidgetCreatorArrowEditor(new EbliEditorArrow()));
+ nodeFleche.setCreator(new EbliWidgetCreatorConnectionWidget());
nodeFleche.setPreferedSize(new Dimension(200, 150));
@@ -601,7 +602,7 @@
init.add(null);
init.add(new TrPostWizardCreateScope.ImportAction(projet_));
-
+ //init.add((new TrPostRapportLayout(getSceneCourante())).getAction());
actions_ = Collections.unmodifiableList(init);
}
Added: branches/Prepro-0.92-SNAPSHOT/fudaa/src/org/fudaa/fudaa/tr/post/rapport/TrPostRapportLayout.java
===================================================================
--- branches/Prepro-0.92-SNAPSHOT/fudaa/src/org/fudaa/fudaa/tr/post/rapport/TrPostRapportLayout.java (rev 0)
+++ branches/Prepro-0.92-SNAPSHOT/fudaa/src/org/fudaa/fudaa/tr/post/rapport/TrPostRapportLayout.java 2009-02-13 19:16:17 UTC (rev 4471)
@@ -0,0 +1,120 @@
+package org.fudaa.fudaa.tr.post.rapport;
+
+import java.awt.Dialog;
+import java.awt.event.ActionEvent;
+import java.io.File;
+import java.io.FileNotFoundException;
+import java.io.FileOutputStream;
+import java.util.HashMap;
+
+import javax.swing.JFileChooser;
+import javax.swing.JTextField;
+
+import org.fudaa.ctulu.CtuluResource;
+import org.fudaa.ctulu.gui.CtuluDialog;
+import org.fudaa.ctulu.gui.CtuluDialogPanel;
+import org.fudaa.ctulu.gui.CtuluLibSwing;
+import org.fudaa.ctulu.image.CtuluPdfPsExport;
+import org.fudaa.ebli.commun.EbliActionSimple;
+import org.fudaa.ebli.ressource.EbliResource;
+import org.fudaa.ebli.visuallibrary.EbliWidget;
+import org.fudaa.ebli.visuallibrary.calque.EbliWidgetVueCalque;
+import org.fudaa.ebli.visuallibrary.graphe.EbliWidgetGraphe;
+import org.fudaa.fudaa.tr.common.TrLib;
+import org.fudaa.fudaa.tr.common.TrResource;
+import org.fudaa.fudaa.tr.post.TrPostScene;
+import org.netbeans.api.visual.widget.Widget;
+
+import com.lowagie.text.Document;
+import com.lowagie.text.DocumentException;
+import com.lowagie.text.Rectangle;
+import com.lowagie.text.pdf.PdfWriter;
+import com.memoire.bu.BuGridLayout;
+import com.memoire.bu.BuIcon;
+
+/**
+ * Genere un rapport a partir du layout.
+ * le rapport est en pdf
+ * @author Adrien Hadoux
+ *
+ */
+public class TrPostRapportLayout {
+
+ TrPostScene scene_=null;
+ EbliActionSimple actionGenerate_;
+ public TrPostRapportLayout(TrPostScene scene){
+ scene_=scene;
+ actionGenerate_=new EbliActionSimple(TrResource.getS("Rapport"),EbliResource.EBLI.getIcon("text"),"RAPPORTPDF"){
+ public void actionPerformed(ActionEvent e){
+
+ JFileChooser chooser=new JFileChooser();
+ int reponse=chooser.showOpenDialog(null);
+ if(reponse!= JFileChooser.APPROVE_OPTION)
+ return;
+
+ File f=chooser.getSelectedFile();
+ writeDoc(f);
+ }
+ };
+
+ }
+
+ public EbliActionSimple getAction(){
+ return actionGenerate_;
+ }
+
+
+
+ void writeDoc(File file){
+ Document document = new Document();
+
+ //-- ajout des infos relatives au document --//
+ document.addTitle(CtuluResource.CTULU.getString("Exportation PDF"));
+ document.addAuthor("FUDAA generating document");
+
+ try {
+ PdfWriter writer =PdfWriter.getInstance(document, new FileOutputStream(file));
+ document.open();
+
+ int w=scene_.getView().getSize().width;
+ int h=scene_.getView().getSize().height;
+ CtuluPdfPsExport.addImageToPdf(scene_.produceImage(w,h, new HashMap()), writer, w, h);
+
+ for(Widget widget:scene_.getChildren()){
+ if(widget instanceof EbliWidget){
+ EbliWidget wid=(EbliWidget)widget;
+
+ if(wid.getIntern() instanceof EbliWidgetVueCalque){
+ EbliWidgetVueCalque vue=(EbliWidgetVueCalque)wid.getIntern();
+ CtuluPdfPsExport.addImageToPdf(vue.getCalquePanel().produceImage(new HashMap()), writer, vue.getCalquePanel().getSize().width,vue.getCalquePanel().getSize().height);
+
+ CtuluPdfPsExport.addJTableToPdf(vue.getCalquePanel().createTable() , writer);
+
+ }else
+ if(wid.getIntern() instanceof EbliWidgetGraphe){
+ EbliWidgetGraphe vue=(EbliWidgetGraphe)wid.getIntern();
+ CtuluPdfPsExport.addImageToPdf(vue.getGraphe().produceImage(new HashMap()), writer, vue.getGraphe().getSize().width,vue.getGraphe().getSize().height);
+
+ //CtuluPdfPsExport.addJTableToPdf(vue.getGraphe().get , writer);
+
+ }
+
+
+ }
+ }
+
+
+
+ } catch (FileNotFoundException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ } catch (DocumentException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+
+
+
+ }
+
+}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|