Commit Graph

169 Commits

Author SHA1 Message Date
ydong10 8f42067688 Update the code to follow the spec when evaluate the expression.
Signed-off-by: ydong10
Reviewed-by: lgao4

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12973 6f19259b-4bc3-4df7-8a09-765794883524
2012-01-31 08:08:10 +00:00
ydong10 31585af434 Enable nest for suppressif/grayoutif/diableif for form/question/option.
Signed-off-by: ydong10
Reviewed-by: lgao4

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12972 6f19259b-4bc3-4df7-8a09-765794883524
2012-01-31 07:17:42 +00:00
ydong10 e8ef42833f Correct definition to follow spec.
Signed-off-by: ydong10
Reviewed-by: lgao4

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12929 6f19259b-4bc3-4df7-8a09-765794883524
2012-01-12 13:03:56 +00:00
ydong10 3a4e7a3e73 Per UEFI spec, on CallBack action EFI_BROWSER_ACTION_CHANGING, the return value of ActionRequest will be ignored, but on CallBack action EFI_BROWSER_ACTION_CHANGED, the return value of ActionRequest will be used.
But, EDKII browser still processes the got ActionRequest. And, all HII drivers in EDKII project also returns their expected ActionRequest value on action EFI_BROWSER_ACTION_CHANGING. 
Now update the browser to follow the spec, and update all core Hii drivers to keep old working modal.

Update for MdeModulePkg.

Signed-off-by: ydong10
Reviewed-by: lgao4

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12865 6f19259b-4bc3-4df7-8a09-765794883524
2011-12-15 02:54:49 +00:00
ydong10 b7891584a5 Enable EFI_BROWSER_ACTION_CHANGED callback type for browser.
Signed-off-by: ydong10
Reviewed-by: lgao4

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12826 6f19259b-4bc3-4df7-8a09-765794883524
2011-12-07 05:49:01 +00:00
ydong10 08476b334d Refine the select highlight menu logic.
Signed-off-by: ydong10
Reviewed-by: lgao4

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12818 6f19259b-4bc3-4df7-8a09-765794883524
2011-12-05 13:20:03 +00:00
ydong10 febca2e364 Disable change value for grayout or readonly menu.
Signed-off-by: ydong10
Reviewed-by: lgao4

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12817 6f19259b-4bc3-4df7-8a09-765794883524
2011-12-05 12:45:45 +00:00
ydong10 e7fd76d180 Patch includes:
1. Support get default value for ref opcode logic.
2. Correct the sample for ref opcode with default value.
3. Refine logic about processing device path info in ref value. 
Signed-off-by: ydong10
Reviewed-by: lgao4

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12774 6f19259b-4bc3-4df7-8a09-765794883524
2011-11-24 08:47:57 +00:00
ydong10 db40504eae Add support for EFI_IFR_QUESTION_REF3 opcode for browser when this opcode has the device path info.
Signed-off-by: ydong10
Reviewed-by: lgao4

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12759 6f19259b-4bc3-4df7-8a09-765794883524
2011-11-22 07:46:35 +00:00
lgao4 7d1b202d6e Update SetupBrowser to initialize the question value before extract default value so that the default expression can be evaluated correctly.
Signed-off-by: lgao4
Reviewed-by: ydong10

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12757 6f19259b-4bc3-4df7-8a09-765794883524
2011-11-22 07:15:08 +00:00
ydong10 901ba0e78d Enable buffer type when process some expression opcode which support buffer type.
Signed-off-by: ydong10
Reviewed-by: lgao4

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12739 6f19259b-4bc3-4df7-8a09-765794883524
2011-11-18 07:07:31 +00:00
ydong10 4a6876b72f Patch include:
1. Browser not support suppress attribute for date/time opcode, not enable this attribute.
2. Show year field in %04d format, old format is %4d.
3. Add sample to use the suppress attribute.

Signed-off-by: ydong10
Reviewed-by: lgao4

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12722 6f19259b-4bc3-4df7-8a09-765794883524
2011-11-16 07:16:03 +00:00
ydong10 f67c4382ed Enable lock attribute for statement and form; show this attribute same as grayout.
Signed-off-by: ydong10
Reviewed-by: lgao4

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12721 6f19259b-4bc3-4df7-8a09-765794883524
2011-11-16 05:23:38 +00:00
ydong10 85aa96cd54 Update select highlight menu logic when opcode is date/time
Signed-off-by: ydong10
Reviewed-by: lgao4

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12720 6f19259b-4bc3-4df7-8a09-765794883524
2011-11-16 05:09:36 +00:00
jljusten 7538d53684 MdeModulePkg: Remove variables that are set, but not used
GCC 4.6 generates a warning when a variable is set,
but never used.

