|
|
|
date: Mon, 05 Sep 2005 19:42:43 +0200,
group: microsoft.public.visio.createshapes
back
Question regarding shapesheet behaviour
Hi,
Is it possible to show/hide a shape that is a collection of several other
'subshapes'?
I started by drawing a rectangle (the result has to be a fuse). I immediately
made a group of that single rectangle and I defined this rectangle such that it
had to accept shapes, when dragged into the rectangle.
Then I dragged other shapes on top of that original rectangle and all references
of those other shapes were nicely relative to the 'mother shape', being the
original rectangle. A picture can be seen here:
http://img33.imageshack.us/img33/5301/fuse9uh.jpg (hope you'll be able to see
this...)
However, I also would like to hide the complete shape, when necessary. But it
seems that I don't have a 'Geometry' action in the shape sheet of the 'mother
shape'. I have to select all individual shapes of the composed shape and only
then I see one or more geometry actions in their respective shapesheet.
Only then I can select the Geometry1.NoShow and adapt the value so that it
doesn't show anymore.
But to me, this can't be the only way to go. It must be possible one way or
another to also show/hide the 'mother shape' and all here 'members' with a
simple action.
The problem is: I don't know which item in the shapesheet of the 'mother shape'
I have to manipulate to hide/show the overall shapesheet.
Anyone any idea?
I hope I expressed myself clear enough, but this isn't a simple subject to explain.
If more info is needed, pls. tell me.
Best rgds,
--Geert
date: Mon, 05 Sep 2005 19:42:43 +0200
author: Geert Vancompernolle
Re: Question regarding shapesheet behaviour
You could possibly use Layers to control visibility
OR
Create a User cell in the ShapeSheet of the top level shape, eg
User.HideGeom
Then add an Action cell to toggle the value 1 or 0 e.g
=SETF(GetRef(User.HideGeom),NOT(user.HideGeom))
Set the Geom.NoShow of the sub-shapes to the User cell value, e.g.
=Sheet.5!User.HideGeom
"Geert Vancompernolle" wrote
in message news:u7ANQBksFHA.3452@TK2MSFTNGP14.phx.gbl...
> Hi,
>
> Is it possible to show/hide a shape that is a collection of several other
> 'subshapes'?
>
> I started by drawing a rectangle (the result has to be a fuse). I
> immediately made a group of that single rectangle and I defined this
> rectangle such that it had to accept shapes, when dragged into the
> rectangle.
> Then I dragged other shapes on top of that original rectangle and all
> references of those other shapes were nicely relative to the 'mother
> shape', being the original rectangle. A picture can be seen here:
> http://img33.imageshack.us/img33/5301/fuse9uh.jpg (hope you'll be able to
> see this...)
>
> However, I also would like to hide the complete shape, when necessary.
> But it seems that I don't have a 'Geometry' action in the shape sheet of
> the 'mother shape'. I have to select all individual shapes of the
> composed shape and only then I see one or more geometry actions in their
> respective shapesheet.
> Only then I can select the Geometry1.NoShow and adapt the value so that it
> doesn't show anymore.
>
> But to me, this can't be the only way to go. It must be possible one way
> or another to also show/hide the 'mother shape' and all here 'members'
> with a simple action.
>
> The problem is: I don't know which item in the shapesheet of the 'mother
> shape' I have to manipulate to hide/show the overall shapesheet.
>
> Anyone any idea?
>
> I hope I expressed myself clear enough, but this isn't a simple subject to
> explain.
>
> If more info is needed, pls. tell me.
>
> Best rgds,
>
> --Geert
date: Mon, 5 Sep 2005 20:12:09 +0100
author: David Parker [Visio MVP]
Re: Question regarding shapesheet behaviour
Hi David,
Thanks for your answer.
If I understand you well, I still have to select all individual sub-shapes of
the 'mother shape' and set their Geometry.NoShow to true or false, depending on
a value in another field (you take a User cell as a possible reference field,
but I mostly use the Scratch fields for such purposes).
My aim was, however, to show/hide the mothershape and all the sub-shapes in one
go, iso having to select each and every item individually.
But apparently this is not possible? Unless I didn't get really your point?
What I also tried, is putting the shapes on top of each other (I have in total a
max. of 4 times the shape to be shown next to each other, selectable via a smart
tag indicator, see http://img354.imageshack.us/img354/9063/fuse4times0nw.jpg).
In this case, I'm playing with the PinX and PinY fields of the shapes 2, 3 and
4, according to the following formula:
For the field PinX => Sheet.6!PinX+IF(Sheet.6!Scratch.A1>1,1,0)*Width
For the field PinY => Sheet.6!PinY
The PinY doesn't really have to shift, while the PinX position does. Sheet.6 is
the reference sheet, so you can see that all the other onces are depending on
the PinX and PinY value of the reference sheet.
Also, I'm using scratch field A1 as a temporary 'memory'. The value of
Scratch.A1 is changed, depending on the selection I'm doing when the smart tag
is visible.
The problem with this one is: it works fine as long as I'm in the stencil mode,
but once I use the shape on a real document, I can only see the smart tag box
but when selecting the amount of fuses to draw, the effect is none. Why could
this be?
Best rgds,
--Geert
David Parker [Visio MVP] wrote:
> You could possibly use Layers to control visibility
> OR
> Create a User cell in the ShapeSheet of the top level shape, eg
> User.HideGeom
> Then add an Action cell to toggle the value 1 or 0 e.g
> =SETF(GetRef(User.HideGeom),NOT(user.HideGeom))
> Set the Geom.NoShow of the sub-shapes to the User cell value, e.g.
> =Sheet.5!User.HideGeom
>
>
> "Geert Vancompernolle" wrote
> in message news:u7ANQBksFHA.3452@TK2MSFTNGP14.phx.gbl...
>
>>Hi,
>>
>>Is it possible to show/hide a shape that is a collection of several other
>>'subshapes'?
>>
>>I started by drawing a rectangle (the result has to be a fuse). I
>>immediately made a group of that single rectangle and I defined this
>>rectangle such that it had to accept shapes, when dragged into the
>>rectangle.
>>Then I dragged other shapes on top of that original rectangle and all
>>references of those other shapes were nicely relative to the 'mother
>>shape', being the original rectangle. A picture can be seen here:
>>http://img33.imageshack.us/img33/5301/fuse9uh.jpg (hope you'll be able to
>>see this...)
>>
>>However, I also would like to hide the complete shape, when necessary.
>>But it seems that I don't have a 'Geometry' action in the shape sheet of
>>the 'mother shape'. I have to select all individual shapes of the
>>composed shape and only then I see one or more geometry actions in their
>>respective shapesheet.
>>Only then I can select the Geometry1.NoShow and adapt the value so that it
>>doesn't show anymore.
>>
>>But to me, this can't be the only way to go. It must be possible one way
>>or another to also show/hide the 'mother shape' and all here 'members'
>>with a simple action.
>>
>>The problem is: I don't know which item in the shapesheet of the 'mother
>>shape' I have to manipulate to hide/show the overall shapesheet.
>>
>>Anyone any idea?
>>
>>I hope I expressed myself clear enough, but this isn't a simple subject to
>>explain.
>>
>>If more info is needed, pls. tell me.
>>
>>Best rgds,
>>
>>--Geert
>
>
>
date: Wed, 07 Sep 2005 05:40:01 +0200
author: Geert Vancompernolle
|
|