/*
 * 作成日: 2005/10/10
 */
package net.sourceforge.swingx.jspread;


///**
// * スプレッドのモデル.
// * @author Asan
// */
//public class JSpreadDefaultController implements JSpreadController {
//	JSpread spread;
//	JSpreadControllerHeaderData headerDataController;
//	JSpreadControllerCellRenderer rendererController;
//	JSpreadControllerCellEditor editorController;
//	JSpreadControllerBuilder viewController;
//	JSpreadControllerHeader headerController;
//	
//	public JSpreadDefaultController() {
//	}
//	public void setSpread(JSpread spread) {
//		this.spread = spread;
//		headerDataController = new JSpreadControllerHeaderData(spread);
//		viewController = new JSpreadControllerBuilder(spread);
//		headerController = new JSpreadControllerHeader(spread);
//		rendererController = new JSpreadControllerCellRenderer(spread);
//		editorController = new JSpreadControllerCellEditor(spread);
//	}
//
//
//	//---------------------------------------------------------------------
//	// ビュー関係
//	//---------------------------------------------------------------------
//	public JPanel createView(JPanel panel) {
//		return viewController.createView(panel);
//	}
//	public JPanel createScrollView(JPanel panel, int vsbPolicy, int hsbPolicy) {
//		return viewController.createScrollView(panel, vsbPolicy, hsbPolicy);
//	}
//
//	//---------------------------------------------------------------------
//	// ヘッダ関係
//	//---------------------------------------------------------------------
//	// TODO:この２つは継承する必要はないのでは？
//	public void hideHeader(int rowOrColumn, int viewpos1, int viewpos2) {
//		headerController.hideHeader(rowOrColumn, viewpos1, viewpos2);
//	}
//	public void showHeaderAll(int rowOrColumn) {
//		headerController.showHeaderAll(rowOrColumn);
//	}
//	/**
//	 * ヘッダの最適な幅を取得します.
//	 * @param	header		ヘッダの種類. ROW/COLUMN
//	 * @param	dataIndex	データ番号(dataIndex)(0..*)
//	 * @return	値(>0)
//	 */
//	public int getPreferredWidth(int rowOrColumn, int dataIndex) {
//		return headerController.getPreferredWidth(rowOrColumn, dataIndex);
//	}
//
//	//---------------------------------------------------------------------
//	// セル・レンダラー関係
//	//---------------------------------------------------------------------
//	/** セルを描画するのに使用されるコンポーネントを返します. */ 
//	public JSpreadCellRenderer getCellRenderer(Object value, 
//			int rowDataIndex, int columnDataIndex) {
//		return rendererController.getCellRenderer(value,
//				rowDataIndex, columnDataIndex);
//	}
//
//	//---------------------------------------------------------------------
//	// セル・エディタ関係
//	//---------------------------------------------------------------------
//	public boolean isCellEditable(int rowDataIndex, int colDataIndex) { 
//		return editorController.isCellEditable(rowDataIndex, colDataIndex);
//	}
//	public JSpreadCellEditor getCellEditor(Object value, 
//			int rowDataIndex, int colDataIndex) {
//		return editorController.getCellEditor(value, rowDataIndex, colDataIndex);
//	}
//	public boolean editCellAt(int rowViewIndex, int colViewIndex, EventObject event) {
//		return editorController.editCellAt(rowViewIndex, colViewIndex, event);
//	}
//	public boolean stopCellEditing() {
//		return editorController.stopCellEditing();
//	}
//	public void cancelCellEditing() {
//		editorController.cancelCellEditing();
//	}
//	public boolean isEditing() {
//		return editorController.isEditing();
//	}
//	public JComponent getEditorComponent() {
//		return editorController.getEditorComponent();
//	}
////	// TODO:このAPIをどうする？
////	public Object getCellEditorValue() {
////		return editorController.getCellEditorValue();
////	}
//
//	// 未整理
//	public String getCellToolTipText(MouseEvent event) { return null; }
//}
