Subversion Repositories spk

Rev

Rev 49 | Rev 58 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 49 Rev 50
Line 126... Line 126...
126
			if ( m_bLoading )
126
			if ( m_bLoading )
127
				return;
127
				return;
128
			if ( !m_pPackage )
128
			if ( !m_pPackage )
129
				return;
129
				return;
130
 
130
 
131
			String ^text = SystemStringFromCyString(CFileIO(m_pPackage->GetFilename()).GetFilename());
131
			String ^text = SystemStringFromCyString(CFileIO(m_pPackage->filename()).GetFilename());
132
			String ^addonText = "";
132
			String ^addonText = "";
133
			if ( text->Length < 1 )
133
			if ( text->Length < 1 )
134
			{
134
			{
135
				if ( m_pPackage->GetType() == TYPE_XSP )
135
				if ( m_pPackage->GetType() == TYPE_XSP )
136
					text = "New Ship";
136
					text = "New Ship";
137
				else
137
				else
138
					text = "New Package";
138
					text = "New Package";
139
			}
139
			}
140
			
140
			
141
			if ( m_pPackage->IsChanged() )
141
			if ( m_pPackage->hasChanged() )
142
				addonText += "*";
142
				addonText += "*";
143
			if ( m_pPackage->IsSigned() )
143
			if ( m_pPackage->IsSigned() )
144
				addonText += " (Signed)";
144
				addonText += " (Signed)";
145
			m_pTabPage->Text = text + addonText;
145
			m_pTabPage->Text = text + addonText;
146
			this->Text = m_sFilename + addonText;
146
			this->Text = m_sFilename + addonText;
Line 148... Line 148...
148
 
148
 
149
		void Export()
149
		void Export()
150
		{
150
		{
151
			int game = 0;
151
			int game = 0;
152
			if ( m_pPackage->IsMultipleGamesInPackage() ) {
152
			if ( m_pPackage->IsMultipleGamesInPackage() ) {
153
				SelectGame ^selGame = gcnew SelectGame("Select game to extract package:\n" + SystemStringFromCyString(m_pPackage->GetFilename()), m_pP);
153
				SelectGame ^selGame = gcnew SelectGame("Select game to extract package:\n" + _US(m_pPackage->filename()), m_pP);
154
				if ( selGame->ShowDialog(this) == Windows::Forms::DialogResult::OK ) {
154
				if ( selGame->ShowDialog(this) == Windows::Forms::DialogResult::OK ) {
155
					game = selGame->GetGame() + 1;
155
					game = selGame->GetGame() + 1;
156
				}
156
				}
157
				else
157
				else
158
					return;
158
					return;
Line 161... Line 161...
161
				game = m_pPackage->FindFirstGameInPackage();
161
				game = m_pPackage->FindFirstGameInPackage();
162
			}
162
			}
163
 
163
 
164
			SaveFileDialog ^ofd = gcnew SaveFileDialog();
164
			SaveFileDialog ^ofd = gcnew SaveFileDialog();
165
			ofd->Filter = "Zip Archive (*.zip)|*.zip";
165
			ofd->Filter = "Zip Archive (*.zip)|*.zip";
166
			ofd->FileName = SystemStringFromCyString((CFileIO(m_pPackage->GetFilename()).GetDir() + "/" + CFileIO(m_pPackage->GetFilename()).GetBaseName() + "_" + CBaseFile::ConvertGameToString(game) + ".zip").FindReplace("/", "\\"));
166
			ofd->FileName = SystemStringFromCyString((CFileIO(m_pPackage->filename()).GetDir() + "/" + CFileIO(m_pPackage->filename()).GetBaseName() + "_" + CBaseFile::ConvertGameToString(game) + ".zip").FindReplace("/", "\\"));
167
			ofd->FilterIndex = 1;
167
			ofd->FilterIndex = 1;
168
			ofd->RestoreDirectory = true;
168
			ofd->RestoreDirectory = true;
169
			ofd->AddExtension =  true;
169
			ofd->AddExtension =  true;
170
			ofd->Title = "Select the archive to export to";
170
			ofd->Title = "Select the archive to export to";
171
			if ( ofd->ShowDialog(this) == Windows::Forms::DialogResult::OK )
171
			if ( ofd->ShowDialog(this) == Windows::Forms::DialogResult::OK )
Line 3821... Line 3821...
3821
				 return;
3821
				 return;
3822
 
3822
 
3823
			 this->UpdateFileList();
3823
			 this->UpdateFileList();
3824
		 }
3824
		 }
