Subversion Repositories spk

Rev

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

Rev 39 Rev 46
Line 874... Line 874...
874
			m_sOtherAuthor = spk->GetOtherAuthor();
874
			m_sOtherAuthor = spk->GetOtherAuthor();
875
		}
875
		}
876
	}
876
	}
877
 
877
 
878
	// copy settings from base class
878
	// copy settings from base class
879
	m_iGameChanging = base->GetGameChanging();
-
 
880
	m_iRecommended = base->GetRecommended();
-
 
881
	m_iEaseOfUse = base->GetEaseOfUse();
879
	_merge(base);
882
 
880
 
883
	for ( CListNode<SGameCompat> *gNode = base->GetGameCompatabilityList()->Front(); gNode; gNode = gNode->next() ) {
881
	for ( CListNode<SGameCompat> *gNode = base->GetGameCompatabilityList()->Front(); gNode; gNode = gNode->next() ) {
884
		if ( !gNode->Data()->sVersion.Empty() )
882
		if ( !gNode->Data()->sVersion.empty() )
885
			this->AddGameCompatability(gNode->Data()->iGame, gNode->Data()->sVersion);
883
			this->AddGameCompatability(gNode->Data()->iGame, gNode->Data()->sVersion);
886
		else
884
		else
887
			this->AddGameCompatability(gNode->Data()->iGame, CyString::Number(gNode->;Data()->iVersion));
885
			this->AddGameCompatability(gNode->Data()->iGame, (long)gNode->;Data()->iVersion);
888
	}
886
	}
889
 
887
 
890
	if ( !base->GetWebAddress().Empty() )
888
	if ( !base->GetWebAddress().Empty() )
891
		m_sWebAddress = base->GetWebAddress();
889
		m_sWebAddress = base->GetWebAddress();
892
	if ( !base->GetWebSite().Empty() )
890
	if ( !base->GetWebSite().Empty() )
Line 903... Line 901...
903
		this->AddNeededLibrary(lNode->Data()->sName, lNode->Data()->sAuthor, lNode->Data()->sMinVersion);
901
		this->AddNeededLibrary(lNode->Data()->sName, lNode->Data()->sAuthor, lNode->Data()->sMinVersion);
904
 
902
 
905
	// web mirror address, add any new ones
903
	// web mirror address, add any new ones
906
	for ( SStringList *str = base->GetWebMirrors()->Head(); str; str = str->next )
904
	for ( SStringList *str = base->GetWebMirrors()->Head(); str; str = str->next )
907
		this->AddWebMirror(str->str);
905
		this->AddWebMirror(str->str);
908
 
-
 
909
	// copy over any install text
-
 
910
	for ( CListNode<SInstallText> *iNode = base->GetInstallTextList()->Front(); iNode; iNode = iNode->next() )
-
 
911
	{
-
 
912
		if ( !iNode->Data()->sAfter.Empty() )
-
 
913
			this->AddInstallAfterText(iNode->Data()->iLanguage, iNode->Data()->sAfter);
-
 
914
		if ( !iNode->Data()->sBefore.Empty() )
-
 
915
			this->AddInstallBeforeText(iNode->Data()->iLanguage, iNode->Data()->sBefore);
-
 
916
	}
-
 
917
 
-
 
918
	for ( CListNode<SInstallText> *iNode = base->GetUninstallTextList()->Front(); iNode; iNode = iNode->next() )
-
 
919
	{
-
 
920
		if ( !iNode->Data()->sAfter.Empty() )
-
 
921
			this->AddUninstallAfterText(iNode->Data()->iLanguage, iNode->Data()->sAfter);
-
 
922
		if ( !iNode->Data()->sBefore.Empty() )
-
 
923
			this->AddUninstallBeforeText(iNode->Data()->iLanguage, iNode->Data()->sBefore);
-
 
924
	}
-
 
925
 
906
 
926
	// copy over package names
907
	// copy over package names
927
	for ( CListNode<SNames> *nNode = base->GetNamesList()->Front(); nNode; nNode = nNode->next() )
908
	for ( CListNode<SNames> *nNode = base->GetNamesList()->Front(); nNode; nNode = nNode->next() )
928
		this->AddLanguageName(nNode->Data()->iLanguage, nNode->Data()->sName);
909
		this->AddLanguageName(nNode->Data()->iLanguage, nNode->Data()->sName);
929
 
910
 
Line 1157... Line 1138...
1157
		this->AddWare ( sRest );
1138
		this->AddWare ( sRest );
1158
		CLog::logf(CLog::Log_EditPackage, "\tAdding Custom Ware" );
1139
		CLog::logf(CLog::Log_EditPackage, "\tAdding Custom Ware" );
1159
	}
1140
	}
1160
	else if ( sCmd == "WareText:" )
1141
	else if ( sCmd == "WareText:" )
1161
		this->AddWareText ( sRest );
1142
		this->AddWareText ( sRest );
1162
	else if ( sCmd == "UninstallAfter:" )
-
 
1163
		this-&gt;AddUninstallAfterText(sRest.token(" ", 1).toLong(), sRest.tokens(" ", 2));
1143
	else if ( sCmd == "UninstallAfter:" )	this-&gt;addUninstallText(sRest.token(" ", 1).toLong(), false, sRest.tokens(" ", 2));
1164
	else if ( sCmd == "UninstallBefore:" )
-
 
1165
		this-&gt;AddUninstallBeforeText(sRest.token(" ", 1).toLong(), sRest.tokens(" ", 2));
1144
	else if ( sCmd == "UninstallBefore:" )	this-&gt;addUninstallText(sRest.token(" ", 1).toLong(), true, sRest.tokens(" ", 2));
1166
	else if ( sCmd == "InstallAfter:" )
-
 
1167
		this-&gt;AddInstallAfterText(sRest.token(" ", 1).toLong(), sRest.tokens(" ", 2));
1145
	else if ( sCmd == "InstallAfter:" )		this-&gt;addInstallText(sRest.token(" ", 1).toLong(), false, sRest.tokens(" ", 2));
1168
	else if ( sCmd == "InstallBefore:" )
-
 
1169
		this-&gt;AddInstallBeforeText(sRest.token(" ", 1).toLong(), sRest.tokens(" ", 2));
1146
	else if ( sCmd == "InstallBefore:" )	this-&gt;addInstallText(sRest.token(" ", 1).toLong(), true, sRest.tokens(" ", 2));
1170
	else if ( sCmd == "ScriptName:" )
1147
	else if ( sCmd == "ScriptName:" )
1171
	{
1148
	{
1172
		Utils::String lang = sRest.token(":", 1);
1149
		Utils::String lang = sRest.token(":", 1);
1173
		Utils::String name = sRest.tokens(":", 2);
1150
		Utils::String name = sRest.tokens(":", 2);
1174
		this->AddLanguageName(lang.toLong(), name);
1151
		this->AddLanguageName(lang.toLong(), name);