예제 #1
0
        public static Metacity.Preview Create(TopLevelWindow window)
        {
            Metacity.Preview metacityPreview;

            try {
                Metacity.Preview.Init();
                metacityPreview = new Metacity.Preview();
            }
            catch {
                return(null);
            }

            switch (window.TypeHint)
            {
            case Gdk.WindowTypeHint.Normal:
                metacityPreview.FrameType = Metacity.FrameType.Normal;
                break;

            case Gdk.WindowTypeHint.Dialog:
                metacityPreview.FrameType = window.Modal ? Metacity.FrameType.ModalDialog : Metacity.FrameType.Dialog;
                break;

            case Gdk.WindowTypeHint.Menu:
                metacityPreview.FrameType = Metacity.FrameType.Menu;
                break;

            case Gdk.WindowTypeHint.Splashscreen:
                metacityPreview.FrameType = Metacity.FrameType.Border;
                break;

            case Gdk.WindowTypeHint.Utility:
                metacityPreview.FrameType = Metacity.FrameType.Utility;
                break;

            default:
                metacityPreview.FrameType = Metacity.FrameType.Normal;
                break;
            }

            Metacity.FrameFlags flags =
                Metacity.FrameFlags.AllowsDelete |
                Metacity.FrameFlags.AllowsVerticalResize |
                Metacity.FrameFlags.AllowsHorizontalResize |
                Metacity.FrameFlags.AllowsMove |
                Metacity.FrameFlags.AllowsShade |
                Metacity.FrameFlags.HasFocus;

            if (window.Resizable)
            {
                flags = flags | Metacity.FrameFlags.AllowsMaximize;
            }

            metacityPreview.FrameFlags = flags;
            metacityPreview.ShowAll();
            metacityPreview.AddWindow(window);

            metacityPreview.Theme = GetTheme();

            return(metacityPreview);
        }
예제 #2
0
		public static Metacity.Preview Create (TopLevelWindow window)
		{
			Metacity.Preview metacityPreview;

			try {
				Metacity.Preview.Init ();
				metacityPreview = new Metacity.Preview ();
			}
			catch {
				return null;
			}

			switch (window.TypeHint) {
				case Gdk.WindowTypeHint.Normal:
					metacityPreview.FrameType = Metacity.FrameType.Normal;
					break;
				case Gdk.WindowTypeHint.Dialog:
					metacityPreview.FrameType = window.Modal ? Metacity.FrameType.ModalDialog : Metacity.FrameType.Dialog;
					break;
				case Gdk.WindowTypeHint.Menu:
					metacityPreview.FrameType = Metacity.FrameType.Menu;
					break;
				case Gdk.WindowTypeHint.Splashscreen:
					metacityPreview.FrameType = Metacity.FrameType.Border;
					break;
				case Gdk.WindowTypeHint.Utility:
					metacityPreview.FrameType = Metacity.FrameType.Utility;
					break;
				default:
					metacityPreview.FrameType = Metacity.FrameType.Normal;
					break;
			}

			Metacity.FrameFlags flags =
				Metacity.FrameFlags.AllowsDelete |
				Metacity.FrameFlags.AllowsVerticalResize |
				Metacity.FrameFlags.AllowsHorizontalResize |
				Metacity.FrameFlags.AllowsMove |
				Metacity.FrameFlags.AllowsShade |
				Metacity.FrameFlags.HasFocus;

			if (window.Resizable)
				flags = flags | Metacity.FrameFlags.AllowsMaximize;

			metacityPreview.FrameFlags = flags;
			metacityPreview.ShowAll ();
			metacityPreview.AddWindow (window);

			metacityPreview.Theme = GetTheme ();

			return metacityPreview;
		}