3825
private: System::Void TextName_TextChanged(System::Object^  sender, System::EventArgs^  e) {
3825
private: System::Void TextName_TextChanged(System::Object^  sender, System::EventArgs^  e) {
3826
			 if ( !m_bLoading )
-
 
3827
				m_pPackage->SetName(CyStringFromSystemString(this->TextName->Text));
3826
			 if ( !m_bLoading )	m_pPackage->setName(_S(this->TextName->Text));
3828
			 this->UpdateChanged();
3827
			 this->UpdateChanged();
3829
		 }
3828
		 }
3830
private: System::Void TextAuthor_TextChanged(System::Object^  sender, System::EventArgs^  e) {
3829
private: System::Void TextAuthor_TextChanged(System::Object^  sender, System::EventArgs^  e) {
3831
			 if ( !m_bLoading )
-
 
3832
				 m_pPackage->SetAuthor(CyStringFromSystemString(this->TextAuthor->Text));
3830
			 if ( !m_bLoading ) m_pPackage->setAuthor(_S(this->TextAuthor->Text));
3833
			 this->UpdateChanged();
3831
			 this->UpdateChanged();
3834
		 }
3832
		 }
3835
private: System::Void TextVersion_TextChanged(System::Object^  sender, System::EventArgs^  e) {
3833
private: System::Void TextVersion_TextChanged(System::Object^  sender, System::EventArgs^  e) {
3836
			 if ( !m_bLoading )
3834
			 if ( !m_bLoading )
3837
				 m_pPackage->SetVersion(CyStringFromSystemString(this->TextVersion->Text));
3835
				 m_pPackage->setVersion(_S(this->TextVersion->Text));
3838
			 this->UpdateChanged();
3836
			 this->UpdateChanged();
3839
		 }
3837
		 }
3840
private: System::Void CreationDate_ValueChanged(System::Object^  sender, System::EventArgs^  e) {
3838
private: System::Void CreationDate_ValueChanged(System::Object^  sender, System::EventArgs^  e) {
3841
			 if ( !m_bLoading )
3839
			 if ( !m_bLoading )
3842
			 {
3840
			 {
3843
				 System::DateTime ^time = DateTime(this->CreationDate->Value);
3841
				 System::DateTime ^time = DateTime(this->CreationDate->Value);
3844
				 
3842
				 
3845
				 String ^t = System::Convert::ToString(time->Day) + "/" + System::Convert::ToString(time->Month) + "/" + System::Convert::ToString(time->Year);
3843
				 String ^t = System::Convert::ToString(time->Day) + "/" + System::Convert::ToString(time->Month) + "/" + System::Convert::ToString(time->Year);
3846
				 m_pPackage->SetCreationDate(CyStringFromSystemString(t));
3844
				 m_pPackage->setCreationDate(_S(t));
3847
			 }
3845
			 }
3848
			 this->UpdateChanged();
3846
			 this->UpdateChanged();
3849
		 }
3847
		 }
3850
 
3848
 
3851
private: System::Void SortList(System::Object ^Sender, ColumnClickEventArgs ^E)
3849
private: System::Void SortList(System::Object ^Sender, ColumnClickEventArgs ^E)
Line 3872... Line 3870...
3872
			int id = CyStringFromSystemString(cli::safe_cast<System::String ^>(e->Item->Tag)).ToInt();
