HomeAbout Us A-Z IndexSearch * Contact Us Register LoginPress Shop

The Open Brand -- Problem Reporting and Interpretations System


Problem Report 2173 Details

Help 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|FAIL




    Review 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:

     

    Back   


Contact the Certification Authority