> 3a12979: FindPanel: Set the MIME type field to fixed width >>>> >>> [...] >>> >>>> + fMimeTypeField->**SetExplicitSize( >>>> + BSize(be_control_look->**DefaultItemSpacing() * 20, >>>> B_SIZE_UNSET)); >>>> + // ResizeMenuField() makes fMimeTypeField too wide. >>>> >>> I'm not sure if it's actually honored, but what about >>> SetExplicitMaxSize() >>> instead? >>> >> I don't want this menu field to adjust its width based on its contents >> because >> that would alter the width of the window so I need to do both >> SetExplicitMinSize and SetExplicitMaxSize. >> > > Do you mean resize in general, or only if a menu item gets chosen? > My original design was such that choosing a menu-item wouldn't cause the window to resize, so that the behaviour would be as similar to the FindPanel before the use of the Layout API. This is what ResizeMenuField does (loops through all menu items, finding the longest string). However, in some circumstances, the mime type menu field ends up unreasonably large, so John has chosen a fixed size that should be sufficient for the general case, with only very large menu item text (presumably) getting clipped. An alternative might have been to pass a maximum to ResizeMenuField, so that width = std::min(maximumAllowedWidth, width); Jessica