diff --git a/mozilla/cck/cckwiz/iniFiles/Info.ini b/mozilla/cck/cckwiz/iniFiles/Info.ini index ad0ac93a305..fe812003050 100644 --- a/mozilla/cck/cckwiz/iniFiles/Info.ini +++ b/mozilla/cck/cckwiz/iniFiles/Info.ini @@ -22,7 +22,7 @@ Title=Netscape Client Customization Kit - Page 2 of 10 %CustomizationList% Caption=2nd level node [Navigation Controls] -onNext= +onNext=Depend(%Network%,1,%FTPLocation%,NULL,If you have selected to use the Network - You MUST enter a ftp location) Help=InfoHelp.ini [Image 1] diff --git a/mozilla/cck/driver/interpret.cpp b/mozilla/cck/driver/interpret.cpp index 61d3964ac1f..1ae65260350 100644 --- a/mozilla/cck/driver/interpret.cpp +++ b/mozilla/cck/driver/interpret.cpp @@ -549,6 +549,52 @@ BOOL CInterpret::interpret(CString cmds, WIDGET *curWidget) if (strcmp(Getval,p2) ==0) return FALSE; } + else if (strcmp(pcmd, "Depend") == 0) + { + int numParam = 0; + char *dParamList[5]; + char *dParam = strtok(parms, ","); + while (dParam) + { + dParamList[numParam] = strdup(dParam); + dParam = strtok(NULL, ","); + numParam++; + } + CString var1 = replaceVars(dParamList[0],NULL); + CString value1 = replaceVars(dParamList[1],NULL); + CString var2 = replaceVars(dParamList[2],NULL); + CString value2; + if (strcmp(dParamList[3],"NULL") !=0) + value2 = replaceVars(dParamList[3],NULL); + else + value2.Empty(); + CString message = replaceVars(dParamList[4],NULL); + if (!message) + { + AfxMessageBox("Error - provide a message to show when depend is false", MB_OK); + return FALSE; + } + + + if (var1.Compare(value1) == 0) + { + if (value2.IsEmpty()) + { + if (var2.IsEmpty()) + { + AfxMessageBox(message, MB_OK); + return FALSE; + } + } + else + { + if (var2.Compare(value2) != 0) + { + AfxMessageBox(message, MB_OK); + } + } + } + } else if (strcmp(pcmd, "VerifyDir") == 0) { CFileFind tmpDir;