⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dcmemory.cpp

📁 很牛的GUI源码wxWidgets-2.8.0.zip 可在多种平台下运行.
💻 CPP
字号:
/////////////////////////////////////////////////////////////////////////////// Name:        src/mac/classic/dcmemory.cpp// Purpose:     wxMemoryDC class// Author:      Stefan Csomor// Modified by:// Created:     01/02/97// RCS-ID:      $Id: dcmemory.cpp,v 1.6 2006/10/13 18:47:58 RD Exp $// Copyright:   (c) Stefan Csomor// Licence:     wxWindows licence/////////////////////////////////////////////////////////////////////////////#include "wx/wxprec.h"#include "wx/dcmemory.h"#include "wx/mac/private.h"//-----------------------------------------------------------------------------// wxMemoryDC//-----------------------------------------------------------------------------IMPLEMENT_DYNAMIC_CLASS(wxMemoryDC,wxPaintDC)wxMemoryDC::wxMemoryDC( const wxBitmap& bitmap )          : m_selected(){    m_ok = true;    SetBackground(*wxWHITE_BRUSH);    SetBrush(*wxWHITE_BRUSH);    SetPen(*wxBLACK_PEN);    m_ok = false;    if ( bitmap.IsOk() )        SelectObject(bitmap);};wxMemoryDC::wxMemoryDC( wxDC *WXUNUSED(dc) )          : m_selected(){    m_ok = true;    SetBackground(*wxWHITE_BRUSH);    SetBrush(*wxWHITE_BRUSH);    SetPen(*wxBLACK_PEN);    m_ok = false;};wxMemoryDC::~wxMemoryDC(){    if ( m_selected.Ok() )    {        UnlockPixels( GetGWorldPixMap(MAC_WXHBITMAP(m_selected.GetHBITMAP())) );    }};void wxMemoryDC::SelectObject( const wxBitmap& bitmap ){    if ( m_selected.Ok() )    {        UnlockPixels( GetGWorldPixMap(MAC_WXHBITMAP(m_selected.GetHBITMAP())) );    }    m_selected = bitmap;    if (m_selected.Ok())    {        if ( m_selected.GetHBITMAP() )        {            m_macPort = (GrafPtr) m_selected.GetHBITMAP() ;            LockPixels( GetGWorldPixMap(  (CGrafPtr)  m_macPort ) ) ;            wxMask * mask = bitmap.GetMask() ;            if ( mask )            {                m_macMask = mask->GetMaskBitmap() ;            }            SetRectRgn( (RgnHandle) m_macBoundaryClipRgn , 0 , 0 , m_selected.GetWidth() , m_selected.GetHeight() ) ;            CopyRgn( (RgnHandle) m_macBoundaryClipRgn ,(RgnHandle)  m_macCurrentClipRgn ) ;            m_ok = true ;        }        else        {            m_ok = false;        }    }    else    {        m_ok = false;    }}void wxMemoryDC::DoGetSize( int *width, int *height ) const{    if (m_selected.Ok())    {        if (width) (*width) = m_selected.GetWidth();        if (height) (*height) = m_selected.GetHeight();    }    else    {        if (width) (*width) = 0;        if (height) (*height) = 0;    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -