essentialdata-discuss Mailing List for Essential Data
Brought to you by:
dankib01
You can subscribe to this list here.
2004 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(12) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2005 |
Jan
(51) |
Feb
(2) |
Mar
(1) |
Apr
|
May
|
Jun
(20) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Michael C. <mc...@eq...> - 2005-06-08 18:41:38
|
Daniel, If you have time to spare, would you try to embed Essential Data into RCP? I am trying to write a JFace for it right now, but I can't even to get it run. I may have some silly mistakes that I am not aware of. Sometimes it may take few seconds for others to find out. Thanks, Michael |
From: Kibler, D. (HQP) <Dan...@rh...> - 2005-06-06 20:55:12
|
I suggest you look thru the Jan/Feb archives to see if he left a public = contact address. Dave Orme. -----Original Message----- From: ess...@li... = [mailto:ess...@li...]On Behalf Of = Michael Cheung Sent: Monday, June 06, 2005 1:33 PM To: ess...@li... Subject: RE: [Essentialdata-discuss] VirtualTable Is there any ways I can contact Dave? =20 _____ =20 From: ess...@li... = [mailto:ess...@li...] On Behalf Of = Kibler, Daniel (HQP) Sent: Monday, June 06, 2005 1:27 PM To: ess...@li... Subject: RE: [Essentialdata-discuss] VirtualTable =20 Not being an RCP user, I'm not familiar with the pattern you're using. = Are your factory classes reachable from outside the ProxyView object? =20 In my non-RCP app, the row and header factory classes are inner classes = of the "application" class. Also, I maintain a reference to the MROTable = in the "application" class, so the application can manipulate it.=20 =20 Things have been pretty quiet on this list since Dave left the project, = so don't expect a "flood" of help. -----Original Message----- From: ess...@li... = [mailto:ess...@li...]On Behalf Of = Michael Cheung Sent: Monday, June 06, 2005 12:11 PM To: ess...@li... Subject: RE: [Essentialdata-discuss] VirtualTable The code is exactly the same in the MROTable, however they are referring = to the Model object. =20 If you can able to use it in RCP, I would love to see some examples. =20 I get a "Widget is disposed" exception, and for almost 2 days I haven't = been able to figure it out. There are no examples of using RCP with = MROTable. This is my code =20 import java.util.ArrayList; import java.util.List; =20 import org.eclipse.swt.SWT; import org.eclipse.swt.graphics.Color; import org.eclipse.swt.widgets.Combo; import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Display; import org.eclipse.swt.widgets.Label; import org.eclipse.swt.widgets.Text; import org.eclipse.ui.part.ViewPart; =20 import com.swtworkbench.ed.aware.model.IObjectFactory; import com.swtworkbench.ed.aware.model.NewObject; import com.swtworkbench.ed.controls.mrotable.IPartControlFactory; import com.swtworkbench.ed.controls.mrotable.MROTable; import com.swtworkbench.ed.controls.mrotable.TableLayout; =20 public class ProxyView extends ViewPart { =20 List<Employee> employees; =20 public List<Employee> getEmployee() { return employees; } =20 public void initData() { employees =3D new ArrayList<Employee>(); employees.add(new Employee("123-11-1234")); employees.add(new Employee("123-11-1235")); } =20 private int[] getColumnWeights() { return new int[] {10}; } =20 private class HeaderFactory implements IPartControlFactory { public Composite createPartControl(Composite parent) { Composite part =3D new Composite(parent, SWT.NULL); part.setLayout(new TableLayout(getColumnWeights(), SWT.CENTER, = Display.getDefault().getSystemColor(SWT.COLOR_DARK_GRAY))); =20 new Label(part, SWT.RIGHT).setText("SSN"); =20 return part; } } =20 private class RowFactory implements IPartControlFactory { public Composite createPartControl(Composite parent) { // The row Composite Composite part =3D new Composite(parent, SWT.NULL); = part.setBackground(Display.getDefault().getSystemColor(SWT.COLOR_WHITE));= part.setLayout(new TableLayout(getColumnWeights(), = SWT.BORDER)); =20 // The actual SWT editor objects new Text(part, SWT.RIGHT).setData("boundTo", "SSN"); =20 return part; } } =20 public void createPartControl(Composite parent) { initData(); =20 MROTable table =3D new MROTable(parent, SWT.BORDER); table.setHeaderFactory(new HeaderFactory()); =20 try { table.edit(this, "Employee", new RowFactory()); } catch (Exception e) { } =20 } =20 public void setFocus() { =20 } =20 } |
From: Michael C. <mc...@eq...> - 2005-06-06 20:33:12
|
Is there any ways I can contact Dave? =20 ________________________________ From: ess...@li... [mailto:ess...@li...] On Behalf Of Kibler, Daniel (HQP) Sent: Monday, June 06, 2005 1:27 PM To: ess...@li... Subject: RE: [Essentialdata-discuss] VirtualTable =20 Not being an RCP user, I'm not familiar with the pattern you're using. Are your factory classes reachable from outside the ProxyView object? =20 In my non-RCP app, the row and header factory classes are inner classes of the "application" class. Also, I maintain a reference to the MROTable in the "application" class, so the application can manipulate it.=20 =20 Things have been pretty quiet on this list since Dave left the project, so don't expect a "flood" of help. -----Original Message----- From: ess...@li... [mailto:ess...@li...]On Behalf Of Michael Cheung Sent: Monday, June 06, 2005 12:11 PM To: ess...@li... Subject: RE: [Essentialdata-discuss] VirtualTable The code is exactly the same in the MROTable, however they are referring to the Model object. =20 If you can able to use it in RCP, I would love to see some examples. =20 I get a "Widget is disposed" exception, and for almost 2 days I haven't been able to figure it out. There are no examples of using RCP with MROTable. This is my code =20 import java.util.ArrayList; import java.util.List; =20 import org.eclipse.swt.SWT; import org.eclipse.swt.graphics.Color; import org.eclipse.swt.widgets.Combo; import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Display; import org.eclipse.swt.widgets.Label; import org.eclipse.swt.widgets.Text; import org.eclipse.ui.part.ViewPart; =20 import com.swtworkbench.ed.aware.model.IObjectFactory; import com.swtworkbench.ed.aware.model.NewObject; import com.swtworkbench.ed.controls.mrotable.IPartControlFactory; import com.swtworkbench.ed.controls.mrotable.MROTable; import com.swtworkbench.ed.controls.mrotable.TableLayout; =20 public class ProxyView extends ViewPart { =20 List<Employee> employees; =20 public List<Employee> getEmployee() { return employees; } =20 public void initData() { employees =3D new ArrayList<Employee>(); employees.add(new Employee("123-11-1234")); employees.add(new Employee("123-11-1235")); } =20 private int[] getColumnWeights() { return new int[] {10}; } =20 private class HeaderFactory implements IPartControlFactory { public Composite createPartControl(Composite parent) { Composite part =3D new Composite(parent, SWT.NULL); part.setLayout(new TableLayout(getColumnWeights(), SWT.CENTER, =09 Display.getDefault().getSystemColor(SWT.COLOR_DARK_GRAY))); =20 new Label(part, SWT.RIGHT).setText("SSN"); =20 return part; } } =20 private class RowFactory implements IPartControlFactory { public Composite createPartControl(Composite parent) { // The row Composite Composite part =3D new Composite(parent, SWT.NULL); =09 part.setBackground(Display.getDefault().getSystemColor(SWT.COLOR_WHITE)) ; part.setLayout(new TableLayout(getColumnWeights(), SWT.BORDER)); =20 // The actual SWT editor objects new Text(part, SWT.RIGHT).setData("boundTo", "SSN"); =20 return part; } } =20 public void createPartControl(Composite parent) { initData(); =20 MROTable table =3D new MROTable(parent, SWT.BORDER); table.setHeaderFactory(new HeaderFactory()); =20 try { table.edit(this, "Employee", new RowFactory()); } catch (Exception e) { } =20 } =20 public void setFocus() { =20 } =20 } |
From: Kibler, D. (HQP) <Dan...@rh...> - 2005-06-06 20:26:55
|
Not being an RCP user, I'm not familiar with the pattern you're using. = Are your factory classes reachable from outside the ProxyView object? =20 In my non-RCP app, the row and header factory classes are inner classes = of the "application" class. Also, I maintain a reference to the MROTable = in the "application" class, so the application can manipulate it.=20 =20 Things have been pretty quiet on this list since Dave left the project, = so don't expect a "flood" of help. -----Original Message----- From: ess...@li... = [mailto:ess...@li...]On Behalf Of = Michael Cheung Sent: Monday, June 06, 2005 12:11 PM To: ess...@li... Subject: RE: [Essentialdata-discuss] VirtualTable The code is exactly the same in the MROTable, however they are referring = to the Model object. =20 If you can able to use it in RCP, I would love to see some examples. =20 I get a "Widget is disposed" exception, and for almost 2 days I haven't = been able to figure it out. There are no examples of using RCP with = MROTable. This is my code =20 import java.util.ArrayList; import java.util.List; =20 import org.eclipse.swt.SWT; import org.eclipse.swt.graphics.Color; import org.eclipse.swt.widgets.Combo; import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Display; import org.eclipse.swt.widgets.Label; import org.eclipse.swt.widgets.Text; import org.eclipse.ui.part.ViewPart; =20 import com.swtworkbench.ed.aware.model.IObjectFactory; import com.swtworkbench.ed.aware.model.NewObject; import com.swtworkbench.ed.controls.mrotable.IPartControlFactory; import com.swtworkbench.ed.controls.mrotable.MROTable; import com.swtworkbench.ed.controls.mrotable.TableLayout; =20 public class ProxyView extends ViewPart { =20 List<Employee> employees; =20 public List<Employee> getEmployee() { return employees; } =20 public void initData() { employees =3D new ArrayList<Employee>(); employees.add(new Employee("123-11-1234")); employees.add(new Employee("123-11-1235")); } =20 private int[] getColumnWeights() { return new int[] {10}; } =20 private class HeaderFactory implements IPartControlFactory { public Composite createPartControl(Composite parent) { Composite part =3D new Composite(parent, SWT.NULL); part.setLayout(new TableLayout(getColumnWeights(), SWT.CENTER, = Display.getDefault().getSystemColor(SWT.COLOR_DARK_GRAY))); =20 new Label(part, SWT.RIGHT).setText("SSN"); =20 return part; } } =20 private class RowFactory implements IPartControlFactory { public Composite createPartControl(Composite parent) { // The row Composite Composite part =3D new Composite(parent, SWT.NULL); = part.setBackground(Display.getDefault().getSystemColor(SWT.COLOR_WHITE));= part.setLayout(new TableLayout(getColumnWeights(), = SWT.BORDER)); =20 // The actual SWT editor objects new Text(part, SWT.RIGHT).setData("boundTo", "SSN"); =20 return part; } } =20 public void createPartControl(Composite parent) { initData(); =20 MROTable table =3D new MROTable(parent, SWT.BORDER); table.setHeaderFactory(new HeaderFactory()); =20 try { table.edit(this, "Employee", new RowFactory()); } catch (Exception e) { } =20 } =20 public void setFocus() { =20 } =20 } |
From: Michael C. <mc...@eq...> - 2005-06-06 20:04:47
|
I am trying to find any supports available for the EssentialData table API. So I called ASC, and I am surprise there is only 1 person support this project on their side. They are also charging 10k for the commercial license on their web site, I wonder if anyone will actually purchase it from them. I would love to talk to any current or past developers here, because I can't find any table controls that can support the functionality like excel spread sheet in swt. Essential Data and KTable is the best table control I can found in SWT. I would love to see some snippets from MROTable with RCP. =20 Thanks, =20 Michael |
From: Michael C. <mc...@eq...> - 2005-06-06 19:10:58
|
The code is exactly the same in the MROTable, however they are referring to the Model object. =20 If you can able to use it in RCP, I would love to see some examples. =20 I get a "Widget is disposed" exception, and for almost 2 days I haven't been able to figure it out. There are no examples of using RCP with MROTable. This is my code =20 import java.util.ArrayList; import java.util.List; =20 import org.eclipse.swt.SWT; import org.eclipse.swt.graphics.Color; import org.eclipse.swt.widgets.Combo; import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Display; import org.eclipse.swt.widgets.Label; import org.eclipse.swt.widgets.Text; import org.eclipse.ui.part.ViewPart; =20 import com.swtworkbench.ed.aware.model.IObjectFactory; import com.swtworkbench.ed.aware.model.NewObject; import com.swtworkbench.ed.controls.mrotable.IPartControlFactory; import com.swtworkbench.ed.controls.mrotable.MROTable; import com.swtworkbench.ed.controls.mrotable.TableLayout; =20 public class ProxyView extends ViewPart { =20 List<Employee> employees; =20 public List<Employee> getEmployee() { return employees; } =20 public void initData() { employees =3D new ArrayList<Employee>(); employees.add(new Employee("123-11-1234")); employees.add(new Employee("123-11-1235")); } =20 private int[] getColumnWeights() { return new int[] {10}; } =20 private class HeaderFactory implements IPartControlFactory { public Composite createPartControl(Composite parent) { Composite part =3D new Composite(parent, SWT.NULL); part.setLayout(new TableLayout(getColumnWeights(), SWT.CENTER, =20 Display.getDefault().getSystemColor(SWT.COLOR_DARK_GRAY))); =20 new Label(part, SWT.RIGHT).setText("SSN"); =20 return part; } } =20 private class RowFactory implements IPartControlFactory { public Composite createPartControl(Composite parent) { // The row Composite Composite part =3D new Composite(parent, SWT.NULL); =20 part.setBackground(Display.getDefault().getSystemColor(SWT.COLOR_WHITE)) ; part.setLayout(new TableLayout(getColumnWeights(), SWT.BORDER)); =20 // The actual SWT editor objects new Text(part, SWT.RIGHT).setData("boundTo", "SSN"); =20 return part; } } =20 public void createPartControl(Composite parent) { initData(); =20 MROTable table =3D new MROTable(parent, SWT.BORDER); table.setHeaderFactory(new HeaderFactory()); =20 try { table.edit(this, "Employee", new RowFactory()); } catch (Exception e) { } =20 } =20 public void setFocus() { =20 } =20 } |
From: Kibler, D. (HQP) <Dan...@rh...> - 2005-06-06 18:42:19
|
I'm not using RCP. My prototype is an existing SWT app that I reworked = to use Essential Data. Don't know why you couldn't use it in RCP, tho. =20 Where do you see MROTable using VirtualTable? There is no import or = other reference. -----Original Message----- From: ess...@li... = [mailto:ess...@li...]On Behalf Of = Michael Cheung Sent: Monday, June 06, 2005 11:20 AM To: ess...@li... Subject: RE: [Essentialdata-discuss] VirtualTable Are you able to use MROTable in RCP (not RCPLite)? =20 It looks like MROTable is using VirtualTable internally. =20 =20 _____ =20 From: ess...@li... = [mailto:ess...@li...] On Behalf Of = Kibler, Daniel (HQP) Sent: Monday, June 06, 2005 10:55 AM To: ess...@li... Subject: RE: [Essentialdata-discuss] VirtualTable =20 I've not used VirtualTable.=20 =20 I have a semi-active prototype project using ED. I use MROTable to meet = my table needs. Since I fixed a couple of small bugs in MRO that were = causing some scrolling problems, it seems to work fine. My fix is in = CVS. -----Original Message----- From: ess...@li... = [mailto:ess...@li...]On Behalf Of = Michael Cheung Sent: Monday, June 06, 2005 10:16 AM To: ess...@li... Subject: [Essentialdata-discuss] VirtualTable Anyone try using VirtualTable? I cannot find any examples online and = this is the closest code I can find in their documentation. Does anyone = still use this API at all? =20 LinkedList employees =3D new LinkedList(); employees.add(new Employee("123-45-6789")); employees.add(new Employee("098-76-5432")); parent.setLayout(new FillLayout()); VirtualTable table =3D new VirtualTable(parent, SWT.BORDER | SWT.MULTI); table.setLinesVisible(true); Table realTable =3D table.getControl(); // Columns... table.setHeaderVisible(true); TableColumn tc =3D new TableColumn(realTable, SWT.CENTER); tc.setWidth(150); tc.setText("SSN"); // A single prototype row... TableItem item =3D new TableItem(realTable, SWT.NULL); // Editor for column 0... Text text =3D new Text(realTable, SWT.NULL); TableEditor editor =3D new TableEditor(realTable); editor.grabHorizontal=3Dtrue; editor.setEditor(text, item, 0); // Edit the employees linked list... table.addColumnProperty(" =20 =20 =20 Michael Cheung Equilar, Inc. 1710 South Amphlett Boulevard Suite 312 San Mateo, CA 94402 650-286-4576 (phone) 650-286-4513 (fax) mc...@eq... =20 CONFIDENTIALITY NOTICE:=20 This is a transmission from Equilar, Inc. and may contain information = which is confidential and proprietary. If you are not the addressee, = any disclosure, copying or distribution or use of the contents of this = message is expressly prohibited. If you have received this transmission = in error, please destroy it and notify us immediately at 650-286-4512. = Internet and e-mail communications are Equilar's property and Equilar = reserves the right to retrieve and read any message created, sent and = received. =20 |
From: Michael C. <mc...@eq...> - 2005-06-06 18:20:59
|
Are you able to use MROTable in RCP (not RCPLite)? =20 It looks like MROTable is using VirtualTable internally. =20 =20 ________________________________ From: ess...@li... [mailto:ess...@li...] On Behalf Of Kibler, Daniel (HQP) Sent: Monday, June 06, 2005 10:55 AM To: ess...@li... Subject: RE: [Essentialdata-discuss] VirtualTable =20 I've not used VirtualTable.=20 =20 I have a semi-active prototype project using ED. I use MROTable to meet my table needs. Since I fixed a couple of small bugs in MRO that were causing some scrolling problems, it seems to work fine. My fix is in CVS. -----Original Message----- From: ess...@li... [mailto:ess...@li...]On Behalf Of Michael Cheung Sent: Monday, June 06, 2005 10:16 AM To: ess...@li... Subject: [Essentialdata-discuss] VirtualTable Anyone try using VirtualTable? I cannot find any examples online and this is the closest code I can find in their documentation. Does anyone still use this API at all? =20 LinkedList employees =3D new LinkedList(); employees.add(new Employee("123-45-6789")); employees.add(new Employee("098-76-5432")); parent.setLayout(new FillLayout()); VirtualTable table =3D new VirtualTable(parent, SWT.BORDER | SWT.MULTI); table.setLinesVisible(true); Table realTable =3D table.getControl(); // Columns... table.setHeaderVisible(true); TableColumn tc =3D new TableColumn(realTable, SWT.CENTER); tc.setWidth(150); tc.setText("SSN"); // A single prototype row... TableItem item =3D new TableItem(realTable, SWT.NULL); // Editor for column 0... Text text =3D new Text(realTable, SWT.NULL); TableEditor editor =3D new TableEditor(realTable); editor.grabHorizontal=3Dtrue; editor.setEditor(text, item, 0); // Edit the employees linked list... table.addColumnProperty(" =20 =20 =20 Michael Cheung Equilar, Inc. 1710 South Amphlett Boulevard Suite 312 San Mateo, CA 94402 650-286-4576 (phone) 650-286-4513 (fax) mc...@eq... =20 CONFIDENTIALITY NOTICE:=20 This is a transmission from Equilar, Inc. and may contain information which is confidential and proprietary. If you are not the addressee, any disclosure, copying or distribution or use of the contents of this message is expressly prohibited. If you have received this transmission in error, please destroy it and notify us immediately at 650-286-4512. Internet and e-mail communications are Equilar's property and Equilar reserves the right to retrieve and read any message created, sent and received. =20 |
From: Kibler, D. (HQP) <Dan...@rh...> - 2005-06-06 17:55:29
|
I've not used VirtualTable.=20 =20 I have a semi-active prototype project using ED. I use MROTable to meet = my table needs. Since I fixed a couple of small bugs in MRO that were = causing some scrolling problems, it seems to work fine. My fix is in = CVS. -----Original Message----- From: ess...@li... = [mailto:ess...@li...]On Behalf Of = Michael Cheung Sent: Monday, June 06, 2005 10:16 AM To: ess...@li... Subject: [Essentialdata-discuss] VirtualTable Anyone try using VirtualTable? I cannot find any examples online and = this is the closest code I can find in their documentation. Does anyone = still use this API at all? =20 LinkedList employees =3D new LinkedList(); employees.add(new Employee("123-45-6789")); employees.add(new Employee("098-76-5432")); parent.setLayout(new FillLayout()); VirtualTable table =3D new VirtualTable(parent, SWT.BORDER | SWT.MULTI); table.setLinesVisible(true); Table realTable =3D table.getControl(); // Columns... table.setHeaderVisible(true); TableColumn tc =3D new TableColumn(realTable, SWT.CENTER); tc.setWidth(150); tc.setText("SSN"); // A single prototype row... TableItem item =3D new TableItem(realTable, SWT.NULL); // Editor for column 0... Text text =3D new Text(realTable, SWT.NULL); TableEditor editor =3D new TableEditor(realTable); editor.grabHorizontal=3Dtrue; editor.setEditor(text, item, 0); // Edit the employees linked list... table.addColumnProperty(" =20 =20 =20 Michael Cheung Equilar, Inc. 1710 South Amphlett Boulevard Suite 312 San Mateo, CA 94402 650-286-4576 (phone) 650-286-4513 (fax) mc...@eq... =20 CONFIDENTIALITY NOTICE:=20 This is a transmission from Equilar, Inc. and may contain information = which is confidential and proprietary. If you are not the addressee, = any disclosure, copying or distribution or use of the contents of this = message is expressly prohibited. If you have received this transmission = in error, please destroy it and notify us immediately at 650-286-4512. = Internet and e-mail communications are Equilar's property and Equilar = reserves the right to retrieve and read any message created, sent and = received. =20 |
From: Michael C. <mc...@eq...> - 2005-06-06 17:16:06
|
Anyone try using VirtualTable? I cannot find any examples online and this is the closest code I can find in their documentation. Does anyone still use this API at all? =20 LinkedList employees =3D new LinkedList(); employees.add(new Employee("123-45-6789")); employees.add(new Employee("098-76-5432")); parent.setLayout(new FillLayout()); VirtualTable table =3D new VirtualTable(parent, SWT.BORDER | SWT.MULTI); table.setLinesVisible(true); Table realTable =3D table.getControl(); // Columns... table.setHeaderVisible(true); TableColumn tc =3D new TableColumn(realTable, SWT.CENTER); tc.setWidth(150); tc.setText("SSN"); // A single prototype row... TableItem item =3D new TableItem(realTable, SWT.NULL); // Editor for column 0... Text text =3D new Text(realTable, SWT.NULL); TableEditor editor =3D new TableEditor(realTable); editor.grabHorizontal=3Dtrue; editor.setEditor(text, item, 0); // Edit the employees linked list... table.addColumnProperty(" =20 =20 =20 Michael Cheung Equilar, Inc. 1710 South Amphlett Boulevard Suite 312 San Mateo, CA 94402 650-286-4576 (phone) 650-286-4513 (fax) mc...@eq... =20 CONFIDENTIALITY NOTICE:=20 This is a transmission from Equilar, Inc. and may contain information which is confidential and proprietary. If you are not the addressee, any disclosure, copying or distribution or use of the contents of this message is expressly prohibited. If you have received this transmission in error, please destroy it and notify us immediately at 650-286-4512. Internet and e-mail communications are Equilar's property and Equilar reserves the right to retrieve and read any message created, sent and received. =20 |
From: David J. O. <dj...@co...> - 2005-03-10 17:50:15
|
All, Contrary to Sourceforge.net policy, ASC has asked me to shut down the sf.net essentialdata project. Even if I could do this, I will not do this because it would not be fair to you folks, some of who supported ASC when Essential Data was barely released. One of whom contributed a customer testimonial before I had even written the documentation. Therefore, it is with deep regrets that today I am officially stepping down as the Essential Data maintainer. I have tagged the CVS repository with "dave_says_goodbye" and sent sf.net a support request to have me removed as project administrator. If any of you wants to take over this role, you are now free to do so by submitting a request to sf.net to take over the project. Best regards, Dave Orme PS: I wish you all well... -- Got Java? Use db4objects! <http://www.db4o.com> PGP Public Key (for confidential communications): http://www.coconut-palm-software.com/~djo/public_key.txt |
From: David J. O. <dj...@co...> - 2005-02-23 23:15:55
|
All, There sometimes comes a time in the life of a project when the leader of that project needs to step down for the good of everyone. I lived, ate, and breathed Essential Data for something like a year up until my job change, so this is obviously not an easy step to take. Unfortunately, ASC continues to prevent me from working on Essential Data in any capacity by threatening my current employer with a lawsuit under the non-compete clause of my employment agreement. This despite the fact that they would actually benefit from my supporting the project for them on a pro bono basis while they go looking for a buyer. (Obviously, I can't say what steps db4objects has taken to try to remedy the situation, but your imaginations are probably pretty close to accurate...) The result is that the Essential Data community needs to best figure out how to support itself (without me, and also apparently without ASC) and then make that happen. The issues as I see them are: 0) The community needs to figure out its strategic direction. Around Eclipse-land, there are two data binding frameworks: Eclipse's JFace and Essential Data. Since I am not permitted to work with Essential Data, I will personally be working with Eclipse's JFace framework. (Just to be clear, in case someone from ASC or one of their lawyers reads this, my decision is not to abandon Essential Data since I don't have a code base to support, but rather just to go where I have no choice but to go, given my current legal options.) The community here has an existing code base. You can either maintain your projects on this code base or you can port them to JFace. Both are possible, but it will likely require the work of the entire community to either make JFace easy to port to or to maintain Essential Data. And if the choice to port to JFace is made, any additions to JFace designed to make the job easier must be written from scratch, preferably with a different design from Essential Data so as not to introduce *any* GPL code into JFace. If possible, I would recommend that the community decide either if it wants to maintain Essential Data as it is or to port over to JFace. Then there will be the maximum number of people available for either job than if each individual/company went their own way. ** If the community wants to stay with Essential Data, then the following are true: 1) There needs to be a maintainer for the project: someone to accept patches and who is responsible for the ongoing quality of the work. If anyone steps forward and wants the maintainer role for the SourceForge project, I will give that to whoever asks, subject to approval by the community. 2) People need support. I've gotten several emails over the past weeks from very nice people asking for support. I wish I were in a position to help, but I don't think anyone will fault me for not wanting to risk my current job by offering any kind of support. My encouragement to the community is that you guys are on the right track in figuring out how Essential Data works and how best to utilize it. Several questions have gone without resolution recently. But I'll encourage you guys to keep looking: the answers *are* there... If there were interest, it would be cool if someone could start a Wiki or a weblog where they shared usage tips with the rest of the community. 3) People need documentation. I noticed today that ASC put the documentation Wiki back up. I also notice that all of the Wiki (including all of the documentation) is licensed under an open-source Creative Commons license... ** I won't say what needs to happen if you guys decide to make it easy to port to JFace--I don't want to be accused by my former employer of telling you guys to abandon Essential Data. But you guys are some of the smartest programmers I've met; I think you can figure out what to do for yourselves if you choose this route. :-) Let me know how I can best (and legally) support you guys, which boils down to, if you think I have something I can legally give any of you and you want it, please let me know. Best regards, Dave Orme -- Got Java? Use db4objects! <http://www.db4o.com> PGP Public Key (for confidential communications): http://www.coconut-palm-software.com/~djo/public_key.txt |
From: Kibler, D. (HQP) <Dan...@rh...> - 2005-02-02 23:14:43
|
Alex Thanks for the tip on the listeners. I now have it working on my table. = It's too bad ED doesn't support the generic style add listener methods. = It would save a lot of unnecessary code.=20 In implementing this, I think I've found another MROTable scroll bug. = I'll dig into it when I get a chance. If/when I find it, I'll post any = changes here as the project is not currently being maintained. Dan >As for your issue, MROTable will listen to PropertyChangeEvents from your objects, but it doesn"t respond to the "addPropertyChangeListener(PropertyChangeListener _listener)" generic method. (BTW, I don"t mean "generic" in the java 1.5 sense). What you need to use is the "add<Foo>Listener(PropertyChangeListener _listener)" where "foo" is the name of your property. Essentially, you need to have the add and remove methods for every changable field you want to be listened to. This is the same style as the "get<Foo>Validator" methods used for validation. |
From: Alex G. <lj...@gm...> - 2005-01-25 19:28:22
|
Dan, Unfortunately, for us, the ability to tab even while an individual cell is invalid is a hard requirement. It's the reason we went to the MROTable instead of the JFace TableViewer w/CellEditors. As for your issue, MROTable will listen to PropertyChangeEvents from your objects, but it doesn't respond to the "addPropertyChangeListener(PropertyChangeListener _listener)" generic method. (BTW, I don't mean 'generic' in the java 1.5 sense). What you need to use is the "add<Foo>Listener(PropertyChangeListener _listener)" where "foo" is the name of your property. Essentially, you need to have the add and remove methods for every changable field you want to be listened to. This is the same style as the "get<Foo>Validator" methods used for validation. Cheers, Alex On Tue, 25 Jan 2005 11:04:15 -0800, Kibler, Daniel (HQP) <Dan...@rh...> wrote: > Alex > > With my proposed approach, you can't tab to another field in the same row, but you can select another field in the same row with the mouse. That part of the "it's not perfect." So you can edit the data in other fields after failing the validation. Another, not so perfect part, is that you can't delete a row until it validates. So if you insert a row and then change your mind, you can't do anything else until you make it valid. Adding some flexibility to your validation method could help a bit there. > > From my testing, it appears that MROTable (MRO?) does use POJOObjectAdapter. I haven't gotten any farther trying to figure out how to use that knowledge, tho. > > The problem I'd like to solve is to get MROTable (or it's supporting objects like Model) to listen to PropertyChangeEvents from the bean. Right now calculated fields are not updated in the table until the row is refreshed. It would also allow you to update the bean independent of the View (table) and have the changes reflected in the table. > > Regards > Dan > > --__--__-- > > Message: 3 > Date: Mon, 24 Jan 2005 14:28:51 -0600 > From: Alex Garrett <lj...@gm...> > To: ess...@li... > Subject: Re: [Essentialdata-discuss] Re: row-level validation > Reply-To: ess...@li... > > Dan, > > I think that's generally a good idea, but the one sticking point I > have is that an individual cell may be valid without the row being > valid. For example, assume there are two cells bound to properties Foo > and Bar. The row is valid iff Foo and Bar are blank or Foo and Bar are > numbers whose difference is prime. When the table loads, the row will > be valid because it's blank. However, if the user enters '8' in Foo, > the row is invalid because Bar is 0. At this point, the user can't > just tab over to Bar to enter in '3', like they had planned. > > Essentially, there's a "Control -> POJOFieldAdapter -> property" > relationship that's indicated by the "boundTo" property in the > Control. I'm wondering if there's a similar "Row Composite -> > POJOObjectAdapter -> Bean" relationship that I could take advantage > of. > > Thanks, > Alex > > ------------------------------------------------------- > This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting > Tool for open source databases. Create drag-&-drop reports. Save time > by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc. > Download a FREE copy at http://www.intelliview.com/go/osdn_nl > _______________________________________________ > Essentialdata-discuss mailing list > Ess...@li... > https://lists.sourceforge.net/lists/listinfo/essentialdata-discuss > |
From: Kibler, D. (HQP) <Dan...@rh...> - 2005-01-25 19:04:22
|
Alex With my proposed approach, you can't tab to another field in the same = row, but you can select another field in the same row with the mouse. = That part of the "it's not perfect." So you can edit the data in other = fields after failing the validation. Another, not so perfect part, is = that you can't delete a row until it validates. So if you insert a row = and then change your mind, you can't do anything else until you make it = valid. Adding some flexibility to your validation method could help a = bit there. From my testing, it appears that MROTable (MRO?) does use = POJOObjectAdapter. I haven't gotten any farther trying to figure out how = to use that knowledge, tho. The problem I'd like to solve is to get MROTable (or it's supporting = objects like Model) to listen to PropertyChangeEvents from the bean. = Right now calculated fields are not updated in the table until the row = is refreshed. It would also allow you to update the bean independent of = the View (table) and have the changes reflected in the table. Regards Dan --__--__-- Message: 3 Date: Mon, 24 Jan 2005 14:28:51 -0600 From: Alex Garrett <lj...@gm...> To: ess...@li... Subject: Re: [Essentialdata-discuss] Re: row-level validation Reply-To: ess...@li... Dan, I think that's generally a good idea, but the one sticking point I have is that an individual cell may be valid without the row being valid. For example, assume there are two cells bound to properties Foo and Bar. The row is valid iff Foo and Bar are blank or Foo and Bar are numbers whose difference is prime. When the table loads, the row will be valid because it's blank. However, if the user enters '8' in Foo, the row is invalid because Bar is 0. At this point, the user can't just tab over to Bar to enter in '3', like they had planned. Essentially, there's a "Control -> POJOFieldAdapter -> property" relationship that's indicated by the "boundTo" property in the Control. I'm wondering if there's a similar "Row Composite -> POJOObjectAdapter -> Bean" relationship that I could take advantage of. Thanks, Alex |
From: Alex G. <lj...@gm...> - 2005-01-24 20:29:01
|
Dan, I think that's generally a good idea, but the one sticking point I have is that an individual cell may be valid without the row being valid. For example, assume there are two cells bound to properties Foo and Bar. The row is valid iff Foo and Bar are blank or Foo and Bar are numbers whose difference is prime. When the table loads, the row will be valid because it's blank. However, if the user enters '8' in Foo, the row is invalid because Bar is 0. At this point, the user can't just tab over to Bar to enter in '3', like they had planned. Essentially, there's a "Control -> POJOFieldAdapter -> property" relationship that's indicated by the "boundTo" property in the Control. I'm wondering if there's a similar "Row Composite -> POJOObjectAdapter -> Bean" relationship that I could take advantage of. Thanks, Alex On Mon, 24 Jan 2005 11:57:04 -0800, Kibler, Daniel (HQP) <Dan...@rh...> wrote: > Alex > > My non-expert recommendation - assumes you are binding your table to the properties of a POJO (bean) ala the tutorial expamle. > > In your POJO, add a custom validator to each of the properties that participate in the validation. Each custom validator validateComplete() method should call a common method that returns the current validation status of the overall row. If validateComplete() returns false, the associated field will automatically be colored yellow and the user will be unable to leave the row until the data is correct. > > I don't know if any of the behavior is configurable. It's not perfect but workiable. > > Here some snips from a validator that ensures bankBalance >= 1000 * age > > public IValidator getBankBalanceValidator() { > return new IValidator() { > ... > public boolean validateComplete(String value) { > try { > double doubleValue = Double.parseDouble(value); > return isAgeBalanceValid(getAge(),doubleValue); > ... > public boolean isAgeBalanceValid(int age, double bb) { > return bb >= (age * 1000.0); > } > > Livestrong > Dan > > Message: 4 > Date: Thu, 20 Jan 2005 15:36:01 -0600 > From: Alex Garrett <lj...@gm...> > To: ess...@li... > Subject: Re: [Essentialdata-discuss] row-level validation > Reply-To: ess...@li... > > Unfortunately, I was a little simplistic in my description and my > problem was incorrectly stated. Let me try again with more detail. I > have a reasonably complicated validation model. There are eight > columns. The status of the first column determines whether the other > seven count at all. If they do, the next four need to be numbers in > monotonically non-decreasing order. The last three columns have a > mathematical relationship between themselves and one or more of the > prior four. > > A use case is that a user may start by selecting a value from the > first column through a combo box and then enter values 10, 20, 30, 40 > (e.g.) in the next four fields. They'll want to use the tab key for > ease of entry, but after entering 10 in the first field, the row will > no longer be valid and they'll have to use the mouse to move to the > next three fields. At this point, the row still may not be valid > because the values don't satisfy the constraints for the last three > fields. > > This is why I wanted to be able to have some kind of process that > would allow them to enter in whatever data they want (subject to > syntactic constraints like ensuring the values were numbers) and > indicate whether the data were valid or not. > > One alternative that I considered was to have a column "Valid" that > would have an indicator, but the feedback I'm getting is that row > coloring is preferred. If there were a column indicator, it would have > to be an image, and I'm not sure how to pull that off, either. AFAIK, > the controls require String inputs. Any ideas? > > Thanks, > Alex > > On Thu, 20 Jan 2005 15:18:26 -0600, Dave Orme > <dj...@co...> wrote: > > Alex Garrett wrote: > > > I have some relational data in a row that I need to validate and I'm > > > having some trouble determining essentially how to do it. For example, > > > consider an MROTable that has columns for Name, Score and Max Score > > > and you want to validate that Score <= Max Score. What I want to be > > > able to do is color the row red if this criterion isn't met and color > > > it green if it is. > > > > Here's how: > > > > Put an IValidator on the Score property that range-checks that Score < > > Max Score. > > > > ED will let the user move around within the row (using the mouse), but > > will color the Score field yellow if it fails this validation test. And > > it won't allow the user to move off the row entirely until all fields > > within the row (including the Score field) pass all validity tests. > > > > Regards, > > > > Dave Orme > > > > -- > > Got Java? Use db4objects! <http://www.db4o.com> > > > > PGP Public Key (for confidential communications): > > http://www.coconut-palm-software.com/~djo/public_key.txt > > > > ------------------------------------------------------- > > This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting > > Tool for open source databases. Create drag-&-drop reports. Save time > > by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc. > > Download a FREE copy at http://www.intelliview.com/go/osdn_nl > > _______________________________________________ > > Essentialdata-discuss mailing list > > Ess...@li... > > https://lists.sourceforge.net/lists/listinfo/essentialdata-discuss > > > > > --__--__-- > > Message: 5 > Date: Thu, 20 Jan 2005 16:49:33 -0600 > From: Dave Orme <dj...@co...> > To: ess...@li... > Subject: Re: [Essentialdata-discuss] My status > Reply-To: ess...@li... > > Dave Orme wrote: > > All, > > > > Although I promised that I would support it [Essential Data] > > personally when I left my old company, my old company (ASC) has sent my > > new company (db4objects) a letter indicating that if I work on Essential > > Data, they will sue db4objects. > > I didn't spell this out in my earlier email, so I'd better. This means > I can't work on Essential Data beginning immediately. > > To be on the safe side, I won't answer questions any more on the mailing > list until this is resolved (even though this would be providing a free > service for ASC). I ask the community to please pitch in as best as you > can and help each other out during this time of difficulty. > > The grounds for sueing would be my non-competition agreement I signed in > order to be an employee. ASC apparently thinks they can just take > Essential Data closed-source commercial and stop it dead in its tracks > because I won't be able to work on it any more due to the non-compete > clause in my employee contract. > > Yes, they know that Essential Data is mostly GPL (parts are CPL) and on > SourceForge and that they can't stop the rest of the community from > developing or using it. I personally think they underestimated the > power of the open-source development community... > > **But please nobody contact ASC. Trust me, it'll just complicate our > negotiations.** > > Hopefully, it won't come to that and db4objects will be able to > negotiate something good for everybody. > > If not, then we'll have to talk about what's best for everyone in the > community... > > With warmest regards, > > Dave Orme > -- > Got Java? Use db4objects! <http://www.db4o.com> > > PGP Public Key (for confidential communications): > http://www.coconut-palm-software.com/~djo/public_key.txt > > > --__--__-- > > Message: 6 > Date: Thu, 20 Jan 2005 20:08:01 -0600 > From: Dave Orme <dj...@co...> > To: ess...@li... > Subject: Re: [Essentialdata-discuss] db4o is a Great Database > Reply-To: ess...@li... > > James Leotta wrote: > > Hello Dave, > > > > Always thought db4o was a perfect fit. Good luck. > > > > Jim Leotta > > Thanks Jim! > > > Regards, > > Dave Orme > > -- > Got Java? Use db4objects! <http://www.db4o.com> > > PGP Public Key (for confidential communications): > http://www.coconut-palm-software.com/~djo/public_key.txt > > > --__--__-- > > _______________________________________________ > Essentialdata-discuss mailing list > Ess...@li... > https://lists.sourceforge.net/lists/listinfo/essentialdata-discuss > > > End of Essentialdata-discuss Digest > > ------------------------------------------------------- > This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting > Tool for open source databases. Create drag-&-drop reports. Save time > by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc. > Download a FREE copy at http://www.intelliview.com/go/osdn_nl > _______________________________________________ > Essentialdata-discuss mailing list > Ess...@li... > https://lists.sourceforge.net/lists/listinfo/essentialdata-discuss > |
From: Kibler, D. (HQP) <Dan...@rh...> - 2005-01-24 19:57:19
|
Alex My non-expert recommendation - assumes you are binding your table to the = properties of a POJO (bean) ala the tutorial expamle. In your POJO, add a custom validator to each of the properties that = participate in the validation. Each custom validator validateComplete() = method should call a common method that returns the current validation = status of the overall row. If validateComplete() returns false, the = associated field will automatically be colored yellow and the user will = be unable to leave the row until the data is correct.=20 I don't know if any of the behavior is configurable. It's not perfect = but workiable. Here some snips from a validator that ensures bankBalance >=3D 1000 * = age public IValidator getBankBalanceValidator() { return new IValidator() { ... public boolean validateComplete(String value) { try { double doubleValue =3D Double.parseDouble(value); return isAgeBalanceValid(getAge(),doubleValue); ... public boolean isAgeBalanceValid(int age, double bb) { return bb >=3D (age * 1000.0); } Livestrong Dan Message: 4 Date: Thu, 20 Jan 2005 15:36:01 -0600 From: Alex Garrett <lj...@gm...> To: ess...@li... Subject: Re: [Essentialdata-discuss] row-level validation Reply-To: ess...@li... Unfortunately, I was a little simplistic in my description and my problem was incorrectly stated. Let me try again with more detail. I have a reasonably complicated validation model. There are eight columns. The status of the first column determines whether the other seven count at all. If they do, the next four need to be numbers in monotonically non-decreasing order. The last three columns have a mathematical relationship between themselves and one or more of the prior four. A use case is that a user may start by selecting a value from the first column through a combo box and then enter values 10, 20, 30, 40 (e.g.) in the next four fields. They'll want to use the tab key for ease of entry, but after entering 10 in the first field, the row will no longer be valid and they'll have to use the mouse to move to the next three fields. At this point, the row still may not be valid because the values don't satisfy the constraints for the last three fields. This is why I wanted to be able to have some kind of process that would allow them to enter in whatever data they want (subject to syntactic constraints like ensuring the values were numbers) and indicate whether the data were valid or not. One alternative that I considered was to have a column "Valid" that would have an indicator, but the feedback I'm getting is that row coloring is preferred. If there were a column indicator, it would have to be an image, and I'm not sure how to pull that off, either. AFAIK, the controls require String inputs. Any ideas? Thanks, Alex On Thu, 20 Jan 2005 15:18:26 -0600, Dave Orme <dj...@co...> wrote: > Alex Garrett wrote: > > I have some relational data in a row that I need to validate and I'm > > having some trouble determining essentially how to do it. For = example, > > consider an MROTable that has columns for Name, Score and Max Score > > and you want to validate that Score <=3D Max Score. What I want to = be > > able to do is color the row red if this criterion isn't met and = color > > it green if it is. >=20 > Here's how: >=20 > Put an IValidator on the Score property that range-checks that Score < > Max Score. >=20 > ED will let the user move around within the row (using the mouse), but > will color the Score field yellow if it fails this validation test. = And > it won't allow the user to move off the row entirely until all fields > within the row (including the Score field) pass all validity tests. >=20 > Regards, >=20 > Dave Orme >=20 > -- > Got Java? Use db4objects! <http://www.db4o.com> >=20 > PGP Public Key (for confidential communications): > http://www.coconut-palm-software.com/~djo/public_key.txt >=20 > ------------------------------------------------------- > This SF.Net email is sponsored by: IntelliVIEW -- Interactive = Reporting > Tool for open source databases. Create drag-&-drop reports. Save time > by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc. > Download a FREE copy at http://www.intelliview.com/go/osdn_nl > _______________________________________________ > Essentialdata-discuss mailing list > Ess...@li... > https://lists.sourceforge.net/lists/listinfo/essentialdata-discuss > --__--__-- Message: 5 Date: Thu, 20 Jan 2005 16:49:33 -0600 From: Dave Orme <dj...@co...> To: ess...@li... Subject: Re: [Essentialdata-discuss] My status Reply-To: ess...@li... Dave Orme wrote: > All, >=20 > Although I promised that I would support it [Essential Data] > personally when I left my old company, my old company (ASC) has sent = my=20 > new company (db4objects) a letter indicating that if I work on = Essential=20 > Data, they will sue db4objects. I didn't spell this out in my earlier email, so I'd better. This means=20 I can't work on Essential Data beginning immediately. To be on the safe side, I won't answer questions any more on the mailing = list until this is resolved (even though this would be providing a free=20 service for ASC). I ask the community to please pitch in as best as you = can and help each other out during this time of difficulty. The grounds for sueing would be my non-competition agreement I signed in = order to be an employee. ASC apparently thinks they can just take=20 Essential Data closed-source commercial and stop it dead in its tracks=20 because I won't be able to work on it any more due to the non-compete=20 clause in my employee contract. Yes, they know that Essential Data is mostly GPL (parts are CPL) and on=20 SourceForge and that they can't stop the rest of the community from=20 developing or using it. I personally think they underestimated the=20 power of the open-source development community... **But please nobody contact ASC. Trust me, it'll just complicate our=20 negotiations.** Hopefully, it won't come to that and db4objects will be able to=20 negotiate something good for everybody. If not, then we'll have to talk about what's best for everyone in the=20 community... With warmest regards, Dave Orme --=20 Got Java? Use db4objects! <http://www.db4o.com> PGP Public Key (for confidential communications): http://www.coconut-palm-software.com/~djo/public_key.txt --__--__-- Message: 6 Date: Thu, 20 Jan 2005 20:08:01 -0600 From: Dave Orme <dj...@co...> To: ess...@li... Subject: Re: [Essentialdata-discuss] db4o is a Great Database Reply-To: ess...@li... James Leotta wrote: > Hello Dave, >=20 > Always thought db4o was a perfect fit. Good luck. >=20 > Jim Leotta Thanks Jim! Regards, Dave Orme --=20 Got Java? Use db4objects! <http://www.db4o.com> PGP Public Key (for confidential communications): http://www.coconut-palm-software.com/~djo/public_key.txt --__--__-- _______________________________________________ Essentialdata-discuss mailing list Ess...@li... https://lists.sourceforge.net/lists/listinfo/essentialdata-discuss End of Essentialdata-discuss Digest |
From: Dave O. <dj...@co...> - 2005-01-24 04:27:13
|
Ali Zaid wrote: > Dave; > > Congaratulation on the new Job... > > I want to say I want to support you 100%, I've been using and > modoifing the code for 2 months now, and I'm having grate ideas I wanted > to work on with you, anyway, I hope this get resolved for the best of > everybody. Thanks! I hope so too... Regards, Dave Orme -- Got Java? Use db4objects! <http://www.db4o.com> PGP Public Key (for confidential communications): http://www.coconut-palm-software.com/~djo/public_key.txt |
From: Ali Z. <al...@ba...> - 2005-01-23 10:35:22
|
Dave; Congaratulation on the new Job... I want to say I want to support you 100%, I've been using and modoifing the code for 2 months now, and I'm having grate ideas I wanted to work on with you, anyway, I hope this get resolved for the best of everybody. Regards, Ali |
From: Dave O. <dj...@co...> - 2005-01-21 02:08:07
|
James Leotta wrote: > Hello Dave, > > Always thought db4o was a perfect fit. Good luck. > > Jim Leotta Thanks Jim! Regards, Dave Orme -- Got Java? Use db4objects! <http://www.db4o.com> PGP Public Key (for confidential communications): http://www.coconut-palm-software.com/~djo/public_key.txt |
From: Dave O. <dj...@co...> - 2005-01-20 22:49:45
|
Dave Orme wrote: > All, > > Although I promised that I would support it [Essential Data] > personally when I left my old company, my old company (ASC) has sent my > new company (db4objects) a letter indicating that if I work on Essential > Data, they will sue db4objects. I didn't spell this out in my earlier email, so I'd better. This means I can't work on Essential Data beginning immediately. To be on the safe side, I won't answer questions any more on the mailing list until this is resolved (even though this would be providing a free service for ASC). I ask the community to please pitch in as best as you can and help each other out during this time of difficulty. The grounds for sueing would be my non-competition agreement I signed in order to be an employee. ASC apparently thinks they can just take Essential Data closed-source commercial and stop it dead in its tracks because I won't be able to work on it any more due to the non-compete clause in my employee contract. Yes, they know that Essential Data is mostly GPL (parts are CPL) and on SourceForge and that they can't stop the rest of the community from developing or using it. I personally think they underestimated the power of the open-source development community... **But please nobody contact ASC. Trust me, it'll just complicate our negotiations.** Hopefully, it won't come to that and db4objects will be able to negotiate something good for everybody. If not, then we'll have to talk about what's best for everyone in the community... With warmest regards, Dave Orme -- Got Java? Use db4objects! <http://www.db4o.com> PGP Public Key (for confidential communications): http://www.coconut-palm-software.com/~djo/public_key.txt |
From: Alex G. <lj...@gm...> - 2005-01-20 21:36:10
|
Unfortunately, I was a little simplistic in my description and my problem was incorrectly stated. Let me try again with more detail. I have a reasonably complicated validation model. There are eight columns. The status of the first column determines whether the other seven count at all. If they do, the next four need to be numbers in monotonically non-decreasing order. The last three columns have a mathematical relationship between themselves and one or more of the prior four. A use case is that a user may start by selecting a value from the first column through a combo box and then enter values 10, 20, 30, 40 (e.g.) in the next four fields. They'll want to use the tab key for ease of entry, but after entering 10 in the first field, the row will no longer be valid and they'll have to use the mouse to move to the next three fields. At this point, the row still may not be valid because the values don't satisfy the constraints for the last three fields. This is why I wanted to be able to have some kind of process that would allow them to enter in whatever data they want (subject to syntactic constraints like ensuring the values were numbers) and indicate whether the data were valid or not. One alternative that I considered was to have a column "Valid" that would have an indicator, but the feedback I'm getting is that row coloring is preferred. If there were a column indicator, it would have to be an image, and I'm not sure how to pull that off, either. AFAIK, the controls require String inputs. Any ideas? Thanks, Alex On Thu, 20 Jan 2005 15:18:26 -0600, Dave Orme <dj...@co...> wrote: > Alex Garrett wrote: > > I have some relational data in a row that I need to validate and I'm > > having some trouble determining essentially how to do it. For example, > > consider an MROTable that has columns for Name, Score and Max Score > > and you want to validate that Score <= Max Score. What I want to be > > able to do is color the row red if this criterion isn't met and color > > it green if it is. > > Here's how: > > Put an IValidator on the Score property that range-checks that Score < > Max Score. > > ED will let the user move around within the row (using the mouse), but > will color the Score field yellow if it fails this validation test. And > it won't allow the user to move off the row entirely until all fields > within the row (including the Score field) pass all validity tests. > > Regards, > > Dave Orme > > -- > Got Java? Use db4objects! <http://www.db4o.com> > > PGP Public Key (for confidential communications): > http://www.coconut-palm-software.com/~djo/public_key.txt > > ------------------------------------------------------- > This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting > Tool for open source databases. Create drag-&-drop reports. Save time > by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc. > Download a FREE copy at http://www.intelliview.com/go/osdn_nl > _______________________________________________ > Essentialdata-discuss mailing list > Ess...@li... > https://lists.sourceforge.net/lists/listinfo/essentialdata-discuss > |
From: Dave O. <dj...@co...> - 2005-01-20 21:30:18
|
All, I wanted to let you all know that my ability to work on Essential Data long-term is up in the air. Although I promised that I would support it personally when I left my old company, my old company (ASC) has sent my new company (db4objects) a letter indicating that if I work on Essential Data, they will sue db4objects. db4objects is negotiating to avert this reality. Of course, I cannot comment on this negotiation. If that negotiation is not successful, then the community will have to pick up Essential Data and move it forward. Just yesterday I received two offers of help with Essential Data, offers that I greatly appreciate. So I'm actually not that worried about the health of Essential Data. It's mostly debugged now (especially given the patches I was sent yesterday) and I think that there are enough people interested in it that the community will be able to move it forward if that becomes necessary. I'll let you all know how things go. If it becomes clear that our negotiations will not succeed then we will discuss what to do next. Let's hope it doesn't work out that way. :-) Ethically, I felt I needed to tell everybody what is up so you can make your own plans accordingly. Best regards, Dave Orme -- Got Java? Use db4objects! <http://www.db4o.com> PGP Public Key (for confidential communications): http://www.coconut-palm-software.com/~djo/public_key.txt |
From: Dave O. <dj...@co...> - 2005-01-20 21:18:38
|
Alex Garrett wrote: > I have some relational data in a row that I need to validate and I'm > having some trouble determining essentially how to do it. For example, > consider an MROTable that has columns for Name, Score and Max Score > and you want to validate that Score <= Max Score. What I want to be > able to do is color the row red if this criterion isn't met and color > it green if it is. Here's how: Put an IValidator on the Score property that range-checks that Score < Max Score. ED will let the user move around within the row (using the mouse), but will color the Score field yellow if it fails this validation test. And it won't allow the user to move off the row entirely until all fields within the row (including the Score field) pass all validity tests. Regards, Dave Orme -- Got Java? Use db4objects! <http://www.db4o.com> PGP Public Key (for confidential communications): http://www.coconut-palm-software.com/~djo/public_key.txt |
From: Alex G. <lj...@gm...> - 2005-01-20 20:32:20
|
I have some relational data in a row that I need to validate and I'm having some trouble determining essentially how to do it. For example, consider an MROTable that has columns for Name, Score and Max Score and you want to validate that Score <= Max Score. What I want to be able to do is color the row red if this criterion isn't met and color it green if it is. I suppose what I'd like to know is 1) is this sort of thing already supported in ED? I seem to recall something similar in the wiki before it went down and 2) if not, where in the code would I look to figure out how to add something like this. Any pointers or advice would be much appreciated. Thanks, Alex |