Revision: 6199
http://squirrel-sql.svn.sourceforge.net/squirrel-sql/?rev=6199&view=rev
Author: gerdwagner
Date: 2011-03-19 13:15:03 +0000 (Sat, 19 Mar 2011)
Log Message:
-----------
More Query Builder
Modified Paths:
--------------
trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/GraphDesktopController.java
trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/GraphDockHandle.java
trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/GraphPanelController.java
trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/GraphPluginResources.java
trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/ModeManager.java
trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/QueryBuilderController.java
trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/ZoomPrintController.java
trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/ZoomPrintPanel.java
trunk/sql12/plugins/graph/src/main/resources/net/sourceforge/squirrel_sql/plugins/graph/GraphPluginResources.properties
trunk/sql12/plugins/graph/src/main/resources/net/sourceforge/squirrel_sql/plugins/graph/I18NStrings.properties
Added Paths:
-----------
trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/DefaultController.java
trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/GraphControllerFacade.java
trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/GraphControllerPopupListener.java
trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/StartButtonHandler.java
trunk/sql12/plugins/graph/src/main/resources/net/sourceforge/squirrel_sql/plugins/graph/images/showmenu.gif
Removed Paths:
-------------
trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/GraphDockHandleFactory.java
trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/GraphDockHandleListener.java
Added: trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/DefaultController.java
===================================================================
--- trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/DefaultController.java (rev 0)
+++ trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/DefaultController.java 2011-03-19 13:15:03 UTC (rev 6199)
@@ -0,0 +1,25 @@
+package net.sourceforge.squirrel_sql.plugins.graph;
+
+import javax.swing.*;
+import java.awt.*;
+
+public class DefaultController
+{
+ private JPanel _defaultPanel;
+
+ public DefaultController(StartButtonHandler startButtonHandler)
+ {
+ _defaultPanel = new JPanel(new BorderLayout(10,0));
+ _defaultPanel.add(startButtonHandler.getButton(), BorderLayout.WEST);
+ _defaultPanel.add(new JPanel(), BorderLayout.CENTER);
+ }
+
+ public void activate(boolean b)
+ {
+ }
+
+ public JPanel getBottomPanel()
+ {
+ return _defaultPanel;
+ }
+}
Copied: trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/GraphControllerFacade.java (from rev 6194, trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/GraphDockHandleListener.java)
===================================================================
--- trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/GraphControllerFacade.java (rev 0)
+++ trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/GraphControllerFacade.java 2011-03-19 13:15:03 UTC (rev 6199)
@@ -0,0 +1,14 @@
+package net.sourceforge.squirrel_sql.plugins.graph;
+
+import javax.swing.*;
+import java.awt.*;
+
+public interface GraphControllerFacade
+{
+ void showDock(JPanel panel, int lastHeight);
+ void hideDock();
+
+ void showPopupAbove(Point loc, GraphControllerPopupListener graphControllerPopupListener);
+
+ void hidePopup();
+}
Added: trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/GraphControllerPopupListener.java
===================================================================
--- trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/GraphControllerPopupListener.java (rev 0)
+++ trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/GraphControllerPopupListener.java 2011-03-19 13:15:03 UTC (rev 6199)
@@ -0,0 +1,9 @@
+package net.sourceforge.squirrel_sql.plugins.graph;
+
+/**
+ * This listener will be discarded after hiding was called.
+ */
+public interface GraphControllerPopupListener
+{
+ void hiding();
+}
Modified: trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/GraphDesktopController.java
===================================================================
--- trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/GraphDesktopController.java 2011-03-18 21:41:54 UTC (rev 6198)
+++ trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/GraphDesktopController.java 2011-03-19 13:15:03 UTC (rev 6199)
@@ -6,6 +6,8 @@
import net.sourceforge.squirrel_sql.fw.util.StringManagerFactory;
import javax.swing.*;
+import javax.swing.event.PopupMenuEvent;
+import javax.swing.event.PopupMenuListener;
import java.awt.*;
import java.awt.dnd.DropTarget;
import java.awt.dnd.DropTargetAdapter;
@@ -44,6 +46,7 @@
private JMenuItem _mnuAllTablesPkConstOrder;
private JMenuItem _mnuAllFilteredSelectedOrder;
private GraphPluginResources _graphPluginResources;
+ private GraphControllerPopupListener _currentGraphControllerPopupListener;
public GraphDesktopController(GraphDesktopListener listener, ISession session, GraphPlugin plugin, ModeManager modeManager)
@@ -219,16 +222,16 @@
}
});
- // i18n[graph.scriptAllTables=Script all tables]
- _mnuSelectTablesByName = new JMenuItem(s_stringMgr.getString("graph.selectTablesByName"));
- _mnuSelectTablesByName.addActionListener(new ActionListener()
- {
- public void actionPerformed(ActionEvent e)
- {
- onSelectTablesByName();
- }
- });
- /////////////////////////////////////////////////////////
+ // i18n[graph.scriptAllTables=Script all tables]
+ _mnuSelectTablesByName = new JMenuItem(s_stringMgr.getString("graph.selectTablesByName"));
+ _mnuSelectTablesByName.addActionListener(new ActionListener()
+ {
+ public void actionPerformed(ActionEvent e)
+ {
+ onSelectTablesByName();
+ }
+ });
+ /////////////////////////////////////////////////////////
// i18n[graph.showConstr=Show constraint names]
_mnuShowConstraintNames = new JCheckBoxMenuItem(s_stringMgr.getString("graph.showConstr"));
@@ -309,8 +312,39 @@
_popUp.add(_mnuShowQualifiedTableNames);
_popUp.add(new JSeparator());
_popUp.add(_modeManager.getModeMenuItem());
+
+ _modeManager.addModeManagerListener(new ModeManagerListener()
+ {
+ @Override
+ public void modeChanged(Mode newMode)
+ {
+ _popUp.setVisible(false);
+ }
+ });
+
+ _popUp.addPopupMenuListener(new PopupMenuListener()
+ {
+ @Override
+ public void popupMenuWillBecomeInvisible(PopupMenuEvent e)
+ {
+ onPopupMenuWillBecomeInvisible();
+ }
+
+ @Override public void popupMenuWillBecomeVisible(PopupMenuEvent e) {}
+ @Override public void popupMenuCanceled(PopupMenuEvent e) {}
+ });
+
}
+ private void onPopupMenuWillBecomeInvisible()
+ {
+ if(null != _currentGraphControllerPopupListener)
+ {
+ _currentGraphControllerPopupListener.hiding();
+ _currentGraphControllerPopupListener = null;
+ }
+ }
+
private void onShowQualifiedTableNames()
{
_listener.showQualifiedTableNamesRequested();
@@ -629,4 +663,23 @@
{
onRemoveGraph();
}
+
+ public void showPopupAbove(Point loc, GraphControllerPopupListener graphControllerPopupListener)
+ {
+ if (_popUp.isVisible())
+ {
+ _popUp.setVisible(false);
+ }
+ else
+ {
+ _popUp.show(_desktopPane,0,0);
+ _popUp.setLocation(loc.x, loc.y - _popUp.getHeight());
+ }
+ _currentGraphControllerPopupListener = graphControllerPopupListener;
+ }
+
+ public void hidePopup()
+ {
+ _popUp.setVisible(false);
+ }
}
Modified: trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/GraphDockHandle.java
===================================================================
--- trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/GraphDockHandle.java 2011-03-18 21:41:54 UTC (rev 6198)
+++ trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/GraphDockHandle.java 2011-03-19 13:15:03 UTC (rev 6199)
@@ -4,14 +4,14 @@
public class GraphDockHandle
{
- private GraphDockHandleListener _graphDockHandleListener;
+ private GraphControllerFacade _graphControllerFacade;
private JPanel _panel;
private int _lastHeight;
private boolean _showing;
- public GraphDockHandle(GraphDockHandleListener graphDockHandleListener, JPanel panel, int height)
+ public GraphDockHandle(GraphControllerFacade graphControllerFacade, JPanel panel, int height)
{
- _graphDockHandleListener = graphDockHandleListener;
+ _graphControllerFacade = graphControllerFacade;
_panel = panel;
_lastHeight = height;
}
@@ -19,7 +19,7 @@
public void show()
{
_showing = true;
- _graphDockHandleListener.show(_panel, _lastHeight);
+ _graphControllerFacade.showDock(_panel, _lastHeight);
}
public int getLastHeigth()
@@ -31,7 +31,7 @@
{
_showing = false;
_lastHeight = _panel.getHeight();
- _graphDockHandleListener.hide();
+ _graphControllerFacade.hideDock();
}
public boolean isShowing()
Deleted: trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/GraphDockHandleFactory.java
===================================================================
--- trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/GraphDockHandleFactory.java 2011-03-18 21:41:54 UTC (rev 6198)
+++ trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/GraphDockHandleFactory.java 2011-03-19 13:15:03 UTC (rev 6199)
@@ -1,18 +0,0 @@
-package net.sourceforge.squirrel_sql.plugins.graph;
-
-import javax.swing.*;
-
-public class GraphDockHandleFactory
-{
- private GraphDockHandleListener _graphDockHandleListener;
-
- public GraphDockHandleFactory(GraphDockHandleListener graphDockHandleListener)
- {
- _graphDockHandleListener = graphDockHandleListener;
- }
-
- public GraphDockHandle createHandle(int height, JPanel panel)
- {
- return new GraphDockHandle(_graphDockHandleListener, panel, height);
- }
-}
Deleted: trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/GraphDockHandleListener.java
===================================================================
--- trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/GraphDockHandleListener.java 2011-03-18 21:41:54 UTC (rev 6198)
+++ trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/GraphDockHandleListener.java 2011-03-19 13:15:03 UTC (rev 6199)
@@ -1,9 +0,0 @@
-package net.sourceforge.squirrel_sql.plugins.graph;
-
-import javax.swing.*;
-
-public interface GraphDockHandleListener
-{
- void show(JPanel panel, int lastHeight);
- void hide();
-}
Modified: trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/GraphPanelController.java
===================================================================
--- trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/GraphPanelController.java 2011-03-18 21:41:54 UTC (rev 6198)
+++ trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/GraphPanelController.java 2011-03-19 13:15:03 UTC (rev 6199)
@@ -18,22 +18,34 @@
public GraphPanelController(TableFramesModel tableFramesModel, GraphDesktopListener graphDesktopListener, ISession session, GraphPlugin plugin)
{
- GraphDockHandleListener graphDockHandleListener = new GraphDockHandleListener()
+ GraphControllerFacade graphControllerFacade = new GraphControllerFacade()
{
@Override
- public void show(JPanel panel, int lastHeight)
+ public void showDock(JPanel panel, int lastHeight)
{
onShow(panel, lastHeight);
}
@Override
- public void hide()
+ public void hideDock()
{
onHide();
}
+
+ @Override
+ public void showPopupAbove(Point loc, GraphControllerPopupListener graphControllerPopupListener)
+ {
+ _graphDesktopController.showPopupAbove(loc, graphControllerPopupListener);
+ }
+
+ @Override
+ public void hidePopup()
+ {
+ _graphDesktopController.hidePopup();
+ }
};
- _modeManager = new ModeManager(tableFramesModel, session, plugin, new GraphDockHandleFactory(graphDockHandleListener));
+ _modeManager = new ModeManager(tableFramesModel, session, plugin, graphControllerFacade);
_graphDesktopController = new GraphDesktopController(graphDesktopListener, session, plugin, _modeManager);
JScrollPane scrollPane = new JScrollPane(_graphDesktopController.getDesktopPane());
@@ -83,25 +95,25 @@
{
_modeManager.initMode(mode, zoomerXmlBean, printXmlBean, _graphDesktopController.createEdgesListener(), _graphDesktopController.getDesktopPane());
- onModeChanged(mode);
+ onModeChanged();
_modeManager.addModeManagerListener(new ModeManagerListener()
{
@Override
public void modeChanged(Mode newMode)
{
- onModeChanged(newMode);
+ onModeChanged();
}
});
//_graphPanel.add(_modeManager.getBottomPanel(), BorderLayout.SOUTH);
}
- private void onModeChanged(Mode newMode)
+ private void onModeChanged()
{
_bottomPanelContainer.removeAll();
_bottomPanelContainer.add(_modeManager.getBottomPanel());
_bottomPanelContainer.revalidate();
- //_bottomPanelContainer.repaint();
+ _bottomPanelContainer.repaint();
if (null != _split.getBottomComponent())
{
Modified: trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/GraphPluginResources.java
===================================================================
--- trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/GraphPluginResources.java 2011-03-18 21:41:54 UTC (rev 6198)
+++ trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/GraphPluginResources.java 2011-03-19 13:15:03 UTC (rev 6199)
@@ -31,5 +31,7 @@
String TO_WINDOW = "ToWindow";
+
+ String SHOW_MENU = "Showmenu";
}
}
Modified: trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/ModeManager.java
===================================================================
--- trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/ModeManager.java 2011-03-18 21:41:54 UTC (rev 6198)
+++ trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/ModeManager.java 2011-03-19 13:15:03 UTC (rev 6199)
@@ -12,6 +12,7 @@
public class ModeManager
{
+ private DefaultController _defaultController;
private ZoomPrintController _zoomPrintController;
private QueryBuilderController _queryBuilderController;
@@ -19,16 +20,16 @@
private TableFramesModel _tableFramesModel;
private ISession _session;
private GraphPlugin _plugin;
- private GraphDockHandleFactory _graphDockHandleFactory;
+ private GraphControllerFacade _graphControllerFacade;
private ArrayList<ModeManagerListener> _listeners = new ArrayList<ModeManagerListener>();
- public ModeManager(TableFramesModel tableFramesModel, ISession session, GraphPlugin plugin, GraphDockHandleFactory graphDockHandleFactory)
+ public ModeManager(TableFramesModel tableFramesModel, ISession session, GraphPlugin plugin, GraphControllerFacade graphControllerFacade)
{
_tableFramesModel = tableFramesModel;
_session = session;
_plugin = plugin;
- _graphDockHandleFactory = graphDockHandleFactory;
+ _graphControllerFacade = graphControllerFacade;
_mnuMode = new ModeMenuItem(new ActionListener()
{
@@ -47,17 +48,13 @@
public JPanel getBottomPanel()
{
- JPanel ret = new JPanel(new GridLayout(1,1));
switch (_mnuMode.getMode())
{
case DEFAULT:
- ret.add(new JLabel("Default Bottom Panel Dummy"));
- return ret;
+ return _defaultController.getBottomPanel();
case ZOOM_PRINT:
return _zoomPrintController.getBottomPanel();
case QUERY_BUILDER:
- //ret.add(new JLabel("Query Builder Bottom Panel Dummy"));
- //return ret;
return _queryBuilderController.getBottomPanel();
default:
throw new IllegalStateException("Unknown mode " + _mnuMode.getMode());
@@ -80,14 +77,17 @@
switch (_mnuMode.getMode())
{
case DEFAULT:
+ _defaultController.activate(true);
_zoomPrintController.activate(false);
_queryBuilderController.activate(false);
break;
case ZOOM_PRINT:
+ _defaultController.activate(false);
_zoomPrintController.activate(true);
_queryBuilderController.activate(false);
break;
case QUERY_BUILDER:
+ _defaultController.activate(false);
_zoomPrintController.activate(false);
_queryBuilderController.activate(true);
break;
@@ -114,9 +114,18 @@
public void initMode(Mode mode, ZoomerXmlBean zoomerXmlBean, PrintXmlBean printXmlBean, EdgesListener edgesListener, GraphDesktopPane desktopPane)
{
- _zoomPrintController = new ZoomPrintController(zoomerXmlBean, printXmlBean, edgesListener, desktopPane, _session, _plugin);
- _queryBuilderController = new QueryBuilderController(_tableFramesModel, _graphDockHandleFactory, _session);
+ StartButtonHandler startButtonHandler;
+ GraphPluginResources rsrc = new GraphPluginResources(_plugin);
+ startButtonHandler = new StartButtonHandler(_graphControllerFacade, rsrc);
+ _zoomPrintController = new ZoomPrintController(zoomerXmlBean, printXmlBean, edgesListener, desktopPane, _session, _plugin, startButtonHandler);
+
+ startButtonHandler = new StartButtonHandler(_graphControllerFacade, rsrc);
+ _queryBuilderController = new QueryBuilderController(_tableFramesModel, _graphControllerFacade, _session, startButtonHandler);
+
+ startButtonHandler = new StartButtonHandler(_graphControllerFacade, rsrc);
+ _defaultController = new DefaultController(startButtonHandler);
+
_mnuMode.setMode(mode);
}
Modified: trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/QueryBuilderController.java
===================================================================
--- trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/QueryBuilderController.java 2011-03-18 21:41:54 UTC (rev 6198)
+++ trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/QueryBuilderController.java 2011-03-19 13:15:03 UTC (rev 6199)
@@ -32,7 +32,7 @@
private GraphQuerySQLPanelCtrl _graphQuerySQLPanelCtrl;
private SessionAdapter _sessionAdapter;
- public QueryBuilderController(TableFramesModel tableFramesModel, GraphDockHandleFactory graphDockHandleFactory, ISession session)
+ public QueryBuilderController(TableFramesModel tableFramesModel, GraphControllerFacade graphControllerFacade, ISession session, StartButtonHandler startButtonHandler)
{
_tableFramesModel = tableFramesModel;
_session = session;
@@ -41,22 +41,26 @@
GridBagConstraints gbc;
- gbc = new GridBagConstraints(0,0,1,1,0,0, GridBagConstraints.NORTHEAST, GridBagConstraints.NONE, new Insets(0,5,0,5),0,0);
+ gbc = new GridBagConstraints(0,0,1,1,0,0, GridBagConstraints.NORTHEAST, GridBagConstraints.NONE, new Insets(0,0,0,5),0,0);
+ _panel.add(startButtonHandler.getButton(), gbc);
+
+ gbc = new GridBagConstraints(1,0,1,1,0,0, GridBagConstraints.NORTHEAST, GridBagConstraints.NONE, new Insets(0,5,0,5),0,0);
_btnSQL = new JToggleButton(s_stringMgr.getString("QueryBuilderController.SQL"));
_panel.add(_btnSQL, gbc);
- gbc = new GridBagConstraints(1,0,1,1,0,0, GridBagConstraints.NORTHEAST, GridBagConstraints.NONE, new Insets(0,0,0,5),0,0);
+ gbc = new GridBagConstraints(2,0,1,1,0,0, GridBagConstraints.NORTHEAST, GridBagConstraints.NONE, new Insets(0,0,0,5),0,0);
_btnResult = new JToggleButton(s_stringMgr.getString("QueryBuilderController.Result"));
_panel.add(_btnResult, gbc);
- gbc = new GridBagConstraints(2,0,1,1,1,1, GridBagConstraints.NORTHEAST, GridBagConstraints.NONE, new Insets(0,0,0,5),0,0);
+ gbc = new GridBagConstraints(3,0,1,1,1,1, GridBagConstraints.NORTHEAST, GridBagConstraints.NONE, new Insets(0,0,0,5),0,0);
_panel.add(new JPanel(), gbc);
_graphQuerySQLPanelCtrl = new GraphQuerySQLPanelCtrl(_session);
- initHandels(graphDockHandleFactory);
+ initHandels(graphControllerFacade);
+
_sessionAdapter = new SessionAdapter()
{
@Override
@@ -68,6 +72,7 @@
_session.getApplication().getSessionManager().addSessionListener(_sessionAdapter);
+
_btnSQL.addActionListener(new ActionListener()
{
@Override
@@ -94,9 +99,9 @@
onModelChanged();
}
});
-
}
+
private void onModelChanged()
{
if (_sqlDockHandle.isShowing())
@@ -105,13 +110,13 @@
}
}
- private void initHandels(GraphDockHandleFactory graphDockHandleFactory)
+ private void initHandels(GraphControllerFacade graphControllerFacade)
{
int sqlHeight = Preferences.userRoot().getInt(PREF_KEY_SQL_DOCK_HEIGHT, 250);
- _sqlDockHandle = graphDockHandleFactory.createHandle(sqlHeight, _graphQuerySQLPanelCtrl.getGraphQuerySQLPanel());
+ _sqlDockHandle = new GraphDockHandle(graphControllerFacade, _graphQuerySQLPanelCtrl.getGraphQuerySQLPanel(), sqlHeight);
int resHeight = Preferences.userRoot().getInt(PREF_KEY_RESULT_DOCK_HEIGHT, 250);
- _resultDockHandle = graphDockHandleFactory.createHandle(resHeight, new GraphQueryResultPanel());
+ _resultDockHandle = new GraphDockHandle(graphControllerFacade, new GraphQueryResultPanel(), resHeight);
}
private void onSessionClosing()
Added: trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/StartButtonHandler.java
===================================================================
--- trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/StartButtonHandler.java (rev 0)
+++ trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/StartButtonHandler.java 2011-03-19 13:15:03 UTC (rev 6199)
@@ -0,0 +1,76 @@
+package net.sourceforge.squirrel_sql.plugins.graph;
+
+import net.sourceforge.squirrel_sql.fw.gui.GUIUtils;
+import net.sourceforge.squirrel_sql.fw.util.StringManager;
+import net.sourceforge.squirrel_sql.fw.util.StringManagerFactory;
+
+import javax.swing.*;
+import java.awt.*;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+
+public class StartButtonHandler
+{
+ private static final StringManager s_stringMgr =
+ StringManagerFactory.getStringManager(StartButtonHandler.class);
+
+
+ private JToggleButton _btnShowMenu;
+ private Timer _popupReopenWaitTimer;
+
+ public StartButtonHandler(final GraphControllerFacade graphControllerFacade, GraphPluginResources rsrc)
+ {
+ _popupReopenWaitTimer = new Timer(100, null);
+ _popupReopenWaitTimer.setRepeats(false);
+ _btnShowMenu = new JToggleButton(rsrc.getIcon(GraphPluginResources.IKeys.SHOW_MENU));
+ _btnShowMenu.setToolTipText(s_stringMgr.getString("graph.StartButtonHandler.Kickoff"));
+
+ _btnShowMenu.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ onShowmenu(graphControllerFacade);
+ }
+ });
+
+
+ }
+
+ public JToggleButton getButton()
+ {
+ return _btnShowMenu;
+ }
+
+ private void onShowmenu(GraphControllerFacade graphControllerFacade)
+ {
+ if (_btnShowMenu.isSelected() && false == _popupReopenWaitTimer.isRunning())
+ {
+ Point loc = GUIUtils.getScreenLocationFor(_btnShowMenu);
+ GraphControllerPopupListener graphControllerPopupListener = new GraphControllerPopupListener()
+ {
+ @Override
+ public void hiding()
+ {
+ onPopupHide();
+ }
+ };
+
+ graphControllerFacade.showPopupAbove(loc, graphControllerPopupListener);
+ }
+ else
+ {
+ graphControllerFacade.hidePopup();
+ _btnShowMenu.setSelected(false);
+ }
+ }
+
+ private void onPopupHide()
+ {
+ _btnShowMenu.setSelected(false);
+ _popupReopenWaitTimer.restart();
+ }
+
+
+
+}
Modified: trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/ZoomPrintController.java
===================================================================
--- trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/ZoomPrintController.java 2011-03-18 21:41:54 UTC (rev 6198)
+++ trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/ZoomPrintController.java 2011-03-19 13:15:03 UTC (rev 6199)
@@ -34,12 +34,12 @@
private ZoomPrintPanel _panel = null;
- public ZoomPrintController(ZoomerXmlBean zoomerXmlBean, PrintXmlBean printXmlBean, EdgesListener edgesListener, GraphPrintable printable, ISession session, GraphPlugin plugin)
+ public ZoomPrintController(ZoomerXmlBean zoomerXmlBean, PrintXmlBean printXmlBean, EdgesListener edgesListener, GraphPrintable printable, ISession session, GraphPlugin plugin, StartButtonHandler startButtonHandler)
{
_printable = printable;
_plugin = plugin;
- _panel = new ZoomPrintPanel(new GraphPluginResources(_plugin));
+ _panel = new ZoomPrintPanel(new GraphPluginResources(_plugin), startButtonHandler);
initZoom(session, zoomerXmlBean);
initPrint(printXmlBean, edgesListener);
Modified: trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/ZoomPrintPanel.java
===================================================================
--- trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/ZoomPrintPanel.java 2011-03-18 21:41:54 UTC (rev 6198)
+++ trunk/sql12/plugins/graph/src/main/java/net/sourceforge/squirrel_sql/plugins/graph/ZoomPrintPanel.java 2011-03-19 13:15:03 UTC (rev 6199)
@@ -27,13 +27,22 @@
JButton btnPrint;
JButton btnSaveImages;
- public ZoomPrintPanel(GraphPluginResources rsrc)
+ public ZoomPrintPanel(GraphPluginResources rsrc, StartButtonHandler startButtonHandler)
{
- setLayout(new GridLayout(1,2, 20, 0));
- add(createZoomPanel());
- add(createPrintPanel(rsrc));
+ setLayout(new BorderLayout(10,0));
+ add(startButtonHandler.getButton(), BorderLayout.WEST);
+ add(createZoomPrintPanel(rsrc), BorderLayout.CENTER);
}
+ private JPanel createZoomPrintPanel(GraphPluginResources rsrc)
+ {
+ JPanel ret = new JPanel(new GridLayout(1,2, 20, 0));
+ ret.add(createZoomPanel());
+ ret.add(createPrintPanel(rsrc));
+
+ return ret;
+ }
+
private JPanel createPrintPanel(GraphPluginResources rsrc)
{
JPanel ret = new JPanel(new BorderLayout());
Modified: trunk/sql12/plugins/graph/src/main/resources/net/sourceforge/squirrel_sql/plugins/graph/GraphPluginResources.properties
===================================================================
--- trunk/sql12/plugins/graph/src/main/resources/net/sourceforge/squirrel_sql/plugins/graph/GraphPluginResources.properties 2011-03-18 21:41:54 UTC (rev 6198)
+++ trunk/sql12/plugins/graph/src/main/resources/net/sourceforge/squirrel_sql/plugins/graph/GraphPluginResources.properties 2011-03-19 13:15:03 UTC (rev 6199)
@@ -25,6 +25,7 @@
ToWindow.image=toWindow.gif
+Showmenu.image=showmenu.gif
@@ -32,3 +33,4 @@
+
Modified: trunk/sql12/plugins/graph/src/main/resources/net/sourceforge/squirrel_sql/plugins/graph/I18NStrings.properties
===================================================================
--- trunk/sql12/plugins/graph/src/main/resources/net/sourceforge/squirrel_sql/plugins/graph/I18NStrings.properties 2011-03-18 21:41:54 UTC (rev 6198)
+++ trunk/sql12/plugins/graph/src/main/resources/net/sourceforge/squirrel_sql/plugins/graph/I18NStrings.properties 2011-03-19 13:15:03 UTC (rev 6199)
@@ -184,4 +184,6 @@
ConstraintIconHandler.noJoin=No join
QueryBuilderController.Result=Result
-QueryBuilderController.SQL=SQL
\ No newline at end of file
+QueryBuilderController.SQL=SQL
+
+graph.StartButtonHandler.Kickoff= Kick off / Start
\ No newline at end of file
Added: trunk/sql12/plugins/graph/src/main/resources/net/sourceforge/squirrel_sql/plugins/graph/images/showmenu.gif
===================================================================
(Binary files differ)
Property changes on: trunk/sql12/plugins/graph/src/main/resources/net/sourceforge/squirrel_sql/plugins/graph/images/showmenu.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|