|
Packit |
b099d7 |
/*
|
|
Packit |
b099d7 |
* Motif
|
|
Packit |
b099d7 |
*
|
|
Packit |
b099d7 |
* Copyright (c) 1987-2012, The Open Group. All rights reserved.
|
|
Packit |
b099d7 |
*
|
|
Packit |
b099d7 |
* These libraries and programs are free software; you can
|
|
Packit |
b099d7 |
* redistribute them and/or modify them under the terms of the GNU
|
|
Packit |
b099d7 |
* Lesser General Public License as published by the Free Software
|
|
Packit |
b099d7 |
* Foundation; either version 2 of the License, or (at your option)
|
|
Packit |
b099d7 |
* any later version.
|
|
Packit |
b099d7 |
*
|
|
Packit |
b099d7 |
* These libraries and programs are distributed in the hope that
|
|
Packit |
b099d7 |
* they will be useful, but WITHOUT ANY WARRANTY; without even the
|
|
Packit |
b099d7 |
* implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
|
Packit |
b099d7 |
* PURPOSE. See the GNU Lesser General Public License for more
|
|
Packit |
b099d7 |
* details.
|
|
Packit |
b099d7 |
*
|
|
Packit |
b099d7 |
* You should have received a copy of the GNU Lesser General Public
|
|
Packit |
b099d7 |
* License along with these librararies and programs; if not, write
|
|
Packit |
b099d7 |
* to the Free Software Foundation, Inc., 51 Franklin Street, Fifth
|
|
Packit |
b099d7 |
* Floor, Boston, MA 02110-1301 USA
|
|
Packit |
b099d7 |
*/
|
|
Packit |
b099d7 |
/*
|
|
Packit |
b099d7 |
* HISTORY
|
|
Packit |
b099d7 |
*/
|
|
Packit |
b099d7 |
/*
|
|
Packit |
b099d7 |
static char rcsid[] = "$TOG: DNDIcon1.dat /main/7 1999/11/10 16:57:21 jff $"
|
|
Packit |
b099d7 |
*/
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#) This is the DNDIcon1 test.
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
C)
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#) There should be a topLevel window with title \"topLevel0\"
|
|
Packit |
b099d7 |
containing six PushButtons arranged in two rows, and a Text
|
|
Packit |
b099d7 |
widget, within a BulletinBoard.
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#) PushBtn0, PushBtn2, and PushBtn4 have been registered as
|
|
Packit |
b099d7 |
dropSites.
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#) Move \"topLevel0\" so that the control panel is fully visible.
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#) There should be a control panel containing ten optionMenus
|
|
Packit |
b099d7 |
for modifying respectively, animationStyle, dropActivity,
|
|
Packit |
b099d7 |
dropSiteOperations, dragOperations, blendModel,
|
|
Packit |
b099d7 |
cursorForeground, cursorBackground, validCursorForeground,
|
|
Packit |
b099d7 |
invalidCursorForeground, and noneCursorForeground. The control
|
|
Packit |
b099d7 |
panel should also show a PushButton \"ApplyChanges\" for
|
|
Packit |
b099d7 |
applying the changes in animationStyle, dropActivity, and
|
|
Packit |
b099d7 |
dropSiteOperations, to the registered dropSites.
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#) The \"Animation Style\" optionMenu should show the options,
|
|
Packit |
b099d7 |
\"HighLight\", \"ShadowOut\", \"ShadowIn\", \"None\", and
|
|
Packit |
b099d7 |
\"Pixmap\". \"Pixmap\" is insensitive. \"Highlight\" is the
|
|
Packit |
b099d7 |
selected item at startup.
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#) The \"Drop Activity\" optionMenu should show the options,
|
|
Packit |
b099d7 |
\"Active\" and \"Inactive\". \"Active\" is the selected item
|
|
Packit |
b099d7 |
at startup.
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#) The \"Drop Operations\" optionMenu should show the options,
|
|
Packit |
b099d7 |
\"Move_n_Copy\", \"MoveOnly\", \"CopyOnly\", \"LinkOnly\",
|
|
Packit |
b099d7 |
\"Move_n_Link\", \"Copy_n_Link\", \"All\", and \"None\".
|
|
Packit |
b099d7 |
\"Move_n_Copy\" is the selected item at startup.
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#) The \"Drag Operations\" optionMenu should show the options,
|
|
Packit |
b099d7 |
\"Move_n_Copy\", \"MoveOnly\", \"CopyOnly\", \"LinkOnly\",
|
|
Packit |
b099d7 |
\"Move_n_Link\", \"Copy_n_Link\", \"All\", and \"None\".
|
|
Packit |
b099d7 |
\"CopyOnly\" is the selected item at startup.
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
C)
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#) The \"Blend Model\" optionMenu should show the options,
|
|
Packit |
b099d7 |
\"All\", \"State_n_Source\", \"JustSource\", and \"None\".
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#) The \"Cursor Foreground\", \"Cursor Background\",
|
|
Packit |
b099d7 |
\"Valid Cursor Foreground\", \"Invalid Cursor Foreground\",
|
|
Packit |
b099d7 |
and the \"None Cursor Foreground\" optionMenus all should
|
|
Packit |
b099d7 |
show the options, \"Red\", \"Black\", \"Yellow\", \"Green\",
|
|
Packit |
b099d7 |
and \"White\". \"Cursor Background\" has \"White\" as the
|
|
Packit |
b099d7 |
selected item at startup; all others have \"Red\" as the
|
|
Packit |
b099d7 |
selected item at startup.
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#) If you want to run another DND test simultaneously and do not
|
|
Packit |
b099d7 |
care about the instructions of that test, run that test with
|
|
Packit |
b099d7 |
the option -u "-noinstruct". Otherwise, before proceeding
|
|
Packit |
b099d7 |
further you will have to reposition the control panels, the
|
|
Packit |
b099d7 |
topLevel windows, and the instruction panels of both the tests
|
|
Packit |
b099d7 |
so that they are all completely visible.
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
C)
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#) Initiate Drag by pressing BTransfer (MB2 by default) with the
|
|
Packit |
b099d7 |
pointer positioned on PushBtn1.
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#) A dragIcon should appear consisting of three squares with white
|
|
Packit |
b099d7 |
background and red text in the foreground. The topleft square
|
|
Packit |
b099d7 |
should have \"SRC ICON\" in the middle, with \"SRC\" on
|
|
Packit |
b099d7 |
one line and \"ICON\" on another line. The top right square
|
|
Packit |
b099d7 |
should have \"NONE ICON\" in the middle, with \"NONE\" on one
|
|
Packit |
b099d7 |
line and \"ICON\" on another line. And the bottom right
|
|
Packit |
b099d7 |
square ahould have \"COPY ICON\" in the middle with \"COPY\"
|
|
Packit |
b099d7 |
on one line and \"ICON\" on another line. All three should be
|
|
Packit |
b099d7 |
completely visible.
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#) The attachment for the operationCursorIcon (bottom right
|
|
Packit |
b099d7 |
square) is SouthEast and for the stateCursorIcon (top right
|
|
Packit |
b099d7 |
square) is NorthEast. The top left square is the
|
|
Packit |
b099d7 |
sourceCursorIcon.
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#) Note that the hotspot for the dragIcon comes from the state
|
|
Packit |
b099d7 |
Icon, which is the topleft corner of the square when the
|
|
Packit |
b099d7 |
state is None (meaning when you are dragging over widgets
|
|
Packit |
b099d7 |
which are not registered as dropSites).
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#) With BTransfer pressed, drag the pointer over different PushBtns
|
|
Packit |
b099d7 |
and over the Text widget.
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#) When the pointer is moving within PuishBtn1, PushBtn3, or PushBtn5,
|
|
Packit |
b099d7 |
or within the Bulletinboard but outside of all the PushBtns and
|
|
Packit |
b099d7 |
the text widget, you should not see any visual feedback. The
|
|
Packit |
b099d7 |
dragIcon should be the same as when you initiated the drag with
|
|
Packit |
b099d7 |
pointer on PushBtn1, meaning, it should show that you are dragging
|
|
Packit |
b099d7 |
over widgets that are not registered dropSites.
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#) When the pointer is moving over PushBtn2, you should not see any
|
|
Packit |
b099d7 |
visual dragUnder effect. But the stateIcon (top right square)
|
|
Packit |
b099d7 |
part of the dragIcon should show \"INVALID ICON\", instead of
|
|
Packit |
b099d7 |
\"NONE ICON\".The reason for this is that, even though PushBtn2
|
|
Packit |
b099d7 |
is registered as a dropSite, it is not registered to accept any
|
|
Packit |
b099d7 |
drops (importTargets is NULL and numImportTargets is 0).
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#) When the pointer is moving within PushBtn0 or PushBtn4, or the
|
|
Packit |
b099d7 |
Text widget, the borders of those PushBtns or the Text widget
|
|
Packit |
b099d7 |
should get highlighted. Also, the stateIcon (the top right square)
|
|
Packit |
b099d7 |
should change to \"VALID ICON\", and the hotspot should shift to
|
|
Packit |
b099d7 |
the left midpoint of that square.
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#) Release BTransfer with the dragIcon on the BulletinBoard. The
|
|
Packit |
b099d7 |
dragIcon should zap back to PushBtn1 and disappear.
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
C)
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#) Select \"Inactive\" from the \"Drop Activity\" menu and click
|
|
Packit |
b099d7 |
on \"ApplyChanges\" to apply this new dropActivity to all the
|
|
Packit |
b099d7 |
registered PushBtn dropSites.
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#) Initiate Drag by pressing BTransfer (MB2 by default) with the
|
|
Packit |
b099d7 |
pointer positioned on PushBtn1 and start dragging.
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#) Now, except the Text widget, wherever you drag inside the
|
|
Packit |
b099d7 |
BulletinBoard, the stateIcon should show \"NONE ICON\",
|
|
Packit |
b099d7 |
meaning, even the registered dropSites are treated as
|
|
Packit |
b099d7 |
non-dropSites when dropActivity is \"Inactive\".
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#) Release BTransfer with the dragIcon on the BulletinBoard. The
|
|
Packit |
b099d7 |
dragIcon should zap back to PushBtn1 and disappear.
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#) Select \"Active\" from the \"Drop Activity\" menu and click
|
|
Packit |
b099d7 |
on \"ApplyChanges\" to apply this new dropActivity to all the
|
|
Packit |
b099d7 |
registered PushBtn dropSites.
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#) Now, initiate drag from PushBtn1, and drag over all the PushBtns.
|
|
Packit |
b099d7 |
The stateIcon should show that the behavior is back to when
|
|
Packit |
b099d7 |
we started, meaning, PushBtn0, PushBtn4, and the Text widget are
|
|
Packit |
b099d7 |
Valid dropSites, PushBtn2 is an Invalid dropSite, and all other
|
|
Packit |
b099d7 |
PushBtns and the BulletinBoard are non-dropSites.
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#) Release BTransfer with the dragIcon on the BulletinBoard. The
|
|
Packit |
b099d7 |
dragIcon should zap back to PushBtn1 and disappear.
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
C)
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#) Select \"State_n_Source\" from the \"Blend Model\" menu.
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#) Initiate drag from PushBtn1. The dragIcon should now consist of
|
|
Packit |
b099d7 |
only two squares, the one on the left (sourceCursorIcon) showing
|
|
Packit |
b099d7 |
\"SRC ICON\", and the one on the right (stateCursorIcon) showing
|
|
Packit |
b099d7 |
\"NONE ICON\".
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#) Release BTransfer with pointer over PushBtn3. The dragIcon should
|
|
Packit |
b099d7 |
zap back to PushBtn1 and disappear.
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#) Select \"JustSource\" from the \"Blend Model\" menu.
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#) Initiate drag from PushBtn1. The dragIcon should now consist of
|
|
Packit |
b099d7 |
only one square (sourceCursorIcon) showing \"SRC ICON\".
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#) Start dragging with BTransfer pressed, on different PushBtns. Note
|
|
Packit |
b099d7 |
the hotspot has now shifted to the topleft corner of the dragIcon.
|
|
Packit |
b099d7 |
Release BTransfer with the dragIcon on the BulletinBoard. The
|
|
Packit |
b099d7 |
dragIcon should zap back to PushBtn1 and disappear.
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#) Select \"None\" from the \"Blend Model\" menu.
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#) Initiate drag from PushBtn1. There should be no dragIcon visible
|
|
Packit |
b099d7 |
now. But as you drag the pointer with BTransfer pressed, the
|
|
Packit |
b099d7 |
state should be visible through dragUnder effect, i.e., while you
|
|
Packit |
b099d7 |
are dragging over PushBtn0, PushBtn4, or the text widget, you
|
|
Packit |
b099d7 |
should see that the borders of these widgets get highlighted.
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#) Release BTransfer with the dragIcon on the BulletinBoard.
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
C)
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#) Select \"All\" from the \"Blend Model\" menu.
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#) Select "Red" from the \"Cursor ForeGround\" menu and
|
|
Packit |
b099d7 |
"Yellow" from the \"Cursor Background\" menu and initiate drag.
|
|
Packit |
b099d7 |
You should see that all parts of the dragIcon have red foreground
|
|
Packit |
b099d7 |
and yellow background. Release BTransfer with the dragIcon on
|
|
Packit |
b099d7 |
the BulletinBoard. The dragIcon should zap back to PushBtn1 and
|
|
Packit |
b099d7 |
disappear.
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#) Select "Black" from the \"Valid Cursor Foreground\" menu,
|
|
Packit |
b099d7 |
"Green" from the \"Invalid Cursor Foreground\" menu, and "Green"
|
|
Packit |
b099d7 |
from the \"None Cursor Foreground\" menu. You will see that these
|
|
Packit |
b099d7 |
will affect foreground of all parts of the dragIcon depending on
|
|
Packit |
b099d7 |
where you are dragging.
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#) Initiate Drag by pressing BTransfer with the pointer over any of
|
|
Packit |
b099d7 |
the PushBtns. With BTransfer pressed, drag over various PushBtns
|
|
Packit |
b099d7 |
and the Text widget.
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#) When you are dragging over PushBtn0 and PushBtn4 or the Text widget,
|
|
Packit |
b099d7 |
you will notice that the state icon shows \"VALID ICON\" with black
|
|
Packit |
b099d7 |
foreground and yellow background.
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#) When you are dragging over PushBtn2 , you will notice that the state
|
|
Packit |
b099d7 |
icon shows \"INVALID ICON\" with green foreground and yellow
|
|
Packit |
b099d7 |
background.
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#) When you are dragging over any other PushBtn or over BulletinBoard
|
|
Packit |
b099d7 |
outside of all the PushBtns and the Text widget, you will notice
|
|
Packit |
b099d7 |
that the state icon shows \"NONE ICON\" with green foreground and
|
|
Packit |
b099d7 |
yellow background.
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#) Release BTransfer with the dragIcon on the BulletinBoard. The
|
|
Packit |
b099d7 |
dragIcon should zap back to PushBtn1 and disappear.
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#) Repeat steps 3 through 8 for different color selections.
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
C)
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
!) This tests for CR 5937. PushBtn0-PushBtn3 have increased
|
|
Packit |
b099d7 |
in size to ensure that they are contiguous (i.e. no
|
|
Packit |
b099d7 |
BulletinBoard space exists between them).
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#) Select \"JustSource\" from the \"Blend Model\" menu.
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#) Select \"Black\" from the \"Cursor Background\" menu,
|
|
Packit |
b099d7 |
\"Red\" from the \"Valid Cursor Foreground\" menu,
|
|
Packit |
b099d7 |
\"Green\" from the \"Invalid Cursor Foreground\" menu, and
|
|
Packit |
b099d7 |
\"Yellow\" from the \"None Cursor Foreground\" menu.
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#) Initiate Drag by pressing BTransfer with the pointer over PushBtn1.
|
|
Packit |
b099d7 |
With BTransfer pressed, drag over PushBtn0. The cursor foreground
|
|
Packit |
b099d7 |
should change to red.
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#) Keeping BTransfer pressed, drag over PushBtn2. The cursor foreground
|
|
Packit |
b099d7 |
should change to green.
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#) Keeping BTransfer pressed, drag back over PushBtn0. If the cursor does
|
|
Packit |
b099d7 |
not change back to red, CR 5937 has not been fixed.
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
C)
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
E)
|