Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [ve-dev] How to extend VE in the following situation:

Max,

I'm sorry you haven't gotten a response yet. Here in the US, we've just had our big Independance Day holiday and a lot of the core developers have been on vacation. You're definitely asking in the right place. I'll find someone who knows the answer to your question and can help.

In the meantime, I again apologize for our slowness in responding.


Best Regards,

Dave Orme
VEP Project Lead

Max wrote:

Dear VE developers,
I've asked the question (see below) two times and unfortunately have no any response. Probably this is not the right place for asking such questions? Please, give me any feedback. Where I should ask such questions? Or give any
information source I could figure out answer from.
Sorry, if this is not the right place for such questions.
Thanks,
Maxim
    ----- Original Message -----
    *From:* Max <mailto:max@xxxxxxxx>
    *To:* ve-dev@xxxxxxxxxxx <mailto:ve-dev@xxxxxxxxxxx>
    *Sent:* Friday, July 02, 2004 5:31 PM
    *Subject:* [ve-dev] How to extend VE in the following situation:

    Hi,
I'd like to change/extend VE to generate a slightly different code
    in getter method
    for a particular class. (SWING based)
** *1. *In my application I have class: ** class MyGenericAction extends javax.swing.AbstractAction {
        public void setOwner(Jpanel owner) {
            ....
        }
    }
And I have different particular implementations of MyGenericAction
    e.g:
class SendAction extends MyGenericAction {
    }
** *2. *I create JPanel in VE and put my SendAction into the panel
    and set
    properties Enabled and Name. VE generates the following code:
    private sample.vep.SendAction getIvjActSend() {
        if (ivjActSend == null) {
           ivjActSend = new sample.vep.SendAction();
           ivjActSend.setEnabled(true);
           ivjActSend.setName("Hello");
      }
       return ivjActSend;
    }
    *3. *The issue is that I know that any MyGenericAction instance
    always requires
    also Owner property to be specified and the user can forget to
    specify it explicitly.
    So I need to override code generation for all classes extending
    MyGenericAction
    in the following way:
*1st option*
    private sample.vep.SendAction getIvjActSend() {
        if (ivjActSend == null) {
           ivjActSend = new sample.vep.SendAction(*this*); *// The
    "this" must be in the constructor for all *
* //classes derived from MyGenericAction after I put
    action to Panel*
           ivjActSend.setEnabled(true);
           ivjActSend.setName("Hello");
      }
       return ivjActSend;
    }
** *2nd option*
    private sample.vep.SendAction getIvjActSend() {
        if (ivjActSend == null) {
           ivjActSend = new sample.vep.SendAction();
           *ivjActSend.setOwner(this);  // this code must be inserted
    automatically *
    *                                                  //for all
    classes derived from MyGenericAction after I put action to Panel*
           ivjActSend.setEnabled(true);
           ivjActSend.setName("Hello");
      }
       return ivjActSend;
    }

    *Questions*
    Could you please provide some recommendations for implementig such
    or similar functionality?
    Which extension points I need to implement to add the functionality?
Thanks in advance,
    Maxim



--
Got Java?  Use SWTworkbench! <http://www.swtworkbench.com>



Back to the top