ImageEn for Delphi and C++ Builder ImageEn for Delphi and C++ Builder

 

ImageEn Forum
Profile    Join    Active Topics    Forum FAQ    Search this forumSearch
Forum membership is Free!  Click Join to sign-up
Username:
Password:
Save Password
Forgot your Password?

 All Forums
 ImageEn Library for Delphi, C++ and .Net
 ImageEn and IEvolution Support Forum
 TImageEnMView with shared bitmaps
 New Topic  Reply to Topic
Author Previous Topic Topic Next Topic  

spetric

Croatia
308 Posts

Posted - Dec 18 2013 :  02:47:22  Show Profile  Reply
I'm using TImageEnMView component to show current layers.
When MView thumbnail (layer) is clicked, actual layer is selected.

However, any change (drawing) on selected layer (bitmap) is not reflected on the thumbnail, because MView works with internal bitmaps (no matter which StoreType is selected).

Is there a possibility to set MView to work in "shared" mode, so that MView item points to actual layer (IEBitmap)?

I'm still working with ImageEn ver.3.0.2, so I don't know if such possibility exists in newer versions.

xequte

39053 Posts

Posted - Dec 19 2013 :  01:29:03  Show Profile  Reply
Hi

It is not possible in yours or a newer version, however you can simply use a TTimer to perform a delayed update of the MView whenever the layer is changed (and update the relevant image of the grid).

Nigel
Xequte Software
www.xequte.com
nigel@xequte.com
Go to Top of Page

spetric

Croatia
308 Posts

Posted - Dec 19 2013 :  05:26:53  Show Profile  Reply
Thanks.

However, I've already written a class inherited from TMS advscrollbox and call it TQuasiMView. It contains panels with small ImageEnViews (created in runtime with AddImage method). ImageEnView has method SetExternalBitmap which is just what I need.

Now, I don't need to reload layers into MView, simple refresh is enough.
It looks like ImageEnMView, so I called it QuasiMView:



Another question, regarding layers, actually VisibleBox property.
Setting: PaintView->Layers[PaintView->LayersCurrent]->VisibleBox = true;
does not show Box if MouseInteract is empty.

When MouseInteract contains something (for example miMoveLayers), box is shown.

What I need is a possibility to show box around layer without adding elements to MouseInteract. Is it possible?

Go to Top of Page

w2m

USA
1990 Posts

Posted - Dec 19 2013 :  06:44:27  Show Profile  Reply
I do not think that s possible with the current version, but maybe Nigel will have an idea.

William Miller
Go to Top of Page

xequte

39053 Posts

Posted - Dec 23 2013 :  22:41:50  Show Profile  Reply
Hi

Yes, I see what you are trying to do, but I don't think it would be possible.

You can test this by setting the external bitmap of each of your view images as follows

QuasiMView.ImageEnView[ I ].SetExternalBitmap( ImageEnView1.Layers[ I ].Bitmap);


Selection boxes are not shown if no mouse selection method is specified.



Nigel
Xequte Software
www.xequte.com
nigel@xequte.com
Go to Top of Page
  Previous Topic Topic Next Topic  
 New Topic  Reply to Topic
Jump To: