const QString TwitterPlugin::accountName() const { if( twitterScreenName().isEmpty() ) return friendlyName(); else return twitterScreenName(); }
QStringList DeviceEnumerator_unix::getUserFriendlyNames(const QStringList &devices) const { QStringList returnList; foreach (QString s, devices) { #ifdef Q_OS_LINUX qint64 size = driveSize(s); QStringList partInfo = getPartitionsInfo(s); QTextStream friendlyName(&s); friendlyName.setRealNumberNotation(QTextStream::FixedNotation); friendlyName.setRealNumberPrecision(2); friendlyName << " ("; if (size > 0) { friendlyName << size/(1024*1024*1024.0) << " GB"; } else { friendlyName << "??? GB"; } friendlyName << ", partitions: "; foreach (QString partition, partInfo) { friendlyName << partition << ", "; } s.chop(2); friendlyName << ")"; returnList.append(s); #else QProcess lsblk; lsblk.start(QString("diskutil info %1").arg(s), QIODevice::ReadOnly); lsblk.waitForStarted(); lsblk.waitForFinished(); QString output = lsblk.readLine(); QStringList iddata; QString item = ""; while (!lsblk.atEnd()) { output = output.trimmed(); // Odd trailing whitespace if (output.contains("Device / Media Name:")) { // We want the volume name of this device output.replace("Device / Media Name: ",""); iddata.append(output); }else if (output.contains("Device Identifier:")) { // We want the volume name of this device output.replace("Device Identifier: ",""); iddata.append(output); }else if (output.contains("Total Size:")) { // We want the volume name of this device output.replace("Total Size: ",""); QStringList tokens = output.split(" "); iddata.append( "("+tokens[0]+tokens[1]+")"); } output = lsblk.readLine(); } foreach(QString each,iddata) { item += each+": "; }
HRESULT CaptureGraph::BuildGraph(CString subName) { if(pGraph != NULL) { HRESULT hr; CComPtr<ICreateDevEnum> pSysVideoCaptureEnum = NULL; hr = CoCreateInstance(CLSID_SystemDeviceEnum, NULL, CLSCTX_INPROC_SERVER, IID_ICreateDevEnum, (void **)&pSysVideoCaptureEnum); if(FAILED(hr)) return hr; CComPtr<IBaseFilter> pVideoCapture = NULL; CComPtr<IEnumMoniker> pEnumMoniker = NULL; hr = pSysVideoCaptureEnum->CreateClassEnumerator(CLSID_VideoInputDeviceCategory, &pEnumMoniker, 0); if(FAILED(hr)) return hr; CComPtr<IMoniker> pMoniker = NULL; ULONG fetched; while(pEnumMoniker->Next(1, &pMoniker, &fetched) == S_OK) { CComPtr<IPropertyBag> pPropBag; hr = pMoniker->BindToStorage(0, 0, IID_IPropertyBag, (void **)&pPropBag); if(SUCCEEDED(hr)) { VARIANT varName; VariantInit(&varName); hr = pPropBag->Read(L"FriendlyName", &varName, 0); if(SUCCEEDED(hr)) { ASSERT(varName.vt == VT_BSTR); CString friendlyName(varName.bstrVal); if(friendlyName.Find(subName) != -1) { pMoniker->BindToObject(NULL, NULL, IID_IBaseFilter, (void **)&pVideoCapture); break; } } } } if(pVideoCapture != NULL) { hr = pGraph->AddFilter(pVideoCapture, L"Video Capture"); if(FAILED(hr)) return hr; } //Replace this to add nullip filter. hr = pCaptureBuilder2->RenderStream(&PIN_CATEGORY_PREVIEW, &MEDIATYPE_Video, pVideoCapture, NULL, NULL); if(FAILED(hr)) return hr; hr = SaveGraphFile(pGraph, L"D:\\VideoCapture.grf"); return hr; } return E_FAIL; }
const QString & AbstractDataView::subViewFriendlyName(unsigned int subViewIndex) { static const QString emptyName = ""; friendlyName(); // trigger update if required assert(subViewIndex <= numberOfSubViews()); return subViewIndex < m_subViewFriendlyNames.size() ? m_subViewFriendlyNames[subViewIndex] : emptyName; }
void LinkCelsCommand::onExecute(Context* context) { ContextWriter writer(context); Document* document(writer.document()); bool nonEditableLayers = false; { // TODO the range of selected frames should be in doc::Site. Timeline::Range range = App::instance()->getMainWindow()->getTimeline()->range(); if (!range.enabled()) return; Transaction transaction(writer.context(), friendlyName()); Sprite* sprite = writer.sprite(); frame_t begin = range.frameBegin(); frame_t end = range.frameEnd(); for (LayerIndex layerIdx = range.layerBegin(); layerIdx <= range.layerEnd(); ++layerIdx) { Layer* layer = sprite->indexToLayer(layerIdx); if (!layer->isImage()) continue; if (!layer->isEditable()) { nonEditableLayers = true; continue; } LayerImage* layerImage = static_cast<LayerImage*>(layer); for (frame_t frame=begin; frame < end+1; ++frame) { Cel* cel = layerImage->cel(frame); if (cel) { for (frame = cel->frame()+1; frame < end+1; ++frame) { transaction.execute( new cmd::CopyCel( layerImage, cel->frame(), layerImage, frame, true)); // true = force links } break; } } } transaction.commit(); } if (nonEditableLayers) StatusBar::instance()->showTip(1000, "There are locked layers"); update_screen_for_document(document); }
HRESULT CaptureGraph::GetCaptureFilters(int *filterCount, CListBox *captureFilterList) { HRESULT hr; int maxFilterCount = *filterCount; ICreateDevEnum *pSysVideoCaptureEnum = NULL; hr = CoCreateInstance(CLSID_SystemDeviceEnum, NULL, CLSCTX_INPROC_SERVER, IID_ICreateDevEnum, (void **)&pSysVideoCaptureEnum); if (FAILED(hr)) { return hr; } IBaseFilter *pVideoCapture = NULL; IEnumMoniker *pEnumMoniker = NULL; hr = pSysVideoCaptureEnum->CreateClassEnumerator(CLSID_VideoInputDeviceCategory, &pEnumMoniker, 0); if (hr == S_OK) { IMoniker *pMoniker = NULL; ULONG fetched; int filterIndex = 0; while(pEnumMoniker->Next(1, &pMoniker, &fetched) == S_OK) { IPropertyBag *pPropBag; hr = pMoniker->BindToStorage(0, 0, IID_IPropertyBag, (void **)&pPropBag); if(SUCCEEDED(hr)) { VARIANT varName; VariantInit(&varName); hr = pPropBag->Read(L"FriendlyName", &varName, 0); if(SUCCEEDED(hr)) { ASSERT(varName.vt == VT_BSTR); CString friendlyName(varName.bstrVal); VariantClear(&varName); pPropBag->Release(); filterIndex ++; captureFilterList->AddString(friendlyName); int currentFilterIndex = captureFilterList->FindStringExact(-1, friendlyName); captureFilterList->SetItemDataPtr(currentFilterIndex, pMoniker); if(filterIndex > maxFilterCount) { *filterCount = filterIndex; break; } } } } pEnumMoniker->Release(); } pSysVideoCaptureEnum->Release(); }
void LinkCelsCommand::onExecute(Context* context) { ContextWriter writer(context); Doc* document(writer.document()); bool nonEditableLayers = false; { auto site = context->activeSite(); if (!site.inTimeline()) return; Tx tx(writer.context(), friendlyName()); for (Layer* layer : site.selectedLayers()) { if (!layer->isImage()) continue; if (!layer->isEditableHierarchy()) { nonEditableLayers = true; continue; } LayerImage* layerImage = static_cast<LayerImage*>(layer); for (auto it=site.selectedFrames().begin(), end=site.selectedFrames().end(); it != end; ++it) { frame_t frame = *it; Cel* cel = layerImage->cel(frame); if (cel) { for (++it; it != end; ++it) { tx( new cmd::CopyCel( layerImage, cel->frame(), layerImage, *it, true)); // true = force links } break; } } } tx.commit(); } if (nonEditableLayers) StatusBar::instance()->showTip(1000, "There are locked layers"); update_screen_for_document(document); }
void AbstractDataView::updateTitle(const QString & message) { const auto title = message.isEmpty() ? friendlyName() : QString::number(index()) + ": " + message; if (title == windowTitle()) { return; } setWindowTitle(title); if (hasDockWidgetParent()) { dockWidgetParent()->setWindowTitle(title); } }
bool VideoCaptureDeviceImpl::initName() { if (!m_pMoniker) { return false; } IBindCtx* pBindContext = 0; HRESULT result = CreateBindCtx(0, &pBindContext); if (FAILED(result)) { return false; } IBindCtxSharedPtr bindContextPtr(comInterfaceSharedPtr(pBindContext)); if (!bindContextPtr) { return false; } IPropertyBag* pPropertyBag = 0; result = m_pMoniker->BindToStorage( bindContextPtr.get(), 0, IID_IPropertyBag, reinterpret_cast<void**>(&pPropertyBag)); if (FAILED(result)) { return false; } IPropertyBagSharedPtr propertyBagPtr(comInterfaceSharedPtr(pPropertyBag)); if (!propertyBagPtr) { return false; } VARIANT variant; VariantSharedPtr variantPtr(variantSharedPtr(&variant)); result = propertyBagPtr->Read(s_kFriendlyName.c_str(), variantPtr.get(), 0); if (FAILED(result)) { return false; } const BSTR basicString = variantPtr->bstrVal; if (!basicString) { return false; } std::string friendlyName(utf8StringFromBasicString(basicString)); m_name = friendlyName; return true; }
HRESULT RecordGraph::BuildGraph(CString recordFileName) { HRESULT hr; ICreateDevEnum *pSysAudioCaptureEnum = NULL; hr = CoCreateInstance(CLSID_SystemDeviceEnum, NULL, CLSCTX_INPROC_SERVER, IID_ICreateDevEnum, (void **)&pSysAudioCaptureEnum); if (FAILED(hr)) { return hr; } IBaseFilter *pAudioCapture = NULL; IEnumMoniker *pEnumMoniker = NULL; hr = pSysAudioCaptureEnum->CreateClassEnumerator(CLSID_AudioInputDeviceCategory, &pEnumMoniker, 0); if (hr == S_OK) { IMoniker *pMoniker = NULL; ULONG fetched; BOOL findMicrophone = FALSE; while(pEnumMoniker->Next(1, &pMoniker, &fetched) == S_OK && !findMicrophone) { IPropertyBag *pPropBag; hr = pMoniker->BindToStorage(0, 0, IID_IPropertyBag, (void **)&pPropBag); if(SUCCEEDED(hr)) { VARIANT varName; VariantInit(&varName); hr = pPropBag->Read(L"FriendlyName", &varName, 0); if(SUCCEEDED(hr)) { ASSERT(varName.vt == VT_BSTR); CString friendlyName(varName.bstrVal); if(friendlyName.Find(L"Microphone") >= 0) { hr = pMoniker->BindToObject(NULL, NULL, IID_IBaseFilter, (void **)&pAudioCapture); findMicrophone = TRUE; } VariantClear(&varName); pPropBag->Release(); } } } pEnumMoniker->Release(); } pSysAudioCaptureEnum->Release(); if(pAudioCapture == NULL) { return S_FALSE; } pBuilder->AddFilter(pAudioCapture, L"Audio Capture"); IBaseFilter *pWaveDest = NULL; hr = CoCreateInstance(CLSID_WavDest, NULL, CLSCTX_INPROC_SERVER, IID_IBaseFilter, (void **)&pWaveDest); if(FAILED(hr)) { return hr; } pBuilder->AddFilter(pWaveDest, L"Wave Dest"); IBaseFilter *pFileWriter = NULL; hr = CoCreateInstance(CLSID_FileWriter, NULL, CLSCTX_INPROC_SERVER, IID_IBaseFilter, (void **)&pFileWriter); if(FAILED(hr)) { return hr; } pBuilder->AddFilter(pFileWriter, L"File Writer"); IFileSinkFilter *pFileSetter = NULL; hr = pFileWriter->QueryInterface(IID_IFileSinkFilter, (void **)&pFileSetter); if(FAILED(hr)) { return hr; } AM_MEDIA_TYPE pmt; pmt.majortype = MEDIATYPE_Stream; pmt.subtype = MEDIASUBTYPE_WAVE; pmt.formattype = FORMAT_WaveFormatEx; hr = pFileSetter->SetFileName(recordFileName, &pmt); hr = ConnectFilters(pBuilder, pAudioCapture, pWaveDest, MEDIATYPE_NULL);if(FAILED(hr)) return hr; hr = ConnectFilters(pBuilder, pWaveDest, pFileWriter, MEDIATYPE_NULL);//if(FAILED(hr)) return hr; SaveGraphFile(pBuilder, L"D:\\Record.grf"); pFileSetter->Release(); pFileWriter->Release(); pWaveDest->Release(); pAudioCapture->Release(); }
void AddColorCommand::onExecute(Context* ctx) { app::Color appColor; switch (m_source) { case Source::Fg: appColor = ColorBar::instance()->getFgColor(); break; case Source::Bg: appColor = ColorBar::instance()->getBgColor(); break; case Source::Color: appColor = m_color; break; } try { Palette* newPalette = get_current_palette(); // System current pal color_t color = doc::rgba( appColor.getRed(), appColor.getGreen(), appColor.getBlue(), appColor.getAlpha()); int index = newPalette->findExactMatch( appColor.getRed(), appColor.getGreen(), appColor.getBlue(), appColor.getAlpha(), -1); // It should be -1, because the user has pressed the warning // button that is available only when the color isn't in the // palette. ASSERT(index < 0); if (index >= 0) return; ContextWriter writer(ctx, 500); Doc* document(writer.document()); Sprite* sprite = writer.sprite(); if (!document || !sprite) { ASSERT(false); return; } newPalette->addEntry(color); index = newPalette->size()-1; if (document) { frame_t frame = writer.frame(); Tx tx(writer.context(), friendlyName(), ModifyDocument); tx(new cmd::SetPalette(sprite, frame, newPalette)); tx.commit(); } set_current_palette(newPalette, true); ui::Manager::getDefault()->invalidate(); } catch (base::Exception& e) { Console::showException(e); } }