From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from atlmailgw1.ami.com (atlmailgw1.ami.com [63.147.10.40]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 9E9FF81CE2 for ; Mon, 31 Oct 2016 13:22:28 -0700 (PDT) X-AuditID: ac1060b2-a7fff7000000467b-e7-5817a800e599 Received: from atlms2.us.megatrends.com (atlms2.us.megatrends.com [172.16.96.152]) (using TLS with cipher AES128-SHA (128/128 bits)) (Client did not present a certificate) by (Symantec Messaging Gateway) with SMTP id 6E.09.18043.008A7185; Mon, 31 Oct 2016 16:22:28 -0400 (EDT) Received: from ATLMS1.us.megatrends.com ([fe80::8c55:daf0:ef05:5605]) by atlms2.us.megatrends.com ([fe80::29dc:a91e:ea0c:cdeb%12]) with mapi id 14.03.0123.003; Mon, 31 Oct 2016 16:22:24 -0400 From: Felix Poludov To: "Dong, Eric" , "edk2-devel@lists.01.org" CC: "Bi, Dandan" , "Gao, Liming" Thread-Topic: [RFC] [MdePkg] UefiLib: CreatePopUp Thread-Index: AdIwjdjhOCSq+FCtTKCTGmtOXAGI2QAMMLIgABg3kNAAjBbicAAXwstQ Date: Mon, 31 Oct 2016 20:22:24 +0000 Message-ID: <9333E191E0D52B4999CE63A99BA663A00270FF7D5B@atlms1.us.megatrends.com> References: <9333E191E0D52B4999CE63A99BA663A00270FF754E@atlms1.us.megatrends.com> <9333E191E0D52B4999CE63A99BA663A00270FF787F@atlms1.us.megatrends.com> In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [172.16.99.93] content-transfer-encoding: quoted-printable MIME-Version: 1.0 X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFlrAKsWRmVeSWpSXmKPExsWyRiBhhi7LCvEIg02tvBZbt6lb7Dl0lNli 84tgixX3NrA7sHgs3vOSyaN79j+WAKaoBkabxLy8/JLEklSFlNTiZFulgKLMssTkSiWFzBRb JUMlhYKcxOTU3NS8ElulxIKC1LwUJTsuBQxgA1SWmaeQmpecn5KZl26r5Bnsr2thYWqpa6hk F5KRqpCZl5ZflJtYkpmfp5Ccn1cCVJ2aAhRVSOjizNgwLaOg3ajiQ2svYwPjE40uRk4OCQET ieUTW1i7GLk4hARmM0n8afvBBuEcZpRYM2U6M0gVm4CKxKazF8BsEYFYiSm7/rOD2MwCPhJL /m9g6mLk4BAWMJA4eiUaosRQ4vGZm4wQtpvE2445rCA2i4CqxIPvn9lAbF6BQIlvD+czQ+xa yySx/NZZFpAEp0CIRPuWTWDzGQXEJL6fWsMEsUtc4taT+UwQVwtILNlznhnCFpV4+fgfK4St ILHlfSfUbToSC3Z/YoOwtSWWLXzNDLFYUOLkzCcsExhFZyEZOwtJyywkLbOQtCxgZFnFKJRY kpObmJmTXm6ol5ibqZecn7uJEZIgNu1gbLlofohRgINRiYdXaLp4hBBrYllxZe4hRgkOZiUR 3i2TgEK8KYmVValF+fFFpTmpxYcYnYDhMpFZihsUXcD4jzc2MJAShXEMTcxMzI3MDS1NzI2N lcR5i/74hgsJpAPTUXZqakFqEcwQJg5OqQZGthsuLH6Oppf+/mvRCC/WFjn2WT3punnAuple D1Zv3fztb8yqdxMPOgVq6SsHJeuLvy/j5c7mv2Gaxu68fKHglsfNh44VCM1Ly2Dcm9LWxuJW 2i281blIb59nN+P/oF0h4dsDmE82bGnxbFqRoD/13F/99qgg82OXH7q9FdOXVsnmbPn9w02J pTgj0VCLuag4EQAFrgXhMwMAAA== Subject: Re: [RFC] [MdePkg] UefiLib: CreatePopUp X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 31 Oct 2016 20:22:28 -0000 Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Eric, 1. If you are not changing CretePopUp, your proposal does not really solve m= y problem. It means my proposal still has merit. Do you have problem with moving CreatePopUp implementation into a new librar= y class? Once again, the function will stay in UefiLib, but the implementation will b= e changed to call a new function UiCreatePopUp from the new library class UiLib. 2. In my opinion, adding HiiGetUserSelection to HiiLib is a bad idea because= it will create the same problem as with CretePopUp. The rest of HiiLib is generic. It operates within the scope of HII database= definitions from UEFI specification. The new HiiGetUserSelection you are proposing deals with presentation, which= means it is may get changed to match project UI. HiiGetUserSelection can be added to the same new UiLib that I'm proposing. -----Original Message----- From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of Dong,= Eric Sent: Monday, October 31, 2016 4:26 AM To: Felix Poludov; edk2-devel@lists.01.org Cc: Bi, Dandan; Gao, Liming Subject: Re: [edk2] [RFC] [MdePkg] UefiLib: CreatePopUp Hi Felix, Add my comments below. > -----Original Message----- > From: Felix Poludov [mailto:Felixp@ami.com] > Sent: Friday, October 28, 2016 9:52 PM > To: Dong, Eric; edk2-devel@lists.01.org > Cc: Gao, Liming; Bi, Dandan > Subject: RE: [RFC] [MdePkg] UefiLib: CreatePopUp > > Hi Eric, > > My goal is to facilitate CreatePopUp customization. > Since UI is one of the most customizable areas in the firmware projects, a= n ability to easily replace UI element would be useful. > Thank you for providing the presentation. > I agree with the problem statement. It describes some of the reasons behin= d my request. > As far as the solution you propose, you are introducing a new function Hii= GetUserSelection, which is more powerful, but still implements a > specific look-and-feel. > So it should be possible to easily replace HiiGetUserSelection with a proj= ect specific version to align implementation with project-specific > UI. > Which library class are you planning to add HiiGetUserSelection to? [[Eric]] I plan to add this API to HiiLib which existed at MdeModulePkg/Libr= ary/UefiHiiLib. I think it's belong to HII scope. > Another question is, what are you planning to do with the existing CreateP= opUp function? [[Eric]] I plan to not change it. Just suggest user to use new API and depre= cated it later. > If you just remove it, existing projects that use the function will break. > With my proposal, CreatePopUp can be easily replaced by picking a differen= t library instance. > For example, we can have a legacy instance that implements current behavio= r as well as and advanced instance that implements popup > using HII infrastructure. > > Thanks > Felix > > -----Original Message----- > From: Dong, Eric [mailto:eric.dong@intel.com] > Sent: Thursday, October 27, 2016 10:36 PM > To: Felix Poludov; edk2-devel@lists.01.org > Cc: Gao, Liming; Bi, Dandan > Subject: RE: [RFC] [MdePkg] UefiLib: CreatePopUp > > Hi Felix, > > Do you want to provide a new solution for CreatePopup or just want to spli= t CreatePopup from UefiLib? We already has a proposal to > provide new API to replace CreatePopup. This new API will use modal form t= o paint the UI. Detail you can see the proposal in below link: > https://github.com/ydong10/doc/blob/master/Use%20Modal%20form%20for%20Crea= tePopup%20API.pptx > > Thanks, > Eric > > -----Original Message----- > > From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of F= elix Poludov > > Sent: Friday, October 28, 2016 5:12 AM > > To: edk2-devel@lists.01.org > > Subject: [edk2] [RFC] [MdePkg] UefiLib: CreatePopUp > > > > UefiLib library class (MdePkg ) includes CreatePopUp function. > > The function displays a message box. > > There is certainly more than one way to draw a message box. > > If homogenous user interface is a project requirement, > > CreatePopUp is likely to be overridden to align message box appearance w= ith the platform look and feel. > > The function can be overridden by creating a project specific UefiLib in= stance, but this seems like an overkill > > because the rest of the UefiLib, which is quite big, would have to be du= plicated. > > > > One way to solve the problem is to move CreatePopUp to a new library cla= ss, however, this may break existing projects. > > I suggest changing CreatePopUp implementation to delegate pop up drawing= to a new > > function UiCreatePopUp provided by a new library class UiLib.h. > > > > I would like to solicit feedback for this proposal. > > If there will be no major objections, I'll start working on a patch. > > > > Thanks > > Felix > > > > Please consider the environment before printing this email. > > > > The information contained in this message may be confidential and propri= etary to American Megatrends, Inc. This communication is > > intended to be read only by the individual or entity to whom it is addre= ssed or by their designee. If the reader of this message is not the > > intended recipient, you are on notice that any distribution of this mess= age, in any form, is strictly prohibited. Please promptly notify the > > sender by reply e-mail or by telephone at 770-246-8600, and then delete= or destroy all copies of the transmission. > > _______________________________________________ > > edk2-devel mailing list > > edk2-devel@lists.01.org > > https://lists.01.org/mailman/listinfo/edk2-devel > > Please consider the environment before printing this email. > > The information contained in this message may be confidential and propriet= ary to American Megatrends, Inc. This communication is > intended to be read only by the individual or entity to whom it is address= ed or by their designee. If the reader of this message is not the > intended recipient, you are on notice that any distribution of this messag= e, in any form, is strictly prohibited. Please promptly notify the > sender by reply e-mail or by telephone at 770-246-8600, and then delete or= destroy all copies of the transmission. _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel Please consider the environment before printing this email. The information contained in this message may be confidential and proprietar= y to American Megatrends, Inc. This communication is intended to be read on= ly by the individual or entity to whom it is addressed or by their designee.= If the reader of this message is not the intended recipient, you are on not= ice that any distribution of this message, in any form, is strictly prohibit= ed. Please promptly notify the sender by reply e-mail or by telephone at 77= 0-246-8600, and then delete or destroy all copies of the transmission.