int main(){ exception e; int i = 0,t,result,len,count=0; UCSChar *tmpStr = NULL; UByte* xml = "<root>good</root>"; VTDGen *vg = NULL; VTDNav *vn = NULL; Try{ vg = createVTDGen(); setDoc(vg,xml,strlen(xml)); parse(vg,TRUE); vn = getNav(vg); i = getText(vn); tmpStr = toString(vn,i); wprintf(L" text value is %s\n",tmpStr); free(tmpStr); len=strlen("bad"); overWrite(vn,i,"bad",0,len); tmpStr = toString(vg,i); wprintf(L" text value is %s\n",tmpStr); free(tmpStr); // remember C has no automatic garbage collector // needs to deallocate manually. freeVTDNav(vn); freeVTDGen(vg); } Catch (e) { // manual garbage collection here freeVTDGen(vg); } return 0; }
void AP_Win32Dialog_Styles::runModal(XAP_Frame * pFrame) { UT_return_if_fail (pFrame); // // Get View and Document pointers. Place them in member variables // setFrame(pFrame); setView((FV_View *) pFrame->getCurrentView()); UT_return_if_fail (getView()); setDoc(getView()->getLayout()->getDocument()); UT_return_if_fail (getDoc()); // raise the dialog _win32Dialog.runModal(pFrame, AP_DIALOG_ID_STYLES, AP_RID_DIALOG_STYLES_TOP, this); if (m_answer == AP_Dialog_Styles::a_OK) { const char* szStyle = getCurrentStyle(); if (szStyle) { getDoc()->updateDocForStyleChange(szStyle, true); getView()->getCurrentBlock()->setNeedsRedraw(); getDoc()->signalListeners(PD_SIGNAL_UPDATE_LAYOUT); } } }
AlignDistributePalette::AlignDistributePalette( QWidget* parent, const char* name) : ScDockPalette( parent, name, 0 ) { setupUi(this); setSizePolicy( QSizePolicy(QSizePolicy::Minimum, QSizePolicy::Minimum)); currDoc=NULL; guideDirection=-1; setObjectName(name); //hide spare controls toolButtonDummy1->hide(); toolButtonDummy2->hide(); //set up scrspinboxes distributeDistSpinBox->setValues(-1000.0, 1000.0, 2, 0.0); // buddies alignRelativeToLabel->setBuddy( alignRelativeToCombo ); alignGuideLabel->setBuddy( alignGuideLineEdit ); distributeDistLabel->setBuddy( distributeDistSpinBox ); resize( QSize(100, 100).expandedTo(minimumSizeHint()) ); languageChange(); init(); setDoc(NULL); }
void PropertyWidget_OptMargins::setCurrentItem(PageItem *item) { if (!m_ScMW || m_ScMW->scriptIsRunning()) return; //CB We shouldnt really need to process this if our item is the same one //maybe we do if the item has been changed by scripter.. but that should probably //set some status if so. //FIXME: This wont work until when a canvas deselect happens, m_item must be NULL. //if (m_item == i) // return; if (item && m_doc.isNull()) setDoc(item->doc()); m_item = item; disconnectSignals(); configureWidgets(); if (m_item) { if (m_item->asTextFrame() || m_item->asPathText()) { ParagraphStyle parStyle = m_item->itemText.defaultStyle(); if (m_doc->appMode == modeEdit) m_item->currentTextProps(parStyle); displayOpticalMargins(parStyle); } connectSignals(); } }
KVocTrainTable::KVocTrainTable(kvoctrainDoc *doc, const LangSet *ls, QWidget *parent, const char *name) : QTable(parent, name), langs(ls) { m_doc = doc; defaultItem = 0; setNumCols(m_doc->numLangs()); setNumRows(m_doc->numEntries()); setLeftMargin(0); setSelectionMode(MultiRow); setColumnMovingEnabled(false); setRowMovingEnabled(false); setSorting(false); setDoc(m_doc); triggerSect = -1; m_pixInQuery = QPixmap(KGlobal::iconLoader()->loadIcon("ok", KIcon::Small)); m_pixInactive = QPixmap(KGlobal::iconLoader()->loadIcon("no", KIcon::Small)); delayTimer = new QTimer(this); connect(delayTimer, SIGNAL(timeout()), this, SLOT(menuTriggerTimeout())); QHeader *header = horizontalHeader(); connect(header, SIGNAL(pressed(int)), this, SLOT(headerPressEvent(int))); connect(header, SIGNAL(released(int)), this, SLOT(headerReleaseEvent(int))); connect(this, SIGNAL(currentChanged(int, int)), this, SLOT(slotCurrentChanged(int, int))); }
void PropertyWidget_PathText::setCurrentItem(PageItem *item) { if (!m_ScMW || m_ScMW->scriptIsRunning()) return; //CB We shouldnt really need to process this if our item is the same one //maybe we do if the item has been changed by scripter.. but that should probably //set some status if so. //FIXME: This wont work until when a canvas deselect happens, m_item must be NULL. //if (m_item == i) // return; if (item && m_doc.isNull()) setDoc(item->doc()); m_item = item; disconnectSignals(); configureWidgets(); if (m_item) { if (m_item->asPathText()) { pathTextType->setCurrentIndex(m_item->textPathType); flippedPathText->setChecked(m_item->textPathFlipped); showCurveCheckBox->setChecked(m_item->PoShow); distFromCurve->setValue(m_item->BaseOffs * -1); startOffset->setValue(m_item->textToFrameDistLeft()); } connectSignals(); } }
void PropertyWidget_Distance::setCurrentItem(PageItem *item) { if (!m_ScMW || m_ScMW->scriptIsRunning()) return; //CB We shouldn't really need to process this if our item is the same one //maybe we do if the item has been changed by scripter.. but that should probably //set some status if so. //FIXME: This won't work until when a canvas deselect happens, m_item must be NULL. //if (m_item == i) // return; if (item && m_doc.isNull()) setDoc(item->doc()); m_item = item; disconnectSignals(); configureWidgets(); if (!m_item) return; PageItem_TextFrame *textItem = m_item->asTextFrame(); if (m_doc->appMode == modeEditTable) textItem = m_item->asTable()->activeCell().textFrame(); if (!textItem) return; columns->setMaximum(qMax(qRound(textItem->width() / qMax(textItem->ColGap, 10.0)), 1)); columns->setMinimum(1); columns->setValue(textItem->Cols); columnGap->setMinimum(0); if (columnGapLabel->currentIndex() == 0) { columnGap->setMaximum(qMax((textItem->width() / textItem->Cols - textItem->textToFrameDistLeft() - textItem->textToFrameDistRight()) * m_unitRatio, 0.0)); columnGap->setValue(textItem->ColGap*m_unitRatio); } else { columnGap->setMaximum(qMax((textItem->width() / textItem->Cols) * m_unitRatio, 0.0)); columnGap->setValue(textItem->columnWidth() * m_unitRatio); } leftDistance->setValue(textItem->textToFrameDistLeft()*m_unitRatio); topDistance->setValue(textItem->textToFrameDistTop()*m_unitRatio); bottomDistance->setValue(textItem->textToFrameDistBottom()*m_unitRatio); rightDistance->setValue(textItem->textToFrameDistRight()*m_unitRatio); if (columns->value() == 1) { columnGap->setEnabled(false); columnGapLabel->setEnabled(false); } else { columnGap->setEnabled(true); columnGapLabel->setEnabled(true); } showTextDistances(textItem->textToFrameDistLeft(), textItem->textToFrameDistTop(), textItem->textToFrameDistBottom(), textItem->textToFrameDistRight()); verticalAlign->setCurrentIndex(textItem->verticalAlignment()); connectSignals(); }
void PropertyWidget_ParEffect::handleUpdateRequest(int updateFlags) { if (updateFlags & reqCharStylesUpdate) updateCharStyles(); if (updateFlags & reqStyleComboDocUpdate) setDoc(m_doc ? m_doc : 0); if (updateFlags & reqNumUpdate) fillNumerationsCombo(); }
void CharSelect::setEnabled(bool state, PageItem* item) { ScrPaletteBase::setEnabled(state); m_Item = item; if (state) setDoc(m_doc); if (m_enhanced) m_enhanced->setEnabled(state); }
void PropertiesPalette_Text::setCurrentItem(PageItem *i) { if (!m_ScMW || m_ScMW->scriptIsRunning()) return; //CB We shouldn't really need to process this if our item is the same one //maybe we do if the item has been changed by scripter.. but that should probably //set some status if so. //FIXME: This won't work until when a canvas deselect happens, m_item must be NULL. //if (m_item == i) // return; if (!m_doc) setDoc(i->doc()); m_haveItem = false; m_item = i; showFirstLinePolicy(m_item->firstLineOffset()); if ((m_item->isGroup()) && (!m_item->isSingleSel)) { setEnabled(false); } m_haveItem = true; if (!sender()) { colorWidgets->handleSelectionChanged(); distanceWidgets->handleSelectionChanged(); parEffectWidgets->handleSelectionChanged(); } if (m_item->asTextFrame() || m_item->asPathText() || m_item->asTable()) { ParagraphStyle parStyle = m_item->itemText.defaultStyle(); if (m_doc->appMode == modeEdit || m_doc->appMode == modeEditTable) m_item->currentTextProps(parStyle); updateStyle(parStyle); } if (m_item->asOSGFrame()) { setEnabled(false); } if (m_item->asSymbolFrame()) { setEnabled(false); } }
void PropertyWidget_TextColor::setCurrentItem(PageItem *item) { if (!m_ScMW || m_ScMW->scriptIsRunning()) return; //CB We shouldnt really need to process this if our item is the same one //maybe we do if the item has been changed by scripter.. but that should probably //set some status if so. //FIXME: This wont work until when a canvas deselect happens, m_item must be NULL. //if (m_item == i) // return; disconnectSignals(); m_item = item; if (item && m_doc.isNull()) setDoc(item->doc()); configureWidgets(); if (m_item == NULL) return; if (!m_item->isTable() && !m_item->isTextFrame()) return; PageItem_TextFrame *i2; if (m_doc->appMode == modeEditTable) i2 = m_item->asTable()->activeCell().textFrame(); else i2 = m_item->asTextFrame(); if (i2 != 0) revertButton->setChecked(i2->reversed()); if (m_item->asTextFrame() || m_item->asPathText() || m_item->asTable()) { ParagraphStyle parStyle = m_item->itemText.defaultStyle(); if (m_doc->appMode == modeEdit) m_item->currentTextProps(parStyle); else if (m_doc->appMode == modeEditTable) m_item->asTable()->activeCell().textFrame()->currentTextProps(parStyle); updateStyle(parStyle); } connectSignals(); }
void PropertyWidget_ParEffect::setCurrentItem(PageItem *item) { if (item && m_doc.isNull()) setDoc(item->doc()); m_item = item; disconnectSignals(); if (!m_item) return; if (m_item->asTextFrame() || m_item->asPathText() || m_item->asTable()) { configureWidgets(); ParagraphStyle parStyle = m_item->itemText.defaultStyle(); if (m_doc->appMode == modeEdit || m_doc->appMode == modeEditTable) m_item->currentTextProps(parStyle); updateStyle(parStyle); connectSignals(); } }
void PropertiesPalette_Shadow::setCurrentItem(PageItem *i) { if (!m_ScMW || m_ScMW->scriptIsRunning()) return; if (!m_doc) setDoc(i->doc()); m_haveItem = false; m_item = i; hasSoftShadow->setBoolValue(i->hasSoftShadow()); softShadowXOffset->setDoubleValue(i->softShadowXOffset() * m_unitRatio); softShadowYOffset->setDoubleValue(i->softShadowYOffset() * m_unitRatio); softShadowBlurRadius->setDoubleValue(i->softShadowBlurRadius() * m_unitRatio); softShadowColor->setStringValue(i->softShadowColor()); softShadowShade->setIntValue(i->softShadowShade()); softShadowOpacity->setDoubleValue(qRound(100 - (i->softShadowOpacity() * 100))); softShadowBlendMode->setIntValue(i->softShadowBlendMode()); softShadowErase->setBoolValue(i->softShadowErasedByObject()); softShadowObjTrans->setBoolValue(i->softShadowHasObjectTransparency()); m_haveItem = true; updateSpinBoxConstants(); }
AlignDistributePalette::AlignDistributePalette( QWidget* parent, const char* name, bool /*modal*/, Qt::WFlags /*fl*/ ) : ScrPaletteBase( parent, name ) { setupUi(this); currDoc=NULL; //hide spare controls toolButtonDummy1->hide(); toolButtonDummy2->hide(); //set up scrspinboxes distributeDistSpinBox->setValues(-1000.0, 1000.0, 2, 0.0); // buddies alignRelativeToLabel->setBuddy( alignRelativeToCombo ); alignGuideLabel->setBuddy( alignGuideLineEdit ); distributeDistLabel->setBuddy( distributeDistSpinBox ); resize( QSize(100, 100).expandedTo(minimumSizeHint()) ); languageChange(); init(); setDoc(NULL); }
void PropertiesPalette_XYZ::setCurrentItem(PageItem *i) { if (!m_ScMW || m_ScMW->scriptIsRunning()) return; //CB We shouldnt really need to process this if our item is the same one //maybe we do if the item has been changed by scripter.. but that should probably //set some status if so. //FIXME: This wont work until when a canvas deselect happens, m_item must be NULL. //if (m_item == i) // return; if (!m_doc) setDoc(i->doc()); disconnect(nameEdit, SIGNAL(Leaved()), this, SLOT(handleNewName())); m_haveItem = false; m_item = i; nameEdit->setText(m_item->itemName()); QString tm; levelLabel->setText(tm.setNum(m_item->ItemNr + 1)); connect(nameEdit, SIGNAL(Leaved()), this, SLOT(handleNewName())); //CB replaces old emits from PageItem::emitAllToGUI() disconnect(xposSpin, SIGNAL(valueChanged(double)), this, SLOT(handleNewX())); disconnect(yposSpin, SIGNAL(valueChanged(double)), this, SLOT(handleNewY())); disconnect(widthSpin, SIGNAL(valueChanged(double)), this, SLOT(handleNewW())); disconnect(heightSpin, SIGNAL(valueChanged(double)), this, SLOT(handleNewH())); disconnect(doLock, SIGNAL(clicked()), this, SLOT(handleLock())); disconnect(noPrint, SIGNAL(clicked()), this, SLOT(handlePrint())); disconnect(noResize, SIGNAL(clicked()), this, SLOT(handleLockSize())); disconnect(flipH, SIGNAL(clicked()), this, SLOT(handleFlipH())); disconnect(flipV, SIGNAL(clicked()), this, SLOT(handleFlipV())); disconnect(rotationSpin, SIGNAL(valueChanged(double)), this, SLOT(handleRotation())); double selX = m_item->xPos(); double selY = m_item->yPos(); double selW = m_item->width(); double selH = m_item->height(); if (m_doc->m_Selection->count() > 1) m_doc->m_Selection->getGroupRect(&selX, &selY, &selW, &selH); displayXY(selX, selY); displayWH(selW, selH); bool checkableFlip = (i->isImageFrame() || i->isTextFrame() || i->isLatexFrame() || i->isOSGFrame() || i->isSymbol() || i->isGroup() || i->isSpiral()); flipH->setCheckable(checkableFlip); flipV->setCheckable(checkableFlip); noPrint->setChecked(!i->printEnabled()); displayFlippedH(i->imageFlippedH()); displayFlippedV(i->imageFlippedV()); m_oldRotation = i->rotation(); double rr = i->rotation(); if (i->rotation() > 0) rr = 360 - rr; rotationSpin->setValue(fabs(rr)); //CB TODO reconnect PP signals from here connect(xposSpin , SIGNAL(valueChanged(double)), this, SLOT(handleNewX())); connect(yposSpin , SIGNAL(valueChanged(double)), this, SLOT(handleNewY())); connect(widthSpin , SIGNAL(valueChanged(double)), this, SLOT(handleNewW())); connect(heightSpin , SIGNAL(valueChanged(double)), this, SLOT(handleNewH())); connect(doLock , SIGNAL(clicked()), this, SLOT(handleLock())); connect(noPrint , SIGNAL(clicked()), this, SLOT(handlePrint())); connect(noResize, SIGNAL(clicked()), this, SLOT(handleLockSize())); connect(flipH , SIGNAL(clicked()), this, SLOT(handleFlipH())); connect(flipV , SIGNAL(clicked()), this, SLOT(handleFlipV())); connect(rotationSpin, SIGNAL(valueChanged(double)), this, SLOT(handleRotation())); bool setter = false; if ((m_item->isTableItem) && (m_item->isSingleSel)) { setter = true; rotationSpin->setEnabled(false); } xposSpin->setEnabled(!setter); yposSpin->setEnabled(!setter); levelGroup->setEnabled(!setter); if ((m_item->isGroup()) && (!m_item->isSingleSel)) { setEnabled(true); } if ((m_item->itemType() == PageItem::Line) && m_lineMode) { xposLabel->setText( tr( "&X1:" ) ); widthLabel->setText( tr( "X&2:" ) ); yposLabel->setText( tr( "Y&1:" ) ); heightLabel->setText( tr( "&Y2:" ) ); rotationSpin->setEnabled(false); } else { xposLabel->setText( tr( "&X-Pos:" ) ); widthLabel->setText( tr( "&Width" ) ); yposLabel->setText( tr( "&Y-Pos:" ) ); heightLabel->setText( tr( "&Height:" ) ); rotationSpin->setEnabled(!((m_item->isTableItem) && (m_item->isSingleSel))); } m_haveItem = true; if (m_item->asLine()) { keepFrameWHRatioButton->setEnabled(false); heightSpin->setEnabled(m_lineMode && !m_item->locked()); } else { heightSpin->setEnabled(true); keepFrameWHRatioButton->setEnabled(true); } displayXY(selX, selY); displayWH(selW, selH); displayLocked(i->locked()); displaySizeLocked(i->sizeLocked()); double rrR = i->imageRotation(); if (i->imageRotation() > 0) rrR = 360 - rrR; noResize->setEnabled(!m_item->isArc()); doGroup->setEnabled(false); doUnGroup->setEnabled(false); if (m_doc->m_Selection->count() > 1) doGroup->setEnabled(true); if (m_doc->m_Selection->count() == 1) doUnGroup->setEnabled(m_item->isGroup()); if (m_item->asOSGFrame()) { setEnabled(true); rotationSpin->setEnabled(false); } if (m_item->asSymbolFrame()) { setEnabled(true); } updateSpinBoxConstants(); }
void PropertiesPalette_Line::setCurrentItem(PageItem *item) { if (!m_ScMW || m_ScMW->scriptIsRunning()) return; //CB We shouldnt really need to process this if our item is the same one //maybe we do if the item has been changed by scripter.. but that should probably //set some status if so. //FIXME: This wont work until when a canvas deselect happens, m_item must be NULL. //if (m_item == i) // return; if (!m_doc) setDoc(item->doc()); m_haveItem = false; m_item = item; lineStyles->blockSignals(true); startArrow->blockSignals(true); endArrow->blockSignals(true); startArrowScale->blockSignals(true); endArrowScale->blockSignals(true); lineMode->blockSignals(true); if ((m_item->asLine()) || (m_item->asPolyLine()) || (m_item->asSpiral())) { startArrow->setEnabled(true); endArrow->setEnabled(true); startArrow->setCurrentIndex(m_item->startArrowIndex()); endArrow->setCurrentIndex(m_item->endArrowIndex()); startArrowScale->setEnabled(true); endArrowScale->setEnabled(true); endArrowScale->setValue(m_item->endArrowScale()); startArrowScale->setValue(m_item->startArrowScale()); } else { startArrow->setEnabled(false); endArrow->setEnabled(false); startArrowScale->setEnabled(false); endArrowScale->setEnabled(false); } if (lineStyles->currentItem()) lineStyles->currentItem()->setSelected(false); bool setter = false; if (m_item->NamedLStyle.isEmpty()) { setter = true; QListWidgetItem *itemStl = NULL; itemStl = lineStyles->item(0); if (itemStl != NULL) itemStl->setSelected(true); } else { QList<QListWidgetItem*> results (lineStyles->findItems(m_item->NamedLStyle, Qt::MatchFixedString|Qt::MatchCaseSensitive)); if (results.count() > 0) results[0]->setSelected(true); setter = false; } lineType->setEnabled(setter); lineWidth->setEnabled(setter); lineJoinStyle->setEnabled(setter); lineEndStyle->setEnabled(setter); if (m_item->dashes().count() == 0) dashEditor->hide(); else { lineType->setCurrentIndex(37); dashEditor->setDashValues(m_item->dashes(), qMax(m_item->lineWidth(), 0.001), m_item->dashOffset()); dashEditor->show(); } if (m_lineMode) lineMode->setCurrentIndex(1); else lineMode->setCurrentIndex(0); lineStyles->blockSignals(false); startArrow->blockSignals(false); endArrow->blockSignals(false); startArrowScale->blockSignals(false); endArrowScale->blockSignals(false); lineMode->blockSignals(false); if ((m_item->isTableItem) && (m_item->isSingleSel)) { setter = true; stackedWidget->setCurrentIndex(1); topLine->setChecked(m_item->TopLine); leftLine->setChecked(m_item->LeftLine); rightLine->setChecked(m_item->RightLine); bottomLine->setChecked(m_item->BottomLine); } else { setter = false; stackedWidget->setCurrentIndex(0); } if ((m_item->isGroup()) && (!m_item->isSingleSel)) { setEnabled(false); } m_haveItem = true; displayLineWidth(m_item->lineWidth()); displayLineValues(m_item->lineStyle(), m_item->lineEnd(), m_item->lineJoin()); if (m_item->asOSGFrame()) { setEnabled(false); } if (m_item->asSymbolFrame()) { setEnabled(false); } }
int main(){ exception e; FILE *f = NULL; int i = 0,count=0,par_count=0,v=0; char* filename = "./bioinfo.xml"; struct stat s; UByte *xml = NULL; // this is the buffer containing the XML content, UByte means unsigned byte VTDGen *vg = NULL; // This is the VTDGen that parses XML VTDNav *vn = NULL; // This is the VTDNav that navigates the VTD records AutoPilot *ap = NULL; // allocate a piece of buffer then reads in the document content // assume "c:\soap2.xml" is the name of the file f = fopen(filename,"r"); stat(filename,&s); i = (int) s.st_size; wprintf(L"size of the file is %d \n",i); xml = (UByte *)malloc(sizeof(UByte) *i); i = fread(xml,sizeof(UByte),i,f); Try{ vg = createVTDGen(); setDoc(vg,xml,i); parse(vg,TRUE); vn = getNav(vg); ap = createAutoPilot2(); bind(ap,vn); if (selectXPath(ap,L"/bix/package/command/parlist")){ while(evalXPath(ap)!= -1){ count++; } } if (selectXPath(ap,L"/bix/package/command/parlist/par")){ while(evalXPath(ap)!= -1){ par_count++; } } wprintf(L"count ==> %d \n",count); wprintf(L"par_count ==> %d \n",par_count); toElement(vn,ROOT); selectElement(ap,L"par"); while(iterateAP(ap)){ if (getCurrentDepth(vn) == 4){ v++; } } wprintf(L"verify ==> %d \n",v); fclose(f); // remember C has no automatic garbage collector // needs to deallocate manually. freeVTDNav(vn); freeVTDGen(vg); freeAutoPilot(ap); } Catch (e) { if (e.et == parse_exception) printf("parse exception e ==> %s \n %s\n", e.msg, e.sub_msg); // manual garbage collection here freeVTDGen(vg); } return 0; }
void evx_set_document (EIF_POINTER a_parser, EIF_POINTER a_string, int string_count) { setDoc ((VTDGen*)a_parser, (UByte*)a_string, string_count); }
void AP_UnixDialog_Styles::runModal(XAP_Frame * pFrame) { // // Get View and Document pointers. Place them in member variables // setFrame(pFrame); setView(static_cast<FV_View *>(pFrame->getCurrentView())); UT_ASSERT(getView()); setDoc(getView()->getLayout()->getDocument()); UT_ASSERT(getDoc()); // Build the window's widgets and arrange them m_windowMain = _constructWindow(); UT_ASSERT(m_windowMain); abiSetupModalDialog(GTK_DIALOG(m_windowMain), pFrame, this, GTK_RESPONSE_CLOSE); // *** this is how we add the gc for the para and char Preview's *** // attach a new graphics context to the drawing area UT_ASSERT(m_wParaPreviewArea && gtk_widget_get_window(m_wParaPreviewArea)); // make a new Unix GC DELETEP (m_pParaPreviewWidget); { GR_UnixCairoAllocInfo ai(m_wParaPreviewArea); m_pParaPreviewWidget = (GR_CairoGraphics*) XAP_App::getApp()->newGraphics(ai); } // let the widget materialize GtkAllocation allocation; gtk_widget_get_allocation(m_wParaPreviewArea, &allocation); _createParaPreviewFromGC(m_pParaPreviewWidget, static_cast<UT_uint32>(allocation.width), static_cast<UT_uint32>(allocation.height)); UT_ASSERT(m_wCharPreviewArea && gtk_widget_get_window(m_wCharPreviewArea)); // make a new Unix GC DELETEP (m_pCharPreviewWidget); { GR_UnixCairoAllocInfo ai(m_wCharPreviewArea); m_pCharPreviewWidget = (GR_CairoGraphics*) XAP_App::getApp()->newGraphics(ai); } // let the widget materialize gtk_widget_get_allocation(m_wCharPreviewArea, &allocation); _createCharPreviewFromGC(m_pCharPreviewWidget, static_cast<UT_uint32>(allocation.width), static_cast<UT_uint32>(allocation.height)); // Populate the window's data items _populateWindowData(); // the expose event of the preview g_signal_connect(G_OBJECT(m_wParaPreviewArea), #if GTK_CHECK_VERSION(3,0,0) "draw", #else "expose_event", #endif G_CALLBACK(s_paraPreview_draw), reinterpret_cast<gpointer>(this)); g_signal_connect(G_OBJECT(m_wCharPreviewArea), #if GTK_CHECK_VERSION(3,0,0) "draw", #else "expose_event", #endif G_CALLBACK(s_charPreview_draw), reinterpret_cast<gpointer>(this)); // connect the select_row signal to the clist g_signal_connect (G_OBJECT (gtk_tree_view_get_selection(GTK_TREE_VIEW(m_tvStyles))), "changed", G_CALLBACK (s_tvStyles_selection_changed), reinterpret_cast<gpointer>(this)); // main loop for the dialog gint response; while(true) { response = abiRunModalDialog(GTK_DIALOG(m_windowMain), false); if (response == GTK_RESPONSE_APPLY) event_Apply(); else { event_Close(); break; // exit the loop } } DELETEP (m_pParaPreviewWidget); DELETEP (m_pCharPreviewWidget); abiDestroyWidget(m_windowMain); }
DobHtmlParser::DobHtmlParser (QString *document, QString *data_xpath )/*{{{*/ { doc = NULL; setDoc ( document ); setXpath ( data_xpath ); }/*}}}*/
int main(){ exception e; FILE *f = NULL; int i = 0,t,result,count=0; wchar_t *tmpString; char* filename = "./servers.xml"; struct stat s; UByte *xml = NULL; // this is the buffer containing the XML content, UByte means unsigned byte VTDGen *vg = NULL; // This is the VTDGen that parses XML VTDNav *vn = NULL; // This is the VTDNav that navigates the VTD records AutoPilot *ap = NULL; // allocate a piece of buffer then reads in the document content // assume "c:\soap2.xml" is the name of the file f = fopen(filename,"r"); stat(filename,&s); i = (int) s.st_size; wprintf(L"size of the file is %d \n",i); xml = (UByte *)malloc(sizeof(UByte) *i); i = fread(xml,sizeof(UByte),i,f); Try{ vg = createVTDGen(); setDoc(vg,xml,i); parse(vg,TRUE); vn = getNav(vg); ap = createAutoPilot2(); declareXPathNameSpace(ap,L"ns1",L"http://purl.org/dc/elements/1.1/"); if (selectXPath(ap,L"//ns1:*")){ bind(ap,vn); while((result=evalXPath(ap))!= -1){ wprintf(L"result is %d \n",result); tmpString = toString(vn,result); wprintf(L"Element name ==> %ls \n",tmpString); free(tmpString); t = getText(vn); if (t!=-1){ tmpString = toNormalizedString(vn,t); wprintf(L" text ==> %ls \n",tmpString); free(tmpString); } wprintf(L"\n =======================\n "); count ++; } } wprintf(L"\nTotal number of elements %d \n",count); fclose(f); // remember C has no automatic garbage collector // needs to deallocate manually. freeVTDNav(vn); freeVTDGen(vg); freeAutoPilot(ap); } Catch (e) { if (e.et == parse_exception) wprintf(L"parse exception e ==> %s \n %s\n", e.msg, e.sub_msg); // manual garbage collection here freeVTDGen(vg); } return 0; }
void PropertiesPalette_Group::setCurrentItem(PageItem *item) { if (!m_ScMW || m_ScMW->scriptIsRunning()) return; //CB We shouldnt really need to process this if our item is the same one //maybe we do if the item has been changed by scripter.. but that should probably //set some status if so. //FIXME: This wont work until when a canvas deselect happens, m_item must be NULL. //if (m_item == i) // return; if (!m_doc) setDoc(item->doc()); m_haveItem = false; m_item = item; bool mirrorX, mirrorY; double patternScaleX, patternScaleY, patternOffsetX, patternOffsetY, patternRotation, patternSkewX, patternSkewY; m_item->patternTransform(patternScaleX, patternScaleY, patternOffsetX, patternOffsetY, patternRotation, patternSkewX, patternSkewY); m_item->patternFlip(mirrorX, mirrorY); transPalWidget->setCurrentItem(m_item); nonZero->setChecked(!m_item->fillRule); evenOdd->setChecked(m_item->fillRule); if ((m_item->isGroup()) && (!m_item->isSingleSel)) { setEnabled(true); if (m_item->FrameType == 0) customShape->setIcon(customShape->getIconPixmap(0)); if (m_item->FrameType == 1) customShape->setIcon(customShape->getIconPixmap(1)); if (m_item->FrameType > 3) customShape->setIcon(customShape->getIconPixmap(m_item->FrameType-2)); transPalWidget->updateFromItem(); transPalWidget->setActPattern(m_item->patternMask(), patternScaleX, patternScaleY, patternOffsetX, patternOffsetY, patternRotation, patternSkewX, patternSkewY, mirrorX, mirrorY); customShape->setEnabled(true); editShape->setEnabled(true); shapeGroup->setEnabled(true); textFlowDisabled->setEnabled(true); textFlowUsesFrameShape->setEnabled(true); textFlowUsesBoundingBox->setEnabled(true); textFlowUsesContourLine->setEnabled(true); textFlowUsesImageClipping->setEnabled(false); } else { setEnabled(false); } m_haveItem = true; if (m_item->asOSGFrame()) { setEnabled(false); } if (m_item->asSymbolFrame()) { setEnabled(true); if (m_item->FrameType == 0) customShape->setIcon(customShape->getIconPixmap(0)); if (m_item->FrameType == 1) customShape->setIcon(customShape->getIconPixmap(1)); if (m_item->FrameType > 3) customShape->setIcon(customShape->getIconPixmap(m_item->FrameType-2)); transPalWidget->updateFromItem(); transPalWidget->setActPattern(m_item->patternMask(), patternScaleX, patternScaleY, patternOffsetX, patternOffsetY, patternRotation, patternSkewX, patternSkewY, mirrorX, mirrorY); customShape->setEnabled(true); editShape->setEnabled(true); shapeGroup->setEnabled(true); textFlowDisabled->setEnabled(true); textFlowUsesFrameShape->setEnabled(true); textFlowUsesBoundingBox->setEnabled(true); textFlowUsesContourLine->setEnabled(true); textFlowUsesImageClipping->setEnabled(false); } }