Signed-off-by: jljusten
Reviewed-by: lgao4
Reviewed-by: erictian
Reviewed-by: rsun3

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12617 6f19259b-4bc3-4df7-8a09-765794883524
2011-10-31 15:58:05 +00:00
ydong10 b2e444aaf7 When browser was requested to go to another formset, it also needs to update the hiihandle in Selection structure. If not update this handle, later when call function GetIfrBinaryData to get binary ifr data will return failed.
Also add sample code to use it.

Signed-off-by: ydong10
Reviewed-by: lgao4


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12607 6f19259b-4bc3-4df7-8a09-765794883524
2011-10-31 03:33:55 +00:00
ydong10 20258293aa Initialize the parameter mUnicodeCollation before use it to avoid system hang.
Signed-off-by: ydong10
Reviewed-by: lgao4

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12577 6f19259b-4bc3-4df7-8a09-765794883524
2011-10-27 01:10:18 +00:00
ydong10 5f4ef94a55 Fix error: Multiline option info only shows the first line error, should shows the full info.
Signed-off-by: ydong10
Reviewed-by: lgao4

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12566 6f19259b-4bc3-4df7-8a09-765794883524
2011-10-25 09:00:23 +00:00
ydong10 39099cbdcf Enhance op-code EFI_IFR_TO_BOOLEAN to case insensitive.
Signed-off-by: ydong10
Reviewed-by: lgao4

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12520 6f19259b-4bc3-4df7-8a09-765794883524
2011-10-10 03:17:46 +00:00
ydong10 c4042207d6 When the CONFIG_ACCESS_PROTOCOL.CallBack function return error, the question should restore to old value
Signed-off-by:ydong10
Reviewed-by:lgao4

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12518 6f19259b-4bc3-4df7-8a09-765794883524
2011-10-09 10:52:54 +00:00
ydong10 04eb20aa85 Add pointer check for NULL before dereference it.
Signed-off-by: ydong10
Reviewed-by: rsun3, lgao4

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12472 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-29 06:33:23 +00:00
ydong10 cd3d9a851b Add exit action when Config_Access_Protocol.CallBack function returns Submit or Reset which is follow UEFI spec 2.3.1.
Also update the impact drivers to keep the old behaviors.

Signed-off-by: ydong10
Reviewed-by: lgao4



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12365 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-16 06:13:52 +00:00
ydong10 e4f95ca527 Refine the logic about getting Value info to avoid check data error.
Signed-off-by: ydong10
Reviewed-by: lgao4

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12360 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-16 01:22:39 +00:00
lgao4 48a9d5f778 Enhance EDKII Browser to support flexible HotKey setting.
Signed-off-by: lgao4
Reviewed-by: ydong10

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12336 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-13 09:32:54 +00:00
ydong10 da58863885 Enable the follow feature for string op-code:
1. Show old string before enter new.
2. Enable cursor moves left or right and insert new char or remove the char before the cursor.

Signed-off-by:ydong10
Reviewed-by:lgao4



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12231 6f19259b-4bc3-4df7-8a09-765794883524
2011-08-30 12:33:41 +00:00
ydong10 ba944801a9 Fixed memory leak and buffer overrun for string op-code.
Signed-off-by:ydong10
Reviewed-by:lgao4



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12213 6f19259b-4bc3-4df7-8a09-765794883524
2011-08-26 01:54:49 +00:00
ydong10 38d6bb9e71 Adjust the day field when update the month and year field.
Signed-off-by:ydong10
Reviewed-by:lgao4

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12054 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-28 02:14:29 +00:00
ydong10 cce6230ffb Change the HiiDataBase and browser codes to support new efi varstore data structure.
Signed-off-by:ydong10
Reviewed-by:lgao4



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12009 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-12 07:24:36 +00:00
ydong10 c3342aa81f correct leap year calculate method.
Signed-off-by:ydong10
Reviewed-by:hhtian


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11982 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-05 09:30:49 +00:00
ydong10 508b4e77f6 Enable value roll over when hit max or min.
Update the maximum value when input day field in date opcode.

Signed-off-by:ydong10
Reviewed-by:lgao4

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11977 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-05 08:28:23 +00:00
ydong10 715cf6dd7e Refine code to avoid potential access violation.
Signed-off-by:ydong10
Reviewed-by:lgao4








git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11976 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-05 08:24:22 +00:00
ydong10 d88ca2c90d Keep the highlight field after user changes the value for time/date opcode
Signed-off-by:ydong10
Reviewed-by:lgao4







git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11975 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-05 08:20:43 +00:00
ydong10 8ca6180f21 Enable new "ref5" opcode in browser.
Signed-off-by:ydong10
Reviewed-by:lgao4






