Internet Explorer control (or other) rendered onto a directdraw surface - c++

I'm tasked with modifying an existing c++ codebase which uses directdraw for its UI. Is it possible to make use of a browser control that renders onto one of the (existing) directdraw surfaces? If so, can anyone point me in the right direction on how to get started? (or an alternative approach)
Regards all,
Jaime

You should have a look at Awesomium.

Related

full screen and zoom in Koolplot

I'm trying to graph some things in C++ and Koolplot seems like a very simple and suitable library to do so with. I'm stuck, however, on finding some documentation about it that allows me to fullscreen the application (or resize it like you can do so on lots of applications, chrome, word, discord...). As well as this, I can't find or see how i can allow the user to drag the graph around with the mouse as well as zooming into a point of a scatterplot or function. If anyone has any ideas about these things i'd appreciate it, thanks.
The short reply is: cannot do.
Koolplot uses for drawings of the charts a modernized version of the venerable BGI driver. It was invented once upon a time, when personal computers were still running on some DOS version. Those times the graphics were full screen, hence of fixed size. This particularity was kept in the modernized WinBGIm library.
Zooming or panning properly a chart present on the screen require access from the drawing/painting routines of Koolplot to the data to be shown. This is not the case. If you look once again in the source code, you will note that in the implementation efforts were made to keep separated data to be plot from the actual drawing on the screen.
In conclusion, to do what you want, you will have to modify WinBGIm such that it manages correctly a drawing surface of variable dimensions and modify koolplot such that data to be shown is owned by (or aggregated with) Plotstream class.

Displaying an OpenGL area within GTK#

I am developing a Mono/GTK# application. I need to have a "visualizer" that will display an opengl drawn area within the GTK# form. The two projects I have found myself don't seem to be maintained anymore,
http://sourceforge.net/projects/gtkglext/
and
http://sourceforge.net/projects/glwidget/
Do you know of any other projects that allow an OpenGL area within GTKSharp?
Alternatively, is there a better way to have an application use both opengl and GTKSharp?
I've never tried to use the GTK# integration, but OpenTK is by far the best OpenGL C# bindings I have ever used in C#. I highly recommend you look into it, and give the GTK# widget a shot.
I agree with Robert. I've been using OpenTK for a while and haven't had any major snags with it. Because of this, I would recommend glwidget.

How to capture desktop on windows so that it would capture both directX and normally rendered parts of screen?

Simple example - on one side we see camera rendered via standard software rendered "Input" on other hand (labeled "Output") rendered via some directX stuff (at least it seems to me) :
So what function is provided by windows api or DirectX api for capturing such mixed scenes?
TightVNC Server can do it, you may want to look into what they are doing. From a simple glance through their source code it looks like they are creating a virtual screen that mirrors the primary screen.
Specifically though, look into the
CreateCompatibleDC and CreateDIBSection API's
As I known, there is not a direct way to capture DirectX render area, although we can see that on the screen. Because the real render action(aka render instruction) happens in hardware layer. So the API in standard SDK cannot know the finally render result, which lead to the black square.
The only way to do this maybe put your hope on the Render layer(such as DirectX engine) itself can support output interface as well as underlying render action. So I suggest to check some documentation to find if there indeed is.
DirectX can present to a limited subsection of the window that you give it, enabling you to create small regions of DX content in larger windows.

How to create this animated arrow?

I have just installed a program on my pc and after that, an animated arrow is appeared on the screen showing me a new element on the bar:
How can I create this animated arrow ? What API do I have to use ?
It can be made with a window that has a custom shape. One of my colleagues documented how to do this in .NET here:
http://www.atalasoft.com/cs/blogs/jake/archive/2008/05/09/beauty-is-only-skin-deep-skinning-your-winforms-application.aspx
http://www.atalasoft.com/cs/blogs/jake/archive/2008/05/19/beauty-is-only-skin-deep-part-deux-if-it-looks-like-a-duck-it-might-be-a-winform.aspx
The same thing can be done in C++ by following the technique
I'm not aware that such a capability is exposed in an API. I expect the app draws it directly which it is of course perfectly entitled to do.

Write directly to screen with c++

Hello I am new to c++ and am wondering where to go about looking to print directly to the screen? For example the HUD interface that appears on laptops when you change the volume. I'm not really looking for any fancy graphics, just, say, a variable or info from a file.
I've tried googling but havn't come up with anything yet. So...where should I begin looking?
Thanks!
Under windows there are a few ways to do it. You could use DirectDraw Overlays (If the system supports them). Or you could create a layered window (WS_EX_LAYERED) and make everything but the bit you want to display transparent.
Pure C++ has only one screen interface, in the library. That's text-oriented. To do graphics, you need another OS-specific interface. So, you'd be looking at the API documentation for your OS.
BTW, the overlay graphics when you change the volume on your laptop are really special, IIRC. They're generated by your laptop itself, using System Management Mode - not the OS itself, and certainly not a program.