int TOCEntry::sheetOf(QString pgno) const { QRegExp re("(\\d\\d*)([a-z]?)"); if (!re.exactMatch(pgno)) return -1; int n = re.cap(1).toInt(); QString a = re.cap(2); if (a=="") return n - startPage(); else return n + 1 + a[0].unicode() - 'a' - startPage(); }
void QupZillaSchemeReply::loadPage() { if (m_loaded) return; QTextStream stream(&m_buffer); stream.setCodec("UTF-8"); if (m_pageName == QLatin1String("about")) { stream << aboutPage(); } else if (m_pageName == QLatin1String("reportbug")) { stream << reportbugPage(); } else if (m_pageName == QLatin1String("start")) { stream << startPage(); } else if (m_pageName == QLatin1String("speeddial")) { stream << speeddialPage(); } else if (m_pageName == QLatin1String("config")) { stream << configPage(); } else if (m_pageName == QLatin1String("restore")) { stream << restorePage(); } else if (m_pageName == QLatin1String("adblock")) { stream << adblockPage(); } stream.flush(); m_buffer.reset(); m_loaded = true; }
cTrackingMenu() { setType( 0xFE12ACDE ); startPage( 0 ); addBackground( 0x13BE, 440, 135 ); addResizeGump( 10, 10, 0xA3C, 420, 75 ); addResizeGump( 10, 85, 0xBB8, 420, 25 ); // Animals (0x2101) addTilePic( 20, 20, 0x2101 ); addButton( 20, 110, 0xFA5, 0xFA7, 1 ); addXmfHtmlGump( 20, 90, 100, 20, 0xF88E7 ); // Monster (0x210a) addTilePic( 120, 20, 0x210a ); addButton( 120, 110, 0xFA5, 0xFA7, 2 ); addXmfHtmlGump( 120, 90, 100, 20, 0xF88E8 ); // Humans (0x2106) addTilePic( 220, 20, 0x2106 ); addButton( 220, 110, 0xFA5, 0xFA7, 3 ); addXmfHtmlGump( 220, 90, 100, 20, 0xF88E9 ); // Player (0x2107) addTilePic( 320, 20, 0x2107 ); addButton( 320, 110, 0xFA5, 0xFA7, 4 ); addXmfHtmlGump( 320, 90, 100, 20, 0xF88EA ); }
void add(char ch, int style_) { if (!pageStarted) { startPage(); } // get glyph width (TODO future non-monospace handling) double glyphWidth = fontToPoints(PDFfontWidths[fontSet]); xPos += glyphWidth; // if cannot fit into a line, flush, wrap to next line if (xPos > pageWidth - pageMargin.right) { nextLine(); xPos += glyphWidth; } // if different style, then change to style if (style_ != styleCurrent) { flushSegment(); // output code (if needed) for new style setStyle(segStyle, style_); stylePrev = styleCurrent; styleCurrent = style_; } // escape these characters if (ch == ')' || ch == '(' || ch == '\\') { segment += '\\'; } if (ch != ' ') { justWhiteSpace = false; } segment += ch; // add to segment data }
/** Finishes the current page and adds a new page */ void MReportEngine::newPage( MPageCollection * pages, int levelAddOn ) { // Draw the page footer drawPageFooter( pages ); // Stop the painter p->painter()->end(); // Start a new page startPage( pages, levelAddOn ); }
////////////////// // Do line output. Automatically eject page properly. // int WPLinePrinter::outLine(LPCSTR buf, int len) { if (curLine==0) startPage(); if (buf[0]==CONTROL_L) // do form-feed for Control-L return formFeed(); if (curLine >= nLinesPage) formFeed(); textOut(0, yChar*curLine, buf, len); curLine++; return error(); }
/** Renders the report as a page collection - the caller * is responsible for de-allocating the returned * collection * * copyright : (C) 2002-2008 InfoSiAL S.L. * email : [email protected] * */ MPageCollection * MReportEngine::renderReport( int initRow, int initCol ) { cancelRender = false; csvData_ = ""; p->setStyleName( styleName_ ); // Create the page collection MPageCollection *pages = new MPageCollection; // Initialize the basic page data currHeight = pageHeight - ( bottomMargin + pFooter->getHeight() ); currPage = 0; currDate = QDate::currentDate(); // Initialize the grand total array grandTotal->clear(); for ( int i = 0; i < rFooter->getCalcFieldCount(); i++ ) grandTotal->append( new QMemArray < double > ); // Create the first page startPage( pages ); unsigned int rowCount = records.length(); if ( rowCount <= 1 ) rowCount = 2; uint nRecord = 0; // Draw the details drawDetail( pages, 0, nRecord, initRow, initCol ); // Finish the last page of the report endPage( pages ); // Destroy the page painter p->painter()->end(); // Set the page collection attributes pages->setPageDimensions( QSize( pageWidth, pageHeight ) ); pages->setPageSize( pageSize ); pages->setPageOrientation( pageOrientation ); pages->setPrintToPos( printToPos ); // Send final status emit signalRenderStatus( rowCount / 2 ); return pages; }
void nextLine() { if (!pageStarted) { startPage(); } xPos = pageMargin.left; flushSegment(); // PDF follows cartesian coords, subtract -> down yPos -= leading; double fontDescender = fontToPoints(PDFfontDescenders[fontSet]); if (yPos < pageMargin.bottom + fontDescender) { endPage(); startPage(); return; } if (firstLine) { // avoid breakage due to locale setting int f = (int)(leading * 10 + 0.5); sprintf(buffer, "0 -%d.%d TD\n", f / 10, f % 10); firstLine = false; } else { sprintf(buffer, "T*\n"); } pageData += buffer; }
int HPCupsFilter::processRasterData(cups_raster_t *cups_raster) { FILE *kfp = NULL; FILE *cfp = NULL; BYTE *kRaster = NULL; BYTE *rgbRaster = NULL; int current_page_number = 0; cups_page_header2_t cups_header; DRIVER_ERROR err; int ret_status = 0; char hpPreProcessedRasterFile[MAX_FILE_PATH_LEN]; //temp file needed to store raster data with swaped pages. sprintf(hpPreProcessedRasterFile, "%s/hp_%s_cups_SwapedPagesXXXXXX",CUPS_TMP_DIR, m_JA.user_name); while (cupsRasterReadHeader2(cups_raster, &cups_header)) { current_page_number++; if (current_page_number == 1) { if (startPage(&cups_header) != NO_ERROR) { return JOB_CANCELED; } if (m_JA.pre_process_raster) { // CC ToDo: Why pSwapedPagesFileName should be sent as a parameter? // Remove if not required to send it as parameter err = m_Job.preProcessRasterData(&cups_raster, &cups_header, hpPreProcessedRasterFile); if (err != NO_ERROR) { if (m_iLogLevel & BASIC_LOG) { dbglog ("DEBUG: Job::StartPage failed with err = %d\n", err); } ret_status = JOB_CANCELED; break; } } if (cups_header.cupsColorSpace == CUPS_CSPACE_RGBW) { rgbRaster = new BYTE[cups_header.cupsWidth * 3]; if (rgbRaster == NULL) { return ALLOCMEM_ERROR; } kRaster = new BYTE[cups_header.cupsWidth]; if (kRaster == NULL) { delete [] rgbRaster; return ALLOCMEM_ERROR; } memset (kRaster, 0, cups_header.cupsWidth); memset (rgbRaster, 0xFF, cups_header.cupsWidth * 3); } } // end of if(current_page_number == 1) if (cups_header.cupsColorSpace == CUPS_CSPACE_K) { kRaster = m_pPrinterBuffer; rgbRaster = NULL; } else if (cups_header.cupsColorSpace != CUPS_CSPACE_RGBW) { rgbRaster = m_pPrinterBuffer; kRaster = NULL; } BYTE *color_raster = NULL; BYTE *black_raster = NULL; err = m_Job.StartPage(&m_JA); if (err != NO_ERROR) { if (m_iLogLevel & BASIC_LOG) { dbglog ("DEBUG: Job::StartPage failed with err = %d\n", err); } ret_status = JOB_CANCELED; break; } // Save Raster file for Debugging if (m_iLogLevel & SAVE_INPUT_RASTERS) { char szFileName[MAX_FILE_PATH_LEN]; memset(szFileName, 0, sizeof(szFileName)); if (cups_header.cupsColorSpace == CUPS_CSPACE_RGBW || cups_header.cupsColorSpace == CUPS_CSPACE_RGB) { snprintf (szFileName, sizeof(szFileName), "%s/hpcups_%s_c_bmp_%d_XXXXXX", CUPS_TMP_DIR, m_JA.user_name, current_page_number); createTempFile(szFileName, &cfp); if (cfp) { chmod (szFileName, S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH); } } if (cups_header.cupsColorSpace == CUPS_CSPACE_RGBW || cups_header.cupsColorSpace == CUPS_CSPACE_K) { snprintf (szFileName, sizeof(szFileName), "%s/hpcups_%s_k_bmp_%d_XXXXXX", CUPS_TMP_DIR, m_JA.user_name, current_page_number); createTempFile(szFileName, &kfp); if (kfp) { chmod (szFileName, S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH); } } WriteBMPHeader (cfp, cups_header.cupsWidth, cups_header.cupsHeight, COLOR_RASTER); WriteBMPHeader (kfp, cups_header.cupsWidth, cups_header.cupsHeight, BLACK_RASTER); } fprintf(stderr, "PAGE: %d %s\r\n", current_page_number, m_argv[4]); // Iterating through the raster per page bool is_ljmono = strcmp(m_JA.printer_language, "ljmono"); for (int y = 0; y < (int) cups_header.cupsHeight; y++) { cupsRasterReadPixels (cups_raster, m_pPrinterBuffer, cups_header.cupsBytesPerLine); color_raster = rgbRaster; black_raster = kRaster; if ((y == 0) && !is_ljmono) { //For ljmono, make sure that first line is not a blankRaster line.Otherwise printer //may not skip blank lines before actual data //Need to revisit to cross check if it is a firmware issue. *m_pPrinterBuffer = 0x01; dbglog("First raster data plane..\n" ); } if (this->isBlankRaster((BYTE *) m_pPrinterBuffer, &cups_header)) { color_raster = NULL; black_raster = NULL; } extractBlackPixels(&cups_header, black_raster, color_raster); //! Sending Raster bits off to encapsulation err = m_Job.SendRasters (black_raster, color_raster); if (err != NO_ERROR) { break; } if (m_iLogLevel & SAVE_INPUT_RASTERS) { WriteBMPRaster (cfp, color_raster, cups_header.cupsWidth, COLOR_RASTER); WriteBMPRaster (kfp, black_raster, cups_header.cupsWidth/8, BLACK_RASTER); } } // for() loop end m_Job.NewPage(); if (err != NO_ERROR) { break; } } // while() loop end //! Remove the old processing band data... if (cups_header.cupsColorSpace == CUPS_CSPACE_RGBW) { delete [] kRaster; delete [] rgbRaster; kRaster = NULL; rgbRaster = NULL; } unlink(hpPreProcessedRasterFile); return ret_status; }
/** Renders the report as a page collection - the caller * is responsible for de-allocating the returned * collection * * copyright : (C) 2002-2008 InfoSiAL S.L. * email : [email protected] * */ MPageCollection *MReportEngine::renderReport(int initRow, int initCol, MPageCollection *pages, uint flags) { fillRecords_ = flags & MReportEngine::FillRecords; bool pageBreak = flags & MReportEngine::PageBreak; bool append = flags & MReportEngine::Append; cancelRender = false; currRecord_ = 0; csvData_ = QString::null; p->setStyleName(styleName_); // Create the page collection QPicture *currentPage = 0; QPicture *currentPageCopy = 0; bool lastPageFound = false; if (pages == 0) { pages = new MPageCollection(this); currPage = 0; } else { if (append && !pageBreak) { currX = leftMargin ; lastPageFound = true; currentPage = pages->getLastPage(); p->painter()->end(); currentPageCopy = new QPicture(*currentPage); p->painter()->begin(currentPage); currentPageCopy->play(p->painter()); delete currentPageCopy; } } // Initialize the basic page data currHeight = pageHeight - (bottomMargin + pFooter->getHeight()); currDate = QDate::currentDate(); // Initialize the grand total array clearGrantTotals(); for (int i = 0; i < rFooter->getCalcFieldCount(); i++) grandTotal->append(new QMemArray<double>); // Create the first page if (!lastPageFound) startPage(pages); unsigned int rowCount = records.length(); if (rowCount <= 1) rowCount = 2; uint nRecord = 0; // Draw the details drawDetail(pages, 0, nRecord, initRow, initCol); // Finish the last page of the report endPage(pages); // Destroy the page painter p->painter()->end(); // Set the page collection attributes pages->setPageDimensions(QSize(pageWidth, pageHeight)); pages->setPageSize(pageSize); pages->setPageOrientation(pageOrientation); pages->setPrintToPos(printToPos); fillRecords_ = false; // Send final status emit signalRenderStatus(rowCount / 2); return pages; }
bool TOCEntry::contains(int pgno) const { return pgno >= startPage() && pgno < startPage() + sheetCount(); }
int main() { startPage(); startPage_button_scan(); return 0; }
int HPCupsFilter::processRasterData(cups_raster_t *cups_raster) { FILE *kfp = NULL; FILE *cfp = NULL; BYTE *kRaster = NULL; BYTE *rgbRaster = NULL; int current_page_number = 0; cups_page_header2_t cups_header; DRIVER_ERROR err; int ret_status = 0; char hpPreProcessedRasterFile[] = "/tmp/hplipSwapedPagesXXXXXX"; //temp file needed to store raster data with swaped pages. while (cupsRasterReadHeader2(cups_raster, &cups_header)) { current_page_number++; if (current_page_number == 1) { if (startPage(&cups_header) != NO_ERROR) { return JOB_CANCELED; } if(m_JA.pre_process_raster) { err = m_Job.preProcessRasterData(&cups_raster, &cups_header, hpPreProcessedRasterFile); if (err != NO_ERROR) { if (m_iLogLevel & BASIC_LOG) { dbglog ("DEBUG: Job::StartPage failed with err = %d\n", err); } ret_status = JOB_CANCELED; break; } } if (cups_header.cupsColorSpace == CUPS_CSPACE_RGBW) { rgbRaster = new BYTE[cups_header.cupsWidth * 3]; if (rgbRaster == NULL) { return ALLOCMEM_ERROR; } kRaster = new BYTE[cups_header.cupsWidth]; if (kRaster == NULL) { delete [] rgbRaster; return ALLOCMEM_ERROR; } memset (kRaster, 0, cups_header.cupsWidth); memset (rgbRaster, 0xFF, cups_header.cupsWidth * 3); } } // current_page_number == 1 if (cups_header.cupsColorSpace == CUPS_CSPACE_K) { kRaster = m_pPrinterBuffer; rgbRaster = NULL; } else if (cups_header.cupsColorSpace != CUPS_CSPACE_RGBW) { rgbRaster = m_pPrinterBuffer; kRaster = NULL; } BYTE *color_raster = NULL; BYTE *black_raster = NULL; err = m_Job.StartPage(&m_JA); if (err != NO_ERROR) { if (m_iLogLevel & BASIC_LOG) { dbglog ("DEBUG: Job::StartPage failed with err = %d\n", err); } ret_status = JOB_CANCELED; break; } if (m_iLogLevel & SAVE_INPUT_RASTERS) { char szFileName[32]; memset(szFileName, 0, sizeof(szFileName)); snprintf (szFileName, sizeof(szFileName), "/tmp/hpcupsfilterc_%d.bmp", current_page_number); if (cups_header.cupsColorSpace == CUPS_CSPACE_RGBW || cups_header.cupsColorSpace == CUPS_CSPACE_RGB) { cfp = fopen (szFileName, "w"); chmod (szFileName, S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH); } if (cups_header.cupsColorSpace == CUPS_CSPACE_RGBW || cups_header.cupsColorSpace == CUPS_CSPACE_K) { szFileName[17] = 'k'; kfp = fopen (szFileName, "w"); chmod (szFileName, S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH); } WriteBMPHeader (cfp, cups_header.cupsWidth, cups_header.cupsHeight, COLOR_RASTER); WriteBMPHeader (kfp, cups_header.cupsWidth, cups_header.cupsHeight, BLACK_RASTER); } fprintf(stderr, "PAGE: %d %s\r\n", current_page_number, m_argv[4]); // Iterating through the raster per page for (int y = 0; y < (int) cups_header.cupsHeight; y++) { cupsRasterReadPixels (cups_raster, m_pPrinterBuffer, cups_header.cupsBytesPerLine); color_raster = rgbRaster; black_raster = kRaster; if(y == 0 && (0 == strcmp(m_JA.printer_language, "ljmono")) ) { //For ljmono, make sure that first line is not a blankRaster line.Otherwise printer //may not skip blank lines before actual data //Need to revisit to crosscheck if it is a firmware issue. *m_pPrinterBuffer = 0x01; dbglog("First raster data plane.." ); } if (this->isBlankRaster((BYTE *) m_pPrinterBuffer, &cups_header)) { color_raster = NULL; black_raster = NULL; } extractBlackPixels(&cups_header, black_raster, color_raster); //! Sending Raster bits off to encapsulation err = m_Job.SendRasters (black_raster, color_raster); if (err != NO_ERROR) { break; } WriteBMPRaster (cfp, color_raster, cups_header.cupsWidth, COLOR_RASTER); WriteBMPRaster (kfp, black_raster, cups_header.cupsWidth/8, BLACK_RASTER); } m_Job.NewPage(); if (err != NO_ERROR) { break; } } //! Remove the old processing band data... if (cups_header.cupsColorSpace == CUPS_CSPACE_RGBW) { delete [] kRaster; delete [] rgbRaster; } unlink(hpPreProcessedRasterFile); return ret_status; }
cTrackingList( P_CHAR player, UINT8 type ) { setType( 0xFE12ACDE ); startPage( 0 ); addBackground( 0x13BE, 440, 160 ); addResizeGump( 10, 10, 0xA3C, 420, 75 ); addResizeGump( 10, 85, 0xBB8, 420, 50 ); UINT32 pCount = 0; UINT32 pAmount = 0; // 1: Animals // 2: Monsters // 3: Humans // 4: Players cCharSectorIterator *iter = SectorMaps::instance()->findChars( player->pos(), 18 ); for( P_CHAR pChar = iter->first(); pChar; pChar = iter->next() ) { // Do the neccesary checks bool passed = true; switch( type ) { // Animals case 1: passed = !( pChar->objectType() != enNPC || pChar->body() == 0x190 || pChar->body() == 0x191 ); //|| pChar->npcaitype() == 2 ); break; // Monsters case 2: passed = !( pChar->objectType() != enNPC || pChar->body() == 0x190 || pChar->body() == 0x191 ); //|| pChar->npcaitype() != 2 ); break; // Human case 3: passed = !( pChar->objectType() != enNPC || ( pChar->body() != 0x190 && pChar->body() != 0x191 ) ); break; case 4: passed = ( pChar->objectType() == enPlayer && dynamic_cast<P_PLAYER>(pChar)->socket() ); break; }; if( !passed ) continue; // Checks passed, add the character if( pAmount == 0 ) // Start new page { // Add a button on the old page if( pCount > 0 ) { addPageButton( 395, 137, 0x26af, 0x26b1, pCount ); } startPage( ++pCount ); // Add a button on the new page if( pCount > 1 ) { addPageButton( 365, 137, 0x26b5, 0x26b7, pCount-1 ); } } cCharBaseDef *def = BaseDefManager::instance()->getCharBaseDef( pChar->body() ); if( def && def->shrinked() != 0 ) addTilePic( (pAmount*100)+20, 20, def->shrinked() ); addButton( (pAmount*100)+20, 110, 0xFA5, 0xFA7, pChar->serial() ); addCroppedText( (pAmount*100)+20, 90, 100, 40, pChar->name() ); ++pAmount; } delete iter; }
JNIEXPORT jboolean JNICALL Java_org_apache_harmony_x_print_PSInterpreter_startPage (JNIEnv *env, jclass owner, jint serviceID) { return (jboolean)startPage((int)serviceID); }