Synchronize platform pcd automatically with MSA pcd when opening FrameworkModules of a platform.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1945 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
jlin16 2006-11-14 06:33:37 +00:00
parent e87022aa87
commit 0227d24c77
2 changed files with 23 additions and 3 deletions

View File

@ -1175,8 +1175,8 @@ public class FpdFileContents {
//
// ToDo Error
//
throw new PcdDeclNotFound("No Declaration for PCD Entry " + msaPcd.getCName() + " in Module "
+ mi.getName());
throw new PcdDeclNotFound("No Declaration for PCD Entry " + msaPcd.getCName() + " used by Module "
+ mi.getName() + " or its Library Instances.");
}
//
// AddItem to ModuleSA PcdBuildDefinitions

View File

@ -852,6 +852,9 @@ public class FpdFrameworkModules extends IInternalFrame {
public FpdFrameworkModules(OpeningPlatformType opt) {
this(opt.getXmlFpd());
docConsole = opt;
if (pcdSync()) {
JOptionPane.showMessageDialog(frame, "PCD in this platform are synchronized with those in MSA files.");
}
}
private void init(PlatformSurfaceAreaDocument.PlatformSurfaceArea fpd) {
@ -910,9 +913,26 @@ public class FpdFrameworkModules extends IInternalFrame {
}
showAllModules();
}
private boolean pcdSync() {
boolean synced = false;
for (int i = 0; i < jTableFpdModules.getRowCount(); ++i) {
try {
if (ffc.adjustPcd(i)) {
synced = true;
}
}
catch (Exception exp) {
JOptionPane.showMessageDialog(frame, exp.getMessage());
continue;
}
}
return synced;
}
private void showAllModules() {
if (miList == null) {