I think of it the other way around: Once you assign a value to someMadeUpAccessKey in your rules, you can make use of it in your conditional.
D -- David LeBer Codeferous Software On 2012-09-11, at 1:11 PM, Theodore Petrosky <[email protected]> wrote: > > wow, so by using d2wcontext.someMadeUpAccessKey; > > in the condition, it is available as a key to the ruleModeler. > > I kept trying to create a rule: > > pageConfiguration = 'ListAgenda' but it wouldn't work until I broke it apart > into: > > task = 'list' and entity.name = 'Agenda' > > don't know why. > > Ted > > --- On Tue, 9/11/12, David LeBer <[email protected]> wrote: > >> From: David LeBer <[email protected]> >> Subject: Re: adding a component to a D2W page >> To: "Theodore Petrosky" <[email protected]> >> Cc: "[email protected] Development" >> <[email protected]> >> Date: Tuesday, September 11, 2012, 10:37 AM >> InstructionComponentCondition : >> WOConditional { >> condition = >> d2wContext.showHeaderInstructionComponent; >> } >> >> 0 : *true* => showHeaderInstructionComponent = "false" >> [com.webobjects.directtoweb.BooleanAssignment] >> 100 : pageConfiguration like 'Edit*Foo' => >> showHeaderInstructionComponent = "true" >> [com.webobjects.directtoweb.BooleanAssignment] >> >> -- >> David LeBer >> Codeferous Software >> >> On 2012-09-11, at 10:23 AM, Theodore Petrosky <[email protected]> >> wrote: >> >>> Yea, I like your headerInstructionComponentName >> better. >>> >>> your comment about wrapping it in a conditional is >> interesting. if I understand, it would be like this: >>> >>> >>> <webobject name = >> "InstructionComponentCondition"> >>> <webobject name = "InstructionComponent"/> >>> </webobject >>> >>> InstructionComponent : WOSwitchComponent { >>> WOComponentName = >> d2wContext.headerInstructionComponentName; >>> } >>> >>> InstructionComponentCondition : WOConditional { >>> condition = ""; >>> } >>> >>> but the condition is giving me problems. when I trace >> backwards to find out how 'hasLeftActions' works, it leads >> me on a merry chase through ERMDListPageRepetition which >> extends ERDListPageRepetition which gives me a headache. >>> >>> can I just create a setter for the boolean and set it >> from the rules? >>> >>> as an aside, I noticed that even before I added in the >> conditional, when I ran my app, the switched in component >> didn't show up, until I clicked the "clear d2w cache" link a >> number of times. Even after a relaunch the component didn't >> show up right away. >>> >>> Ted >>> >>> >>> >>> --- On Mon, 9/10/12, David LeBer <[email protected]> >> wrote: >>> >>>> From: David LeBer <[email protected]> >>>> Subject: Re: adding a component to a D2W page >>>> To: "Theodore Petrosky" <[email protected]> >>>> Cc: "[email protected] >> Development" <[email protected]> >>>> Date: Monday, September 10, 2012, 3:21 PM >>>> Ted, >>>> >>>> You don't need the WOComponentContent (unless you >> plan on >>>> wrapping content with your 'instructions' >> component). >>>> >>>> You probably want to use something more descriptive >> than >>>> 'compName', i.e: headerInstructionComponentName. >>>> >>>> Some thoughts: >>>> >>>> If you can eliminate the dependency on pushing a >> value into >>>> the d2wContext that would be cleaner (i.e: reduce >> the >>>> squickness I feel). >>>> >>>> 1. Wrap the instruction switch component with a >> conditional >>>> that is controlled by rules. With a default rule to >> keep it >>>> hidden and a specific rule to show it on the pages >> where it >>>> needs to light up. >>>> >>>> 2. Replace the fixed text with localized text keyed >> off the >>>> page configuration name. Some think like: >>>> "[PageConfigurationName][TabName]InstructionText" >> (i.e: >>>> EditUserOverviewInstructionText). So you only need >> one >>>> 'Instruction' component, and the text can change >> based on >>>> the page config and tab (if you're using them). You >> could >>>> make this value overrideable by a value in the >> rules or >>>> pushing a value in the d2wContext if you absolutely >> needed >>>> to. >>>> >>>> D >>>> >>>> -- >>>> David LeBer >>>> Codeferous Software >>>> >>>> On 2012-09-10, at 1:29 PM, Theodore Petrosky <[email protected]> >>>> wrote: >>>> >>>>> I must be doing something wrong because it >> worked so >>>> easily. >>>>> >>>>> I created a component "AgendaInstructions" >> with: >>>>> >>>>> these are the agenda instructions From the >>>> AgendaInstructions component!!! >>>>> <webobject >>>> name=ComponentContent></webobject> >>>>> >>>>> in the html and: >>>>> >>>>> ComponentContent: WOComponentContent { >>>>> } >>>>> >>>>> in the wod. >>>>> >>>>> in the method that returns the page: >>>>> >>>> >>>> >> page.d2wContext().takeValueForKey("AgendaInstructions", >>>> "compName"); >>>>> >>>>> in my ListRepetition component: >>>>> >>>>> <webobject name = >> "InstructionComponent"/> >>>>> >>>>> InstructionComponent : WOSwitchComponent { >>>>> WOComponentName = >> d2wContext.compName; >>>>> } >>>>> >>>>> Is there anything more I 'should' be doing? It >> seemed >>>> too easy. >>>>> >>>>> Ted >>>>> >>>>> >>>>> --- On Mon, 9/10/12, David LeBer <[email protected]> >>>> wrote: >>>>> >>>>>> From: David LeBer <[email protected]> >>>>>> Subject: Re: adding a component to a D2W >> page >>>>>> To: "[email protected] >>>> Development" <[email protected]> >>>>>> Date: Monday, September 10, 2012, 12:48 PM >>>>>> WOSwitchComponent is your friend. >>>>>> >>>>>> Look at the templates, they are used >> everywhere. >>>>>> >>>>>> D >>>>>> >>>>>> -- >>>>>> David LeBer >>>>>> Codeferous Software >>>>>> >>>>>> On 2012-09-10, at 12:21 PM, Theodore >> Petrosky >>>> <[email protected]> >>>>>> wrote: >>>>>> >>>>>>> ok this is what I figured out so far: >>>>>>> >>>>>>> 10 : (look = 'ERModernLook' and (task = >> 'list' >>>> or task >>>>>> = 'select' or (task = 'edit' and subTask = >>>> 'list'))) => >>>>>> repetitionComponentName = >>>> "ERMDSimpleListPageRepetition" >>>>>> [com.webobjects.directtoweb.Assignment] >>>>>>> >>>>>>> from that rule, I see that if we are >> creating >>>> a >>>>>> ListPage, this rule says to use >>>>>> "ERMDSimpleListPageRepetition". >>>>>>> >>>>>>> So I created my own framework, and >> created a >>>> component >>>>>> "TPMDSimpleListPageRepetition" copying the >> html, >>>> wod, java >>>>>> where they belonged. >>>>>>> >>>>>>> then I created a rule: >>>>>>> >>>>>>> 10 : (look = 'ERModernLook' and (task = >> 'list' >>>> or task >>>>>> = 'select' or (task = 'edit' and subTask = >>>> 'list'))) => >>>>>> repetitionComponentName = >>>> "TPMDSimpleListPageRepetition" >>>>>> [com.webobjects.directtoweb.Assignment] >>>>>>> >>>>>>> and my D2W app is using my >> ListPageRep. >>>>>>> >>>>>>> so my next step was to create a >> WOString at the >>>> top of >>>>>> my new shiny component: <webobject >> name = >>>>>> "CopyOnTop"/> and in the wod: >>>>>>> >>>>>>> CopyOnTop : WOString { >>>>>>> value = >>>> d2wContext.topCopy; >>>>>>> } >>>>>>> >>>>>>> so that in my method that calls in the >> listPage >>>> I >>>>>> added: >>>>>>> >>>>>>> page.d2wContext().takeValueForKey("This >> is some >>>> copy >>>>>> Call Reports", "topCopy"); >>>>>>> >>>>>>> and it gives me what I want. I can just >> wrap it >>>> in a >>>>>> div and the stylist and go to town. >>>>>>> >>>>>>> but, can I add a WOComponent instead of >> the >>>> WOString? >>>>>> If yes, the bindings are not obvious. I >> will keep >>>> looking >>>>>> maybe a solution will jump out and bite >> me. >>>>>>> >>>>>>> adding a component would be handier, >> easier if >>>> I had a >>>>>> few paragraphs of information to add. >>>>>>> >>>>>>> Ted >>>>>>> >>>>>>> >>>>>>> --- On Wed, 9/5/12, Jesse Tayler <[email protected]> >>>>>> wrote: >>>>>>> >>>>>>>> From: Jesse Tayler <[email protected]> >>>>>>>> Subject: Re: adding a component to >> a D2W >>>> page >>>>>>>> To: "Theodore Petrosky" <[email protected]> >>>>>>>> Date: Wednesday, September 5, 2012, >> 11:01 >>>> AM >>>>>>>> I'm pretty sure you are getting >>>>>>>> confused but I'm not looking at it >> either. >>>>>>>> >>>>>>>> so, the factory is just going to >> return >>>> whatever >>>>>> list page a >>>>>>>> rule somewhere tells it to, right? >>>>>>>> >>>>>>>> so, there's not "the" list page, >> there's >>>> some rule >>>>>> that's >>>>>>>> saying with this entity, and this >> task, use >>>> this >>>>>> page. >>>>>>>> >>>>>>>> so, whatever your tab menu is >> doing, it's >>>> calling a >>>>>> rule to >>>>>>>> get the list page -- >>>>>>>> >>>>>>>> you might have to write six rules >> to get >>>> the list >>>>>> page to >>>>>>>> fire when you want, but it doesn't >> matter >>>> how many >>>>>> pages you >>>>>>>> create - you're the programmer! >>>>>>>> >>>>>>>> now, if you're lost on this - try >> writing >>>> some >>>>>> rules that do >>>>>>>> something you can see clearly on >> screen in >>>> the same >>>>>> context >>>>>>>> -- this will help you see what >> rules are >>>> firing and >>>>>> what >>>>>>>> level of specificity you need to >> override >>>> whatever >>>>>> is >>>>>>>> currently firing. >>>>>>>> >>>>>>>> sometimes you can even find the >> rule that's >>>> firing >>>>>> in some >>>>>>>> framework and copy it, raise the >> priority >>>> and >>>>>> change the >>>>>>>> page name to your page. >>>>>>>> >>>>>>>> see where I'm going on that? >>>>>>>> >>>>>>>> hope that sheds some light -- >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> On Sep 5, 2012, at 10:44 AM, >> Theodore >>>> Petrosky >>>>>> <[email protected]> >>>>>>>> wrote: >>>>>>>> >>>>>>>>> this is what I thought >> however: >>>>>>>>> >>>>>>>>> lpi = >>>>>>>> >>>>>> >>>> >> D2W.factory().listPageForEntityNamed(CallReport.ENTITY_NAME, >>>>>>>> session()); >>>>>>>>> >>>>>>>>> This is the page I need to >> target. the >>>> list >>>>>> page. >>>>>>>>> >>>>>>>>> when I click a tab in the menu, >> it >>>> fires off a >>>>>> method >>>>>>>> to return a listPage. >>>>>>>>> >>>>>>>>> and it seems that I would have >> to >>>> create 6 >>>>>> different >>>>>>>> listPages as the markup to add is >> different >>>> for >>>>>> each tab. >>>>>>>>> >>>>>>>>> Ted >>>>>>>>> >>>>>>>>> --- On Wed, 9/5/12, Jesse >> Tayler <[email protected]> >>>>>>>> wrote: >>>>>>>>> >>>>>>>>>> From: Jesse Tayler <[email protected]> >>>>>>>>>> Subject: Re: adding a >> component to >>>> a D2W >>>>>> page >>>>>>>>>> To: "Theodore Petrosky" >> <[email protected]> >>>>>>>>>> Date: Wednesday, September >> 5, 2012, >>>> 10:16 >>>>>> AM >>>>>>>>>> hmm -- I doubt it -- >>>>>>>>>> >>>>>>>>>> I think I'm saying make a >> list page >>>> called >>>>>> >>>>>>>>>> >>>>>>>>>> TedsCoolListPage.wo >>>>>>>>>> >>>>>>>>>> Inherit from whatever list >> page you >>>> are >>>>>> using now. >>>>>>>>>> >>>>>>>>>> copy all WOD and HTML from >> the page >>>> you are >>>>>> using >>>>>>>> now. >>>>>>>>>> >>>>>>>>>> add whatever you need. >>>>>>>>>> >>>>>>>>>> write rule to make >> TedsCoolListPage >>>> the >>>>>> component >>>>>>>> you use on >>>>>>>>>> that list, instead of >> whatever you >>>> are >>>>>> using. >>>>>>>>>> >>>>>>>>>> make sense? >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> On Sep 5, 2012, at 6:15 >> AM, >>>> Theodore >>>>>> Petrosky >>>>>>>> <[email protected]> >>>>>>>>>> wrote: >>>>>>>>>> >>>>>>>>>>> I have six tabs. I want >> to >>>> subclass the >>>>>> List* >>>>>>>> page so >>>>>>>>>> that I can fly in some >> markup >>>> before the >>>>>> table. >>>>>>>>>>> >>>>>>>>>>> It seems to me that >> this >>>> method >>>>>> requires 6 >>>>>>>> 'subclasses' >>>>>>>>>> of the List* page. >>>>>>>>>>> >>>>>>>>>>> Is this what you are >> thinking? >>>>>>>>>>> >>>>>>>>>>> Ted >>>>>>>>>>> >>>>>>>>>>> --- On Tue, 9/4/12, >> Jesse >>>> Tayler <[email protected]> >>>>>>>>>> wrote: >>>>>>>>>>> >>>>>>>>>>>> From: Jesse Tayler >> <[email protected]> >>>>>>>>>>>> Subject: Re: adding >> a >>>> component to >>>>>> a D2W >>>>>>>> page >>>>>>>>>>>> To: "Theodore >> Petrosky" >>>> <[email protected]> >>>>>>>>>>>> Date: Tuesday, >> September 4, >>>> 2012, >>>>>> 11:43 PM >>>>>>>>>>>> oh, I'd just take >> the html >>>> and wod >>>>>>>>>>>> bindings from the >> page you >>>> are >>>>>> subclassing, >>>>>>>> you can >>>>>>>>>> subclass >>>>>>>>>>>> or not in java, but >> write a >>>> rule to >>>>>> use >>>>>>>> that >>>>>>>>>> component. >>>>>>>>>>>> >>>>>>>>>>>> edit html and add >> at >>>> will…. >>>>>>>>>>>> >>>>>>>>>>>> might be more >> simple than >>>> you are >>>>>> realizing >>>>>>>> -- >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> On Sep 4, 2012, at >> 11:01 >>>> PM, >>>>>> Theodore >>>>>>>> Petrosky >>>>>>>>>> <[email protected]> >>>>>>>>>>>> wrote: >>>>>>>>>>>> >>>>>>>>>>>>> Jesse, >>>>>>>>>>>>> >>>>>>>>>>>>> would you be >> interested >>>> in >>>>>> showing me >>>>>>>> how to >>>>>>>>>> use the >>>>>>>>>>>> subclassing >> technique? I >>>> really >>>>>> don't know >>>>>>>> where to >>>>>>>>>> begin >>>>>>>>>>>> and it is time I >> learned >>>> something >>>>>> new. >>>>>>>>>>>>> >>>>>>>>>>>>> I would be >> happy to >>>>>> document/record a >>>>>>>> session >>>>>>>>>> and make >>>>>>>>>>>> it available. There >> may be >>>> others >>>>>> in the >>>>>>>> same >>>>>>>>>> boat. >>>>>>>>>>>>> >>>>>>>>>>>>> Ted >>>>>>>>>>>>> >>>>>>>>>>>>> --- On Tue, >> 9/4/12, >>>> Jesse >>>>>> Tayler <[email protected]> >>>>>>>>>>>> wrote: >>>>>>>>>>>>> >>>>>>>>>>>>>> From: Jesse >> Tayler >>>> <[email protected]> >>>>>>>>>>>>>> Subject: >> Re: adding >>>> a >>>>>> component to >>>>>>>> a D2W >>>>>>>>>> page >>>>>>>>>>>>>> To: >> "Theodore >>>> Petrosky" >>>>>> <[email protected]> >>>>>>>>>>>>>> Cc: >> "WebObjects >>>>>> Development" <[email protected]> >>>>>>>>>>>>>> Date: >> Tuesday, >>>> September 4, >>>>>> 2012, >>>>>>>> 12:54 PM >>>>>>>>>>>>>> hi ted - >>>>>>>>>>>>>> >>>>>>>>>>>>>> is this >> something >>>> you can >>>>>> add to >>>>>>>> your page >>>>>>>>>>>> wrapper? >>>>>>>>>>>>>> >>>>>>>>>>>>>> if maybe >> that's not >>>> a >>>>>> great >>>>>>>> solution, >>>>>>>>>>>>>> >>>>>>>>>>>>>> in the >> past, when I >>>> have >>>>>> designed >>>>>>>> complex >>>>>>>>>> D2W apps, >>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> I end up >>>> subclassing pages >>>>>> and >>>>>>>> often make >>>>>>>>>> container >>>>>>>>>>>> elements >>>>>>>>>>>>>> like a >> 'panel' to >>>> handle >>>>>>>> arrangement of >>>>>>>>>> property >>>>>>>>>>>> level >>>>>>>>>>>>>> components >> and also >>>> to >>>>>> report >>>>>>>> things or >>>>>>>>>> add >>>>>>>>>>>> standard UI >>>>>>>>>>>>>> elements at >> that >>>> level. >>>>>>>>>>>>>> >>>>>>>>>>>>>> modern look >> has so >>>> many >>>>>> goodies >>>>>>>> today, but >>>>>>>>>>>> subclassing and >>>>>>>>>>>>>> using your >> own page >>>> (or >>>>>> panel) >>>>>>>> level >>>>>>>>>> components is >>>>>>>>>>>> a common >>>>>>>>>>>>>> way to add >>>> something like a >>>>>> special >>>>>>>> error >>>>>>>>>> message >>>>>>>>>>>> or >>>>>>>>>>>>>> standard UI >> element >>>> that is >>>>>> not >>>>>>>> part of >>>>>>>>>> the >>>>>>>>>>>> underlying >>>>>>>>>>>>>> system. >>>>>>>>>>>>>> >>>>>>>>>>>>>> maybe that >> helps >>>> -- >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> On Sep 4, >> 2012, at >>>> 12:43 >>>>>> PM, >>>>>>>> Theodore >>>>>>>>>> Petrosky >>>>>>>>>>>> <[email protected]> >>>>>>>>>>>>>> wrote: >>>>>>>>>>>>>> >>>>>>>>>>>>>>> I have >> a D2w >>>> app. they >>>>>> want to >>>>>>>> add >>>>>>>>>> some >>>>>>>>>>>> instructional >>>>>>>>>>>>>> text to the >> top of >>>> the page >>>>>> (under >>>>>>>> the >>>>>>>>>> Menubar). >>>>>>>>>>>> Obviously, >>>>>>>>>>>>>> the text >> will >>>> change for >>>>>> each tab >>>>>>>> that is >>>>>>>>>>>> selected. >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> How do >> I add >>>> this >>>>>> markup in? or >>>>>>>> How do >>>>>>>>>> I create >>>>>>>>>>>> the >>>>>>>>>>>>>> hook so a >> component >>>> can fly >>>>>> in here >>>>>>>> as >>>>>>>>>> needed? >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> Ted >>>>>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>> >>>> _______________________________________________ >>>>>>>>>>>>>>> Do not >> post >>>> admin >>>>>> requests to >>>>>>>> the list. >>>>>>>>>> They >>>>>>>>>>>> will be >>>>>>>>>>>>>> ignored. >>>>>>>>>>>>>>> >> Webobjects-dev >>>> mailing >>>>>> list >>>>>>>>>> >>>>>>>>>>>> ([email protected]) >>>>>>>>>>>>>>> >>>> Help/Unsubscribe/Update >>>>>> your >>>>>>>>>> Subscription: >>>>>>>>>>>>>>> https://lists.apple.com/mailman/options/webobjects-dev/jtayler%40oeinc.com >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> This >> email sent >>>> to [email protected] >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>> >>>>>>>> >>>>>>> >>>>>>> >>>> _______________________________________________ >>>>>>> Do not post admin requests to the list. >> They >>>> will be >>>>>> ignored. >>>>>>> Webobjects-dev mailing list >> >>>> ([email protected]) >>>>>>> Help/Unsubscribe/Update your >> Subscription: >>>>>>> https://lists.apple.com/mailman/options/webobjects-dev/dleber_wodev%40codeferous.com >>>>>>> >>>>>>> This email sent to [email protected] >>>>>> >>>>>> >>>>>> -- >>>>>> David LeBer >>>>>> Codeferous Software >>>>>> >>>>>> >>>>>> >> _______________________________________________ >>>>>> Do not post admin requests to the list. >> They will >>>> be >>>>>> ignored. >>>>>> Webobjects-dev mailing list >> ([email protected]) >>>>>> Help/Unsubscribe/Update your Subscription: >>>>>> https://lists.apple.com/mailman/options/webobjects-dev/tedpet5%40yahoo.com >>>>>> >>>>>> This email sent to [email protected] >>>> >>>> >> >> _______________________________________________ Do not post admin requests to the list. They will be ignored. Webobjects-dev mailing list ([email protected]) Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com This email sent to [email protected]
