Francois Gouget : testbot/cgi: Add CollectionBlock::GetPropertyValue().

Alexandre Julliard julliard at winehq.org
Tue May 3 15:18:33 CDT 2022


Module: tools
Branch: master
Commit: 663642b1fd161e5c08d015eb11891993f7479a9d
URL:    https://source.winehq.org/git/tools.git/?a=commit;h=663642b1fd161e5c08d015eb11891993f7479a9d

Author: Francois Gouget <fgouget at codeweavers.com>
Date:   Tue May  3 19:48:04 2022 +0200

testbot/cgi: Add CollectionBlock::GetPropertyValue().

This is practical for adding support for synthesized columns that have
standard values without having to also deal with generating HTML for
them.

Signed-off-by: Francois Gouget <fgouget at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 testbot/lib/ObjectModel/CGI/CollectionBlock.pm | 27 +++++++++++++++++++++++---
 1 file changed, 24 insertions(+), 3 deletions(-)

diff --git a/testbot/lib/ObjectModel/CGI/CollectionBlock.pm b/testbot/lib/ObjectModel/CGI/CollectionBlock.pm
index 08844d0..336c7cd 100644
--- a/testbot/lib/ObjectModel/CGI/CollectionBlock.pm
+++ b/testbot/lib/ObjectModel/CGI/CollectionBlock.pm
@@ -173,7 +173,8 @@ By default this matches the property list of the items in the collection and
 that list is then pruned by DisplayProperty().
 
 However it is possible to redefine this method to reorder the columns or add
-extra columns where the values will be synthesized by GenerateDataView().
+extra columns where the values will be synthesized by GetPropertyValue() or
+generated directly by GenerateDataView().
 
 =back
 =cut
@@ -311,6 +312,27 @@ sub GenerateHeaderView($$$)
 =pod
 =over 12
 
+=item C<GetPropertyValue()>
+
+Returns the underlying property value.
+
+This is useful for providing values for the synthetic columns.
+See GenerateDataView().
+
+=back
+=cut
+
+sub GetPropertyValue($$$)
+{
+  my ($self, $Row, $Col) = @_;
+
+  my $PropertyName = $Col->{Descriptor}->GetName();
+  return $Row->{Item}->$PropertyName;
+}
+
+=pod
+=over 12
+
 =item C<GenerateDataView()>
 
 Generates an HTML snippet representing the property value in a user-readable
@@ -346,8 +368,7 @@ sub GenerateDataView($$$)
 {
   my ($self, $Row, $Col) = @_;
 
-  my $PropertyName = $Col->{Descriptor}->GetName();
-  my $Value = $Row->{Item}->$PropertyName;
+  my $Value = $self->GetPropertyValue($Row, $Col);
   GenerateValueHTML($self, $Col->{Descriptor}, $Value, $Col->{Format});
 }
 




More information about the wine-cvs mailing list