<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://jexp.ru/index.php?action=history&amp;feed=atom&amp;title=Java_Tutorial%2FSWT%2FSWT_Basics</id>
		<title>Java Tutorial/SWT/SWT Basics - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://jexp.ru/index.php?action=history&amp;feed=atom&amp;title=Java_Tutorial%2FSWT%2FSWT_Basics"/>
		<link rel="alternate" type="text/html" href="http://jexp.ru/index.php?title=Java_Tutorial/SWT/SWT_Basics&amp;action=history"/>
		<updated>2026-04-10T14:20:53Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://jexp.ru/index.php?title=Java_Tutorial/SWT/SWT_Basics&amp;diff=3215&amp;oldid=prev</id>
		<title> в 17:44, 31 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://jexp.ru/index.php?title=Java_Tutorial/SWT/SWT_Basics&amp;diff=3215&amp;oldid=prev"/>
				<updated>2010-05-31T17:44:26Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Версия 17:44, 31 мая 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
			</entry>

	<entry>
		<id>http://jexp.ru/index.php?title=Java_Tutorial/SWT/SWT_Basics&amp;diff=3216&amp;oldid=prev</id>
		<title>Admin: 1 версия</title>
		<link rel="alternate" type="text/html" href="http://jexp.ru/index.php?title=Java_Tutorial/SWT/SWT_Basics&amp;diff=3216&amp;oldid=prev"/>
				<updated>2010-05-31T15:22:08Z</updated>
		
		<summary type="html">&lt;p&gt;1 версия&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==  Coding Your First SWT Program: Hello World ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import org.eclipse.swt.widgets.Display;&lt;br /&gt;
