John Darrington <j...@darrington.wattle.id.au> writes:

> On Wed, Apr 25, 2012 at 09:35:52PM -0700, Ben Pfaff wrote:
>      John Darrington <j...@darrington.wattle.id.au> writes:
>      
>      > The attatched patch makes a solution to bug #31566 possible.
>      >
>      > It replaces the const char* with a struct string *
>      
>      I don't like the idea of doing this extra allocation, copying,
>      and deallocation if we can avoid it.  
>
> I'm not particularly happy with it either.
>      
>      One way, for example, would be to add a new var_* function that
>      returns the variable name and label together, keeping the string
>      cached as part of the struct variable.
>
> I can see that would work.  However, I don't like the idea of having the
> data and its presentation in the same structure.  I think we ought to
> start making an effort to keep them apart.

I think that it's better to think of it as a cache rather than a
violation of separation of data and presentation.

I don't have a better idea.  I suspect that in fact this is the
wrong place to worry about this separation.  To more properly
separate data and presentation in such a case, it would make more
sense to add a function to add a variable name to a cell in a
table, which would internally look at the setting and put the
properly formatted name (either as name or label or name+label)
int he cell.  And then ultimately it would be even better to
avoid making this decision at the time of table construction, so
that the user could, say, right-click on a particular table and
change the setting for a table that has already been output.

_______________________________________________
pspp-dev mailing list
pspp-dev@gnu.org
https://lists.gnu.org/mailman/listinfo/pspp-dev

Reply via email to