Revision 47423 trunk/org.gvsig.desktop/org.gvsig.desktop.plugin/org.gvsig.app/org.gvsig.app.mainplugin/src/main/java/org/gvsig/app/extension/develtools/InfoPanel.java

View differences:

InfoPanel.java
41 41
import javax.swing.JTextPane;
42 42
import javax.swing.event.HyperlinkEvent;
43 43
import javax.swing.event.HyperlinkListener;
44
import org.gvsig.andami.PluginsLocator;
45
import org.gvsig.andami.actioninfo.ActionInfo;
46
import org.gvsig.andami.actioninfo.ActionInfoManager;
44 47

  
45 48
import org.gvsig.app.ApplicationLocator;
49
import static org.gvsig.app.extension.develtools.IconThemeDevelTool.LOGGER;
50
import org.gvsig.desktopopen.DesktopOpen;
51
import org.gvsig.tools.ToolsLocator;
52
import org.gvsig.tools.folders.FoldersManager;
46 53
import org.gvsig.tools.swing.api.ToolsSwingLocator;
47 54
import org.gvsig.tools.swing.api.windowmanager.WindowManager;
55
import org.gvsig.tools.util.ToolsUtilLocator;
48 56
import org.slf4j.Logger;
49 57
import org.slf4j.LoggerFactory;
50 58

  
......
133 141
		this.setVisible(true);
134 142
	}
135 143

  
144
    public static void showInBrowser(String name, String title, String html) {
145
        try {
146
            FoldersManager fm = ToolsLocator.getFoldersManager();
147
            File f = fm.createTemporaryFile(name+".html", html);
148
            DesktopOpen desktopOpen = ToolsUtilLocator.getToolsUtilManager().createDesktopOpen();
149
            desktopOpen.browse(f.toURI());
150
        } catch (Exception ex) {
151
            LOGGER.warn("Can't show in desktop browser", ex);
152
            showInInternalViewer(name, title, html);
153
        }
154
    }
155

  
156
    public static void showInInternalViewer(String name, String title, String html) {
157
        InfoPanel.save2file(name, html);
158
        InfoPanel.showPanel(title, WindowManager.MODE.WINDOW, html);
159
    }
160

  
161
    public static void showInPDFViewer(String name, String title, String html) {
162
        ActionInfoManager actionManager = PluginsLocator.getActionInfoManager();
163
        ActionInfo showPdf = actionManager.getAction("show-pdf");
164
        if (showPdf == null) {
165
            showInInternalViewer(name, title, html);
166
        } else {
167
            showPdf.execute(
168
                    new Object[]{
169
                        "--title=", title,
170
                        "--mode=", WindowManager.MODE.WINDOW,
171
                        "--source=", html
172
                    }
173
            );
174
        }
175
    }
176

  
136 177
}

Also available in: Unified diff