At 02:52 PM 10/4/00 -0400, [EMAIL PROTECTED] wrote:
>Actually you should be able to use
>(P "Variable name: " name 'noinsert)
>the noisert prevents the variable from being inserted right away.


Thanks, Brad. This is a much better solution.

- Paul

>Brad
>
>
>
>On Wed, Oct 04, 2000 at 02:44:15PM -0400, Paul Kinnucan wrote:
> > At 01:55 PM 10/4/00 -0400, you wrote:
> > >I'm trying to modify the autogen template for generating a Get/Set pair,
> > >but I'm running into problems that stem from ignorance of Lisp.
> > >
> > >At my company, the coding standard dictates that member variables are
> > >private and are prefixed with 'm', so a variable that would normally be
> > >named default is named 'mDefault'.  Also, arguments begin with 'a', so 
> the
> > >argument to the setter would be 'aDefault' instead of 'v'.
> > >
> > >I've hacked on the function to the extent that everything works except 
> for
> > >the variable name itself.  The problem is in this line:
> > >
> > >(P "Variable name: " name) ";" '>'n '>'n
> >
> >
> > Why not replace this with your own function that reads a name from the
> > minibuffer, filters it, and returns the result, e.g.
> >
> > (defun my-insert-get-set-var-name ()
> >     (let ((name (read-from-minibuffer "Variable name: ")))
> >           ;; Save variable name for use elsewhere in template.
> >          (tempo-remember-insertion 'name name)
> >          ;; Capitalize variable name and then prefix with m.
> >          (concat "m" (jde-gen-init-cap name))))
> >
> > You would then replace the line
> >
> > (P "Variable name: " name) ";" '>'n '>'n
> >
> > in the template with
> >
> > (my-insert-get-set-var-name) ";" '>'n '>'n
> >
> > I've not tried this so it may have bugs but I believe the general approach
> > is right.
> >
> > - Paul
> >
> >
> > >I've surmised that the P function reads from the minibuffer and echoes
> > >that input to the screen, while at the same time storing the value 
> entered
> > >in the variable 'name'.  Everywhere else in the function I apply this:
> > >
> > >(jde-gen-init-cap (jde-gen-lookup-named 'name))
> > >
> > >to name and prepend 'm' or 'a' as appropriate to generate the correct
> > >code.  Unfortunately, because the input from the minibuffer goes directly
> > >to the screen, I can't do that to the variable name when it's initially
> > >entered.  I hacked around and tried to split up reading the input and
> > >printing it out into two steps, but haven't been successful.
> > >
> > >If anyone could provide a code snippet that will enable me to do this, 
> I'd
> > >be much obliged.
> > >
> > >--Rafe
> > >
> > >---
> > >Rafe Colburn <[EMAIL PROTECTED]>         |
> > >Development Manager, Consumer Services  |  web:   http://www.alerts.com
> > >Alerts.com                              |  phone: 919.239.2260
>
>--
>--- There are two kinds of knowledge, you either know the answer or
>                         you know where to find it
>                       -Kane, Johnson, and anonymous

Reply via email to