a „oeCã@sªddlZddlZddlZddlmZddlmZmZmZdZ dZ Gdd„dej ƒZ Gdd „d ej ƒZGd d „d ejƒZGd d „d ejƒZedkr dd„ZeƒneƒZdS)éN)Úapp)ÚafxresÚdialogÚdocviewiiòc@seZdZdd„ZdS)ÚPrintDemoTemplatecCsdS©N©©ÚselfrrúFC:\Program Files\Certbot\pkgs\pythonwin\pywin\Demos\app\customprint.pyÚ_SetupSharedMenu_sz#PrintDemoTemplate._SetupSharedMenu_N)Ú__name__Ú __module__Ú __qualname__r rrrr rsrc@sTeZdZdd„Zdd„Zdd„Zdd„Zd d „Zd d „Zd d„Z dd„Z dd„Z dS)Ú PrintDemoViewcCsŒ|j ¡}ddddddddœ|_i|_|j ¡D]\}}t tjd |¡|j|<q0d|_ d |_ |  |j ¡|  |j tj¡|  |jtj¡|S) Nréÿiÿiÿiÿÿiÿÿiÿÿ)ZBlackZRedZGreenZBlueZCyanZMagentaZYellowé)é€r)Ú_obj_ÚOnInitialUpdateÚcolorsÚpensÚitemsÚwin32uiZ CreatePenÚwin32conZPS_SOLIDZpenÚsizeZSetScaleToFitSizeZ HookCommandÚ OnFilePrintrZ ID_FILE_PRINTÚOnFilePrintPreviewZID_FILE_PRINT_PREVIEW)r ÚretÚnameÚcolorrrr rs$ ù  zPrintDemoView.OnInitialUpdatecCsìd}|j\}}d}t|j ¡ƒ}| ¡|d}|D]¨}|durR| |j|¡}n| |j|¡| ||f¡| |||f¡| ||||f¡| |||f¡| ||f¡|d}||dksØ||dkr4qÞq4| |¡dS)Néér) rÚlistrÚkeysÚsortZ SelectObjectrÚMoveToÚLineTo)r ÚdcZoldPenÚxÚyZdeltarr rrr ÚOnDraw-s& zPrintDemoView.OnDrawcCsN| ¡rJ|jd}| tj¡| d¡| d¡| d¡| ||f¡dS)NÚmag)rr)ér-) Z IsPrintingÚprtDlgZ SetMapModerZMM_ANISOTROPICÚ SetWindowOrgZ SetWindowExtZSetViewportOrgZSetViewportExt)r r(ÚpInfor,rrr Ú OnPrepareDCCs     zPrintDemoView.OnPrepareDCcCshtjtjBtjBtjB}t|t|ƒ|_| |j¡|  d¡|  d¡|  d¡|  d¡|  |¡}|S)Nr-)rÚPD_USEDEVMODECOPIESZ PD_PAGENUMSZ PD_NOPAGENUMSZPD_NOSELECTIONÚImagePrintDialogÚ PRINTDLGORDr.ZSetPrintDialogZ SetMinPageZ SetMaxPageZ SetFromPageZ SetToPageZDoPreparePrinting)r r0Úflagsrrrr ÚOnPreparePrintingLs ÿþýÿ      zPrintDemoView.OnPreparePrintingcCs|j ||¡Sr)rÚOnBeginPrinting©r r(r0rrr r7\szPrintDemoView.OnBeginPrintingcCs|`|j ||¡Sr)r.rÚ OnEndPrintingr8rrr r9_szPrintDemoView.OnEndPrintingcGs|j ¡dSr)rr©r Úargrrr rcsz PrintDemoView.OnFilePrintPreviewcGs|j ¡dSr)rrr:rrr rfszPrintDemoView.OnFilePrintcCs4| ¡}| ¡}|d}|d}| ¡\}}} } | dd|| ¡¡|d|d}| ||¡| | |¡||}| ||| | f¡| d| f¡|  |¡|  t j t j B¡| ¡} | | ¡} | d| d} | d|| | f¡| |d¡| | d¡d} d|d}| | || ¡¡||}dS)NZtmAveCharWidthZtmHeightrr!éér-)Z GetDocumentZGetTextMetricsZGetDrawZTextOutZGetTitler&r'ZSetDrawr/r+Z SetTextAlignrZTA_LEFTZ TA_BOTTOMZ GetWindowRectZScreenToClient)r r(r0ÚdocZmetricsZcxCharZcyCharÚleftÚtopÚrightZbottomZrectZheightr)r*rrr ÚOnPrintis0       zPrintDemoView.OnPrintN) r rrrr+r1r6r7r9rrrBrrrr rs rc@seZdZdd„Zdd„ZdS)Ú PrintDemoAppcCstj |¡dSr)rÚCAppÚ__init__r rrr rE‹szPrintDemoApp.__init__cCsBtdddtƒ}| |¡|j ¡| ¡| d¡}| d¡dS)NzCustom Print Document)rrZAddDocTemplaterZInitMDIInstanceZ LoadMainFrameÚOpenDocumentFileZSetTitle)r Útemplater>rrr Ú InitInstanceŽs    zPrintDemoApp.InitInstanceN)r rrrErHrrrr rCŠsrCc@s.eZdZdZejfdd„Zdd„Zdd„ZdS) r3zImage Print DemocCsLtjj||||dt |jdd¡}|dkr@d}t |jd|¡||d<dS)N)r5úDocument Magnificationrr!r,)rÚ PrintDialogrErZ GetProfileValÚ sectionPosÚWriteProfileVal)r r0ZdlgIDr5r,rrr rEšs zImagePrintDialog.__init__cCs,| t¡|_|j t|dƒ¡tj |¡S)Nr,)Z GetDlgItemÚIDC_PRINT_MAG_EDITÚmagCtlZ SetWindowTextÚreprrrJÚ OnInitDialogr rrr rP£s zImagePrintDialog.OnInitDialogcCsLtj |¡|j ¡}zt|ƒ|d<Wn Yn0t |jd|d¡dS)Nr,rI) rrJÚOnOKrNZ GetWindowTextÚintrrLrK)r ZstrMagrrr rQ¨s  zImagePrintDialog.OnOKN) r rrrKrr2rErPrQrrrr r3—s r3Ú__main__cCstdddtƒ}| d¡dSr)rrrF)rGrrr Útest´srT)Zwin32apirrZpywin.frameworkrZ pywin.mfcrrrr4rMZ DocTemplaterZ ScrollViewrrDrCrJr3r rTrrrr Ús s