3870
			int id = CyStringFromSystemString(cli::safe_cast<System::String ^>(e->Item->Tag)).ToInt();
3873
			C_File *file = m_pPackage->GetFileList()->Get(id);
3871
			C_File *file = m_pPackage->GetFileList()->Get(id);
3874
			if ( file->IsShared() != e->Item->Checked )
3872
			if ( file->IsShared() != e->Item->Checked )
3875
			{
3873
			{
3876
				file->SetShared(e->Item->Checked);
3874
				file->SetShared(e->Item->Checked);
3877
				m_pPackage->SetChanged(true);
3875
				m_pPackage->adjustChanged(true);
3878
				this->UpdateChanged();
3876
				this->UpdateChanged();
3879
			}
3877
			}
3880
		}
3878
		}
3881
private: System::Void ListFiles_SelectedIndexChanged(System::Object^  sender, System::EventArgs^  e) {
3879
private: System::Void ListFiles_SelectedIndexChanged(System::Object^  sender, System::EventArgs^  e) {
3882
			if ( ListFiles->SelectedItems->Count )
3880
			if ( ListFiles->SelectedItems->Count )
Line 3888... Line 3886...
3888
					int id = CyStringFromSystemString(cli::safe_cast<System::String ^>(this->ListFiles->SelectedItems[i]->Tag)).ToInt();
3886
					int id = CyStringFromSystemString(cli::safe_cast<System::String ^>(this->ListFiles->SelectedItems[i]->Tag)).ToInt();
3889
					C_File *file = m_pPackage->GetFileList()->Get(id);
3887
					C_File *file = m_pPackage->GetFileList()->Get(id);
3890
					if ( file->IsShared() != this->ListFiles->SelectedItems[i]->Checked )
3888
					if ( file->IsShared() != this->ListFiles->SelectedItems[i]->Checked )
3891
					{
3889
					{
3892
						file->SetShared(this->ListFiles->SelectedItems[i]->Checked);
3890
						file->SetShared(this->ListFiles->SelectedItems[i]->Checked);
3893
						m_pPackage->SetChanged(true);
3891
						m_pPackage->adjustChanged(true);
3894
					}
3892
					}
3895
				}
3893
				}
3896
 
3894
 
3897
				this->UpdateChanged();
3895
				this->UpdateChanged();
3898
			}
3896
			}
Line 4027... Line 4025...
4027
			{
4025
			{
4028
				int error;
4026
				int error;
4029
				CBaseFile *p = m_pP->OpenPackage(CyStringFromSystemString(ofd->FileName), &error, 0, SPKREAD_VALUES);
4027
				CBaseFile *p = m_pP->OpenPackage(CyStringFromSystemString(ofd->FileName), &error, 0, SPKREAD_VALUES);
4030
				if ( p )
4028
				if ( p )
4031
				{
4029
				{
4032
					this->TextOtherAuthor->Text = SystemStringFromCyString(p->GetAuthor());
4030
					this->TextOtherAuthor->Text = _US(p->author());
4033
					this->TextOtherName->Text = SystemStringFromCyString(p->GetName());
4031
					this->TextOtherName->Text = _US(p->name());
4034
					((CSpkFile *)m_pPackage)->SetAnotherMod(p->GetName().ToString(), p->GetAuthor().ToString());
4032
					((CSpkFile *)m_pPackage)->SetAnotherMod(p->name(), p->author());
4035
					delete p;
4033
					delete p;
4036
					this->UpdateChanged();
4034
					this->UpdateChanged();
4037
				}
4035
				}
4038
			}
4036
			}
4039
		 }
4037
		 }
