スタンプ入れ替えロック
client/StampTreePanel.java の編集
public StampTreePanel(StampTree tree) {
・
・
if (treeEntity != null && (!treeEntity.equals(IInfoModel.ENTITY_TEXT))) {
infoArea = new JTextArea();
infoArea.setMargin(new Insets(3, 2, 3, 2));
infoArea.setLineWrap(true);
infoArea.setPreferredSize(new Dimension(250, 40));
Font font = GUIFactory.createSmallFont();
infoArea.setFont(font);
////↓ロックボタンを付ける
final JToggleButton lockBtn = new JToggleButton();
lockBtn.setIcon(new ImageIcon(getClass().getResource("/open/dolphin/resources/images/lockOn.gif")));
lockBtn.setSelectedIcon(new ImageIcon(getClass().getResource("/open/dolphin/resources/images/lockOff.gif")));
lockBtn.setBorder(javax.swing.BorderFactory.createEmptyBorder(1, 1, 1, 1));
lockBtn.setMaximumSize(new java.awt.Dimension(32, 32));
lockBtn.setMinimumSize(new java.awt.Dimension(32, 32));
lockBtn.setPreferredSize(new java.awt.Dimension(32, 32));
lockBtn.setToolTipText("ツリー内での入れ替えをロックします");
lockBtn.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
if (lockBtn.isSelected()) { // 選択されていたらロック解除
stampTree.setLocked(false);
} else stampTree.setLocked(true);
}
});
JPanel infoPanel = new JPanel();
infoPanel.setLayout(new BorderLayout());
infoPanel.add(infoArea, BorderLayout.CENTER);
infoPanel.add(lockBtn, BorderLayout.EAST);
this.add(infoPanel, BorderLayout.SOUTH);
// this.add(infoArea, BorderLayout.SOUTH);
////↑
client/StampTree.java の編集
////↓ ツリー入れ替えロック用
public boolean isLocked() {
return isLocked;
}
public void setLocked(boolean locked) {
isLocked = locked;
}
////↑
client/StampTreeTransferHandler.java の編集
// ツリー入れ替えロック用
private boolean isLocked;
public boolean isLocked() {
return isLocked;
}
public void setLocked(boolean locked) {
isLocked = locked;
}
// FlavorがStampTreeNodeの時
// StampTree 内の DnD
//
////↓スタンプ入れ替えが lock されていたら StampTree 内の DnD を禁止
if (tr.isDataFlavorSupported(stampTreeNodeFlavor) && (selected != null) && !isLocked) {
////↑
//if (tr.isDataFlavorSupported(stampTreeNodeFlavor) && (selected != null)) {
« Mac のメニューバー | トップページ | Java 1.6対応 »
「OpenDolphin」カテゴリの記事
- OpenDolphin: Java 25 / WildFly 38 への移行(2025.11.09)
- 運用17年目のまとめ(2025.02.03)
- IME on/off の切換 - その2(2024.12.02)
- OrcaController オルコン(2024.11.28)
- OpenDolphin: java 21 / wildfly 34 への移行(2024.11.08)



