org.simBio.sim.gui.toolKit.dndmenu
Class DnDJToolBar

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.JToolBar
                  extended by org.simBio.sim.gui.toolKit.dndmenu.DnDJToolBar
All Implemented Interfaces:
java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible, javax.swing.SwingConstants, DnDActionDroppable

public class DnDJToolBar
extends javax.swing.JToolBar
implements DnDActionDroppable

Drag & Dropでメニュー項目を設定できる JToolBar.
特筆すべき点は下記の通りです。

  1. 別ウィンドウのツールバー同士でDnDが出来ないようにしています。
今後、ツールバーを改良すると良いと思われる点は下記の内容です。
  1. ツールバーの左(ツマミ)や、上下の隙間にドラッグすると、一番右に追加されてしまうため、 判定を出来るようにする。
  2. アイコン、アイコン+テキスト、テキスト から選択できるようにする。
  3. ボタン間のスペーサのサイズを固定しているため、親ツールバーのサイズに自動拡張できるようにしたい。

Author:
misaki
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JToolBar
javax.swing.JToolBar.AccessibleJToolBar, javax.swing.JToolBar.Separator
 
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
 
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
 
Fields inherited from class javax.swing.JComponent
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface javax.swing.SwingConstants
BOTTOM, CENTER, EAST, HORIZONTAL, LEADING, LEFT, NEXT, NORTH, NORTH_EAST, NORTH_WEST, PREVIOUS, RIGHT, SOUTH, SOUTH_EAST, SOUTH_WEST, TOP, TRAILING, VERTICAL, WEST
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
DnDJToolBar()
           
DnDJToolBar(int orientation)
           
DnDJToolBar(java.lang.String name)
           
DnDJToolBar(java.lang.String name, int orientation)
           
 
Method Summary
 java.awt.Component add(java.awt.Component comp)
           
 java.awt.Component add(java.awt.Component comp, int index)
           
 boolean doDropAction(DnDAction action, javax.swing.JComponent from)
          menu.TransferableActionのドロップ処理を実施する。
 void readToolBarConfig(java.util.Properties property, javax.swing.JFrame parentFrame, java.lang.String prefix)
          ツールバーの設定を Properties から復元する。
 void remove(java.awt.Component comp)
          ツールバーのボタンを削除する。
 void remove(int index)
          ツールバーのボタンを削除する。
削除しただけでは、画面に残ってしまうので、再配置・再描画も行います。
 void writeToolBarConfig(java.util.Properties property, javax.swing.JFrame parentFrame, java.lang.String prefix)
          ツールバーの設定を、Properties に保存する。 注意:Menuに無い項目が有った場合、エラーになる可能性があります。
 
Methods inherited from class javax.swing.JToolBar
add, addImpl, addSeparator, addSeparator, createActionChangeListener, createActionComponent, getAccessibleContext, getComponentAtIndex, getComponentIndex, getMargin, getOrientation, getUI, getUIClassID, isBorderPainted, isFloatable, isRollover, paintBorder, paramString, setBorderPainted, setFloatable, setLayout, setMargin, setOrientation, setRollover, setUI, updateUI
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
 
Methods inherited from class java.awt.Container
add, add, add, addContainerListener, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, transferFocusBackward, transferFocusDownCycle, validate, validateTree
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

DnDJToolBar

public DnDJToolBar()

DnDJToolBar

public DnDJToolBar(int orientation)
Parameters:
orientation -

DnDJToolBar

public DnDJToolBar(java.lang.String name)
Parameters:
name -

DnDJToolBar

public DnDJToolBar(java.lang.String name,
                   int orientation)
Parameters:
name -
orientation -
Method Detail

add

public java.awt.Component add(java.awt.Component comp,
                              int index)
Overrides:
add in class java.awt.Container

add

public java.awt.Component add(java.awt.Component comp)
Overrides:
add in class java.awt.Container

remove

public void remove(int index)
ツールバーのボタンを削除する。
削除しただけでは、画面に残ってしまうので、再配置・再描画も行います。

Overrides:
remove in class java.awt.Container
Parameters:
index - 削除するボタンのインデックス
See Also:
Container.remove(int)

remove

public void remove(java.awt.Component comp)
ツールバーのボタンを削除する。

Overrides:
remove in class java.awt.Container
Parameters:
comp - 削除するボタン
See Also:
Container.remove(java.awt.Component)

doDropAction

public boolean doDropAction(DnDAction action,
                            javax.swing.JComponent from)
menu.TransferableActionのドロップ処理を実施する。

Specified by:
doDropAction in interface DnDActionDroppable
Parameters:
action - ドロップされたAction
from - ドラッグ元のJComponent
Returns:
ドロップ成功なら true、そうでなければ false
See Also:
DnDActionDroppable.doDropAction(org.simBio.sim.gui.toolKit.dndmenu.DnDAction, javax.swing.JComponent)

writeToolBarConfig

public void writeToolBarConfig(java.util.Properties property,
                               javax.swing.JFrame parentFrame,
                               java.lang.String prefix)
ツールバーの設定を、Properties に保存する。 注意:Menuに無い項目が有った場合、エラーになる可能性があります。

Parameters:
property - 設定が保存されるプロパティ
parentFrame - 親になるFrame
prefix -
See Also:
readToolBarConfig(Properties, JFrame, String)

readToolBarConfig

public void readToolBarConfig(java.util.Properties property,
                              javax.swing.JFrame parentFrame,
                              java.lang.String prefix)
ツールバーの設定を Properties から復元する。

Parameters:
property - 設定が読み取られるプロパティ
parentFrame - 親になるFrame
prefix -
See Also:
writeToolBarConfig(Properties, JFrame, String)


Copyright © 2002-2008 Cell/Biodinamics simulation project. All Rights Reserved.