Line 5073... Line 5071...
5073
			{
5071
			{
5074
				int error;
5072
				int error;
5075
				CBaseFile *p = m_pP->OpenPackage(CyStringFromSystemString(ofd->FileName), &error, 0, SPKREAD_VALUES);
5073
				CBaseFile *p = m_pP->OpenPackage(CyStringFromSystemString(ofd->FileName), &error, 0, SPKREAD_VALUES);
5076
				if ( p )
5074
				if ( p )
5077
				{
5075
				{
5078
					m_pPackage->AddNeededLibrary(p->GetName().ToString(), p->GetAuthor().ToString(), p->GetVersion().ToString());
5076
					m_pPackage->AddNeededLibrary(p->name(), p->author(), p->version());
5079
					this->UpdateDependacies();
5077
					this->UpdateDependacies();
5080
					 this->UpdateChanged();
5078
					 this->UpdateChanged();
5081
				}
5079
				}
5082
			}
5080
			}
5083
		 }
5081
		 }
Line 5091... Line 5089...
5091
				 this->EditDepend();
5089
				 this->EditDepend();
5092
			 }
5090
			 }
5093
		 }
5091
		 }
5094
private: System::Void ContextFileClear_Click(System::Object^  sender, System::EventArgs^  e) {
5092
private: System::Void ContextFileClear_Click(System::Object^  sender, System::EventArgs^  e) {
5095
			 m_pPackage->GetFileList()->MemoryClear();
5093
			 m_pPackage->GetFileList()->MemoryClear();
5096
			 m_pPackage->SetChanged(true);
5094
			 m_pPackage->adjustChanged(true);
5097
			 this->UpdateChanged();
5095
			 this->UpdateChanged();
5098
			 this->UpdateFileList();
5096
			 this->UpdateFileList();
5099
			 this->UpdateDisplayPic();
5097
			 this->UpdateDisplayPic();
5100
		 }
5098
		 }
5101
private: System::Void ContextFileDelete_Click(System::Object^  sender, System::EventArgs^  e) {
5099
private: System::Void ContextFileDelete_Click(System::Object^  sender, System::EventArgs^  e) {
Line 5135... Line 5133...
5135
			{
5133
			{
5136
				array<System::String ^> ^fileArray = ofd->FileNames;
5134
				array<System::String ^> ^fileArray = ofd->FileNames;
5137
				for ( int i = 0; i < fileArray->Length; i++ )
5135
				for ( int i = 0; i < fileArray->Length; i++ )
5138
				{
5136
				{
5139
					((CXspFile *)m_pPackage)->AddTextFromFile(_S(fileArray[i]));
5137
					((CXspFile *)m_pPackage)->AddTextFromFile(_S(fileArray[i]));
5140
					m_pPackage->SetChanged(true);
5138
					m_pPackage->adjustChanged(true);
5141
				}
5139
				}
5142
				this->UpdateShipText();
5140
				this->UpdateShipText();
5143
				this->UpdateChanged();
5141
				this->UpdateChanged();
5144
			}
5142
			}
5145
		 }
5143
		 }
Line 5289... Line 5287...
5289
					else
5287
					else
5290
						f->ChangeFileExt("pck");
5288
						f->ChangeFileExt("pck");
5291
					m_pSelectedItem->SubItems[1]->Text = SystemStringFromCyString(CyString("<PACKAGE>/") + f->GetNameDirectory(NULL));
5289
					m_pSelectedItem->SubItems[1]->Text = SystemStringFromCyString(CyString("<PACKAGE>/") + f->GetNameDirectory(NULL));
5292
					m_pSelectedItem->SubItems[2]->Text = SystemStringFromCyString(f->GetUncompressedSizeString());
5290
					m_pSelectedItem->SubItems[2]->Text = SystemStringFromCyString(f->GetUncompressedSizeString());
5293
 
5291
 
5294
					m_pPackage->SetChanged(true);
5292
					m_pPackage->adjustChanged(true);
5295
					this->UpdateChanged();
5293
					this->UpdateChanged();
5296
				 }
5294
				 }
5297
			 }
