QString encodeAddress(const QString& sheetName, const QRect &rect) { int startColumn = rect.left(); int startRow = rect.top(); int endColumn = rect.right(); int endRow = rect.bottom(); if (rect.width() == 1 && rect.height() == 1) return encodeAddress(sheetName, startColumn, startRow); return QString("%1.%2%3:%4%5").arg(encodeSheetName(sheetName)).arg(columnName(startColumn)).arg(startRow+1).arg(columnName(endColumn)).arg(endRow+1); }
int encodeInvokeDeflection(__u8 *dest, struct FacCDeflection *CD) { __u8 *p; dest[0] = 0x30; // sequence dest[1] = 0; // length p = &dest[2]; p += encodeAddress(p, CD->DeflectedToNumber, CD->DeflectedToSubaddress); p += encodeBoolean(p, CD->PresentationAllowed); dest[1] = p - &dest[2]; return p - dest; }
int encodeActivationDiversion(__u8 *dest, struct FacCFActivate *CFActivate) { __u8 *p; dest[0] = 0x30; // sequence dest[1] = 0; // length p = &dest[2]; p += encodeEnum(p, CFActivate->Procedure); p += encodeEnum(p, CFActivate->BasicService); p += encodeAddress(p, CFActivate->ForwardedToNumber, CFActivate->ForwardedToSubaddress); p += encodeServedUserNumber(p, CFActivate->ServedUserNumber); dest[1] = p - &dest[2]; return p - dest; }
int std_tcp_connect(const int handle, const struct std_ipv6_address* const address, const uint16_t port) { struct sockaddr_in6 peerAddress; memset(&peerAddress, 0, sizeof(peerAddress)); peerAddress.sin6_family = AF_INET6; peerAddress.sin6_addr = encodeAddress(address); peerAddress.sin6_port = htons(port); while (1) { const int result = connect(handle, (const struct sockaddr*) &peerAddress, sizeof(peerAddress)); if (result >= 0) { return result; } else { if (errno == EINTR) { continue; } return -errno; } } }
/*! * Export QT Contact into Versit Document. */ void QVersitContactExporterPrivate::exportContact( const QContact& contact, QVersitDocument& document) { QList<QContactDetail> allDetails = contact.details(); foreach (const QContactDetail& detail, allDetails) { // If the custom detail handler handles it, we don't have to. if (mDetailHandler && mDetailHandler->preProcessDetail(contact, detail, &document)) continue; QList<QVersitProperty> removedProperties; QList<QVersitProperty> generatedProperties; QSet<QString> processedFields; if (detail.definitionName() == QContactName::DefinitionName) { encodeName(detail, document, &removedProperties, &generatedProperties, &processedFields); } else if (detail.definitionName() == QContactPhoneNumber::DefinitionName) { encodePhoneNumber(detail, &generatedProperties, &processedFields); } else if (detail.definitionName() == QContactEmailAddress::DefinitionName) { encodeEmail(detail, &generatedProperties, &processedFields); } else if (detail.definitionName() == QContactAddress::DefinitionName) { encodeAddress(detail, &generatedProperties, &processedFields); } else if (detail.definitionName() == QContactGuid::DefinitionName) { encodeUid(detail, &generatedProperties, &processedFields); } else if (detail.definitionName() == QContactUrl::DefinitionName) { encodeUrl(detail, &generatedProperties, &processedFields); } else if (detail.definitionName() == QContactTimestamp::DefinitionName) { encodeRev(detail, &generatedProperties, &processedFields); } else if (detail.definitionName() == QContactBirthday::DefinitionName) { encodeBirthDay(detail, &generatedProperties, &processedFields); } else if (detail.definitionName() == QContactGeoLocation::DefinitionName) { encodeGeoLocation(detail, &generatedProperties, &processedFields); } else if (detail.definitionName() == QContactNote::DefinitionName) { encodeNote(detail, &generatedProperties, &processedFields); } else if (detail.definitionName() == QContactOrganization::DefinitionName) { encodeOrganization(detail, &generatedProperties, &processedFields); } else if (detail.definitionName() == QContactRingtone::DefinitionName) { encodeRingtone(detail, &generatedProperties, &processedFields); } else if (detail.definitionName() == QContactThumbnail::DefinitionName) { encodeThumbnail(detail, &generatedProperties, &processedFields); } else if (detail.definitionName() == QContactAvatar::DefinitionName){ encodeAvatar(detail, &generatedProperties, &processedFields); } else if (detail.definitionName() == QContactAnniversary::DefinitionName) { encodeAnniversary(detail, &generatedProperties, &processedFields); } else if (detail.definitionName() == QContactNickname::DefinitionName) { encodeNickname(detail, document, &removedProperties, &generatedProperties, &processedFields); } else if (detail.definitionName() == QContactTag::DefinitionName) { encodeTag(detail, document, &removedProperties, &generatedProperties, &processedFields); } else if (detail.definitionName() == QContactGender::DefinitionName) { encodeGender(detail, &generatedProperties, &processedFields); } else if (detail.definitionName() == QContactOnlineAccount::DefinitionName) { encodeOnlineAccount(detail, &generatedProperties, &processedFields); } else if (detail.definitionName() == QContactFamily::DefinitionName) { encodeFamily(detail, &generatedProperties, &processedFields); } // run plugin handlers foreach (QVersitContactExporterDetailHandlerV2* handler, mPluginDetailHandlers) { handler->detailProcessed(contact, detail, document, &processedFields, &removedProperties, &generatedProperties); } // run the v2 handler, if set if (mDetailHandler2 && mDetailHandlerVersion > 1) { mDetailHandler2->detailProcessed(contact, detail, document, &processedFields, &removedProperties, &generatedProperties); } foreach(const QVersitProperty& property, removedProperties) { document.removeProperty(property); }