problem with JDIC browser in a Dockable frame

This forum is used by users to request and discuss new product features. Please do not use this forum for technical support including bug reports.

Moderator: JIDE Support

Forum rules
Product suggestions only. Please do not use this forum for technical support including bug reports.

problem with JDIC browser in a Dockable frame

Postby nicola.gioia » Mon Nov 20, 2006 10:05 am

I'm using JDIC library to insert a browser in my application, but ia hava a strange problem if the browser component is inserted into a DockableFrame instead of int the DocumentPane.
The problem regard the resizeability of the other dockable frames in the DockableHolder.
The Dockable Frame containing the Browser component take all the available space and the other Dockable frames remains at minimum size.
If the Browser is inserted into a DocumentPane there are no problems.
The code to reproduce the bug is:
Code: Select all
import javax.swing.*;

import com.jidesoft.docking.*;

public class BrowserInDockableFrame {
   public static void main(String[] args) {
      DefaultDockableHolder f = new DefaultDockableHolder();
      DockingManager dm = f.getDockingManager();
      String currentLookAndFeel = "com.sun.java.swing.plaf.windows.WindowsLookAndFeel";
      try {
         UIManager.setLookAndFeel(currentLookAndFeel);
      } catch (Exception e) {
         e.printStackTrace();
      }
      SwingUtilities.updateComponentTreeUI(f);
      dm.setProfileKey("testBrowser");
      dm.hideWorkspace();
      
      dm.beginLoadLayoutData();
      DockableFrame df = null;
      
      
      df = new DockableFrame("panel 00");
      df.getContext().setInitSide(com.jidesoft.docking.DockContext.DOCK_SIDE_WEST);
      df.getContext().setInitIndex(0);
      dm.setHeavyweightComponentEnabled(true);
//      df.getContentPane().add(new JScrollPane(new JTextArea("panel [0,0]")));
      df.getContentPane().add(new Browser());
      dm.addFrame(df);
      
      df = new DockableFrame("panel 10");
      df.getContext().setInitSide(com.jidesoft.docking.DockContext.DOCK_SIDE_WEST);
      df.getContext().setInitIndex(1);
      df.getContentPane().add(new JScrollPane(new JTextArea("panel [1,0]")));
      dm.addFrame(df);
      
      df = new DockableFrame("panel 01");
      df.getContext().setInitSide(com.jidesoft.docking.DockContext.DOCK_SIDE_EAST);
      df.getContext().setInitIndex(0);
      df.getContentPane().add(new JScrollPane(new JTextArea("panel [0,1]")));
      dm.addFrame(df);
      
      df = new DockableFrame("panel 11");
      df.getContext().setInitSide(com.jidesoft.docking.DockContext.DOCK_SIDE_EAST);
      df.getContext().setInitIndex(1);
      df.getContentPane().add(new JScrollPane(new JTextArea("panel [1,1]")));
      dm.addFrame(df);
      
      dm.loadLayoutDataFrom("temp");
      f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      f.setVisible(true);
   }   
}


The Browser class and the libraries used are available athttps://jdic.dev.java.net/servlets/ProjectDocumentList?expandFolder=4183&folderID=6267, but the code is:
Code: Select all
import java.awt.*;
import java.awt.event.*;

import javax.swing.*;
import javax.swing.border.*;
import javax.swing.SwingConstants;
import java.io.File;
import java.net.*;

import org.jdesktop.jdic.browser.*;

public class Browser extends JPanel {
    public static ImageIcon browseIcon = new ImageIcon(Browser.class.getResource("images/Right.gif"));

    BorderLayout borderLayout1 = new BorderLayout();

    JToolBar jBrowserToolBar = new JToolBar();
    JButton jStopButton = new JButton("Stopp",
            new ImageIcon(getClass().getResource("images/Stop.png")));

    JButton jRefreshButton = new JButton("Refresh",
            new ImageIcon(getClass().getResource("images/Reload.png")));
    JButton jForwardButton = new JButton("Forward",
            new ImageIcon(getClass().getResource("images/Forward.png")));
    JButton jBackButton = new JButton("Back",
            new ImageIcon(getClass().getResource("images/Back.png")));