5295
			 }
5298
		 }
5296
		 }
5299
private: System::Void unpackFileToolStripMenuItem_Click(System::Object^  sender, System::EventArgs^  e) {
5297
private: System::Void unpackFileToolStripMenuItem_Click(System::Object^  sender, System::EventArgs^  e) {
Line 5315... Line 5313...
5315
					else
5313
					else
5316
						f->ChangeFileExt("xml");
5314
						f->ChangeFileExt("xml");
5317
					m_pSelectedItem->SubItems[1]->Text = SystemStringFromCyString(CyString("<PACKAGE>/") + f->GetNameDirectory(NULL));
5315
					m_pSelectedItem->SubItems[1]->Text = SystemStringFromCyString(CyString("<PACKAGE>/") + f->GetNameDirectory(NULL));
5318
					m_pSelectedItem->SubItems[2]->Text = SystemStringFromCyString(f->GetUncompressedSizeString());
5316
					m_pSelectedItem->SubItems[2]->Text = SystemStringFromCyString(f->GetUncompressedSizeString());
5319
 
5317
 
5320
					m_pPackage->SetChanged(true);
5318
					m_pPackage->adjustChanged(true);
5321
					this->UpdateChanged();
5319
					this->UpdateChanged();
5322
				 }
5320
				 }
5323
			 }
5321
			 }
5324
		 }
5322
		 }
5325
private: System::Void convertToFakePatchToolStripMenuItem_Click(System::Object^  sender, System::EventArgs^  e) {
5323
private: System::Void convertToFakePatchToolStripMenuItem_Click(System::Object^  sender, System::EventArgs^  e) {
Line 5377... Line 5375...
5377
				 MessageBox::Show(this, "You dont have a primary web address set, you need an address for automatic updates to work", "No Web Address", MessageBoxButtons::OK, MessageBoxIcon::Asterisk);
5375
				 MessageBox::Show(this, "You dont have a primary web address set, you need an address for automatic updates to work", "No Web Address", MessageBoxButtons::OK, MessageBoxIcon::Asterisk);
5378
			 else
5376
			 else
5379
			 {
5377
			 {
5380
				FolderBrowserDialog ^fbd = gcnew FolderBrowserDialog;
5378
				FolderBrowserDialog ^fbd = gcnew FolderBrowserDialog;
5381
				fbd->Description = "Select the path to save the update file to";
5379
				fbd->Description = "Select the path to save the update file to";
5382
				fbd->SelectedPath = SystemStringFromCyString(CFileIO(m_pPackage->GetFilename()).GetDir().FindReplace("/", "\\"));
5380
				fbd->SelectedPath = SystemStringFromCyString(CFileIO(m_pPackage->filename()).GetDir().FindReplace("/", "\\"));
5383
				if ( fbd->ShowDialog(this) == System::Windows::Forms::DialogResult::OK )
5381
				if ( fbd->ShowDialog(this) == System::Windows::Forms::DialogResult::OK )
5384
				{
5382
				{
5385
					CyString file = m_pPackage->CreateUpdateFile(CyStringFromSystemString(fbd->SelectedPath));
5383
					CyString file = m_pPackage->CreateUpdateFile(CyStringFromSystemString(fbd->SelectedPath));
5386
					if ( !file.Empty() )
5384
					if ( !file.Empty() )
5387
						MessageBox::Show(this, "Update file has been created\n" + SystemStringFromCyString(file) + "\n\nRemember to upload it your web server so its accessable\n" + _US(m_pPackage->webAddress()), "Update File Created", MessageBoxButtons::OK, MessageBoxIcon::Information);
5385
						MessageBox::Show(this, "Update file has been created\n" + SystemStringFromCyString(file) + "\n\nRemember to upload it your web server so its accessable\n" + _US(m_pPackage->webAddress()), "Update File Created", MessageBoxButtons::OK, MessageBoxIcon::Information);