Пример #1
0
 public void SetToolbarProvider(IToolbarProvider toolbarProvider)
 {
     PropertyGridToolbar t = toolbar as PropertyGridToolbar;
     if (t == null)
         throw new InvalidOperationException ("Custom toolbar provider already set");
     Remove (t);
     foreach (Widget w in t.Children) {
         t.Remove (w);
         toolbarProvider.Insert (w, -1);
     }
     t.Destroy ();
     toolbarSeparator.Hide ();
     toolbar = toolbarProvider;
     UpdateTabs ();
 }
Пример #2
0
        internal PropertyGrid(EditorManager editorManager)
        {
            this.editorManager = editorManager;

            #region Toolbar

            PropertyGridToolbar tb = new PropertyGridToolbar ();
            base.PackStart (tb, false, false, 0);
            toolbar = tb;

            catButton = new RadioButton ((Gtk.RadioButton)null);
            catButton.DrawIndicator = false;
            catButton.Relief = ReliefStyle.None;
            catButton.Image = new Gtk.Image (MonoDevelop.Ide.Gui.Stock.GroupByCategory, IconSize.Menu);
            catButton.Image.Show ();
            catButton.TooltipText = GettextCatalog.GetString ("Sort in categories");
            catButton.Toggled += new EventHandler (toolbarClick);
            toolbar.Insert (catButton, 0);

            alphButton = new RadioButton (catButton);
            alphButton.DrawIndicator = false;
            alphButton.Relief = ReliefStyle.None;
            alphButton.Image = new Gtk.Image (MonoDevelop.Ide.Gui.Stock.SortAlphabetically, IconSize.Menu);
            alphButton.Image.Show ();
            alphButton.TooltipText = GettextCatalog.GetString ("Sort alphabetically");
            alphButton.Clicked += new EventHandler (toolbarClick);
            toolbar.Insert (alphButton, 1);

            catButton.Active = true;

            #endregion

            vpaned = new VPaned ();

            tree = new PropertyGridTable (editorManager, this);
            tree.Changed += delegate {
                Update ();
            };

            CompactScrolledWindow sw = new CompactScrolledWindow ();
            sw.AddWithViewport (tree);
            ((Gtk.Viewport)sw.Child).ShadowType = Gtk.ShadowType.None;
            sw.ShadowType = Gtk.ShadowType.None;
            sw.HscrollbarPolicy = PolicyType.Never;
            sw.VscrollbarPolicy = PolicyType.Automatic;

            VBox tbox = new VBox ();
            toolbarSeparator = new HSeparator ();
            toolbarSeparator.Visible = true;
            tbox.PackStart (toolbarSeparator, false, false, 0);
            tbox.PackStart (sw, true, true, 0);
            helpSeparator = new HSeparator ();
            tbox.PackStart (helpSeparator, false, false, 0);
            helpSeparator.NoShowAll = true;
            vpaned.Pack1 (tbox, true, true);

            AddPropertyTab (new DefaultPropertyTab ());
            AddPropertyTab (new EventPropertyTab ());

            base.PackEnd (vpaned);
            base.FocusChain = new Gtk.Widget [] { vpaned };

            Populate ();
            UpdateTabs ();
        }
Пример #3
0
        internal PropertyGrid(EditorManager editorManager)
        {
            this.editorManager = editorManager;

            #region Toolbar

            PropertyGridToolbar tb = new PropertyGridToolbar ();
            base.PackStart (tb, false, false, 0);
            toolbar = tb;

            catButton = new RadioButton ((Gtk.RadioButton)null);
            catButton.DrawIndicator = false;
            catButton.Relief = ReliefStyle.None;
            Gdk.Pixbuf pixbuf = null;
            //			try {
            //				pixbuf = new Gdk.Pixbuf (typeof (PropertyGrid).Assembly, "MonoDevelop.Components.PropertyGrid.SortByCat.png");
            //			} catch {}
            //(Exception e) {
                //LoggingService.LogError ("Can't create pixbuf from resource: MonoDevelop.Components.PropertyGrid.SortByCat.png", e);
            //}
            if (pixbuf != null) {
                catButton.Image = new Gtk.Image (pixbuf);
                catButton.Image.Show ();
            }
            catButton.TooltipText = "Sort in categories";
            catButton.Toggled += new EventHandler (toolbarClick);
            toolbar.Insert (catButton, 0);

            alphButton = new RadioButton (catButton);
            alphButton.DrawIndicator = false;
            alphButton.Relief = ReliefStyle.None;
            alphButton.Image = new Gtk.Image (Stock.SortAscending, IconSize.Menu);
            alphButton.Image.Show ();
            alphButton.TooltipText = "Sort alphabetically";
            alphButton.Clicked += new EventHandler (toolbarClick);
            toolbar.Insert (alphButton, 1);

            catButton.Active = true;

            toolbar.Insert (new SeparatorToolItem (), 2);
            helpButton = new ToggleButton ();
            helpButton.Relief = ReliefStyle.None;
            helpButton.Image = new Gtk.Image (Gtk.Stock.Help, IconSize.Menu);
            helpButton.TooltipText = "Show help panel";
            helpButton.Clicked += delegate {
                ShowHelp = helpButton.Active;
                //MonoDevelop.Core.PropertyService.Set (PROP_HELP_KEY, helpButton.Active);
            };
            toolbar.Insert (helpButton, 3);

            #endregion

            vpaned = new VPaned ();

            tree = new PropertyGridTree (editorManager, this);
            tree.Changed += delegate {
                Update ();
            };

            VBox tbox = new VBox ();
            toolbarSeparator = new HSeparator ();
            toolbarSeparator.Visible = true;
            tbox.PackStart (toolbarSeparator, false, false, 0);
            tbox.PackStart (tree, true, true, 0);
            helpSeparator = new HSeparator ();
            tbox.PackStart (helpSeparator, false, false, 0);
            helpSeparator.NoShowAll = true;
            vpaned.Pack1 (tbox, true, true);

            AddPropertyTab (new DefaultPropertyTab ());
            AddPropertyTab (new EventPropertyTab ());

            base.PackEnd (vpaned);
            base.FocusChain = new Gtk.Widget [] { vpaned };

            //helpButton.Active = ShowHelp = MonoDevelop.Core.PropertyService.Get<bool> (PROP_HELP_KEY, true);

            Populate ();
            UpdateTabs ();
        }
Пример #4
0
		void ClearCommandBar()
		{
#if !WINDOWS_UWP
			_page.BottomAppBar = null;
#else
			if (_toolbarProvider != null)
			{
				_toolbarProvider = null;
				if (Device.Idiom == TargetIdiom.Phone)
					_page.BottomAppBar = null;
				else
					_page.TopAppBar = null;
			}
#endif
		}
