コード例 #1
0
ファイル: PackageBackup.cpp プロジェクト: ErwinT6/T6Engine
/**
 * Create a backup of the specified packages. A backup is only created if a specified
 * package meets specific criteria, as outlined in the comments for ShouldBackupPackage().
 *
 * @param	InPackage	Package which should be backed up
 *
 * @see		FAutoPackageBackup::ShouldBackupPackage()
 *
 * @return	true if all provided packages were successfully backed up; false if one or more
 *			were not
 */
bool FAutoPackageBackup::BackupPackages( const TArray<UPackage*>& InPackages )
{
	bool bAllPackagesBackedUp = true;
	for ( TArray<UPackage*>::TConstIterator PackageIter( InPackages ); PackageIter; ++PackageIter )
	{
		UPackage* CurPackage = *PackageIter;
		check( CurPackage );

		if ( !BackupPackage( *CurPackage ) )
		{
			bAllPackagesBackedUp = false;
		}
	}
	return bAllPackagesBackedUp;
}
コード例 #2
0
void FAssetContextMenu::ExecuteSCCSync()
{
	TArray<FString> PackageNames;
	GetSelectedPackageNames(PackageNames);
	TArray<FString> PackageFileNames = SourceControlHelpers::PackageFilenames(PackageNames);

	TArray<UPackage*> Packages;
	GetSelectedPackages(Packages);
	if(PackageTools::UnloadPackages(Packages))
	{
		ISourceControlModule::Get().GetProvider().Execute(ISourceControlOperation::Create<FSync>(), PackageFileNames);
		for( TArray<FString>::TConstIterator PackageIter( PackageNames ); PackageIter; ++PackageIter )
		{
			PackageTools::LoadPackage(*PackageIter);
		}
	}
	else
	{
		FMessageDialog::Open( EAppMsgType::Ok, LOCTEXT("SCC_Sync_PackageUnloadFailed", "Could not unload assets when syncing from source control") );
	}
}