Book Image

C++ Windows Programming

By : Stefan Björnander
Book Image

C++ Windows Programming

By: Stefan Björnander

Overview of this book

It is critical that modern developers have the right tools to build practical, user-friendly, and efficient applications in order to compete in today’s market. Through hands-on guidance, this book illustrates and demonstrates C++ best practices and the Small Windows object-oriented class library to ease your development of interactive Windows applications. Begin with a focus on high level application development using Small Windows. Learn how to build four real-world applications which focus on the general problems faced when developing graphical applications. Get essential troubleshooting guidance on drawing, spreadsheet, and word processing applications. Finally finish up with a deep dive into the workings of the Small Windows class library, which will give you all the insights you need to build your own object-oriented class library in C++.
Table of Contents (22 chapters)
C++ Windows Programming
Credits
About the Author
About the Reviewer
www.PacktPub.com
Dedication
Preface
Free Chapter
1
Introduction

The Graphics class


The Graphics class is a wrapper class for a device context. It also provides functionality for drawing lines, rectangles, and ellipses; writing text; saving and restoring graphic states; setting the origin of the device context; and clipping the painting area. The constructor is private since Graphics objects are intended to be created internally by Small Windows only.

Graphics.h

namespace SmallWindows { 

When drawing a line, it can be solid, dashed, dotted, dashed and dotted, as well as dashed and double-dotted:

  class Window; 
  enum PenStyle {Solid = PS_SOLID, Dash = PS_DASH, Dot = PS_DOT, 
                 DashDot = PS_DASHDOT, DashDotDot =PS_DASHDOTDOT};
  class Graphics { 
    private: 
      Graphics(Window* windowPtr, HDC deviceContextHandle); 

The Save method saves the current state of the Graphics object and Restore restores it:

    public: 
      int Save(); 
      void Restore(int saveId); 

The SetOrigin method...