|
From: <de...@us...> - 2012-09-12 09:24:45
|
Revision: 7624
http://fudaa.svn.sourceforge.net/fudaa/?rev=7624&view=rev
Author: deniger
Date: 2012-09-12 09:24:35 +0000 (Wed, 12 Sep 2012)
Log Message:
-----------
Modified Paths:
--------------
trunk/framework/ebli-1d/src/main/java/org/fudaa/ebli/courbe/EGTableGraphePanel.java
trunk/framework/ebli-1d/src/main/java/org/fudaa/ebli/courbe/EGTableModel.java
Modified: trunk/framework/ebli-1d/src/main/java/org/fudaa/ebli/courbe/EGTableGraphePanel.java
===================================================================
--- trunk/framework/ebli-1d/src/main/java/org/fudaa/ebli/courbe/EGTableGraphePanel.java 2012-09-12 08:10:59 UTC (rev 7623)
+++ trunk/framework/ebli-1d/src/main/java/org/fudaa/ebli/courbe/EGTableGraphePanel.java 2012-09-12 09:24:35 UTC (rev 7624)
@@ -53,35 +53,35 @@
* @version $Id: EGTableGraphePanel.java,v 1.31 2007-06-05 08:58:39 deniger Exp $
*/
public class EGTableGraphePanel extends BuPanel implements EGSelectionListener, EGGrapheModelListener {
-
+
public static class SpecTableModel extends EGTableModel {
-
+
private EGTableGraphePanel graphePanel;
Double newX_;
Double newY_;
-
+
public SpecTableModel(EGTableGraphePanel graphePanel) {
this.graphePanel = graphePanel;
}
-
+
@Override
public void fireTableRowsDeleted(int firstRow, int lastRow) {
newX_ = null;
newY_ = null;
super.fireTableRowsDeleted(firstRow, lastRow);
}
-
+
@Override
protected void selectedCourbeChanged(final EGCourbe _a) {
newX_ = null;
newY_ = null;
super.selectedCourbeChanged(_a);
}
-
+
public Class getColumnClass(final int _columnIndex) {
return Double.class;
}
-
+
public int getRowCount() {
final EGAxeHorizontal h = getH();
if (c_ == null || h == null) {
@@ -92,7 +92,7 @@
}
return super.getRowCount();
}
-
+
public Object getValueAt(final int _rowIndex, final int _columnIndex) {
if (c_ == null) {
return CtuluLibString.ESPACE;
@@ -108,14 +108,14 @@
return super.getValueAt(_rowIndex, _columnIndex);
}
boolean updating_;
-
+
public void setValueAt(final Object _value, final int _rowIndex, final int _columnIndex) {
if (updating_ || c_ == null || _value == null || _value.toString().trim().length() == 0) {
return;
}
if (_rowIndex == c_.getModel().getNbValues()) {
try {
-
+
final Double d = CtuluDoubleParser.parseValue(_value.toString());
if (d == null) {
return;
@@ -154,7 +154,7 @@
}
}
}
-
+
private static Action getEnterAction() {
return new AbstractAction() {
public void actionPerformed(final ActionEvent _e) {
@@ -165,7 +165,7 @@
if (t.isEditing()) {
t.getCellEditor().stopCellEditing();
}
-
+
if (col == tableModel.yRowIndex) {
col = tableModel.xRowIndex;
row++;
@@ -180,11 +180,11 @@
t.getColumnModel().getSelectionModel().setSelectionInterval(col, col);
t.scrollRectToVisible(t.getCellRect(row, col, true));
}
-
+
}
};
}
-
+
public static void setDefaultEnterAction(final JTable _t) {
final ActionMap map = _t.getActionMap();
map.put("theSuperActionOfTheyear", EGTableGraphePanel.getEnterAction());
@@ -208,9 +208,9 @@
* @version $Id: EGTableGraphePanel.java,v 1.31 2007-06-05 08:58:39 deniger Exp $
*/
public static class EvolTable extends CtuluTable {
-
+
Action deleteAction;
-
+
public EvolTable() {
super();
setTransferHandler(new EgCourbeTransfertHandler());
@@ -232,20 +232,20 @@
super(_model);
setTransferHandler(new EgCourbeTransfertHandler());
}
-
+
void setDeleteAction(Action deleteAction) {
this.deleteAction = deleteAction;
}
-
+
protected void delete() {
deleteAction.actionPerformed(null);
}
-
+
@Override
public TransferHandler getTransferHandler() {
return super.getTransferHandler();
}
-
+
public EGTableModel getEGTableModel() {
return (EGTableModel) super.getModel();
}
@@ -262,7 +262,7 @@
int selectedColumm = getSelectedColumn();
int selectedRow = getSelectedRow();
final CtuluDoubleParser doubleParser = new CtuluDoubleParser();
-
+
final CtuluCommandComposite cmp = new CtuluCommandComposite();
if (selectedRow >= 0) {
int maxUpdate = updateLines(_tab, model, selectedColumm, selectedRow, doubleParser, cmp);
@@ -274,7 +274,7 @@
}
model.a_.getCmd().addCmd(cmp.getSimplify());
}
-
+
public void cut() {
// vide on fait rien
if (getSelectionModel().isSelectionEmpty()) {
@@ -291,7 +291,7 @@
model.c_.getModel().removeValue(row, model.a_.getCmd());
}
}
-
+
private void addValuesInModel(final List _tab, final EGTableModel _model, final CtuluDoubleParser _doubleParser,
final CtuluCommandComposite _cmp, final int _maxUpdate) {
final int nbLine = _tab.size();
@@ -333,15 +333,15 @@
newX.add(x);
newY.add(y);
}
-
+
}
-
+
}
if (newX.size() > 0) {
_model.addValueAt(newX.toNativeArray(), newY.toNativeArray(), _cmp);
}
}
-
+
private int updateLines(final List _tab, final EGTableModel _model, final int _selectedColumm,
final int _selectedRow, final CtuluDoubleParser _doubleParser, final CtuluCommandComposite _cmp) {
final int nbLine = _tab.size();
@@ -376,7 +376,7 @@
return maxUpdate;
}
private boolean canEdit_;
-
+
@Override
protected boolean processKeyBinding(final KeyStroke _ks, final KeyEvent _e, final int _condition,
final boolean _pressed) {
@@ -386,7 +386,7 @@
if (action != null) {
return SwingUtilities.notifyAction(action, _ks, _e, this,
_e.getModifiers());
-
+
}
}
final int keyCode = _ks.getKeyCode();
@@ -411,7 +411,7 @@
}
return super.processKeyBinding(_ks, _e, _condition, _pressed);
}
-
+
public boolean editCellAt(final int _row, final int _column) {
if (canEdit_) {
canEdit_ = false;
@@ -433,7 +433,7 @@
}
return res;
}
-
+
protected void setValue(final Object _value) {
if (_value == null) {
setText(EbliLib.getS("Ajouter"));
@@ -444,21 +444,19 @@
};
EGInteractionSelection selection_;
EvolTable t_;
-
+
public EGTableGraphePanel() {
this(true);
}
-
+
public EvolTable getTable() {
return t_;
}
boolean afficheNomCourbe_ = true;
-
+
public BuLabel getTitleLabel() {
return lb_;
}
-
-
/**
* Initialise tous les composants n\xE9cessaires.
@@ -485,12 +483,12 @@
r = a_.getTransformer().getXAxe().getValueEditor();
} else if (_column == 1 && a_ != null && a_.getSelectedComponent() != null) {
r = a_.getSelectedComponent().getAxeY().getValueEditor();
-
+
}
final TableCellEditor ed = r == null ? null : r.createTableEditorComponent();
return ed == null ? super.getCellEditor(_row, _column) : ed;
}
-
+
public TableCellRenderer getDefaultRenderer(final Class _columnClass) {
if (Double.class.equals(_columnClass)) {
return renderer_;
@@ -510,13 +508,11 @@
return true;
}
});
-
+
t_.setModel(createValuesTableModel());
t_.getSelectionModel().setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION);
t_.setCellSelectionEnabled(true);
- // t_.getSelectionModel().addListSelectionListener(this);
- // t_.getColumnModel().getColumn(0).setHeaderValue("t");
- add(new BuScrollPane(t_), BuBorderLayout.CENTER);
+ add(new JScrollPane(t_), BuBorderLayout.CENTER);
lbError_ = new BuLabel(CtuluLibString.ESPACE);
lbError_.setForeground(Color.RED);
final BuPanel pn = new BuPanel();
@@ -530,11 +526,11 @@
add(pn, BuBorderLayout.SOUTH);
setPreferredSize(new Dimension(150, 200));
}
-
+
protected SpecTableModel createValuesTableModel() {
return new SpecTableModel(this);
}
-
+
private void eventReceived() {
if (t_.getCellEditor() != null) {
t_.getCellEditor().cancelCellEditing();
@@ -557,7 +553,7 @@
}
}
}
-
+
void updateButtons() {
final EGCourbe c = a_.getSelectedComponent();
if (btAdd_ != null) {
@@ -587,13 +583,13 @@
}
}
}
-
+
private void updateDatas(final EGCourbe _c) {
if (t_.getCellEditor() != null) {
t_.getCellEditor().cancelCellEditing();
}
getSpecTableModel().selectedCourbeChanged(_c);
-
+
if (_c == null) {
lb_.setText(CtuluLibString.ESPACE);
lbCourbeInfo_.setText(CtuluLibString.ESPACE);
@@ -613,49 +609,51 @@
}
lbCourbeInfo_.setText(txt);
}
+ t_.doLayout();
+ t_.setPreferredSize(t_.getPreferredSize());
revalidate();
doLayout();
repaint();
}
-
+
protected void tableCopy() {
t_.copy();
}
-
+
protected void tableCut() {
t_.cut();
}
-
+
protected void tablePaste() {
t_.paste();
}
EbliActionSimple actionDelete;
-
+
public EbliActionSimple getActionDelete() {
if (actionDelete == null) {
actionDelete = new DeleteAction();
}
return actionDelete;
}
-
+
public class DeleteAction extends EbliActionSimple {
-
+
public DeleteAction() {
super(EbliLib.getS("Supprimer des points"), EbliResource.EBLI.getToolIcon("node-delete"), "REMOVE_POINTS");
putValue(ACCELERATOR_KEY, KeyStroke.getKeyStroke("control D"));
}
-
+
@Override
public void updateStateBeforeShow() {
setEnabled(btRemove_.isEnabled());
}
-
+
@Override
public void actionPerformed(ActionEvent _e) {
btRemove_.doClick();
}
}
-
+
public void addPanelAction(final EGFillePanel _p) {
// si le contenu n'est pas modifiable ou si les boutons ont deja ete
// initialise on oublie ....
@@ -704,47 +702,47 @@
btRemove_.doClick();
}
});
-
+
}
-
+
public static void removeButton(JButton bt) {
if (bt != null && bt.getParent() != null) {
bt.getParent().remove(bt);
}
}
-
+
public void removeEditButtons() {
removeButton(btAdd_);
removeButton(btAlign_);
removeButton(btRemove_);
}
-
+
public void setLabel(final BuLabel _lb) {
lbXyInfo_ = _lb;
}
-
+
public void axeAspectChanged(final EGAxe _c) {
}
-
+
public void axeContentChanged(final EGAxe _c) {
(getSpecTableModel()).fireTableChanged(new TableModelEvent(getSpecTableModel(), 0, getSpecTableModel().getRowCount() - 1, TableModelEvent.ALL_COLUMNS, TableModelEvent.UPDATE));
repaint();
}
-
+
SpecTableModel getSpecTableModel() {
return (SpecTableModel) t_.getModel();
}
-
+
public void courbeAspectChanged(final EGObject _c, final boolean _visibil) {
}
-
+
public void courbeContentChanged(final EGObject _c, final boolean _mustRestore) {
eventReceived();
}
-
+
public void intervalAdded(final ListDataEvent _e) {
}
-
+
public void intervalRemoved(final ListDataEvent _e) {
}
@@ -766,7 +764,7 @@
updateDatas(_a.getSelectedComponent());
eventReceived();
}
-
+
public void updateState() {
updateDatas(a_.getSelectedComponent());
updateButtons();
@@ -782,7 +780,7 @@
return;
}
if (selection_ != null && updater_ != null) {
-
+
selection_.getSelection().removeListeSelectionListener(updater_);
t_.getSelectionModel().removeListSelectionListener(updater_);
}
@@ -791,14 +789,14 @@
protected void doAfterCtuluListSectionChanged() {
updateButtons();
}
-
+
protected void doAfterTableSectionChanged() {
updateButtons();
updateRowSelection();
}
};
}
-
+
protected void updateRowSelection() {
final int[] rows = t_.getSelectedRows();
if (rows != null) {
@@ -825,16 +823,16 @@
t_.getColumnModel().getColumn(1).setHeaderValue(_t);
revalidate();
}
-
+
public void structureChanged() {
}
-
+
public void valueChanged(final ListSelectionEvent _e) {
updateDatas(a_.getSelectedComponent());
updateButtons();
-
+
}
-
+
public void valueChanged(final TreeSelectionEvent _e) {
final Object o = _e.getPath().getLastPathComponent();
if (o instanceof EGCourbe) {
Modified: trunk/framework/ebli-1d/src/main/java/org/fudaa/ebli/courbe/EGTableModel.java
===================================================================
--- trunk/framework/ebli-1d/src/main/java/org/fudaa/ebli/courbe/EGTableModel.java 2012-09-12 08:10:59 UTC (rev 7623)
+++ trunk/framework/ebli-1d/src/main/java/org/fudaa/ebli/courbe/EGTableModel.java 2012-09-12 09:24:35 UTC (rev 7624)
@@ -98,12 +98,14 @@
protected void selectedCourbeChanged(final EGCourbe _a) {
c_ = _a;
fireTableDataChanged();
+ fireTableStructureChanged();
}
public EGAxeHorizontal getH() {
return a_ == null ? null : a_.getTransformer().getXAxe();
}
+ @Override
public String getColumnName(final int _column) {
String res = CtuluLibString.ESPACE;
if (getH() != null && _column == xRowIndex) {
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|