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
 Copying Objects
 New Topic  Reply to Topic
Author Previous Topic Topic Next Topic  

jeff@lucion.com

USA
8 Posts

Posted - Apr 30 2015 :  14:45:06  Show Profile  Reply
I'm using the TImageEnMView with the TImageEnVect and I need to know how to copy all the objects that I create on the TImageEnVect to the TImageEnMView so that when I click through the pages of the TImaveEnMView all the objects will reappear in the TImageEnVect.

--Jeff

w2m

USA
1990 Posts

Posted - Apr 30 2015 :  14:54:51  Show Profile  Reply
I am afraid this is not possible with TImageEnMView. TImageEnMView can only display a bitmap of the image and its objects. It does not store the object type, colors and dimensions so it is not possible to recreate the objects from TImageEnMView.

Bill Miller
Adirondack Software & Graphics
Email: w2m@hughes.net
EBook: http://www.imageen.com/ebook/
Custom Commercial ImageEn Development
Go to Top of Page

xequte

38510 Posts

Posted - Apr 30 2015 :  16:06:26  Show Profile  Reply
Hi Jeff

Yes, you would need to save the TImageEnVect to a file or stream (as an IEV or ALL file) to maintain the content. For example, you could store a list of temp files (or a stream array in memory) and use the TImageEnMView to display the content of those temp files or stream content.

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

jeff@lucion.com

USA
8 Posts

Posted - Apr 30 2015 :  16:10:09  Show Profile  Reply
Is there somewhere on the TImageEnMView for each page that I can attach a custom object so that it gets associated with the page even if the page gets reordered.
Go to Top of Page

xequte

38510 Posts

Posted - Apr 30 2015 :  21:23:09  Show Profile  Reply
Hi

You can use ImageEnMView1.ImageUserPointer[] to associate a memory pointer with each frame:

http://www.imageen.com/help/TImageEnMView.ImageUserPointer.html

Or ImageEnMView1.ImageTag[] to associate an integer (e.g. as an index to an object in another list):

http://www.imageen.com/help/TImageEnMView.ImageTag.html

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

jeff@lucion.com

USA
8 Posts

Posted - May 01 2015 :  09:17:29  Show Profile  Reply
Ok. I've got the UserImagePointer working and storing my objects, but how can I get the TImageEnMView Thumbnail to visibility show the object I place on the TImageEnVect? TImageEnMview.Update seems to only show changes made to the underlying bitmap.

Thanks.
Go to Top of Page

w2m

USA
1990 Posts

Posted - May 01 2015 :  11:36:03  Show Profile  Reply
As I said before TImageEnMView has no way to know anything about objects. So you have to use the UserImagePointer to do that. I'd try to be of more help but I have never tried this before, but I suspect the UserImagePointer Index has to be set to the SelectedImage (index}. That way you can associate the objects in the UserImagePointer to a specific thumbnail.

Something like ImageEnMView1.ImageUserPointer[ImageEnMView1.SelectedImage]; This returns a pointer.
Perhaps Nigel has some more info he can provide. I can not.

Bill Miller
Adirondack Software & Graphics
Email: w2m@hughes.net
EBook: http://www.imageen.com/ebook/
Custom Commercial ImageEn Development
Go to Top of Page

jeff@lucion.com

USA
8 Posts

Posted - May 01 2015 :  13:16:43  Show Profile  Reply
The pointer is working great. I'm just trying to have the thumbnail image show the objects I added to the TImageEnVect. But I sense that may not be possible.
Go to Top of Page

xequte

38510 Posts

Posted - May 01 2015 :  19:05:40  Show Profile  Reply
Hi

Rather than filling the TImageEnMView with actual files with filenames, use it virtually. I.e. add a cell for each of your images and fill the "ImageID". Then whenever an image is required the OnImageIDRequestEx and OnImageIDRequest events will be called. In those fill the TBitmap or TIEBitmap with the image stored in memory for that cell.

More info on these events at:

http://www.imageen.com/help/TImageEnMView.html

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: