Find Jobs
Hire Freelancers

CBitmap object saver and viewer

$500-5000 USD

Completed
Posted almost 14 years ago

$500-5000 USD

Paid on delivery
Buyer requires a class to be written for Windows VC++ allowing the showing of bitmaps to be shown on a CDockablePane in a MDI based app. You are developing a Class "CBitmapInfoViewer" with bitmap and information objects within it that will be manipulated...? Each bitmap and info will be stored in a class "CBitmapInfoObj". There will be a CArray of such within "CBitmapInfoViewer". Coder is to create a Visual Studio MFC application, Multiple tabbed documents, Project style 'Visual Studio', Document/View Architecture, Unicode library as a base. (Should take about 30 seconds with VS2010). Coder is to then add a new CDockablePane Derived Side window, with a Class that we are interested in developing to show "CBitmapInfoViewer". The class is to be designed to display pre-created CBitmap objects and allow dragging, resizing, single and double click selecting of same. Saving and Loading of the state of the view is also required. ## Deliverables Buyer requires a class to be written for Windows VC++ allowing the showing of bitmaps to be shown on a CDockablePane in a MDI based app. You are developing a Class "CBitmapInfoViewer" with bitmap and information objects within it that will be manipulated...? Each bitmap and info will be stored in a class "CBitmapInfoObj". There will be a CArray of such within "CBitmapInfoViewer". Coder is to create a Visual Studio MFC application, Multiple tabbed documents, Project style 'Visual Studio', Document/View Architecture, Unicode library as a base. (Should take about 30 seconds with VS2010). Coder is to then add a new CDockablePane Derived Side window, with a Class that we are interested in developing to show "CBitmapInfoViewer" The class is to be designed to display pre-created CBitmap objects and allow dragging, resizing, single and double click selecting of same. A right click -bitmap- context menu should allow delete as should pressing the delete after single click selects a bitmap object. A right click -background- context menu should be available. The "CBitmapInfoObj"objects should be stored as pointers in a CArray within the class.? CArray <CBitmapInfoObj*,CBitmapInfoObj*> m_arrBitmapInfoObjects; ? Each bitmap also has a CString with it which will be of varying length (less than a gig), and will contain information relevant to that object. In addition, the CDockablePane is to be considered a 'viewport' into the area.? Rather than having 'scrollbars', when the user right or left drags the background of the control, the relative position of all of the bitmap objects shown within it should be moved accordingly. Class "CBitmapInfoViewer"? --------------------------- FUNCTIONS include: AddBitmapObject(CBitmap* pBitmapToShow,int xPos,int yPos,int nWidth, int nHeight, CString sXMLWithObject) Delete(int nNoBitmapObjectToDelete) SaveViewAndObjects(CString sFilenameToSaveStateTo); // saves state of the new control, including the bitmaps and sXML within objects LoadViewAndObjects(CSTring sFilenameToLoadStateTo); // saves state of the control, including the bitmaps and sXML within AND should have a destructor that deletes all. MEMBERS include: m_arrBitmapInfoObjects; // the CArray of BitmapInfoObjects m_xViewOffset // set to zero initially - represents the additional (scroll like) offset of all bitmaps in the viewing area caused by user dragging background m_yviewOffset; // set to zero initially - " " " ... Class "CBitmapInfoObj" --------------------------- FUNCTIONS include: Draw(int* pxOffSet, int* pxOffSet); Resize(int nNewWidth, int nNewHeight); // fixes the top left of the bitmap, and resizes? Shift(int xShift, int yShift); // shifts the bitmap sideways by x/y CString GetInfo(); // shows in an AfxMessage Box the contents of the m_sXML SetInfo(CString); // sets the m_sXML string MEMBERS include: CBitmap* m_pBitmap; m_xPos, m_yPos, m_nWidth; m_nHeight; CString m_sXML; // this is a string of information which can be very big m_bSelected; // whether object is selected by clicking on it or not... important for delete only at this stage. The events to be captured include 1. Mouse click - selects bitmaps if clicked on a bitmap in the view 2. Mouse double click - activates an AfxMessageBox which shows the index (in the CArray) of the bitmap clicked on, AND the sXML of that object. 3. Mouse move (drag) - the background of the area must be draggable on right drag of the mouse... i.e. right or left dragging the mouse across the background will change the position of the 'view'from initially? You can load your CBitmaps for initial functionality from whereever is convenient for you ... perhaps even make them load from resources if you like... Make sure the bitmaps you load are of variable size... and then show them with other sizes... i.e. the size of the bitmap you load should be able to be different from the size of the bitmap seen on the window... e.g. if it is 500*200, should be able to be shown as 100*30 or whatever dimensions go into the 'AddBitmapObject' function above. Any additional functionality required will be asked for along with offered bonuses. Please quote on the functionality listed above only.
Project ID: 3434750

About the project

7 proposals
Remote project
Active 14 yrs ago

Looking to make some money?

Benefits of bidding on Freelancer

Set your budget and timeframe
Get paid for your work
Outline your proposal
It's free to sign up and bid on jobs
Awarded to:
User Avatar
See private message.
$425 USD in 20 days
5.0 (56 reviews)
5.5
5.5
7 freelancers are bidding on average $692 USD for this job
User Avatar
See private message.
$1,530 USD in 20 days
5.0 (86 reviews)
7.7
7.7
User Avatar
See private message.
$850 USD in 20 days
5.0 (133 reviews)
7.3
7.3
User Avatar
See private message.
$510 USD in 20 days
5.0 (100 reviews)
7.2
7.2
User Avatar
See private message.
$467.50 USD in 20 days
5.0 (96 reviews)
6.5
6.5
User Avatar
See private message.
$425 USD in 20 days
4.8 (117 reviews)
6.2
6.2
User Avatar
See private message.
$637.50 USD in 20 days
0.0 (5 reviews)
0.0
0.0

About the client

Flag of AUSTRALIA
Australia
5.0
114
Payment method verified
Member since Jul 7, 2004

Client Verification

Thanks! We’ve emailed you a link to claim your free credit.
Something went wrong while sending your email. Please try again.
Registered Users Total Jobs Posted
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759)
Copyright © 2024 Freelancer Technology Pty Limited (ACN 142 189 759)
Loading preview
Permission granted for Geolocation.
Your login session has expired and you have been logged out. Please log in again.