    JPanel jAddressPanel = new JPanel();
    JLabel jAddressLabel = new JLabel();
    JTextField jAddressTextField = new JTextField();
    JButton jGoButton = new JButton();
    JPanel jAddrToolBarPanel = new JPanel();
    MyStatusBar statusBar = new MyStatusBar();
    JPanel jBrowserPanel = new JPanel();

    IWebBrowser webBrowser;

    public Browser() {
        try {
            jbInit();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    public static void main(String[] args) {
        try {
            UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
        } catch (Exception e) {}

        JFrame frame = new JFrame("JDIC API Demo - Browser");

        Container contentPane = frame.getContentPane();

        contentPane.setLayout(new GridLayout(1, 1));
        contentPane.add(new Browser());

        frame.addWindowListener(new WindowAdapter() {
            public void windowClosing(WindowEvent e) {
                System.exit(0);
            }
        });

        frame.pack();
        frame.setVisible(true);
    }

    private void jbInit() throws Exception {
        this.setLayout(borderLayout1);

        Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();

        this.setPreferredSize(new Dimension(screenSize.width * 9 / 10,
                screenSize.height * 8 / 10));

        ToolTipManager.sharedInstance().setLightWeightPopupEnabled(false);

        jAddressLabel.setBorder(BorderFactory.createEmptyBorder(0, 4, 0, 4));
        jAddressLabel.setToolTipText("");
        jAddressLabel.setText(" URL: ");

        jGoButton.setBorder(BorderFactory.createCompoundBorder(new EmptyBorder(0,
                2, 0, 2),
                new EtchedBorder()));
        jGoButton.setMaximumSize(new Dimension(60, 25));
        jGoButton.setMinimumSize(new Dimension(60, 25));
        jGoButton.setPreferredSize(new Dimension(60, 25));
        jGoButton.setToolTipText("Load the given URL");
        jGoButton.setIcon(browseIcon);
        jGoButton.setText("GO");
        jGoButton.addActionListener(new ActionListener(){
           public void actionPerformed(ActionEvent e) {
              jGoButton_actionPerformed(e);
           }
        });
        jAddressPanel.setLayout(new BorderLayout());

        jAddressTextField.addActionListener(new ActionListener(){
           public void actionPerformed(ActionEvent e) {
              jAddressTextField_actionPerformed(e);
           }
        });
        jBackButton.setToolTipText("Go back one page");
        jBackButton.setHorizontalTextPosition(SwingConstants.TRAILING);
        jBackButton.setEnabled(false);
        jBackButton.setMaximumSize(new Dimension(75, 27));
        jBackButton.setPreferredSize(new Dimension(75, 27));
        jBackButton.addActionListener(new ActionListener(){
           public void actionPerformed(ActionEvent e) {
              jBackButton_actionPerformed(e);
           }
        });
        jForwardButton.setToolTipText("Go forward one page");
        jForwardButton.setEnabled(false);
        jForwardButton.addActionListener(new ActionListener(){
           public void actionPerformed(ActionEvent e) {
              jForwardButton_actionPerformed(e);
           }
        });
        jRefreshButton.setToolTipText("Reload current page");
        jRefreshButton.setEnabled(true);
        jRefreshButton.setMaximumSize(new Dimension(75, 27));
        jRefreshButton.setMinimumSize(new Dimension(75, 27));
        jRefreshButton.setPreferredSize(new Dimension(75, 27));
        jRefreshButton.addActionListener(new ActionListener(){
           public void actionPerformed(ActionEvent e) {
              jRefreshButton_actionPerformed(e);
           }
        });
        jStopButton.setToolTipText("Stop loading this page");
        jStopButton.setVerifyInputWhenFocusTarget(true);
        jStopButton.setText("Stop");
        jStopButton.setEnabled(true);
        jStopButton.setMaximumSize(new Dimension(75, 27));
        jStopButton.setMinimumSize(new Dimension(75, 27));
        jStopButton.setPreferredSize(new Dimension(75, 27));
        jStopButton.addActionListener(new ActionListener(){
           public void actionPerformed(ActionEvent e) {
              jStopButton_actionPerformed(e);
           }
        });
        jAddressPanel.add(jAddressLabel, BorderLayout.WEST);
        jAddressPanel.add(jAddressTextField, BorderLayout.CENTER);
        jAddressPanel.add(jGoButton, BorderLayout.EAST);
        jAddressPanel.setBorder(BorderFactory.createCompoundBorder(
            BorderFactory.createEtchedBorder(),
            BorderFactory.createEmptyBorder(2, 0, 2, 0)));

        jBrowserToolBar.setFloatable(false);
        jBrowserToolBar.add(jBackButton, null);
        jBrowserToolBar.add(jForwardButton, null);
        jBrowserToolBar.addSeparator();
        jBrowserToolBar.add(jRefreshButton, null);
        jBrowserToolBar.add(jStopButton, null);
        jBrowserToolBar.setBorder(BorderFactory.createCompoundBorder(
            BorderFactory.createEtchedBorder(),
            BorderFactory.createEmptyBorder(2, 2, 2, 0)));

        jAddrToolBarPanel.setLayout(new BorderLayout());
        jAddrToolBarPanel.add(jAddressPanel, BorderLayout.CENTER);
        jAddrToolBarPanel.add(jBrowserToolBar, BorderLayout.WEST);
        jAddrToolBarPanel.setBorder(BorderFactory.createEmptyBorder(0, 0, 2, 0));

        statusBar.setBorder(BorderFactory.createEmptyBorder(2, 0, 0, 0));
        statusBar.lblDesc.setText("JDIC API Demo - Browser");

        try {
            BrowserEngineManager bem = BrowserEngineManager.instance();
            bem.setActiveEngine(BrowserEngineManager.IE);
            webBrowser = bem.getActiveEngine().getWebBrowser();
            webBrowser.setURL(new URL("http://java.net"));

            // Print out debug messages in the command line.
            //webBrowser.setDebug(true);
        } catch (MalformedURLException e) {
            System.out.println(e.getMessage());
            return;
        }

        webBrowser.addWebBrowserListener(new WebBrowserListener() {
            public void downloadStarted(WebBrowserEvent event) {
                updateStatusInfo("Loading started.");
            }
                  public void initializationCompleted(WebBrowserEvent event){;}
            public void downloadCompleted(WebBrowserEvent event) {
                jBackButton.setEnabled(webBrowser.isBackEnabled());
                jForwardButton.setEnabled(webBrowser.isForwardEnabled());

                updateStatusInfo("Loading completed.");

                URL currentUrl = webBrowser.getURL();

                if (currentUrl != null) {
                    jAddressTextField.setText(currentUrl.toString());
                }
            }

            public void downloadProgress(WebBrowserEvent event) {
                // updateStatusInfo("Loading in progress...");
            }

            public void downloadError(WebBrowserEvent event) {
                updateStatusInfo("Loading error.");
            }

            public void documentCompleted(WebBrowserEvent event) {
                updateStatusInfo("Document loading completed.");
            }

            public void titleChange(WebBrowserEvent event) {
                updateStatusInfo("Title of the browser window changed.");
            } 

            public void statusTextChange(WebBrowserEvent event) {
                // updateStatusInfo("Status text changed.");
            }
            public void windowClose(WebBrowserEvent event) {;}
        });

        jBrowserPanel.setLayout(new BorderLayout());
        jBrowserPanel.add(webBrowser.asComponent(), BorderLayout.CENTER);            

        this.add(jAddrToolBarPanel, BorderLayout.NORTH);
        this.add(statusBar, BorderLayout.SOUTH);
        this.add(jBrowserPanel, BorderLayout.CENTER);
    }

    void updateStatusInfo(String statusMessage) {
        statusBar.lblStatus.setText(statusMessage);
    }

    /**
     * Check the current input URL string in the address text field, load it,
     * and update the status info and toolbar info.
     */
    void loadURL() {
        String inputValue = jAddressTextField.getText();

        if (inputValue == null) {
            JOptionPane.showMessageDialog(this, "The given URL is NULL:",
                    "Warning", JOptionPane.WARNING_MESSAGE);
        } else {
            // Check if the text value is a URL string.
            URL curUrl = null;

            try {
                // Check if the input string is a local path by checking if it starts
                // with a driver name(on Windows) or root path(on Unix).               
                File[] roots = File.listRoots();

                for (int i = 0; i < roots.length; i++) {
                    if (inputValue.toLowerCase().startsWith(roots[i].toString().toLowerCase())) {
                        File curLocalFile = new File(inputValue);

                        curUrl = curLocalFile.toURL();
                        break;
                    }
                }

                if (curUrl == null) {
                    // Check if the text value is a valid URL.
                    try {
                        curUrl = new URL(inputValue);
                    } catch (MalformedURLException e) {
                            if (inputValue.toLowerCase().startsWith("ftp.")) {
                                curUrl = new URL("ftp://" + inputValue);
                            } else if (inputValue.toLowerCase().startsWith("gopher.")) {
                                curUrl = new URL("gopher://" + inputValue);
                            } else {
                                curUrl = new URL("http://" + inputValue);
                            }
                    }
                }
                           
                webBrowser.setURL(curUrl);

                // Update the address text field, statusbar, and toolbar info.
                updateStatusInfo("Loading " + curUrl.toString() + " ......");

            } catch (MalformedURLException mue) {
                JOptionPane.showMessageDialog(this,
                    "The given URL is not valid:" + inputValue, "Warning",
                    JOptionPane.WARNING_MESSAGE);
            }               
        }
    }

    void jGoButton_actionPerformed(ActionEvent e) {
        loadURL();
    }

    void jAddressTextField_actionPerformed(ActionEvent e) {
        loadURL();
    }

    void jBackButton_actionPerformed(ActionEvent e) {
        webBrowser.back();
    }

    void jForwardButton_actionPerformed(ActionEvent e) {
        webBrowser.forward();
    }

    void jRefreshButton_actionPerformed(ActionEvent e) {
        webBrowser.refresh();
    }

    void jStopButton_actionPerformed(ActionEvent e) {
        webBrowser.stop();
    }
}



[/quote]
nicola.gioia
 
Posts: 60
Joined: Tue Sep 20, 2005 6:57 am

Postby JIDE Support » Mon Nov 20, 2006 10:16 am

I remember I noticed this problem too when I tried WebBrowser. You need to make WebBrowser minimum size to (0,0) to fix this.

Thanks,
JIDE Software Technical Support Team
JIDE Support
Site Admin
 
Posts: 37219
Joined: Sun Sep 14, 2003 10:49 am

Postby nicola.gioia » Tue Nov 21, 2006 1:34 am

ok thanks
nicola.gioia
 
Posts: 60
Joined: Tue Sep 20, 2005 6:57 am

Problems with JDIC Component

Postby fireskyc » Wed Nov 28, 2007 2:13 pm

I'm using JDIC library to insert a browser in my application (swing), but i have a strange problem if the browser component is inserted into a Jpanel .
The JPanel containing the Browser component but when I have the gadget on the dashboard, launches an error has occurred an internal error by JDIC
Components and needs to close at the end gadget displays nothing.
Testing alternatives if the Browser is inserted into a DocumentPane continues the same error.

Another solution to my problem was read make WebBrowser minimum size to (0,0) to fix this,but continues the same error.

The version of JDIC I use is jdic-0.9.3-bin-windows

Please,tell me what I to do?

Thanks

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.border.*;
import javax.swing.SwingConstants;
import java.io.File;
import java.net.URL;
import java.net.MalformedURLException;

import org.jdesktop.jdic.browser.*;


---------------------------------------------------------------------------------

public class Browser extends JPanel {
public static ImageIcon browseIcon = new ImageIcon(
Browser.class.getResource("images/Right.gif"));

BorderLayout borderLayout1 = new BorderLayout();

JToolBar jBrowserToolBar = new JToolBar();
JButton jStopButton = new JButton("Stopp",
new ImageIcon(getClass().getResource("images/Stop.png")));

JButton jRefreshButton = new JButton("Refresh",
new ImageIcon(getClass().getResource("images/Reload.png")));
JButton jForwardButton = new JButton("Forward",
new ImageIcon(getClass().getResource("images/Forward.png")));
JButton jBackButton = new JButton("Back",
new ImageIcon(getClass().getResource("images/Back.png")));

JPanel jAddressPanel = new JPanel();
JLabel jAddressLabel = new JLabel();
JTextField jAddressTextField = new JTextField();
JButton jGoButton = new JButton();
JPanel jAddrToolBarPanel = new JPanel();
MyStatusBar statusBar = new MyStatusBar();
JPanel jBrowserPanel = new JPanel();

WebBrowser webBrowser;

public Browser() {
try {
jbInit();
} catch (Exception e) {
e.printStackTrace();
}
}

public static void main(String[] args) {
try {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
} catch (Exception e) {}

JFrame frame = new JFrame("JDIC API Demo - Browser");

Container contentPane = frame.getContentPane();

contentPane.setLayout(new GridLayout(1, 1));
contentPane.add(new Browser());

frame.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});

frame.pack();
frame.setVisible(true);
}

private void jbInit() throws Exception {
this.setLayout(borderLayout1);

Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();

this.setPreferredSize(new Dimension(screenSize.width * 9 / 10,
screenSize.height * 8 / 10));

ToolTipManager.sharedInstance().setLightWeightPopupEnabled(false);

jAddressLabel.setBorder(BorderFactory.createEmptyBorder(0, 4, 0, 4));
jAddressLabel.setToolTipText("");
jAddressLabel.setText(" URL: ");

jGoButton.setBorder(BorderFactory.createCompoundBorder(new EmptyBorder(0,
2, 0, 2),
new EtchedBorder()));
jGoButton.setMaximumSize(new Dimension(60, 25));
jGoButton.setMinimumSize(new Dimension(60, 25));
jGoButton.setPreferredSize(new Dimension(60, 25));
jGoButton.setToolTipText("Load the given URL");
jGoButton.setIcon(browseIcon);
jGoButton.setText("GO");
jGoButton.addActionListener(new Browser_jGoButton_actionAdapter(this));
jAddressPanel.setLayout(new BorderLayout());

jAddressTextField.addActionListener(new Browser_jAddressTextField_actionAdapter(this));
jBackButton.setToolTipText("Go back one page");
jBackButton.setHorizontalTextPosition(SwingConstants.TRAILING);
jBackButton.setEnabled(false);
jBackButton.setMaximumSize(new Dimension(75, 27));
jBackButton.setPreferredSize(new Dimension(75, 27));
jBackButton.addActionListener(new Browser_jBackButton_actionAdapter(this));
jForwardButton.setToolTipText("Go forward one page");
jForwardButton.setEnabled(false);
jForwardButton.addActionListener(new Browser_jForwardButton_actionAdapter(this));
jRefreshButton.setToolTipText("Reload current page");
jRefreshButton.setEnabled(true);
jRefreshButton.setMaximumSize(new Dimension(75, 27));
jRefreshButton.setMinimumSize(new Dimension(75, 27));
jRefreshButton.setPreferredSize(new Dimension(75, 27));
jRefreshButton.addActionListener(new Browser_jRefreshButton_actionAdapter(this));
jStopButton.setToolTipText("Stop loading this page");
jStopButton.setVerifyInputWhenFocusTarget(true);
jStopButton.setText("Stop");
jStopButton.setEnabled(true);
jStopButton.setMaximumSize(new Dimension(75, 27));
jStopButton.setMinimumSize(new Dimension(75, 27));
jStopButton.setPreferredSize(new Dimension(75, 27));
jStopButton.addActionListener(new Browser_jStopButton_actionAdapter(this));
jAddressPanel.add(jAddressLabel, BorderLayout.WEST);
jAddressPanel.add(jAddressTextField, BorderLayout.CENTER);
jAddressPanel.add(jGoButton, BorderLayout.EAST);
jAddressPanel.setBorder(BorderFactory.createCompoundBorder(
BorderFactory.createEtchedBorder(),
BorderFactory.createEmptyBorder(2, 0, 2, 0)));

jBrowserToolBar.setFloatable(false);
jBrowserToolBar.add(jBackButton, null);
jBrowserToolBar.add(jForwardButton, null);
jBrowserToolBar.addSeparator();
jBrowserToolBar.add(jRefreshButton, null);
jBrowserToolBar.add(jStopButton, null);
jBrowserToolBar.setBorder(BorderFactory.createCompoundBorder(
BorderFactory.createEtchedBorder(),
BorderFactory.createEmptyBorder(2, 2, 2, 0)));

jAddrToolBarPanel.setLayout(new BorderLayout());
jAddrToolBarPanel.add(jAddressPanel, BorderLayout.CENTER);
jAddrToolBarPanel.add(jBrowserToolBar, BorderLayout.WEST);
jAddrToolBarPanel.setBorder(BorderFactory.createEmptyBorder(0, 0, 2, 0));

statusBar.setBorder(BorderFactory.createEmptyBorder(2, 0, 0, 0));
statusBar.lblDesc.setText("JDIC API Demo - Browser");

try {
webBrowser = new WebBrowser(new URL("http://java.net"));
// Print out debug messages in the command line.
//webBrowser.setDebug(true);
} catch (MalformedURLException e) {
System.out.println(e.getMessage());
return;
}

webBrowser.addWebBrowserListener(new WebBrowserListener() {
public void downloadStarted(WebBrowserEvent event) {
updateStatusInfo("Loading started.");
}

public void downloadCompleted(WebBrowserEvent event) {
jBackButton.setEnabled(webBrowser.isBackEnabled());
jForwardButton.setEnabled(webBrowser.isForwardEnabled());

updateStatusInfo("Loading completed.");

URL currentUrl = webBrowser.getURL();

if (currentUrl != null) {
jAddressTextField.setText(currentUrl.toString());
}
}

public void downloadProgress(WebBrowserEvent event) {
// updateStatusInfo("Loading in progress...");
}

public void downloadError(WebBrowserEvent event) {
updateStatusInfo("Loading error.");
}

public void documentCompleted(WebBrowserEvent event) {
updateStatusInfo("Document loading completed.");
}

public void titleChange(WebBrowserEvent event) {
updateStatusInfo("Title of the browser window changed.");
}

public void statusTextChange(WebBrowserEvent event) {
// updateStatusInfo("Status text changed.");
}
});

jBrowserPanel.setLayout(new BorderLayout());
jBrowserPanel.add(webBrowser, BorderLayout.CENTER);

this.add(jAddrToolBarPanel, BorderLayout.NORTH);
this.add(statusBar, BorderLayout.SOUTH);
this.add(jBrowserPanel, BorderLayout.CENTER);
}

void updateStatusInfo(String statusMessage) {
statusBar.lblStatus.setText(statusMessage);
}

/**
* Check the current input URL string in the address text field, load it,
* and update the status info and toolbar info.
*/
void loadURL() {
String inputValue = jAddressTextField.getText();

if (inputValue == null) {
JOptionPane.showMessageDialog(this, "The given URL is NULL:",
"Warning", JOptionPane.WARNING_MESSAGE);
} else {
// Check if the text value is a URL string.
URL curUrl = null;

try {
// Check if the input string is a local path by checking if it starts
// with a driver name(on Windows) or root path(on Unix).
File[] roots = File.listRoots();

for (int i = 0; i < roots.length; i++) {
if (inputValue.toLowerCase().startsWith(roots[i].toString().toLowerCase())) {
File curLocalFile = new File(inputValue);

curUrl = curLocalFile.toURL();
break;
}
}

if (curUrl == null) {
// Check if the text value is a valid URL.
try {
curUrl = new URL(inputValue);
} catch (MalformedURLException e) {
if (inputValue.toLowerCase().startsWith("ftp.")) {
curUrl = new URL("ftp://" + inputValue);
} else if (inputValue.toLowerCase().startsWith("gopher.")) {
curUrl = new URL("gopher://" + inputValue);
} else {
curUrl = new URL("http://" + inputValue);
}
}
}

webBrowser.setURL(curUrl);

// Update the address text field, statusbar, and toolbar info.
updateStatusInfo("Loading " + curUrl.toString() + " ......");

} catch (MalformedURLException mue) {
JOptionPane.showMessageDialog(this,
"The given URL is not valid:" + inputValue, "Warning",
JOptionPane.WARNING_MESSAGE);
}
}
}

void jGoButton_actionPerformed(ActionEvent e) {
loadURL();
}

void jAddressTextField_actionPerformed(ActionEvent e) {
loadURL();
}

void jBackButton_actionPerformed(ActionEvent e) {
webBrowser.back();
}

void jForwardButton_actionPerformed(ActionEvent e) {
webBrowser.forward();
}

void jRefreshButton_actionPerformed(ActionEvent e) {
webBrowser.refresh();
}

void jStopButton_actionPerformed(ActionEvent e) {
webBrowser.stop();
}
}


class Browser_jAddressTextField_actionAdapter implements java.awt.event.ActionListener {
Browser adaptee;

Browser_jAddressTextField_actionAdapter(Browser adaptee) {
this.adaptee = adaptee;
}

public void actionPerformed(ActionEvent e) {
adaptee.jAddressTextField_actionPerformed(e);
}
}


class Browser_jBackButton_actionAdapter implements java.awt.event.ActionListener {
Browser adaptee;

Browser_jBackButton_actionAdapter(Browser adaptee) {
this.adaptee = adaptee;
}

public void actionPerformed(ActionEvent e) {
adaptee.jBackButton_actionPerformed(e);
}
}


class Browser_jForwardButton_actionAdapter implements java.awt.event.ActionListener {
Browser adaptee;

Browser_jForwardButton_actionAdapter(Browser adaptee) {
this.adaptee = adaptee;
}

public void actionPerformed(ActionEvent e) {
adaptee.jForwardButton_actionPerformed(e);
}
}


class Browser_jRefreshButton_actionAdapter implements java.awt.event.ActionListener {
Browser adaptee;

Browser_jRefreshButton_actionAdapter(Browser adaptee) {
this.adaptee = adaptee;
}

public void actionPerformed(ActionEvent e) {
adaptee.jRefreshButton_actionPerformed(e);
}
}


class Browser_jStopButton_actionAdapter implements java.awt.event.ActionListener {
Browser adaptee;

Browser_jStopButton_actionAdapter(Browser adaptee) {
this.adaptee = adaptee;
}

public void actionPerformed(ActionEvent e) {
adaptee.jStopButton_actionPerformed(e);
}
}


class Browser_jGoButton_actionAdapter implements java.awt.event.ActionListener {
Browser adaptee;

Browser_jGoButton_actionAdapter(Browser adaptee) {
this.adaptee = adaptee;
}

public void actionPerformed(ActionEvent e) {
adaptee.jGoButton_actionPerformed(e);
}
}



--------------------------------------------- MY GADGET IS THIS -----
import java.awt.Color;
import java.awt.Font;
import java.awt.Toolkit;

import javax.swing.BorderFactory;
import javax.swing.ImageIcon;
import javax.swing.JComponent;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextArea;

import org.jdesktop.layout.GroupLayout;
import org.jdesktop.layout.LayoutStyle;

import com.jidesoft.icons.IconsFactory;
import com.jidesoft.swing.JideSwingUtilities;
import com.smartmatic.axis.domain.entity.PhysicalEntityData;
import com.smartmatic.axis.domain.gis.GISRenderableObject;
import com.smartmatic.axis.domain.project.ProjectData;
import com.smartmatic.sge.dashboard.MainDashBoardGadget;
import com.smartmatic.sge.dashboard.ui.gadgets.core.AbstractAxisGadget;



