Пример #1
0
void DirectoryName<NameControl>::onFilesDropped(FileDropEvent& event)
{
    const auto& files = event.getFiles();
    if (files.empty())
        return;

    if (acceptDrop(files, event.getDropPosition(), event.getDropWindow()))
    {
        const wxString fileName = event.getFiles()[0];
        if (dirExists(toZ(fileName)))
            setDirectoryName(fileName, &dirpath_, dirpath_, staticText_);
        else
        {
            wxString parentName = beforeLast(fileName, utfCvrtTo<wxString>(FILE_NAME_SEPARATOR)); //returns empty string if ch not found
#ifdef ZEN_WIN
            if (endsWith(parentName, L":")) //volume name
                parentName += FILE_NAME_SEPARATOR;
#endif
            if (dirExists(toZ(parentName)))
                setDirectoryName(parentName, &dirpath_, dirpath_, staticText_);
            else //set original name unconditionally: usecase: inactive mapped network shares
                setDirectoryName(fileName, &dirpath_, dirpath_, staticText_);
        }

        //notify action invoked by user
        wxCommandEvent dummy(EVENT_ON_DIR_SELECTED);
        ProcessEvent(dummy);
    }
    else
        event.Skip(); //let other handlers try!!!
}
Пример #2
0
void ProjectManagerApp::fileDrop(FileDropEvent event)
{
	StringArray drops;

	for (auto it : event.getFiles())
	{
		std::string path = it.string();

		File file(path);
		if (file.exists())
		{
			drops.addIfNotAlreadyThere(path);
		}
	}

	CI_ASSERT(drops.size() == 1);

	int count = handler.processCinderRoot(*drops.begin());
	if (count < 0)
	{
		gui->postWarningMessage("Fatal error! ", "Dropped folder is not Cinder root folder");
	}
	else
	{
		String msg = String(count) + " vc2015 projects created!";
		gui->postInfoMessage("Done ", msg.toStdString());
	}
}
Пример #3
0
void cinderFFmpegApp::fileDrop( FileDropEvent event )
{
	for(int i=0; i<event.getFiles().size(); i++)
	{
		std::shared_ptr<_2RealFFmpegWrapper::FFmpegWrapper> fileToLoad = std::shared_ptr<_2RealFFmpegWrapper::FFmpegWrapper>(new _2RealFFmpegWrapper::FFmpegWrapper());
		if(fileToLoad->open(event.getFile(i).string()))
		{
			m_Players.push_back(fileToLoad);
			m_VideoTextures.push_back(gl::Texture());
			m_Players.back()->play();
		}
	}
}
Пример #4
0
void MainDialog::onFilesDropped(FileDropEvent& event)
{
    const auto& files = event.getFiles();
    if (!files.empty())
        loadConfig(utfCvrtTo<Zstring>(files[0]));
}