internal void SetFloatMode (Gdk.Rectangle rect)
{
if (floatingWindow == null) {
ResetMode ();
SetRegionStyle (frame.GetRegionStyleForItem (this));
floatingWindow = new DockFloatingWindow ((Gtk.Window)frame.Toplevel, GetWindowTitle ());
Ide.IdeApp.CommandService.RegisterTopWindow (floatingWindow);
Gtk.VBox box = new Gtk.VBox ();
box.Show ();
box.PackStart (TitleTab, false, false, 0);
box.PackStart (Widget, true, true, 0);
floatingWindow.Add (box);
floatingWindow.DeleteEvent += delegate (object o, Gtk.DeleteEventArgs a) {
if (behavior == DockItemBehavior.CantClose)
Status = DockItemStatus.Dockable;
else
Visible = false;
a.RetVal = true;
};
}
floatingWindow.Move (rect.X, rect.Y);
floatingWindow.Resize (rect.Width, rect.Height);
floatingWindow.Show ();
if (titleTab != null)
titleTab.UpdateBehavior ();
Widget.Show ();
}