CppiaClassInfo *CppiaModule::findClass( ::String inName) { std::string stdName(inName.__s, inName.__s + inName.length); for(int i=0;i<classes.size();i++) if (classes[i]->name == stdName) return classes[i]; return 0; }
bool OSFile::open(const std::string &name, const char *mode) { close(); stdName(name); return open(mode); }
OSFile::OSFile(const std::string &name, const char *mode) { info = new OSFileInfo; stdName(name); open(name.c_str(), mode); }
OSFile::OSFile(const std::string &name) { info = new OSFileInfo; stdName(name); }
void EffectSelectDialog::rowChanged( const QModelIndex & _idx, const QModelIndex & ) { delete m_descriptionWidget; m_descriptionWidget = NULL; if( m_model.mapToSource( _idx ).row() < 0 ) { // invalidate current selection m_currentSelection = Plugin::Descriptor::SubPluginFeatures::Key(); } else { m_currentSelection = m_effectKeys[m_model.mapToSource( _idx ).row()]; } if( m_currentSelection.desc ) { m_descriptionWidget = new QWidget; QHBoxLayout *hbox = new QHBoxLayout( m_descriptionWidget ); Plugin::Descriptor const & descriptor = *( m_currentSelection.desc ); if ( descriptor.logo ) { QLabel *logoLabel = new QLabel( m_descriptionWidget ); logoLabel->setPixmap( descriptor.logo->pixmap() ); logoLabel->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Minimum); hbox->addWidget( logoLabel ); hbox->setAlignment( logoLabel, Qt::AlignTop); } QWidget *textualInfoWidget = new QWidget( m_descriptionWidget ); hbox->addWidget(textualInfoWidget); QVBoxLayout * textWidgetLayout = new QVBoxLayout( textualInfoWidget); textWidgetLayout->setMargin( 4 ); textWidgetLayout->setSpacing( 0 ); std::string stdName(descriptor.name); if ( stdName != "ladspaeffect" ) { QLabel *label = new QLabel(m_descriptionWidget); QString labelText = "<p><b>" + tr("Name") + ":</b> " + QString::fromUtf8(descriptor.displayName) + "</p>"; labelText += "<p><b>" + tr("Description") + ":</b> " + qApp->translate( "pluginBrowser", descriptor.description ) + "</p>"; labelText += "<p><b>" + tr("Author") + ":</b> " + QString::fromUtf8(descriptor.author) + "</p>"; label->setText(labelText); textWidgetLayout->addWidget(label); } if ( m_currentSelection.desc->subPluginFeatures ) { QWidget *subWidget = new QWidget(textualInfoWidget); QVBoxLayout * subLayout = new QVBoxLayout( subWidget ); subLayout->setMargin( 4 ); subLayout->setSpacing( 0 ); m_currentSelection.desc->subPluginFeatures-> fillDescriptionWidget( subWidget, &m_currentSelection ); for( QWidget * w : subWidget->findChildren<QWidget *>() ) { if( w->parent() == subWidget ) { subLayout->addWidget( w ); } } textWidgetLayout->addWidget(subWidget); } ui->scrollArea->setWidget( m_descriptionWidget ); m_descriptionWidget->show(); } }
UnicodeString& TZGNCore::formatGenericNonLocationName(const TimeZone& tz, UTimeZoneGenericNameType type, UDate date, UnicodeString& name) const { U_ASSERT(type == UTZGNM_LONG || type == UTZGNM_SHORT); name.setToBogus(); const UChar* uID = ZoneMeta::getCanonicalCLDRID(tz); if (uID == NULL) { return name; } UnicodeString tzID(TRUE, uID, -1); // Try to get a name from time zone first UTimeZoneNameType nameType = (type == UTZGNM_LONG) ? UTZNM_LONG_GENERIC : UTZNM_SHORT_GENERIC; fTimeZoneNames->getTimeZoneDisplayName(tzID, nameType, name); if (!name.isEmpty()) { return name; } // Try meta zone UChar mzIDBuf[32]; UnicodeString mzID(mzIDBuf, 0, UPRV_LENGTHOF(mzIDBuf)); fTimeZoneNames->getMetaZoneID(tzID, date, mzID); if (!mzID.isEmpty()) { UErrorCode status = U_ZERO_ERROR; UBool useStandard = FALSE; int32_t raw, sav; UChar tmpNameBuf[64]; tz.getOffset(date, FALSE, raw, sav, status); if (U_FAILURE(status)) { return name; } if (sav == 0) { useStandard = TRUE; TimeZone *tmptz = tz.clone(); // Check if the zone actually uses daylight saving time around the time BasicTimeZone *btz = NULL; if (dynamic_cast<OlsonTimeZone *>(tmptz) != NULL || dynamic_cast<SimpleTimeZone *>(tmptz) != NULL || dynamic_cast<RuleBasedTimeZone *>(tmptz) != NULL || dynamic_cast<VTimeZone *>(tmptz) != NULL) { btz = (BasicTimeZone*)tmptz; } if (btz != NULL) { TimeZoneTransition before; UBool beforTrs = btz->getPreviousTransition(date, TRUE, before); if (beforTrs && (date - before.getTime() < kDstCheckRange) && before.getFrom()->getDSTSavings() != 0) { useStandard = FALSE; } else { TimeZoneTransition after; UBool afterTrs = btz->getNextTransition(date, FALSE, after); if (afterTrs && (after.getTime() - date < kDstCheckRange) && after.getTo()->getDSTSavings() != 0) { useStandard = FALSE; } } } else { // If not BasicTimeZone... only if the instance is not an ICU's implementation. // We may get a wrong answer in edge case, but it should practically work OK. tmptz->getOffset(date - kDstCheckRange, FALSE, raw, sav, status); if (sav != 0) { useStandard = FALSE; } else { tmptz->getOffset(date + kDstCheckRange, FALSE, raw, sav, status); if (sav != 0){ useStandard = FALSE; } } if (U_FAILURE(status)) { delete tmptz; return name; } } delete tmptz; } if (useStandard) { UTimeZoneNameType stdNameType = (nameType == UTZNM_LONG_GENERIC) ? UTZNM_LONG_STANDARD : UTZNM_SHORT_STANDARD; UnicodeString stdName(tmpNameBuf, 0, UPRV_LENGTHOF(tmpNameBuf)); fTimeZoneNames->getDisplayName(tzID, stdNameType, date, stdName); if (!stdName.isEmpty()) { name.setTo(stdName); // TODO: revisit this issue later // In CLDR, a same display name is used for both generic and standard // for some meta zones in some locales. This looks like a data bugs. // For now, we check if the standard name is different from its generic // name below. UChar genNameBuf[64]; UnicodeString mzGenericName(genNameBuf, 0, UPRV_LENGTHOF(genNameBuf)); fTimeZoneNames->getMetaZoneDisplayName(mzID, nameType, mzGenericName); if (stdName.caseCompare(mzGenericName, 0) == 0) { name.setToBogus(); } } } if (name.isEmpty()) { // Get a name from meta zone UnicodeString mzName(tmpNameBuf, 0, UPRV_LENGTHOF(tmpNameBuf)); fTimeZoneNames->getMetaZoneDisplayName(mzID, nameType, mzName); if (!mzName.isEmpty()) { // Check if we need to use a partial location format. // This check is done by comparing offset with the meta zone's // golden zone at the given date. UChar idBuf[32]; UnicodeString goldenID(idBuf, 0, UPRV_LENGTHOF(idBuf)); fTimeZoneNames->getReferenceZoneID(mzID, fTargetRegion, goldenID); if (!goldenID.isEmpty() && goldenID != tzID) { TimeZone *goldenZone = TimeZone::createTimeZone(goldenID); int32_t raw1, sav1; // Check offset in the golden zone with wall time. // With getOffset(date, false, offsets1), // you may get incorrect results because of time overlap at DST->STD // transition. goldenZone->getOffset(date + raw + sav, TRUE, raw1, sav1, status); delete goldenZone; if (U_SUCCESS(status)) { if (raw != raw1 || sav != sav1) { // Now we need to use a partial location format getPartialLocationName(tzID, mzID, (nameType == UTZNM_LONG_GENERIC), mzName, name); } else { name.setTo(mzName); } } } else { name.setTo(mzName); } } } } return name; }