13.11. Screen InformationThe following methods all return information based on the screen (which can be a virtual desktop or a normal desktop) and the colors of the desktop. 13.11.1. Screen NameEach screen you use has a name associated with it. To get the name, use the screen method: $name = $widget->screen; The name returned will be formatted as "displayName.screenIndex". For more details refer to Chapter 11, " Frame, MainWindow,and Toplevel Widgets". 13.11.2. Screen Height and WidthThe screen height and width is really just the resolution of the screen. Sometimes you might need information to determine how large a window can fit on a user's display. To get the height and width of the screen in pixels, use the screenheight and screenwidth methods: $height = $widget->screenheight; $width = $widget->screenwidth; If your display dimensions are 1024x768, then screenheight returns 768 and screenwidth returns 1024. If you prefer to get the size of the screen in millimeters, use screenmmheight and screenmmwidth: $heightmm = $widget->screenmmheight; $widthmm = $widget->screenmmwidth; The same resolution, 1024x768, returns 203 millimeters as the height and 270 millimeters as the width. 13.11.3. Cell CountThe number of cells in the default colormap is retrieved by using screencells: $count = $widget->screencells; 13.11.4. Screen DepthTo determine the number of bits per pixel your screen has, use the screendepth method: $depth = $widget->screendepth; 13.11.5. Color TypeThe type of color is defined by one of the following classes: "directcolor", "grayscale", "pseudocolor", "staticcolor", "staticgray", or "truecolor". To determine the class for the screen that contains the widget, use screenvisual: $type = $widget->screenvisual; To determine the class of color for the widget itself, use visual: $type = $widget->visual; To determine the X identifier for the visual for $widget, use visualid. $xid = $widget->visualid; To find out the entire list of classes available for the current setup, use the visualsavailable method: @list = $widget->visualsavailable Each element in @list describes the visual and the color depth for that visual. For instance, you might see: pseudocolor 8 directcolor 8 grayscale 8 staticcolor 8 truecolor 8 staticgray 8 13.11.6. Server TypeThe type of server is available through the server method: $server_type = $widget->server; An older Win32 machine has a server type of "Windows 4.0 67109975 Win32". Regardless, this information is generally inconsistent, if not incorrect, so treat it as suspect data. 13.11.7. Is the Widget Viewable?A widget is determined viewable if the widget and all of its ancestors are mapped. You can ask the widget itself if it is viewable by using the viewable method: $isviewable = $widget->viewable; viewable returns 1 if the widget can be viewed and if not. Copyright © 2002 O'Reilly & Associates. All rights reserved. |
|