public class MeasurableEntityGadget extends AbstractAxisGadget {

public MeasurableEntityGadget(String key, GISRenderableObject object) {
super(key,IconsFactory.getImageIcon(MainDashBoardGadget.class, "icons/1.png"),IconsFactory.getImageIcon(MainDashBoardGadget.class, "icons/1.1.png"));


JPanel gadget= new JPanel();
gadget.add(new Browser());

this.contentPane.add(gadget);
}


JideSwingUtilities.setOpaqueRecursively(this.contentPane, false);
}
}
fireskyc
 
Posts: 1
Joined: Wed Nov 28, 2007 1:34 pm

Postby JIDE Support » Wed Nov 28, 2007 5:55 pm

JDIC is pretty much a dead project. We were just using it to demo we support heavyweight component. I sugspect the error is a bug in JDIC so we won't provide any support for it. So sorry about that.

Thanks,
JIDE Software Technical Support Team
JIDE Support
Site Admin
 
Posts: 37219
Joined: Sun Sep 14, 2003 10:49 am

Re: problem with JDIC browser in a Dockable frame

Postby finexasia » Wed Jul 08, 2009 1:22 am

Since you do not provide support for JDIC, does JIDE has any component similar to what JDIC can do?

Thanks
finexasia
 
Posts: 73
Joined: Mon Jun 22, 2009 2:01 am

Re: problem with JDIC browser in a Dockable frame

Postby JIDE Support » Wed Jul 08, 2009 8:04 am

We don't any. The new JWebPane from Sun is promising. You may google it and see if you can find information about it.
JIDE Software Technical Support Team
JIDE Support
Site Admin
 
Posts: 37219
Joined: Sun Sep 14, 2003 10:49 am


Return to Product Suggestions

Who is online

Users browsing this forum: No registered users and 6 guests

cron