import org.eclipse.swt.widgets.Shell;&lt;br /&gt;
public class SWTFirst {&lt;br /&gt;
  public static void main(String[] args) {&lt;br /&gt;
    Display display = new Display();&lt;br /&gt;
    Shell shell = new Shell(display);&lt;br /&gt;
    shell.setText(&amp;quot;Hello, world!&amp;quot;);&lt;br /&gt;
    shell.open();&lt;br /&gt;
    // Set up the event loop.&lt;br /&gt;
    while (!shell.isDisposed()) {&lt;br /&gt;
      if (!display.readAndDispatch()) {&lt;br /&gt;
        // If no more entries in the event queue&lt;br /&gt;
        display.sleep();&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
    display.dispose();&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Operating System Resources ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;Operating system resources in SWT refer to native resources used by those (operating system) resourcebased objects, e.g. Display, Color, Font, GC, Image, Printer, Region, and Widgets.&lt;br /&gt;
Most of the classes in the following packages are resource-based:&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
org.eclipse.swt.custom&lt;br /&gt;
org.eclipse.swt.graphics&lt;br /&gt;
org.eclipse.swt.widgets&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;You can check whether a class has a dispose() method. If it does, then it is very likely resource-based. Otherwise, it isn&amp;quot;t.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  SWT useful utilities ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
/*&lt;br /&gt;
 * (c) Copyright 2004 by Heng Yuan&lt;br /&gt;
 *&lt;br /&gt;
 * Permission is hereby granted, free of charge, to any person obtaining a&lt;br /&gt;
 * copy of this software and associated documentation files (the &amp;quot;Software&amp;quot;),&lt;br /&gt;
 * to deal in the Software without restriction, including without limitation&lt;br /&gt;
 * the rights to use, copy, modify, merge, publish, distribute, sublicense,&lt;br /&gt;
 * and/or sell copies of the Software, and to permit persons to whom the&lt;br /&gt;
 * Software is furnished to do so, subject to the following conditions:&lt;br /&gt;
 *&lt;br /&gt;
 * The above copyright notice and this permission notice shall be included&lt;br /&gt;
 * in all copies or substantial portions of the Software.&lt;br /&gt;
 *&lt;br /&gt;
 * THE SOFTWARE IS PROVIDED &amp;quot;AS IS&amp;quot;, WITHOUT WARRANTY OF ANY KIND, EXPRESS&lt;br /&gt;
 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,&lt;br /&gt;
 * ITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE&lt;br /&gt;
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER&lt;br /&gt;
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING&lt;br /&gt;
 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER&lt;br /&gt;
 * DEALINGS IN THE SOFTWARE.&lt;br /&gt;
 */&lt;br /&gt;
package cookxml.cookswt.util;&lt;br /&gt;
import java.util.HashMap;&lt;br /&gt;
import org.eclipse.swt.SWT;&lt;br /&gt;
import org.eclipse.swt.graphics.*;&lt;br /&gt;
import org.eclipse.swt.widgets.*;&lt;br /&gt;
/**&lt;br /&gt;
 * SWT useful utilities.&lt;br /&gt;
 *&lt;br /&gt;
 * @since CookSwt 1.0&lt;br /&gt;
 * @author Heng Yuan&lt;br /&gt;
 */&lt;br /&gt;
public class SwtUtils&lt;br /&gt;
{&lt;br /&gt;
  /**&lt;br /&gt;
   * automatically dispose Color resource&lt;br /&gt;
   */&lt;br /&gt;
  public static boolean autoDisposeColor = true;&lt;br /&gt;
  /**&lt;br /&gt;
   * automatically dispose Font resource&lt;br /&gt;
   */&lt;br /&gt;
  public static boolean autoDisposeFont = true;&lt;br /&gt;
  /**&lt;br /&gt;
   * automatically dispose Image resource&lt;br /&gt;
   */&lt;br /&gt;
  public static boolean autoDisposeImage = true;&lt;br /&gt;
  /**&lt;br /&gt;
   * automatically dispose Image resource&lt;br /&gt;
   */&lt;br /&gt;
  public static boolean autoDisposeCursor = true;&lt;br /&gt;
  /**&lt;br /&gt;
   * This is a table of system colors that cannot be disposed.&lt;br /&gt;
   */&lt;br /&gt;
  private static HashMap s_systemColorTable;&lt;br /&gt;
  /**&lt;br /&gt;
   * This is a table of system cursors that cannot be disposed.&lt;br /&gt;
   */&lt;br /&gt;
  private static HashMap s_systemCursorTable;&lt;br /&gt;
  /**&lt;br /&gt;
   * This is a table of system images that cannot be disposed.&lt;br /&gt;
   */&lt;br /&gt;
  private static HashMap s_systemImageTable;&lt;br /&gt;
  /**&lt;br /&gt;
   * Setup the system color table for the given device.&lt;br /&gt;
   *&lt;br /&gt;
   * @param  device the display device.&lt;br /&gt;
   */&lt;br /&gt;
  private static void setupSystemColorTable (Device device)&lt;br /&gt;
  {&lt;br /&gt;
    HashMap colorTable = new HashMap ();&lt;br /&gt;
    for (int i = 0; i &amp;lt;= 35; ++i)&lt;br /&gt;
    {&lt;br /&gt;
      Color c = device.getSystemColor (i);&lt;br /&gt;
      colorTable.put (c, c);&lt;br /&gt;
    }&lt;br /&gt;
    s_systemColorTable = colorTable;&lt;br /&gt;
  }&lt;br /&gt;
  /**&lt;br /&gt;
   * Setup the system cursor table for the given device.&lt;br /&gt;
   *&lt;br /&gt;
   * @param  display the display device.&lt;br /&gt;
   */&lt;br /&gt;
  private static void setupSystemCursorTable (Display display)&lt;br /&gt;
  {&lt;br /&gt;
    HashMap cursorTable = new HashMap ();&lt;br /&gt;
    for (int i = 0; i &amp;lt;= 21; ++i)&lt;br /&gt;
    {&lt;br /&gt;
      Cursor c = display.getSystemCursor (i);&lt;br /&gt;
      cursorTable.put (c, c);&lt;br /&gt;
    }&lt;br /&gt;
    s_systemCursorTable = cursorTable;&lt;br /&gt;
  }&lt;br /&gt;
  /**&lt;br /&gt;
   * Setup the system cursor table for the given device.&lt;br /&gt;
   *&lt;br /&gt;
   * @param  display the display device.&lt;br /&gt;
   */&lt;br /&gt;
  private static void setupSystemImageTable (Display display)&lt;br /&gt;
  {&lt;br /&gt;
    HashMap imageTable = new HashMap ();&lt;br /&gt;
    Image image;&lt;br /&gt;
    image = display.getSystemImage (SWT.ICON_ERROR);&lt;br /&gt;
    imageTable.put (image, image);&lt;br /&gt;
    image = display.getSystemImage (SWT.ICON_INFORMATION);&lt;br /&gt;
    imageTable.put (image, image);&lt;br /&gt;
    image = display.getSystemImage (SWT.ICON_QUESTION);&lt;br /&gt;
    imageTable.put (image, image);&lt;br /&gt;
    image = display.getSystemImage (SWT.ICON_WARNING);&lt;br /&gt;
    imageTable.put (image, image);&lt;br /&gt;
    image = display.getSystemImage (SWT.ICON_WORKING);&lt;br /&gt;
    imageTable.put (image, image);&lt;br /&gt;
    s_systemImageTable = imageTable;&lt;br /&gt;
  }&lt;br /&gt;
  /**&lt;br /&gt;
   * Check if a color is a system color.  A system color cannot be disposed.&lt;br /&gt;
   *&lt;br /&gt;
   * @param  color The color to be disposed.&lt;br /&gt;
   * @param  device The device that contains the color.&lt;br /&gt;
   */&lt;br /&gt;
  public static boolean isSystemColor (Color color, Device device)&lt;br /&gt;
  {&lt;br /&gt;
    if (s_systemColorTable == null)&lt;br /&gt;
      setupSystemColorTable (device);&lt;br /&gt;
    return s_systemColorTable.get (color) == color;&lt;br /&gt;
  }&lt;br /&gt;
  /**&lt;br /&gt;
   * Check if a color is a system color.  A system color cannot be disposed.&lt;br /&gt;
   *&lt;br /&gt;
   * @param  cursor The cursor to be disposed.&lt;br /&gt;
   * @param  display The display device.&lt;br /&gt;
   */&lt;br /&gt;
  public static boolean isSystemCursor (Cursor cursor, Display display)&lt;br /&gt;
  {&lt;br /&gt;
    if (s_systemCursorTable == null)&lt;br /&gt;
      setupSystemCursorTable (display);&lt;br /&gt;
    return s_systemCursorTable.get (cursor) == cursor;&lt;br /&gt;
  }&lt;br /&gt;
  /**&lt;br /&gt;
   * Check if a color is a system color.  A system color cannot be disposed.&lt;br /&gt;
   *&lt;br /&gt;
   * @param  image The image to be disposed.&lt;br /&gt;
   * @param  display The display device.&lt;br /&gt;
   */&lt;br /&gt;
  public static boolean isSystemImage (Image image, Display display)&lt;br /&gt;
  {&lt;br /&gt;
    if (s_systemImageTable == null)&lt;br /&gt;
      setupSystemImageTable (display);&lt;br /&gt;
    return s_systemImageTable.get (image) == image;&lt;br /&gt;
  }&lt;br /&gt;
  /**&lt;br /&gt;
   * Check if a color is a system color.  A system color cannot be disposed.&lt;br /&gt;
   *&lt;br /&gt;
   * @param  font The font to be disposed.&lt;br /&gt;
   * @param  device The display device.&lt;br /&gt;
   */&lt;br /&gt;
  public static boolean isSystemFont (Font font, Device device)&lt;br /&gt;
  {&lt;br /&gt;
    return device.getSystemFont () == font;&lt;br /&gt;
  }&lt;br /&gt;
  /**&lt;br /&gt;
   * Dispose a color if it is not a system color.&lt;br /&gt;
   *&lt;br /&gt;
   * @param  color The color to be disposed.&lt;br /&gt;
   * @param  device The device that contains the color.&lt;br /&gt;
   */&lt;br /&gt;
  public static void disposeColor (Color color, Device device)&lt;br /&gt;
  {&lt;br /&gt;
    if (color.isDisposed ())&lt;br /&gt;
      return;&lt;br /&gt;
    if (!isSystemColor (color, device))&lt;br /&gt;
    {&lt;br /&gt;
      assert disposeDebug (&amp;quot;Dispose color: &amp;quot; + color);&lt;br /&gt;
      color.dispose ();&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
  /**&lt;br /&gt;
   * Dispose a color if it is not a system color.&lt;br /&gt;
   *&lt;br /&gt;
   * @param  image The image to be disposed.&lt;br /&gt;
   * @param  device The device that contains the color.&lt;br /&gt;
   */&lt;br /&gt;
  public static void disposeImage (Image image, Display device)&lt;br /&gt;
  {&lt;br /&gt;
    if (image.isDisposed ())&lt;br /&gt;
      return;&lt;br /&gt;
    if (!isSystemImage (image, device))&lt;br /&gt;
    {&lt;br /&gt;
      assert disposeDebug (&amp;quot;Dispose image: &amp;quot; + image);&lt;br /&gt;
      image.dispose ();&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
  /**&lt;br /&gt;
   * Attach a DisposeListener that dispose the resource when the widget&lt;br /&gt;
   * object is disposed.&lt;br /&gt;
   *&lt;br /&gt;
   * @param  widget the widget to listen to.&lt;br /&gt;
   * @param  color the resource to be disposed.&lt;br /&gt;
   */&lt;br /&gt;
  public static void attachColorDisposeListener (Widget widget, Color color)&lt;br /&gt;
  {&lt;br /&gt;
    if (autoDisposeColor &amp;amp;&amp;amp;&lt;br /&gt;
      !isSystemColor (color, widget.getDisplay ()))&lt;br /&gt;
      widget.addDisposeListener (new ColorDisposeListener (color));&lt;br /&gt;
  }&lt;br /&gt;
  /**&lt;br /&gt;
   * Attach a DisposeListener that dispose the resource when the widget&lt;br /&gt;
   * object is disposed.&lt;br /&gt;
   *&lt;br /&gt;
   * @param  widget the widget to listen to.&lt;br /&gt;
   * @param  cursor the resource to be disposed.&lt;br /&gt;
   */&lt;br /&gt;
  public static void attachCursorDisposeListener (Widget widget, Cursor cursor)&lt;br /&gt;
  {&lt;br /&gt;
    if (autoDisposeCursor &amp;amp;&amp;amp;&lt;br /&gt;
      !isSystemCursor (cursor, widget.getDisplay ()))&lt;br /&gt;
      widget.addDisposeListener (new CursorDisposeListener (cursor));&lt;br /&gt;
  }&lt;br /&gt;
  /**&lt;br /&gt;
   * Attach a DisposeListener that dispose the resource when the widget&lt;br /&gt;
   * object is disposed.&lt;br /&gt;
   *&lt;br /&gt;
   * @param  widget the widget to listen to.&lt;br /&gt;
   * @param  font the resource to be disposed.&lt;br /&gt;
   */&lt;br /&gt;
  public static void attachFontDisposeListener (Widget widget, Font font)&lt;br /&gt;
  {&lt;br /&gt;
    if (autoDisposeFont &amp;amp;&amp;amp;&lt;br /&gt;
      !isSystemFont (font, widget.getDisplay ()))&lt;br /&gt;
      widget.addDisposeListener (new FontDisposeListener (font));&lt;br /&gt;
  }&lt;br /&gt;
  /**&lt;br /&gt;
   * Attach a DisposeListener that dispose the resource when the widget&lt;br /&gt;
   * object is disposed.&lt;br /&gt;
   *&lt;br /&gt;
   * @param  widget the widget to listen to.&lt;br /&gt;
   * @param  image the resource to be disposed.&lt;br /&gt;
   */&lt;br /&gt;
  public static void attachImageDisposeListener (Widget widget, Image image)&lt;br /&gt;
  {&lt;br /&gt;
    if (autoDisposeImage &amp;amp;&amp;amp;&lt;br /&gt;
       !isSystemImage (image, widget.getDisplay ()))&lt;br /&gt;
      widget.addDisposeListener (new ImageDisposeListener (image));&lt;br /&gt;
  }&lt;br /&gt;
  /**&lt;br /&gt;
   * Attach a dropdown menu to a drop down ToolItem.  The drop down menu will be&lt;br /&gt;
   * automatically positioned and displayed at under the ToolItem.&lt;br /&gt;
   *&lt;br /&gt;
   * @param  item the drop down tool item&lt;br /&gt;
   * @param  menu the drop down menu&lt;br /&gt;
   */&lt;br /&gt;
  public static void attachToolItemDropDownMenu (ToolItem item, Menu menu)&lt;br /&gt;
  {&lt;br /&gt;
    item.addSelectionListener (new DropDownListener (menu));&lt;br /&gt;
  }&lt;br /&gt;
  /**&lt;br /&gt;
   * Open all the shells inside the Display object and dispose the Display&lt;br /&gt;
   * after all shells are disposed.&lt;br /&gt;
   *&lt;br /&gt;
   * @param display the Display object.&lt;br /&gt;
   */&lt;br /&gt;
  public static void showDisplay (Display display)&lt;br /&gt;
  {&lt;br /&gt;
    // open shells for display&lt;br /&gt;
    Shell[] shells = display.getShells ();&lt;br /&gt;
    for (int i = 0; i &amp;lt; shells.length; ++i)&lt;br /&gt;
    {&lt;br /&gt;
      if (!shells[i].isDisposed () &amp;amp;&amp;amp; !shells[i].isVisible ())&lt;br /&gt;
        shells[i].open ();&lt;br /&gt;
    }&lt;br /&gt;
    // exit after all shells are disposed&lt;br /&gt;
    while (!display.isDisposed ())&lt;br /&gt;
    {&lt;br /&gt;
      shells = display.getShells ();&lt;br /&gt;
      boolean canExit = true;&lt;br /&gt;
      for (int i = 0; i &amp;lt; shells.length; ++i)&lt;br /&gt;
      {&lt;br /&gt;
        if (!shells[i].isDisposed ())&lt;br /&gt;
        {&lt;br /&gt;
          canExit = false;&lt;br /&gt;
          break;&lt;br /&gt;
        }&lt;br /&gt;
      }&lt;br /&gt;
      if (canExit)&lt;br /&gt;
        break;&lt;br /&gt;
      if (!display.readAndDispatch ())&lt;br /&gt;
        display.sleep ();&lt;br /&gt;
    }&lt;br /&gt;
    if (!display.isDisposed ())&lt;br /&gt;
      display.dispose ();&lt;br /&gt;
  }&lt;br /&gt;
  /**&lt;br /&gt;
   * This function is supposed to work in conjunction with assert to generate&lt;br /&gt;
   * a debug message but does not really throw an Exception&lt;br /&gt;
   *&lt;br /&gt;
   * @param  msg the message to be printed.&lt;br /&gt;
   * @return  true&lt;br /&gt;
   */&lt;br /&gt;
  public static boolean disposeDebug (String msg)&lt;br /&gt;
  {&lt;br /&gt;
    System.out.println (msg);&lt;br /&gt;
    return true;&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  The SWT Class-Constants and Methods ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;The SWT class contains a repository of class-level constants and methods to simplify SWT programming.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import org.eclipse.swt.SWT;&lt;br /&gt;
public class UsingSWTGettingPaltFormVersion {&lt;br /&gt;
  public static void main(String[] args) {&lt;br /&gt;
    System.out.println(SWT.getPlatform());&lt;br /&gt;
    System.out.println(SWT.getVersion());&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=codeResult&amp;gt;win32&lt;br /&gt;
3138&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Two simple rules to guide your disposal efforts ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;OL&amp;gt;&amp;lt;LI&amp;gt;If you created it, you dispose it.&amp;lt;/LI&amp;gt;&amp;lt;LI&amp;gt;Disposing the parent disposes the children.&amp;lt;/LI&amp;gt;&amp;lt;/OL&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;(from Carolyn MacLeod and Steve Northover)&amp;lt;/p&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>