Пример #5
0
		internal PropertyGrid (EditorManager editorManager)
		{
			this.editorManager = editorManager;
			
			#region Toolbar
			
			PropertyGridToolbar tb = new PropertyGridToolbar ();
			base.PackStart (tb, false, false, 0);
			toolbar = tb;
			
			catButton = new RadioButton ((Gtk.RadioButton)null);
			catButton.DrawIndicator = false;
			catButton.Relief = ReliefStyle.None;
			Gdk.Pixbuf pixbuf = null;
			try {
				pixbuf = new Gdk.Pixbuf (typeof (PropertyGrid).Assembly, "MonoDevelop.Components.PropertyGrid.SortByCat.png");
			} catch (Exception e) {
				LoggingService.LogError ("Can't create pixbuf from resource: MonoDevelop.Components.PropertyGrid.SortByCat.png", e);
			}
			if (pixbuf != null) {
				catButton.Image = new Gtk.Image (pixbuf);
				catButton.Image.Show ();
			}
			catButton.TooltipText = GettextCatalog.GetString ("Sort in categories");
			catButton.Toggled += new EventHandler (toolbarClick);
			toolbar.Insert (catButton, 0);
			
			alphButton = new RadioButton (catButton);
			alphButton.DrawIndicator = false;
			alphButton.Relief = ReliefStyle.None;
			alphButton.Image = new Gtk.Image (Stock.SortAscending, IconSize.Menu);
			alphButton.Image.Show ();
			alphButton.TooltipText = GettextCatalog.GetString ("Sort alphabetically");
			alphButton.Clicked += new EventHandler (toolbarClick);
			toolbar.Insert (alphButton, 1);
			
			catButton.Active = true;
			
			#endregion

			vpaned = new VPaned ();

			tree = new PropertyGridTable (editorManager, this);
			tree.Changed += delegate {
				Update ();
			};

			CompactScrolledWindow sw = new CompactScrolledWindow ();
			sw.AddWithViewport (tree);
			((Gtk.Viewport)sw.Child).ShadowType = Gtk.ShadowType.None;
			sw.ShadowType = Gtk.ShadowType.None;
			sw.HscrollbarPolicy = PolicyType.Never;
			sw.VscrollbarPolicy = PolicyType.Automatic;

			VBox tbox = new VBox ();
			toolbarSeparator = new HSeparator ();
			toolbarSeparator.Visible = true;
			tbox.PackStart (toolbarSeparator, false, false, 0);
			tbox.PackStart (sw, true, true, 0);
			helpSeparator = new HSeparator ();
			tbox.PackStart (helpSeparator, false, false, 0);
			helpSeparator.NoShowAll = true;
			vpaned.Pack1 (tbox, true, true);
			
			AddPropertyTab (new DefaultPropertyTab ());
			AddPropertyTab (new EventPropertyTab ());

			base.PackEnd (vpaned);
			base.FocusChain = new Gtk.Widget [] { vpaned };
			
			Populate ();
			UpdateTabs ();
		}
Пример #6
0
		CommandBar CreateCommandBar()
		{
#if !WINDOWS_UWP
			var commandBar = new CommandBar();
			_page.BottomAppBar = commandBar;
			return commandBar;
#else
			var bar = new FormsCommandBar();
			if (Device.Idiom != TargetIdiom.Phone)
				bar.Style = (Windows.UI.Xaml.Style)Windows.UI.Xaml.Application.Current.Resources["TitleToolbar"];

			_toolbarProvider = new ToolbarProvider(bar);

			if (Device.Idiom == TargetIdiom.Phone)
				_page.BottomAppBar = bar;
			else
				_page.TopAppBar = bar;

			return bar;
#endif
		}
Пример #7
0
        internal PropertyGrid(EditorManager editorManager)
        {
            this.editorManager = editorManager;

            #region Toolbar

            PropertyGridToolbar tb = new PropertyGridToolbar();
            base.PackStart(tb, false, false, 0);
            toolbar = tb;

            catButton               = new RadioButton((Gtk.RadioButton)null);
            catButton.Name          = "MonoDevelop.PropertyGridToolbar.GtkRadioButton";
            catButton.DrawIndicator = false;
            catButton.Relief        = ReliefStyle.None;
            catButton.Image         = new ImageView(MonoDevelop.Ide.Gui.Stock.GroupByCategory, IconSize.Menu);
            catButton.Image.Show();
            catButton.TooltipText = GettextCatalog.GetString("Sort in categories");
            catButton.Toggled    += new EventHandler(toolbarClick);
            toolbar.Insert(catButton, 0);

            alphButton               = new RadioButton(catButton);
            alphButton.Name          = "MonoDevelop.PropertyGridToolbar.GtkRadioButton";
            alphButton.DrawIndicator = false;
            alphButton.Relief        = ReliefStyle.None;
            alphButton.Image         = new ImageView(MonoDevelop.Ide.Gui.Stock.SortAlphabetically, IconSize.Menu);
            alphButton.Image.Show();
            alphButton.TooltipText = GettextCatalog.GetString("Sort alphabetically");
            alphButton.Clicked    += new EventHandler(toolbarClick);
            toolbar.Insert(alphButton, 1);

            catButton.Active = true;

            #endregion

            vpaned = new VPaned();

            tree          = new PropertyGridTable(editorManager, this);
            tree.Changed += delegate {
                Update();
            };

            CompactScrolledWindow sw = new CompactScrolledWindow();
            sw.AddWithViewport(tree);
            ((Gtk.Viewport)sw.Child).ShadowType = Gtk.ShadowType.None;
            sw.ShadowType       = Gtk.ShadowType.None;
            sw.HscrollbarPolicy = PolicyType.Never;
            sw.VscrollbarPolicy = PolicyType.Automatic;

            VBox tbox = new VBox();
            toolbarSeparator         = new HSeparator();
            toolbarSeparator.Visible = true;
            tbox.PackStart(toolbarSeparator, false, false, 0);
            tbox.PackStart(sw, true, true, 0);
            helpSeparator = new HSeparator();
            tbox.PackStart(helpSeparator, false, false, 0);
            helpSeparator.NoShowAll = true;
            vpaned.Pack1(tbox, true, true);

            AddPropertyTab(new DefaultPropertyTab());
            AddPropertyTab(new EventPropertyTab());

            base.PackEnd(vpaned);
            base.FocusChain = new Gtk.Widget [] { vpaned };

            Populate();
            UpdateTabs();
        }