git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11913 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-28 06:41:28 +00:00
ydong10 4f33c8384d Restore the whole form set to default value when user enter F9, old logical only for form level.
Signed-off-by:ydong10
Reviewed-by:lgao4






git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11911 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-28 05:01:49 +00:00
ydong10 4ffaadccd3 Adjust the start position of the opcode string before saving it to avoid show menu info error.
Signed-off-by: ydong10
Reviewed-by: lgao4









git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11892 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-27 09:07:23 +00:00
ydong10 090f3fdbf9 Move the check refresh attribute logical out of the option string check logical.
Signed-off-by: ydong10
Reviewed-by: lgao4



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11871 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-21 02:58:45 +00:00
ydong10 6a05469cee Updates old formset info before exit to avoid old change lost.
Signed-off-by:ydong10
Reviewed-by:lgao4



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11826 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-15 08:40:08 +00:00
ydong10 0194d26cb8 1. When get value from AltCfg data, check the varstore type first.
2. Check the pointer's validation before using it.

Signed-off-by:ydong10
Reviewed-by:lgao4


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11816 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-13 05:20:23 +00:00
ydong10 34d137f31c Fix GCC build fail
Signed-off-by:ydong10
Reviewed-by:lgao4


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11812 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-13 01:55:28 +00:00
ydong10 211cc6e5cd Add new "Refresh guid" opcode, also add sample code to use it.
Signed-off-by: ydong10
Reviewed-by: lgao4


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11767 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-08 08:09:47 +00:00
ydong10 b00964a999 Add new "Modal form" opcode, also add sample code to use it.
Signed-off-by: ydong10
Reviewed-by: lgao4







git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11764 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-08 07:27:39 +00:00
ydong10 b18e705046 Add new call back return value; also add some sample code to use it.
Signed-off-by: ydong10
Reviewed-by: lgao4


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11713 6f19259b-4bc3-4df7-8a09-765794883524
2011-05-31 00:59:15 +00:00
ydong10 ee31d1be52 Add two new methods to get default value, also add sample code in sample driver.
Add sample code to use time opcode

Signed-off-by:  ydong10
Reviewed-by: lgao4


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11688 6f19259b-4bc3-4df7-8a09-765794883524
2011-05-20 02:58:35 +00:00
ydong10 5ec56d19a6 Fixed an error when parse time opcode.
Signed-off-by: ydong10
Reviewed-by: lgao4


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11668 6f19259b-4bc3-4df7-8a09-765794883524
2011-05-17 01:27:05 +00:00
lgao4 0269d14b82 Update IFR version opcode value to follow the UEFI2.3.1 Spec.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11559 6f19259b-4bc3-4df7-8a09-765794883524
2011-04-19 06:32:27 +00:00
lgao4 cf4c5a4270 Use the minimum value for Numeric and the first option value for OneOf as their default value when no specific default value is specified.
HII IFR Numeric and OneOf opcode may not specify their default value in opcode. And, zero may not be valid value for them. To make sure the valid value is set to default value, the minimum value for Numeric and the first option value for OneOf will be chosen as default value. 


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11497 6f19259b-4bc3-4df7-8a09-765794883524
2011-04-01 09:39:11 +00:00
lgao4 5697f8738b Reserve more space width for Option value.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11401 6f19259b-4bc3-4df7-8a09-765794883524
2011-03-15 06:35:57 +00:00
ydong10 487ef01803 1. The old refresh string code also update the time/date opcode. But for the reason that time/date opcode updates the string with the same size, so skip the refresh code for it.
2. Also, the clean old string action used save attribute with paint string action which makes the background show abnormal.  Now using the normal attribute to clean the old string.


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11359 6f19259b-4bc3-4df7-8a09-765794883524
2011-03-10 02:28:15 +00:00
lgao4 11232773ac Do the following enhancement for SetupBrowser:
1. Support Scroll up and down. When hit the top, the last page will be showed. When hit the bottom, the first page will be showed. 
  2. Show forms page by page based on the option (including unselected and selected). 
  3. Add PCD to configure whether TEXT statement is set to Grayout option. 


 



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11355 6f19259b-4bc3-4df7-8a09-765794883524
2011-03-08 06:55:15 +00:00
ydong10 81da6ef925 Bug description:
When the menu is refresh type, and the old string is longer than new string, after refresh, some old string will still show.
The mainly change is:
  1. This change cleans the old string first and then paints the new string.
  2. Fixed old code checks grayout flag not correct.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11354 6f19259b-4bc3-4df7-8a09-765794883524
2011-03-08 06:01:23 +00:00