Here's the trick:

        The attributes will be defined by someone else using the class,
so the attributes will not be static.  Any attributes could be set
in the format class, and I need to copy them.  I want this to be
generic as possible, so I can loop through a set of TD's, set a 
condition to modify a format, then apply that format to only those
records that need it.  I can't just call setBgColor on all the TD's,
unless I do some tricks with reflexion to pass the name of the method
call.  I want this to be simple and easy for a user.  

        So, my question still remains:

        How do I copy these attributes from one TD to another?

        I've tried to create a ConcreteElement and do it like this:
        
          TD data = new TD("Foo");
        TD format = new TD();
        format.setBgColor("#FFFFCC");

          Enumeration formatEKeys = format.attributes();
        ConcreteElement ce = new ConcreteElement();
        while (formatEKeys.hasMoreElements()) {
            String o = (String) formatEKeys.nextElement();
            System.out.println (o);            
            String value = format.getAttribute(o);
            System.out.println (value);
            ce.addElementToRegistry (o, value);
            System.out.println (ce);
            data.addElement (ce);
        }
        System.out.println (data);

        I get the following result:

bgcolor
#FFFFCC
<>#FFFFCC</>
<td>Foo<>#FFFFCC</></td>

        Almost, but not quite.  Can someone help me clean up this
code so it produces:

        <td bgcolor="#FFFFCC">Foo</td>

        Thanks yet again.

> -----Original Message-----
> From: Klaus Sonnenleiter [mailto:[EMAIL PROTECTED]]
>
> 
> Jim,
> 
> You could probably get to where you want to go by looping through the 
> attributes and copying them one by one. But it seems 
> unnecessary to me. You 
> could also create classes that inherit from TD and set some 
> defaults, like this
> 
> class JimsOwnTD extends TD {
>          JimsOwnTD() {
>                  this("default")
>          }
> 
>          JimsOwnTD(String s) {
>                  super(s);
>                  this.setBgColor("#FFFFCC");
>          }
> 
>          //override other methods here
> }
> 
> Then, instead of creating two separate TDs, you'll create 
> only one JimsOwnTD:
> 
> JimsOwnTD jotd = JimsOwnTD("Foo");
> 
> and it should inherit what you need.
> 
> Klaus
> 
> At 10:48 AM 4/11/2002 -0400, Nemesh, Jim wrote:
> 
> 
> > > -----Original Message-----
> > > From: Jeremy W. Redmond [mailto:[EMAIL PROTECTED]]
> > > Sent: Thursday, April 11, 2002 8:00 AM
> > > To: ECS Users List
> > > Subject: Re: Help for a new user - Working with elements
> > >
> > >
> > >
> > > Posting the code snippet that you are trying might be helpful.
> >
> >         Here's the basic idea:
> >
> >         TD data = new TD("Foo");
> >        TD format = new TD();
> >         format.setBgColor("#FFFFCC");
> >         Enumeration formatEKeys = format.attributes();
> >         while (formatEKeys.hasMoreElements()) {
> >             String o = (String) formatEKeys.nextElement();
> >             System.out.println (o);
> >             String value = format.getAttribute(o);
> >             System.out.println (value);
> >                 // do something to create an element with 
> these values and
> >add it to data.
> >         }
> >
> >         This should take the format information (backround 
> color) from the
> >format
> >TD object, and put it in the first TD object.
> >
> >         The question is, what goes after the comment line?  
> Should I be
> >making a
> >ConcreteElement, or GenericElement?  If so, how would I go 
> about doing this?
> >
> >         Why am I doing this?  I'm building some generic 
> ways to create
> >tables from other objects
> >and provide ways to format the cells and rows of the tables 
> after the TD
> >objects have already
> >been created, or provide multiple levels of formatting (for 
> example one test
> >would say that if
> >the data included the word "Foo", the backround would be 
> red, and if the
> >data contained the word
> >"Bar" as well, it would do something else.)
> >
> >         -Jim Nemesh
> >
> >
> >--
> >To unsubscribe, e-mail:   
<mailto:[EMAIL PROTECTED]>
>For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>


--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to