示例#1
0
		public virtual void eventDispatched(AWTEvent param1AWTEvent)
		{
		  bool @bool;
		  if (!(param1AWTEvent is MouseEvent))
		  {
			return;
		  }
		  MouseEvent mouseEvent = (MouseEvent)param1AWTEvent;
//JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final':
//ORIGINAL LINE: final java.awt.Component src = mouseEvent.getComponent();
		  Component src = mouseEvent.Component;
		  JPopupPanel jPopupPanel = (JPopupPanel)SwingUtilities.getAncestorOfClass(typeof(JPopupPanel), component);
		  if (jPopupPanel == null)
		  {
			CostOSRibbonApplicationMenuPopupPanel.CostOSApplicationMenuContainerPanel costOSApplicationMenuContainerPanel = (CostOSRibbonApplicationMenuPopupPanel.CostOSApplicationMenuContainerPanel)SwingUtilities.getAncestorOfClass(typeof(CostOSRibbonApplicationMenuPopupPanel.CostOSApplicationMenuContainerPanel), component);
			if (costOSApplicationMenuContainerPanel != null || param1AWTEvent.Source.ToString().ToLower().IndexOf("weight") != -1 || component is nomitech.common.laf.CostOSTitlePane)
			{
			  return;
			}
		  }
		  switch (mouseEvent.ID)
		  {
			case 501:
			  @bool = false;
			  if (component is JCommandButton)
			  {
				@bool = ((JCommandButton)component).PopupModel.PopupShowing;
			  }
			  if (!@bool && jPopupPanel != null)
			  {
				PopupPanelManager.defaultManager().hidePopups(jPopupPanel);
				return;
			  }
			  if (component is org.pushingpixels.flamingo.@internal.ui.ribbon.JRibbonTaskToggleButton)
			  {
				JRibbon jRibbon = (JRibbon)SwingUtilities.getAncestorOfClass(typeof(JRibbon), component);
				if (jRibbon != null && FlamingoUtilities.isShowingMinimizedRibbonInPopup(jRibbon))
				{
				  return;
				}
			  }
			  if (!@bool && SwingUtilities.getAncestorOfClass(typeof(javax.swing.plaf.basic.ComboPopup), component) == null)
			  {
				PopupPanelManager.defaultManager().hidePopups(component);
			  }
			  break;
			case 502:
			  if (SwingUtilities.getAncestorOfClass(typeof(javax.swing.plaf.basic.ComboPopup), component) != null)
			  {
				SwingUtilities.invokeLater(() =>
				{
				  PopupPanelManager.defaultManager().hidePopups(src);
				}});
			  break;
示例#2
0
	  protected internal virtual void installDefaults()
	  {
		Color color = this.popupPanel.Background;
		if (color == null || color is javax.swing.plaf.UIResource)
		{
		  this.popupPanel.Background = FlamingoUtilities.getColor(Color.lightGray, new string[] {"PopupPanel.background", "Panel.background"});
		}
		Border border = this.popupPanel.Border;
		if (border == null || border is javax.swing.plaf.UIResource)
		{
		  Border border1 = UIManager.getBorder("PopupPanel.border");
		  if (border1 == null)
		  {
			border1 = new BorderUIResource.CompoundBorderUIResource(new LineBorder(FlamingoUtilities.BorderColor), new EmptyBorder(1, 1, 1, 1));
		  }
		  this.popupPanel.Border = border1;
		}
		LookAndFeel.installProperty(this.popupPanel, "opaque", true);
	  }
示例#3
0
            public virtual void layoutContainer(Container param1Container)
            {
                Insets insets = param1Container.Insets;
                int    i      = outerInstance.TabButtonGap;
                bool   bool1  = outerInstance.ribbon.ComponentOrientation.LeftToRight;
                int    j      = param1Container.Width;
                int    k      = outerInstance.TaskbarHeight;
                int    m      = insets.top;
                bool   bool2  = outerInstance.UsingTitlePane;

                if (!bool2)
                {
                    outerInstance.taskBarPanel.removeAll();
                    foreach (Component component in outerInstance.ribbon.TaskbarComponents)
                    {
                        outerInstance.taskBarPanel.add(component);
                    }
                    outerInstance.taskBarPanel.setBounds(insets.left, insets.top, j - insets.left - insets.right, k);
                    m += k;
                }
                else
                {
                    outerInstance.taskBarPanel.setBounds(0, 0, 0, 0);
                }
                Font font = outerInstance.ribbon.Font;

                if (font == null)
                {
                    font = new Font("SansSerif", 0, 12);
                    outerInstance.ribbon.Font = font;
                }
                FontMetrics fontMetrics = outerInstance.ribbon.getFontMetrics(font);
                int         n           = fontMetrics.stringWidth(CostOSRibbonApplicationMenuButtonUI.ApplicationMenuButtonText) + 24;
                int         i1;

                for (i1 = 0; i1 < outerInstance.ribbon.TaskCount; i1++)
                {
                    RibbonTask ribbonTask = outerInstance.ribbon.getTask(i1);
                    n += fontMetrics.stringWidth(ribbonTask.Title) + 32;
                }
                n += 12;
                i1 = outerInstance.TaskToggleButtonHeight;
                int i2 = bool1 ? insets.left : (j - insets.right);
                int i3 = k + i1;

                if (!bool2)
                {
                    outerInstance.applicationMenuButton.Visible = (outerInstance.ribbon.ApplicationMenu != null);
                    if (outerInstance.ribbon.ApplicationMenu != null)
                    {
                        if (bool1)
                        {
                            outerInstance.applicationMenuButton.setBounds(-5, insets.top, i3 + 24, i3);
                        }
                        else
                        {
                            outerInstance.applicationMenuButton.setBounds(i2 - i3, insets.top, i3, i3);
                        }
                    }
                }
                else
                {
                    outerInstance.applicationMenuButton.Visible = false;
                }
                i2 = bool1 ? (i2 + 2) : (i2 - 2);
                if (FlamingoUtilities.getApplicationMenuButton(SwingUtilities.getWindowAncestor(outerInstance.ribbon)) != null)
                {
                    i2 = bool1 ? (i2 + i3 + 15) : (i2 - i3);
                }
                if (outerInstance.o_trailingButton != null && outerInstance.helpButton == null)
                {
                    Dimension dimension = outerInstance.o_trailingButton.PreferredSize;
                    if (bool1)
                    {
                        outerInstance.o_trailingButton.setBounds(j - insets.right - dimension.width, m, dimension.width, dimension.height);
                    }
                    else
                    {
                        outerInstance.o_trailingButton.setBounds(insets.left, m, dimension.width, dimension.height);
                    }
                    if (outerInstance.o_searchButton != null)
                    {
                        Dimension dimension1 = outerInstance.o_searchButton.PreferredSize;
                        if (bool1)
                        {
                            outerInstance.o_searchButton.setBounds(n, m, dimension1.width, dimension1.height);
                        }
                        else
                        {
                            outerInstance.o_searchButton.setBounds(insets.left + dimension1.width, m, dimension1.width, dimension1.height);
                        }
                    }
                }
                if (outerInstance.helpButton != null)
                {
                    Dimension dimension = outerInstance.helpButton.PreferredSize;
                    if (bool1)
                    {
                        outerInstance.helpButton.setBounds(j - insets.right - dimension.width, m, dimension.width, dimension.height);
                    }
                    else
                    {
                        outerInstance.helpButton.setBounds(insets.left, m, dimension.width, dimension.height);
                    }
                    if (outerInstance.o_trailingButton != null)
                    {
                        Dimension dimension1 = outerInstance.o_trailingButton.PreferredSize;
                        if (bool1)
                        {
                            outerInstance.o_trailingButton.setBounds(j - insets.right * 2 - dimension1.width + dimension.width, m, dimension1.width, dimension1.height);
                        }
                        else
                        {
                            outerInstance.o_trailingButton.setBounds(insets.left + dimension1.width, m, dimension1.width, dimension1.height);
                        }
                    }
                }
                int i4 = 0;

                if (bool1)
                {
                    i4 = (outerInstance.o_trailingButton != null) ? (outerInstance.o_trailingButton.X - i - i2) : (param1Container.Width - insets.right - i2);
                    if (outerInstance.helpButton != null && outerInstance.o_trailingButton != null)
                    {
                        i4 = outerInstance.o_trailingButton.X - i - i2;
                    }
                    if (outerInstance.o_searchButton != null && outerInstance.o_trailingButton != null)
                    {
                        i4 = outerInstance.o_searchButton.X - i - i2;
                    }
                    outerInstance.taskToggleButtonsScrollablePanel.setBounds(i2, m, i4, i1);
                }
                else
                {
                    i4 = (outerInstance.helpButton != null) ? (i2 - i - outerInstance.helpButton.X - outerInstance.o_trailingButton.Width) : (i2 - insets.left);
                    if (outerInstance.helpButton != null && outerInstance.o_trailingButton != null)
                    {
                        i4 = i2 - i - outerInstance.o_trailingButton.X - outerInstance.o_trailingButton.Width - outerInstance.helpButton.X - outerInstance.helpButton.Width;
                    }
                    outerInstance.taskToggleButtonsScrollablePanel.setBounds(i2 - i4, m, i4, i1);
                }
                BasicRibbonUI.TaskToggleButtonsHostPanel taskToggleButtonsHostPanel = (BasicRibbonUI.TaskToggleButtonsHostPanel)outerInstance.taskToggleButtonsScrollablePanel.View;
                int i5 = (taskToggleButtonsHostPanel.MinimumSize).width;

                taskToggleButtonsHostPanel.PreferredSize = new Dimension(i5, (this.this$0.taskToggleButtonsScrollablePanel.Bounds).height);
                outerInstance.taskToggleButtonsScrollablePanel.doLayout();
                m += i1;
                int i6 = i1;

                if (!bool2)
                {
                    i6 += k;
                }
                if (outerInstance.bandScrollablePanel.Parent == outerInstance.ribbon)
                {
                    if (!outerInstance.ribbon.Minimized && outerInstance.ribbon.TaskCount > 0)
                    {
                        Insets insets1 = (outerInstance.ribbon.SelectedTask.BandCount == 0) ? new Insets(0, 0, 0, 0) : outerInstance.ribbon.SelectedTask.getBand(0).Insets;
                        outerInstance.bandScrollablePanel.setBounds(1 + insets.left, m + insets1.top, param1Container.Width - 2 * insets.left - 2 * insets.right - 1, param1Container.Height - i6 - insets.top - insets.bottom - insets1.top - insets1.bottom);
                        BasicRibbonUI.BandHostPanel bandHostPanel = (BasicRibbonUI.BandHostPanel)outerInstance.bandScrollablePanel.View;
                        int i7 = (bandHostPanel.MinimumSize).width;
                        bandHostPanel.PreferredSize = new Dimension(i7, (this.this$0.bandScrollablePanel.Bounds).height);
                        outerInstance.bandScrollablePanel.doLayout();
                        bandHostPanel.doLayout();
                    }
                    else
                    {
                        outerInstance.bandScrollablePanel.setBounds(0, 0, 0, 0);
                    }
                }
            }
        public CostOSRibbonApplicationMenuPopupPanel(JRibbonApplicationMenuButton paramJRibbonApplicationMenuButton, RibbonApplicationMenu paramRibbonApplicationMenu)
        {
            Layout = new BorderLayout();
            Border = BorderFactory.createEmptyBorder();
            if (paramRibbonApplicationMenu.DefaultCallback == null)
            {
                this.defaultPrimaryCallback = new PrimaryRolloverCallbackAnonymousInnerClass(this);
            }
            else
            {
                this.defaultPrimaryCallback = paramRibbonApplicationMenu.DefaultCallback;
            }
            CostOSApplicationMenuContainerPanel costOSApplicationMenuContainerPanel = new CostOSApplicationMenuContainerPanel(new BorderLayout());

            costOSApplicationMenuContainerPanel.Background = SECONDARY_MENU_COLOR;
            JFrame jFrame = CostOSRootPaneUI.Resolver.MainFrame;

            costOSApplicationMenuContainerPanel.MinimumSize   = new Dimension(jFrame.Width - 2, jFrame.Height - 55);
            costOSApplicationMenuContainerPanel.PreferredSize = new Dimension(jFrame.Width - 2, jFrame.Height - 55);
            costOSApplicationMenuContainerPanel.MaximumSize   = new Dimension(jFrame.Width - 2, jFrame.Height - 55);
            this.panelLevel1            = new JPanel();
            this.panelLevel1.Layout     = new LayoutManagerAnonymousInnerClass(this);
            this.panelLevel1.Background = PRIMARY_MENU_COLOR;
            this.panelLevel1.Border     = BorderFactory.createEmptyBorder();
            if (paramRibbonApplicationMenu != null)
            {
                System.Collections.IList list = paramRibbonApplicationMenu.PrimaryEntries;
                if (list != null && list.Count > 0)
                {
                    EmptyResizableIcon emptyResizableIcon = new EmptyResizableIcon(16);
                    for (sbyte b = 0; b < list.Count; b++)
                    {
                        System.Collections.IList list1 = (System.Collections.IList)list[b];
                        foreach (RibbonApplicationMenuEntryPrimary ribbonApplicationMenuEntryPrimary in list1)
                        {
//JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final':
//ORIGINAL LINE: final JCommandAppMenuButton commandButton = new JCommandAppMenuButton(ribbonApplicationMenuEntryPrimary.getText(), emptyResizableIcon);
                            JCommandAppMenuButton commandButton = new JCommandAppMenuButton(ribbonApplicationMenuEntryPrimary.Text, emptyResizableIcon);
                            jCommandAppMenuButton.CommandButtonKind = ribbonApplicationMenuEntryPrimary.EntryKind;
                            jCommandAppMenuButton.addActionListener(ribbonApplicationMenuEntryPrimary.MainActionListener);
                            if (ribbonApplicationMenuEntryPrimary.RolloverCallback != null)
                            {
                                jCommandAppMenuButton.addRolloverActionListener(new RolloverActionListenerAnonymousInnerClass(this));
                            }
                            else if (ribbonApplicationMenuEntryPrimary.SecondaryGroupCount == 0)
                            {
                                jCommandAppMenuButton.addRolloverActionListener(new RolloverActionListenerAnonymousInnerClass2(this));
                            }
                            else
                            {
//JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final':
//ORIGINAL LINE: final org.pushingpixels.flamingo.api.ribbon.RibbonApplicationMenuEntryPrimary.PrimaryRolloverCallback coreCallback = new org.pushingpixels.flamingo.api.ribbon.RibbonApplicationMenuEntryPrimary.PrimaryRolloverCallback()
                                RibbonApplicationMenuEntryPrimary.PrimaryRolloverCallback coreCallback = new PrimaryRolloverCallbackAnonymousInnerClass2(this, commandButton);
                                jCommandAppMenuButton.addRolloverActionListener(new RolloverActionListenerAnonymousInnerClass3(this, commandButton, coreCallback));
                            }
                            jCommandAppMenuButton.DisplayState         = MENU_TILE_LEVEL_1;
                            jCommandAppMenuButton.HorizontalAlignment  = 10;
                            jCommandAppMenuButton.PopupOrientationKind = JCommandButton.CommandButtonPopupOrientationKind.SIDEWARD;
                            jCommandAppMenuButton.Enabled    = ribbonApplicationMenuEntryPrimary.Enabled;
                            jCommandAppMenuButton.Foreground = CostOSWindowsLookAndFeel.ribbonAppMenuButtonForegroundColor;
                            this.panelLevel1.add(jCommandAppMenuButton);
                        }
                        if (b < list.Count - 1)
                        {
                            JPopupMenu.Separator separator = new SeparatorAnonymousInnerClass(this);
                            this.panelLevel1.add(separator);
                        }
                    }
                }
            }
            costOSApplicationMenuContainerPanel.add(this.panelLevel1, "West");
            this.panelLevel2               = new JPanel();
            this.panelLevel2.Background    = SECONDARY_MENU_COLOR;
            this.panelLevel2.Border        = new BorderAnonymousInnerClass(this);
            this.panelLevel2.PreferredSize = new Dimension(30 * FlamingoUtilities.getFont(this.panelLevel1, new string[] { "Ribbon.font", "Button.font", "Panel.font" }).Size - 30, 10);
            this.defaultPrimaryCallback.menuEntryActivated(this.panelLevel2);
            costOSApplicationMenuContainerPanel.add(this.panelLevel2, "Center");
            add(costOSApplicationMenuContainerPanel, "Center");
            this.panelLevel1.doLayout();
            firstLevelMenuWidth = (int)this.panelLevel1.PreferredSize.Width;
        }