2.3.1.9 TBVisualData

Contains visual information about a toolbar. The values of some of the fields in this structure are restricted by the toolbar type and restrictions of this toolbar (the value of the ltbtr field of the TB structure (section 2.3.1.6) that contains the structure that contains this structure). The restrictions are shown in the following table.

Value of toolbar types and restrictions flags (value of the ltbtr field of the TB structure that contains the structure that contains this structure)

TBVisualData restrictions

If the NotTopLevel bit of the ltbtr field of the TB structure (section 2.3.1.6) that contains toolbar information for this toolbar equals 1.

tbv MUST equal 0x00 or

tbds MUST equal 0x04.

If the TBTPopupMenu bit of the ltbtr field of the TB structure (section 2.3.1.6) that contains toolbar information for this toolbar equals 1.

tbv MUST equal 0x00 or

tbds MUST equal 0x04.

If the NoVerticalDock bit of the ltbtr field of the TB structure (section 2.3.1.6) that contains toolbar information for this toolbar equals 1.

tbds MUST NOT equal 0x00 or 0x02.

If the NoHorizontalDock bit of the ltbtr field of the TB structure (section 2.3.1.6) that contains toolbar information for this toolbar equals 1.

tbds MUST NOT equal 0x01 or 0x03.


0


1


2


3


4


5


6


7


8


9

1
0


1


2


3


4


5


6


7


8


9

2
0


1


2


3


4


5


6


7


8


9

3
0


1

tbds

tbv

tbdsDock

iRow

rcDock

...

rcFloat

...

tbds (1 byte): Signed integer that specifies the current toolbar docked state. The value MUST be in the following table.

Value

Meaning

0x00

Toolbar is docked on application frame at the left.

0x01

Toolbar is docked on application frame at the top.

0x02

Toolbar is docked on application frame at the right.

0x03

Toolbar is docked on application frame at the bottom.

0x04

Toolbar is not docked.

tbv (1 byte): Signed integer that specifies the toolbar visibility. The value MUST be in the following table.

Value

Meaning

0x00

Toolbar is not visible.

0x01

Toolbar is visible.

0x02

Toolbar is visible.

tbdsDock (1 byte): Signed integer that SHOULD specify the toolbar docked state. The value MUST be in the following table.

Value

Meaning

0x00

Toolbar is docked on application frame at the left.

0x01

Toolbar is docked on application frame at the top.

0x02

Toolbar is docked on application frame at the right.

0x03

Toolbar is docked on application frame at the bottom.

If the value of the tbds field is less than or equal to 0x03, this value MUST be equal to the value of the tbds field. When tbds is greater than 0x03, this field specifies the most recent toolbar dock state.

iRow (1 byte): Signed integer that specifies, when the toolbar is docked, the index of the docked location of the toolbar in the docking area in relation to other toolbars in the docking area. MUST be in the range 0-127 or in the following table.

Value

Meaning

0xFE (-2)

Row append. Toolbar is placed on the last row of the docking area.

0xFD (-3)

Row prepend. Toolbar is placed on the first row of the docking area.

 

rcDock (8 bytes): Structure of type SRECT (section 2.3.1.5) that specifies the preferred docked location of the toolbar. Refer to the following table for the meaning of the values of each field of this structure.

Field of rcDock structure

Meaning

rcDock.left

Signed integer that specifies the distance in pixels from the left border of the docking area to the left border of the toolbar.

rcDock.top

Signed integer that specifies the distance in pixels from the top border of the docking area to the top border of the toolbar.

rcDock.right

Signed integer that specifies the distance in pixels from the left border of the docking area to the right border of the toolbar.

rcDock.bottom

Signed integer that specifies the distance in pixels from the top border of the docking area to the bottom border of the toolbar.

rcFloat (8 bytes): Structure of type SRECT (section 2.3.1.5) that specifies the preferred toolbar location when the toolbar is not docked. Refer to the following table for the meaning of the values of each field of this structure.

Field of rcFloat structure

Meaning

rcFloat.left

Signed integer that specifies the distance in pixels from the left border of the screen to the left border of the toolbar.

rcFloat.top

Signed integer that specifies the distance in pixels from the top border of the screen to the top border of the toolbar.

rcFloat.right

Signed integer that specifies the distance in pixels from the left border of the screen to the right border of the toolbar.

rdFloat.bottom

Signed integer that specifies the distance in pixels from the top border of the screen to the bottom border of the toolbar.