Пример #8
0
        internal PropertyGrid(EditorManager editorManager)
        {
            this.editorManager = editorManager;

            #region Toolbar

            PropertyGridToolbar tb = new PropertyGridToolbar();
            base.PackStart(tb, false, false, 0);
            toolbar = tb;

            catButton = new RadioButton((Gtk.RadioButton)null);
            catButton.DrawIndicator = false;
            catButton.Relief        = ReliefStyle.None;
            Gdk.Pixbuf pixbuf = null;
            try
            {
                pixbuf = new Gdk.Pixbuf(typeof(PropertyGrid).Assembly, "Docking.Monodevelop.Components.MonoDevelop.Components.PropertyGrid.SortByCat.png");
            }
            catch (Exception e)
            {
                Console.WriteLine("Can't create pixbuf from resource: Docking.Monodevelop.Components.MonoDevelop.Components.PropertyGrid.SortByCat.png", e);
            }
            if (pixbuf != null)
            {
                catButton.Image = new Gtk.Image(pixbuf);
                catButton.Image.Show();
            }
            catButton.TooltipText = "Sort in categories";
            catButton.Toggled    += new EventHandler(toolbarClick);
            toolbar.Insert(catButton, 0);

            alphButton = new RadioButton(catButton);
            alphButton.DrawIndicator = false;
            alphButton.Relief        = ReliefStyle.None;
            alphButton.Image         = new Gtk.Image(Stock.SortAscending, IconSize.Menu);
            alphButton.Image.Show();
            alphButton.TooltipText = "Sort alphabetically";
            alphButton.Clicked    += new EventHandler(toolbarClick);
            toolbar.Insert(alphButton, 1);

            catButton.Active = true;

            toolbar.Insert(new SeparatorToolItem(), 2);
            helpButton        = new ToggleButton();
            helpButton.Relief = ReliefStyle.None;
            pixbuf            = null;
            try
            {
                pixbuf = new Gdk.Pixbuf(typeof(PropertyGrid).Assembly, "Docking.Monodevelop.Components.MonoDevelop.Components.PropertyGrid.Tip.png");
            }
            catch (Exception e)
            {
                Console.WriteLine("Can't create pixbuf from resource: Docking.Monodevelop.Components.MonoDevelop.Components.PropertyGrid.Tip.png", e);
            }
            if (pixbuf != null)
            {
                helpButton.Image = new Gtk.Image(pixbuf);
            }
            helpButton.TooltipText = "Show help panel";
            helpButton.Clicked    += delegate
            {
                ShowHelp = helpButton.Active;
                //	MonoDevelop.Core.PropertyService.Set (PROP_HELP_KEY, helpButton.Active);
            };
            toolbar.Insert(helpButton, 3);

            #endregion

            vpaned = new VPaned();

            tree          = new PropertyGridTree(editorManager, this);
            tree.Changed += delegate
            {
                Update();
            };

            VBox tbox = new VBox();
            toolbarSeparator         = new HSeparator();
            toolbarSeparator.Visible = true;
            tbox.PackStart(toolbarSeparator, false, false, 0);
            tbox.PackStart(tree, true, true, 0);
            helpSeparator = new HSeparator();
            tbox.PackStart(helpSeparator, false, false, 0);
            helpSeparator.NoShowAll = true;
            vpaned.Pack1(tbox, true, true);

            AddPropertyTab(new DefaultPropertyTab());
            AddPropertyTab(new EventPropertyTab());

            base.PackEnd(vpaned);
            base.FocusChain = new Gtk.Widget[] { vpaned };

            helpButton.Active = ShowHelp = false; // TODO retrieve this setting from persistency

            Populate();
            UpdateTabs();
        }
