bool Importer::IsMidi(const wxString &fName) { const auto extension = fName.AfterLast(wxT('.')); return extension.IsSameAs(wxT("gro"), false) || extension.IsSameAs(wxT("midi"), false) || extension.IsSameAs(wxT("mid"), false); }
bool wxGenericBrush::IsSameAs(const wxBrush& brush) const { wxCHECK_MSG(Ok() && brush.Ok(), 1, wxT("Invalid generic brush")); wxGenericBrush gB(brush); gB.GetGenericColour().SetAlpha(M_GBRUSHDATA->m_colour.GetAlpha()); return IsSameAs(gB); }
bool wxGenericPen::IsSameAs(const wxPen &pen) const { wxCHECK_MSG(Ok() && pen.Ok(), false, wxT("Invalid generic pen")); wxGenericPen gp(pen); gp.GetGenericColour().SetAlpha(M_GPENDATA->m_colour.GetAlpha()); return IsSameAs(gp); }
Language Language::TryGuessFromFilename(const wxString& filename) { wxFileName fn(filename); fn.MakeAbsolute(); // Try matching the filename first: // - entire name // - suffix (foo.cs_CZ.po, wordpressTheme-cs_CZ.po) // - directory name (cs_CZ, cs.lproj, cs/LC_MESSAGES) wxString name = fn.GetName(); Language lang = Language::TryParseWithValidation(name); if (lang.IsValid()) return lang; size_t pos = name.find_first_of(".-_"); while (pos != wxString::npos) { auto part = name.substr(pos+1); lang = Language::TryParseWithValidation(part); if (lang.IsValid()) return lang; pos = name.find_first_of(".-_", pos+1); } auto dirs = fn.GetDirs(); if (!dirs.empty()) { auto d = dirs.rbegin(); if (d->IsSameAs("LC_MESSAGES", /*caseSensitive=*/false)) { if (++d == dirs.rend()) return Language(); // failed to match } wxString rest; if (d->EndsWith(".lproj", &rest)) return Language::TryParseWithValidation(rest); else return Language::TryParseWithValidation(*d); } return Language(); // failed to match }
bool wxFontBase::operator==(const wxFont& font) const { // either it is the same font, i.e. they share the same common data or they // have different ref datas but still describe the same font return IsSameAs(font) || ( IsOk() == font.IsOk() && GetPointSize() == font.GetPointSize() && // in wxGTK1 GetPixelSize() calls GetInternalFont() which uses // operator==() resulting in infinite recursion so we can't use it // in that port #if !defined(__WXGTK__) || defined(__WXGTK20__) GetPixelSize() == font.GetPixelSize() && #endif GetFamily() == font.GetFamily() && GetStyle() == font.GetStyle() && GetWeight() == font.GetWeight() && GetUnderlined() == font.GetUnderlined() && GetFaceName().IsSameAs(font.GetFaceName(), false) && GetEncoding() == font.GetEncoding() ); }