2
Fork 0

[svn r249] fixed annotation support , added talbecontroller

This commit is contained in:
willemc 2007-04-28 17:59:11 +02:00
parent a4d1ff1c57
commit d88cb26330
20 changed files with 403 additions and 58 deletions

View file

@ -26,14 +26,10 @@
package com.idcanet.vasc.impl.swt;
import java.util.ArrayList;
import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.text.TabExpander;
import org.eclipse.jface.action.IToolBarManager;
import org.eclipse.jface.resource.ImageDescriptor;
import org.eclipse.jface.viewers.ILabelProviderListener;
import org.eclipse.jface.viewers.IStructuredContentProvider;
import org.eclipse.jface.viewers.ITableLabelProvider;
@ -85,7 +81,7 @@ public class SwtVascViewRenderer implements VascViewRenderer {
this.parent=parent;
}
public void renderEdit(VascTable table,Object object) {
public void renderEdit(VascTable table,Object object) throws Exception {
logger.info("Rending Edit View");
@ -111,13 +107,41 @@ public class SwtVascViewRenderer implements VascViewRenderer {
result = table.getVascDataSource().merge(object);
//FlowstatsPlugin.getDefault().fireModelUpdateListeners(result);
} catch (Exception e) {
logger.log(Level.WARNING,"EJB Error: "+e.getMessage(),e);
} finally {
//crudTable.getCrudTableDataSource().fillCrudDataList(crudTable);
}
}
public ImageDescriptor getImageDescriptor(String path) {
try {
logger.info("Loading image: "+path);
//System.out.println("==== 1");
ImageDescriptor result = ImageDescriptor.createFromFile(path.getClass(), path);
if(result==null) {
// try load fff
//.out.println("==== 2");
//result = ImageDescriptor.createFromURL(SwingImageHelper.class.getClass().getResource(path));
}
//System.out.println("==== 3");
if(result==null) {
throw new NullPointerException("Can't load resource: "+path);
}
//System.out.println("==== 4 "+result.getImageData().height+" w:"+result.getImageData().width);
return result;
} catch (Exception e) {
logger.warning("Could not load image from path: '"+path+"'");
try {
ImageDescriptor result = null; //ImageDescriptor.createFromURL(SwingImageHelper.class.getClass().getResource("/META-INF/images/silk/png/bomb.png"));
if(result==null) {
throw new NullPointerException("Can't load resource: "+path);
}
return result;
} catch (Exception e2) {
return ImageDescriptor.getMissingImageDescriptor(); // default swt missing image fall back
}
}
}
public class SwtVascEditDialog extends Dialog {
private Shell shell = null;
@ -232,7 +256,7 @@ public class SwtVascViewRenderer implements VascViewRenderer {
new Label(body, SWT.WRAP);
Button saveButton = new Button(body, SWT.NONE);
//saveButton.setImage(crudTable.getImageDescriptor("icons/fam/tick.png").createImage());
saveButton.setImage(getImageDescriptor("icons/fam/tick.png").createImage());
saveButton.setText("generic.save");
saveButton.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
@ -244,7 +268,7 @@ public class SwtVascViewRenderer implements VascViewRenderer {
}
});
Button cancelButton = new Button(body, SWT.NONE);
//cancelButton.setImage(crudTable.getImageDescriptor("icons/fam/cancel.png").createImage());
cancelButton.setImage(getImageDescriptor("icons/fam/cancel.png").createImage());
cancelButton.setText("generic.cancel");
cancelButton.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
@ -256,14 +280,11 @@ public class SwtVascViewRenderer implements VascViewRenderer {
}
public void renderView(VascTable table) {
try {
table.setTableData(table.getVascDataSource().executeQuery(table.getQuery()));
} catch (Exception e) {
e.printStackTrace();
}
public void renderView(VascTable table) throws Exception {
table.getVascTableController().finalizeVascColumns(table);
table.getVascTableController().finalizeVascTable(table);
table.getVascTableController().refreshData(table);
this.table=table;
GridLayout layout = new GridLayout();
@ -378,7 +399,11 @@ public class SwtVascViewRenderer implements VascViewRenderer {
@Override
public void widgetSelected(SelectionEvent event) {
logger.info("Global Action");
action.doGlobalAction(table);
try {
action.doGlobalAction(table);
} catch (Exception e) {
table.getVascTableController().handleException(e, table);
}
}
}
@ -461,7 +486,7 @@ public class SwtVascViewRenderer implements VascViewRenderer {
}
};
Integer totalSize = VascTable.getTotalColumnSize(table);
Integer totalSize = table.getVascTableController().getTotalColumnsWidth(table);
logger.finer("Total size: "+totalSize);
TableColumn[] columns = table2.getColumns();
for (int i = 0; i < columns.length; i++) {
@ -494,7 +519,7 @@ public class SwtVascViewRenderer implements VascViewRenderer {
Button actionButton = new Button(footer, SWT.NONE);
actionButton.setText(action.getName());
actionButton.setToolTipText(action.getToolTip());
//actionButton.setImage(crudTable.getImageDescriptor("icons/fam/table_add.png").createImage());
actionButton.setImage(getImageDescriptor(action.getImage()).createImage());
actionButton.addSelectionListener(new ActionListener(action));
}
@ -512,7 +537,11 @@ public class SwtVascViewRenderer implements VascViewRenderer {
@Override
public void widgetSelected(SelectionEvent event) {
logger.info("Row Action");
action.doRowAction(table, table.getSelectedObject());
try {
action.doRowAction(table, table.getSelectedObject());
} catch (Exception e) {
table.getVascTableController().handleException(e, table);
}
}
}