Пример #9
0
 public virtual IToolbarProvider GetToolbarProvider()
 {
     return(m_ToolbarProvider ?? (m_ToolbarProvider = new ToolbarProvider()));
 }
Пример #10
0
        internal PropertyGrid(EditorManager editorManager)
        {
            this.editorManager = editorManager;
            #region Toolbar

            PropertyGridToolbar tb = new PropertyGridToolbar();
            base.PackStart(tb, false, false, 0);
            toolbar = tb;

            catButton = new RadioButton((Gtk.RadioButton)null);
            catButton.DrawIndicator = false;
            catButton.Relief        = ReliefStyle.None;
            Gdk.Pixbuf pixbuf = null;
            try {
                pixbuf = new Gdk.Pixbuf(typeof(PropertyGrid).Assembly, "MonoDevelop.Components.PropertyGrid.SortByCat.png");
            } catch (Exception e) {
                NLog.LogManager.GetCurrentClassLogger().Error("Can't create pixbuf from resource: MonoDevelop.Components.PropertyGrid.SortByCat.png", e);
            }
            if (pixbuf != null)
            {
                catButton.Image = new Gtk.Image(pixbuf);
                catButton.Image.Show();
            }
            catButton.TooltipText = Catalog.GetString("Sort in categories");
            catButton.Toggled    += new EventHandler(toolbarClick);
            toolbar.Insert(catButton, 0);

            alphButton = new RadioButton(catButton);
            alphButton.DrawIndicator = false;
            alphButton.Relief        = ReliefStyle.None;
            alphButton.Image         = new Gtk.Image(Stock.SortAscending, IconSize.Menu);
            alphButton.Image.Show();
            alphButton.TooltipText = Catalog.GetString("Sort alphabetically");
            alphButton.Clicked    += new EventHandler(toolbarClick);
            toolbar.Insert(alphButton, 1);

            catButton.Active = true;

            toolbar.Insert(new SeparatorToolItem(), 2);
            helpButton             = new ToggleButton();
            helpButton.Relief      = ReliefStyle.None;
            helpButton.Image       = new Gtk.Image(Gtk.Stock.Help, IconSize.Menu);
            helpButton.TooltipText = Catalog.GetString("Show help panel");
            helpButton.Clicked    += delegate {
                ShowHelp = helpButton.Active;
                //MonoDevelop.Core.PropertyService.Set (PROP_HELP_KEY, helpButton.Active);
            };
            toolbar.Insert(helpButton, 3);

            #endregion

            vpaned = new VPaned();

            tree = new PropertyGridTree(editorManager, this);

            // HERZUM SPRINT 4.2: TLAB-225
            tree.VscrollbarPolicy = PolicyType.Never;
            // END HERZUM SPRINT 4.2: TLAB-225


            tree.Changed += delegate {
                Update();
            };

            VBox tbox = new VBox();
            toolbarSeparator         = new HSeparator();
            toolbarSeparator.Visible = true;
            tbox.PackStart(toolbarSeparator, false, false, 0);
            tbox.PackStart(tree, true, true, 0);
            helpSeparator = new HSeparator();
            tbox.PackStart(helpSeparator, false, false, 0);
            helpSeparator.NoShowAll = true;
            vpaned.Pack1(tbox, true, true);

            AddPropertyTab(new DefaultPropertyTab());
            AddPropertyTab(new EventPropertyTab());

            base.PackEnd(vpaned);
            base.FocusChain = new Gtk.Widget [] { vpaned };

            //helpButton.Active = ShowHelp = MonoDevelop.Core.PropertyService.Get<bool> (PROP_HELP_KEY, true);
            helpButton.Active = ShowHelp = false;

            Populate();
            UpdateTabs();
        }