Rev 1 | Rev 170 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed
#include "../StdAfx.h"#include "FakePatchControl.h"namespace PluginManager {void FakePatchControl::UpdateList(){this->listView1->Items->Clear();m_pPackages->AssignPackageNumbers();for ( CBaseFile *p = m_pPackages->FirstPackage(); p; p = m_pPackages->NextPackage() ){if ( !p->IsEnabled() ) continue;if ( !p->AnyFileType(FILETYPE_MOD) ) continue;CyString packageName = p->GetFullPackageName(m_pPackages->GetLanguage());for ( C_File *f = p->GetFirstFile(FILETYPE_MOD); f; f = p->GetNextFile(f) ){if ( !f->IsFakePatch() ) continue;if ( !f->CheckFileExt("cat") ) continue;ListViewItem ^item = gcnew ListViewItem(SystemStringFromCyString(packageName));item->ImageIndex = 1;this->listView1->Items->Add(item);item->Tag = p->GetNum();break;}}this->listView1->AutoResizeColumns(ColumnHeaderAutoResizeStyle::HeaderSize);}void FakePatchControl::ApplyOrder(){for ( SStringList *str = m_pPackages->GetFakePatchOrder()->Head(); str; str = str->next ){CBaseFile *p = m_pPackages->FindPackage(str->str, str->data);if ( p ){// find item and move itfor ( int i = 0; i < this->listView1->Items->Count; i++ ){if ( Convert::ToInt32(this->listView1->Items[i]->Tag) == p->GetNum() ){Order(this->listView1->Items[i]);break;}}}}}void FakePatchControl::Save(){m_lFakePatches->Clear();for ( int i = 0; i < this->listView2->Items->Count; i++ ){int pos = Convert::ToInt32(this->listView2->Items[i]->Tag);CBaseFile *p = m_pPackages->GetPackageAt(pos);if ( p )m_lFakePatches->PushBack(CyString(p->name()), CyString(p->author()));}}};