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

The Open Brand -- Problem Reporting and Interpretations System


Problem Report 2147 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 2147.


Report 2147 Actions


    Problem Report Number 2147
    Submitter's Classification Test Suite problem
    State Resolved
    Resolution Rejected (REJ)
    Problem Resolution ID REJ.X.0614
    Raised 1970-01-01 08:00
    Updated 2003-03-13 08:00
    Published null
    Product Standard Motif Toolkit
    Certification Program The Open Brand certification program
    Test Suite VSM version 4.0.0
    Test Identification funcs/XmGetMenuCursor 1
    Problem Summary PG4M.00010 Fault of test case. In the test case Initialize() function, it has: toplevel = XtAppCreateShell(name, "genericclass", applicationShellWidgetClass, display, NULL, 0); and the above code creates the men...
    Problem Text
    Fault of test case.

    In the test case Initialize() function, it has:
    toplevel = XtAppCreateShell(name, "genericclass",
    applicationShellWidgetClass, display, NULL, 0);
    and the above code creates the menucursor.

    Motif always set a default menu cursor for VendorShell class widget
    and any widget that is a child of vendorshell, including ApplicationShell
    class widget.
    The exactly place to create the default menucursor is in function
    XmGetXmScreen in Xm Screen.c file. Here is the code to create the default
    menucursor(there is a not null menucursor field in "screen"):
    sprintf(name, "screen%d", i);
    /* printf("We create a screen with name is %s 0, name);
    the screen here is :0.0 because tetexec.cfg file set it */

    i = 0;
    XtSetArg(args[i], XmNscreen, screen); i++;
    return(XtCreateWidget(name, xmScreenClass, (Widget)xmDisplay,
    args, i));




    The default value for XmNmenuCursor is defined in Xm Screen.c also,
    The default resources for xmScreenClass is defined in Xm Screen.c.
    this is the value test case returned. Here it is:
    {
    XmNmenuCursor, XmCCursor, XmRCursor,
    sizeof(Cursor), Offset(screen.menuCursor),
    XmRString, "arrow",
    }

    In Xm VendorS.c, function GetShellDesktopParent will call XmGetXmScreen
    to set the default menucursor. Here is the code in that function:
    else if (!XmIsScreen((Widget)vw) && !XmIsDisplay((Widget)vw))
    {
    /* puts("VendorS.c GetShellDesktopParent call XmGetXmScreen"); */
    desktopParent =
    (XmDesktopObject) XmGetXmScreen(XtScreen((Widget)vw));
    }
    Above GetShellDesktopParent function will be called by CallInitialize function
    in function _XtCreate which is in Xt Create.c, _XtCreate is called by
    XtCreateWidget which is called by XtAppCreateShell.

    XmScreen' structure is defined in Xm ScreenP.h.
    Screen' structure is defined in X Xlib.h

    Review Information

    Review Type TSMA Review
    Start Date null
    Completed null
    Status Complete
    Review Recommendation No Resolution Given
    Review Response
    We recommend this request be refused.

    Having a default menu cursor has no bearing on this test.

    The standard specifically says for the XmGetMenuCursor() return value,

    Returns the cursor ID for the current menu cursor or the value
    None if a cursor is not defined. A cursor is not defined if the
    application makes this call before the client has created any
    menus on the specified display.

    The important point is the existence of menus.

    The only display relevant call made before XmGetMenuCursor() is
    XtAppCreateShell(). As described in the XmScreen widget class
    description, a Screen object is automatically created when the
    application creates the first shell on a screen. In this process, a
    default XmNmenuCursor is defined to be arrow. However, no menus are




    created.

    In this case, the standard clearly defines the return value
    for XmGetMenuCursor() to be None.


    Review Type SA Review
    Start Date null
    Completed null
    Status Complete
    Review Resolution Rejected (REJ)
    Review Conclusion
    This request is refused.


    Problem Reporting System Options:

     

    Back   


Contact the Certification Authority