add feedback from bobToolz::patch operations fails

This commit is contained in:
Garux 2021-10-21 19:55:37 +03:00
parent 512d14736c
commit 03d3dfccad
2 changed files with 17 additions and 28 deletions

View File

@ -444,7 +444,7 @@ std::list<DPatch> DPatch::SplitCols(){
} }
} }
else { else {
//globalErrorStream() << "bobToolz SplitPatchRows: Patch has not enough rows for splitting.\n"; globalWarningStream() << "bobToolz SplitPatchCols: Patch has not enough columns for splitting.\n";
patchList.push_back( *this ); patchList.push_back( *this );
} }
return patchList; return patchList;
@ -476,6 +476,7 @@ std::list<DPatch> DPatch::SplitRows(){
} }
else else
{ {
globalWarningStream() << "bobToolz SplitPatchRows: Patch has not enough rows for splitting.\n";
patchList.push_back( *this ); patchList.push_back( *this );
} }
return patchList; return patchList;
@ -486,30 +487,20 @@ std::list<DPatch> DPatch::Split(){
if ( height >= 5 ) { if ( height >= 5 ) {
std::list<DPatch> patchColList = SplitCols(); std::list<DPatch> patchColList = SplitCols();
for ( std::list<DPatch>::iterator patchesCol = patchColList.begin(); patchesCol != patchColList.end(); patchesCol++ ) if( width >= 5 ){
{ for( auto&& patchesCol : patchColList )
if( width >= 5 ){ patchList.splice( patchList.cend(), patchesCol.SplitRows() );
std::list<DPatch> patchRowList = ( *patchesCol ).SplitRows(); }
for ( std::list<DPatch>::iterator patchesRow = patchRowList.begin(); patchesRow != patchRowList.end(); patchesRow++ ) else{
{ patchList.swap( patchColList );
patchList.push_front( *patchesRow );
}
}
else{
patchList.push_front( *patchesCol );
}
} }
} }
else if ( width >= 5 ) { else if ( width >= 5 ) {
std::list<DPatch> patchRowList = SplitRows(); patchList = SplitRows();
for ( std::list<DPatch>::iterator patchesRow = patchRowList.begin(); patchesRow != patchRowList.end(); patchesRow++ )
{
patchList.push_front( *patchesRow );
}
} }
else else
{ {
//globalErrorStream() << "bobToolz SplitPatchRows: Patch has not enough rows for splitting.\n"; globalWarningStream() << "bobToolz SplitPatch: Patch has not enough rows and columns for splitting.\n";
patchList.push_back( *this ); patchList.push_back( *this );
} }
return patchList; return patchList;

View File

@ -473,6 +473,7 @@ void DoMergePatches(){
delete newPatch;*/ delete newPatch;*/
if ( !newPatch ) { if ( !newPatch ) {
globalErrorStream() << "bobToolz.mergePatch: Merge result would exceed max patch rows.\n";
} }
else else
{ {
@ -519,9 +520,8 @@ void DoSplitPatch() {
patch.LoadFromPatch( instance ); patch.LoadFromPatch( instance );
std::list<DPatch> patchList = patch.Split(); for ( auto&& p : patch.Split() ) {
for ( std::list<DPatch>::iterator patches = patchList.begin(); patches != patchList.end(); patches++ ) { p.BuildInRadiant( instance.path().parent().get_pointer() );
( *patches ).BuildInRadiant( instance.path().parent().get_pointer() );
} }
Path_deleteTop( instance.path() ); Path_deleteTop( instance.path() );
@ -549,9 +549,8 @@ void DoSplitPatchCols() {
patch.LoadFromPatch( instance ); patch.LoadFromPatch( instance );
std::list<DPatch> patchList = patch.SplitCols(); for ( auto&& p : patch.SplitCols() ) {
for ( std::list<DPatch>::iterator patches = patchList.begin(); patches != patchList.end(); patches++ ) { p.BuildInRadiant( instance.path().parent().get_pointer() );
( *patches ).BuildInRadiant( instance.path().parent().get_pointer() );
} }
Path_deleteTop( instance.path() ); Path_deleteTop( instance.path() );
@ -579,9 +578,8 @@ void DoSplitPatchRows() {
patch.LoadFromPatch( instance ); patch.LoadFromPatch( instance );
std::list<DPatch> patchList = patch.SplitRows(); for ( auto&& p : patch.SplitRows() ) {
for ( std::list<DPatch>::iterator patches = patchList.begin(); patches != patchList.end(); patches++ ) { p.BuildInRadiant( instance.path().parent().get_pointer() );
( *patches ).BuildInRadiant( instance.path().parent().get_pointer() );
} }
Path_deleteTop( instance.path() ); Path_deleteTop( instance.path() );