|
Home About Us A-Z Index Search * Contact Us Register Login Press ShopThe Open Brand -- Problem Reporting and Interpretations System |
Problem Report 2173 Details
Show help | Quick Search | Submit a Test Suite Support Request | Click here to view your privileges
This page provides all information on Problem Report 2173.
Report 2173 Actions
Problem Report Number 2173 Submitter's Classification Specification problem State Resolved Resolution Temporary Interpretation (TIN) Problem Resolution ID TIN.X.0113 Raised 1970-01-01 08:00 Updated 2003-03-13 08:00 Published 1998-04-20 08:00 Product Standard Motif Toolkit Certification Program The Open Brand certification program Test Suite VSM version 4.0.0 Test Identification functions/XmGetVisibility 1 Specification Motif Toolkit API Location in Spec See Problem Text Problem Summary TIN4M.00020 The reference implementation (i.e. The Motif code provided by TOG) being tested is not in line with the standard specification for this Motif function as defined in the "X/Open Motif Toolkit API". The... Problem Text
The reference implementation (i.e. The Motif code provided by TOG) being
tested is not in line with the standard specification for this Motif
function as defined in the "X/Open Motif Toolkit API".
The assertion being tested is in line with the standard specification
but the behavior of this function is not in line with the specification.
Either the Motif reference implementation is at fault, or the
Specification needs to be aligned with the reference implemenation. It
is our understanding that Motif 1.2.X is no longer supported by TOG,
hence we request this waiver be granted a Permanent Interpretation.
The function XmGetVisibility() is only checking if a widget is being
obscurred by one of its ancestors. It does not check if one of its
siblings or one of its ancestor's siblings are obscurring it.
The sample code below illustrates the problem. Please notice that
the "_XmCreateVisiblityRect()" function only checks the widget's
ancestors as can be seen by the comment in the function.
XmVisibility
XmGetVisibility(
Widget wid)
{
XRectangle rect ;
if( !wid
|| !_XmCreateVisibilityRect( wid, &rect) )
{
return( XmVISIBILITY_FULLY_OBSCURED) ;
}
if( (rect.width != XtWidth( wid))
|| (rect.height != XtHeight( wid)) )
{
return( XmVISIBILITY_PARTIALLY_OBSCURED) ;
}
return( XmVISIBILITY_UNOBSCURED) ;
}
Boolean
_XmCreateVisibilityRect(
Widget w,
XRectangle *rectPtr )
{
/* This function will generate a rectangle describing the portion of
the
* specified widget which is not clipped by any of its ancestors.
* It also verifies that the ancestors are both managed and
* mapped_when_managed.
* It will return TRUE if the rectangle returned in rectPtr has a
* non-zero area; it will return FALSE if the widget is not visible.
* If w is the work area child of an automatic scrolled window with
* a non-null XmNtraverseObscuredCallback, then the clip window
* is used as the initial rectangle for w.
*/
.
}Test Output
520|761 1 6139 1 1|VSM4TESTSUITE PURPOSE 1
520|761 1 6139 1 2|A call to XmVisibility XmGetVisibility(Widget widget)
520|761 1 6139 1 3|shall return the visibility state of the widget
520|761 1 6139 1 4|specified by widget.
520|761 1 6139 1 5|TEST: Returns XmVISIBILITY_FULLY_OBSCURED when not
yet
managed
520|761 1 6139 1 6|TEST: Returns XmVISIBILITY_UNOBSCURED when widget is
managed
520|761 1 6139 1 7|TEST: Returns XmVISIBILITY_FULLY_OBSCURED when widget
not visible
520|761 1 6139 1 8|ERROR: returned value is incorrect. Expected
"XmVISIBILITY_FULLY_OBSCURED", observed "XmVISIBILITY_UNOBSCURED"
520|761 1 6139 1 9|TEST: Returns XmVISIBILITY_PARTIALLY_OBSCURED when
not
completely visible
520|761 1 6139 1 10|ERROR: returned value is incorrect. Expected
"XmVISIBILITY_PARTIALLY_OBSCURED", observed "XmVISIBILITY_UNOBSCURED"
220|761 1 1 17:33:24|FAILReview Information
Review Type TSMA Review Start Date null Completed null Status Complete Review Recommendation No Resolution Given Review Response
A non-alignment between the reference code and its specification is
under investigation. Thus it is recommended that a Temporary
Interpretation be granted for this test while it remains subject to review.
If a change to the specification results from the conclusion of this
investigation, then this Temporary Interpretation will be converted
to a Permanent Waiver. Otherwise this Temporary Interpretation will
be converted to a Temporary Waiver (Minor System Fault).
Review Type SA Review Start Date null Completed null Status Complete Review Resolution Temporary Interpretation (TIN) Review Conclusion
A Temporary Interpretation is granted.
Applicability: VSM4.0.0 only.
Problem Reporting System Options:
- View Report 2173
- List All PRs
- Search Reports
- Email the System Administrator
- View the The Open Brand Interpretations Database User Manual
Contact the Certification Authority