void PrintDataObject(WONRoutingDataObject *theObject) { printf("OwnerId: %d\n",theObject->mOwnerId); printf("LinkId: %d\n",theObject->mLinkId); printf("DataType: "); PrintRaw(theObject->mDataType,theObject->mDataTypeLen); printf("Data: "); PrintRaw(theObject->mData,theObject->mDataLen); }
void MyRoutingMessageWithClientIdCallback(WONRoutingMessageWithClientId *theMsg, void *theUserParam) { printf("MessageWithClientId Callback: %s\n",(char*)theUserParam); printf("ClientId: %d\n",theMsg->mClientId); printf("Data: "); PrintRaw(theMsg->mData,theMsg->mDataLen); SetEvent(mEvent); printf("\n"); }
void MyRoutingRawChatMessageCallback(WONRoutingRawChatMessage *theMsg, void *theUserParam) { printf("RawChatMessage Callback: %s\n",(char*)theUserParam); PrintChatMessageBase(&theMsg->mBaseData); printf("Msg: "); PrintRaw(theMsg->mData,theMsg->mDataLen); SetEvent(mEvent); printf("\n"); }
void CTextConsoleWin32::Echo(char *pszMsg, int nChars) { PrintRaw(pszMsg, nChars); }
void CvSqlQueryLowerView::PrintPage(CDC* pDC, int pageNum) { ASSERT (pDC->IsPrinting()); if (!pDC->IsPrinting()) { return; } // Here, printing takes place CdSqlQueryRichEditDoc* pDoc =(CdSqlQueryRichEditDoc*)GetDocument(); ASSERT (pDoc); // Select the printer font CFont* pOldFont = pDC->SelectObject(&m_printerFont); // Recalculate page useable height int pageDataHeight = m_nPageHeight - m_nHeaderHeight - m_nFooterHeight; CPoint pOrig = pDC->GetViewportOrg(); // Set dc viewport origin int xOrg = 0; int yOrg = pageDataHeight * (pageNum - 1); // nth page yOrg -= m_nHeaderHeight; // minus header height pDC->SetViewportOrg(-xOrg, -yOrg); // Select clipping region, taking scaling factor in account int x1 = 0; int x2 = x1 + m_nPageWidth; int y1 = m_nHeaderHeight; int y2 = y1 + pageDataHeight; x1 = x1 >> m_ScalingFactorX; x2 = x2 >> m_ScalingFactorX; y1 = y1 >> m_ScalingFactorY; y2 = y2 >> m_ScalingFactorY; CRgn region; BOOL bSuccess = region.CreateRectRgn(x1, y1, x2, y2); ASSERT (bSuccess); int res = pDC->SelectClipRgn(®ion); ASSERT (res != ERROR); ASSERT (res != NULLREGION); int x=0, y=0; QueryPageDataType pgType = QUERYPAGETYPE_NONE; if (m_pPageData) pgType = m_pPageData->GetQueryPageType(); // Head lines if (pgType == QUERYPAGETYPE_SELECT || pgType == QUERYPAGETYPE_NONSELECT || pgType == QUERYPAGETYPE_QEP) { // Database caption pDC->SelectObject(&m_printerCaptFont); CString csDatabaseCapt(_T("Connected Database:")); pDC->TextOut(x, y, csDatabaseCapt); y += m_nCaptLineHeight; y += m_nCaptLineHeight/2; pDC->SelectObject(&m_printerFont); // Database if (m_pPageData) pDC->TextOut(x, y, m_pPageData->m_strDatabase); else pDC->TextOut(x, y, pDoc->m_strDatabase); y += m_nLineHeight; y += m_nLineHeight; // Extra blank line // Statement caption pDC->SelectObject(&m_printerCaptFont); CString csStatementCapt(_T("SQL Query Text:")); pDC->TextOut(x, y, csStatementCapt); y += m_nCaptLineHeight; y += m_nCaptLineHeight/2; pDC->SelectObject(&m_printerFont); // Statement - only current statement printed CString csFullStatement, csCurrentStatement; if (m_pPageData) { csFullStatement = m_pPageData->m_strStatement; csCurrentStatement = csFullStatement;; } else { csFullStatement = pDoc->m_strStatement; csCurrentStatement = csFullStatement.Mid(pDoc->m_nStart, pDoc->m_nEnd-pDoc->m_nStart); } // pDC->TextOut(x, y, csFullStatement); // y += m_nLineHeight; MultilineTextOut(pDC, x, y, csCurrentStatement, pageDataHeight); // updates y y += m_nLineHeight; // Extra blank line } // following code is according to result type switch (pgType) { case QUERYPAGETYPE_SELECT: PrintSelect(pDC, pageNum, x, y, (CaQuerySelectPageData*)m_pPageData, pageDataHeight); break; case QUERYPAGETYPE_NONSELECT: PrintNonSelect(pDC, pageNum, x, y, (CaQueryNonSelectPageData*)m_pPageData, pageDataHeight); break; case QUERYPAGETYPE_QEP: PrintQep(pDC, pageNum, x, y, (CaQueryQepPageData*)m_pPageData, pageDataHeight); break; case QUERYPAGETYPE_RAW: PrintRaw(pDC, pageNum, x, y, (CaQueryRawPageData*)m_pPageData, pageDataHeight); break; case QUERYPAGETYPE_NONE: //PrintNone(pDC, pageNum, x, y); break; default: ASSERT (FALSE); } // deselect clipping region and delete it res = pDC->SelectClipRgn(NULL, RGN_COPY); ASSERT (res != ERROR); region.DeleteObject(); // Deselect the printer font pDC->SelectObject(pOldFont); // Update number of pages to be printed, rounded up m_nbPrintPage = (y + (pageDataHeight-1) ) / pageDataHeight; pDC->SetViewportOrg(pOrig.x, pOrig.y); }