Ok, I admit to now being confused.
Your master list is D2W? Or is it just loading embedded D2W components below it?
When you said "new page" I interpreted that as "new window". Not sure what this looks like. Screen shots would help.
Is the link in question from a to-many relationship on your inspect page? Or is it from the original list? I was assuming that you would be able to get the object in the list, then pass that in your link to your new page. What object is it that you don't want to lose reference to?
In case it helps, here is how I usually create a simple link for a situation like yours. It could be in any page, really, but I usually put such a thing in a list page:
.wo
<wo:link action = "$view"><wo:str value = "$displayValue"/></wo:link>
.java
public class SelectDocumentForView extends ERXStatelessComponent {
public SelectDocumentForView(WOContext context) {
super(context);
}
public EOEnterpriseObject object() {
return (EOEnterpriseObject) valueForBinding("object");
}
public String key() {
return (String) valueForBinding("key");
}
public String displayValue() {
return (String) object().valueForKey(key());
}
public WOComponent view() {
Document selectedDocument = (Document) object();
return (WOComponent) ((Session)session()).navController().inspectDocument(selectedDocument);
}
}
rules:
100 : (pageConfiguration = 'ListMyWGDocuments' and propertyKey = 'title') => componentName = "D2WCustomComponent" [com.webobjects.directtoweb.Assignment]
100 : (pageConfiguration = 'ListMyWGDocuments' and propertyKey = 'title') => customComponentName = "SelectDocumentForView" [com.webobjects.directtoweb.Assignment]
To set up a dummy propertyKey you just declare it in your displayPropertyKeys for that pageConfiguration. So if 'title' wasn't actually a property, it would still show up because I've declared a component for it. You'd change the html above to display a static string instead of the value of the propertyKey.
Hope that helps,
David
On 2013-05-02, at 6:17 PM, Johnny Miller <
email@hidden> wrote:
Thanks David,
I'll take you up on that :)
So maybe what I'm doing is the wrong approach but this is my method:
The ERDActionBar's delegate assigns a pageConfiguration.
In my rules I say for that page configuration use an inspect page template that subclasses ERD2WInspectPage. On that template it has some presentation code and a component that subclasses ERDInspectPageRepetition. I'm using the subclass of ERDInspectPageRepetition to fetch the eos and print them to the screen. So...
Is there an example of a custom link component in Wonder? Can I just create a componentAction that sets the propertyKey to the dummy key?
I don't understand why I would use target = "_blank"? I don't want to change the browser window? Or is that a special D2W thing?
Thanks a lot!
Johnny
On May 2, 2013, at 2:22 PM, David Holt <
email@hidden> wrote:
Hi Johnny,
You can make a custom link component with target = "_blank" for the embedded list. You need to declare a dummy property key for that entity, and call your customComponent for that property key. If you need a hand with the actual component, let me know.
David
On 2013-05-02, at 5:13 PM, Johnny Miller <
email@hidden> wrote:
Hi,
I'm trying to figure out something and I'm lost again. And I figure there is an easy answer so here goes:
I'm using embedded components and I have a "master list" style page. On my inspect component I have an ERDActionBar that lets the user go between different screens such as inspect page, an edit page and different pages for special attribute handling and relationships.
So here is my question: if I'm showing a list of objects from a to many relationship - how do I open a new page to edit one of the objects in the relationship without changing what the current object is and without using a modal window?
Thanks in advance,
Aloha,
|
Mr. Johnny Miller
Web Development Manager
Kahalawai Media Company
Lahaina, HI 96761
tel: (808) 661-7962 | mobile: (808) 283-0791
website | e-mail
|
|
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden