2

I have a large C++ application with a mostly homegrown layer for GUI Abstraction etc. The application is plain C/C++ on Win32 API.

So far the application only supports a static horizontal toolbar which can not be modified in any way at runtime (besides enabling/hoovering visualization). We thought about switching to a ribbon interface but nobody we asked liked that idea.

So we want to add some sort of toolbar with the following capabilities:

  • Movable and resizeable (acting as floating windows/palettes)
  • Use Bitmaps of any Size
  • Supports User configured Toolbars Supports
  • Enabling/Disabling/Checked State
  • Preferably create disabled/checked/hoovering state bitmaps automatically

How can this be done with the least effort?

I looked at rebars and the TOOLBAR API. Rebars seem not to be resizeable and i was unable to find a working sample for toolbars.

1 Answer 1

1

Working sample: here's what I could find: tutorial with link to full example code, part-3 covers toolbars

4
  • Thanks for your effort. But still this one does not seem to support resizing or moving the toolbars. Commented May 31, 2013 at 11:49
  • @REDSOFTADAIR I'll need to spend some time to patch in some code from an old application, I'll get back to you sometime in the week-end Commented May 31, 2013 at 12:18
  • @REDSOFTADAIR I've gone to the oldest sources we have (from the 90's), they still have MFC -- I've also searched around in the Internet a lot, I'm afraid that docking/floating toolbars do need MFC (that sort of makes sense, the dock/float functionality is from the frame window, not the toolbar; I vaguely remember when we switched to MFC that we generated an empty application, added toolbar code to MainFrm.cpp and called our window-proc from the view's WindowProc) Commented Jun 1, 2013 at 7:54
  • Thats exactly what i found: MFC supports additional TOOLBAR Features such as moving and resizing. Plain Win32 seems not to support this. Also WPF seems not to support this. Its not possible in Visual Studio 2010 to move a toolbar. Commented Jun 2, 2013 at 19:00

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.