示例#1
0
    /// <summary>
    /// Gets the collapsible panel image url (expanded or collapsed).
    /// </summary>
    /// <param name="theme">
    /// The theme.
    /// </param>
    /// <param name="panelID">
    /// ID of collapsible panel
    /// </param>
    /// <param name="defaultState">
    /// Default Panel State
    /// </param>
    /// <returns>
    /// Image URL
    /// </returns>
    public static string GetCollapsiblePanelImageURL(
      [NotNull] this ITheme theme, [NotNull] string panelID, CollapsiblePanelState defaultState)
    {
      CodeContracts.ArgumentNotNull(theme, "theme");
      CodeContracts.ArgumentNotNull(panelID, "panelID");

      CollapsiblePanelState stateValue = YafContext.Current.Get<IYafSession>().PanelState[panelID];
      if (stateValue == CollapsiblePanelState.None)
      {
        stateValue = defaultState;
        YafContext.Current.Get<IYafSession>().PanelState[panelID] = defaultState;
      }

      return theme.GetItem("ICONS", stateValue == CollapsiblePanelState.Expanded ? "PANEL_COLLAPSE" : "PANEL_EXPAND");
    }
        /// <summary>
        /// Gets the collapsible panel image url (expanded or collapsed).
        /// </summary>
        /// <param name="theme">
        /// The theme.
        /// </param>
        /// <param name="panelID">
        /// ID of collapsible panel
        /// </param>
        /// <param name="defaultState">
        /// Default Panel State
        /// </param>
        /// <returns>
        /// Image URL
        /// </returns>
        public static string GetCollapsiblePanelImageURL(
            [NotNull] this ITheme theme, [NotNull] string panelID, CollapsiblePanelState defaultState)
        {
            CodeContracts.VerifyNotNull(theme, "theme");
            CodeContracts.VerifyNotNull(panelID, "panelID");

            CollapsiblePanelState stateValue = YafContext.Current.Get <IYafSession>().PanelState[panelID];

            if (stateValue == CollapsiblePanelState.None)
            {
                stateValue = defaultState;
                YafContext.Current.Get <IYafSession>().PanelState[panelID] = defaultState;
            }

            return(theme.GetItem("ICONS", stateValue == CollapsiblePanelState.Expanded ? "PANEL_COLLAPSE" : "PANEL_EXPAND"));
        }
示例#3
0
        /// <summary>
        /// The toggle panel state.
        /// </summary>
        /// <param name="panelID">
        /// The panel id.
        /// </param>
        /// <param name="defaultState">
        /// The default state.
        /// </param>
        public void TogglePanelState([NotNull] string panelID, CollapsiblePanelState defaultState)
        {
            var currentState = this[panelID];

            if (currentState == CollapsiblePanelState.None)
            {
                currentState = defaultState;
            }

            if (currentState == CollapsiblePanelState.Collapsed)
            {
                this[panelID] = CollapsiblePanelState.Expanded;
            }
            else if (currentState == CollapsiblePanelState.Expanded)
            {
                this[panelID] = CollapsiblePanelState.Collapsed;
            }
        }
示例#4
0
        /// <summary>
        /// The toggle panel state.
        /// </summary>
        /// <param name="panelID">
        /// The panel id.
        /// </param>
        /// <param name="defaultState">
        /// The default state.
        /// </param>
        public void TogglePanelState([NotNull] string panelID, CollapsiblePanelState defaultState)
        {
            var currentState = this[panelID];

            if (currentState == CollapsiblePanelState.None)
            {
                currentState = defaultState;
            }

            this[panelID] = currentState switch
            {
                CollapsiblePanelState.Collapsed => CollapsiblePanelState.Expanded,
                CollapsiblePanelState.Expanded => CollapsiblePanelState.Collapsed,
                _ => this[panelID]
            };
        }

        #endregion
    }
示例#5
0
    /// <summary>
    /// The toggle panel state.
    /// </summary>
    /// <param name="panelID">
    /// The panel id.
    /// </param>
    /// <param name="defaultState">
    /// The default state.
    /// </param>
    public void TogglePanelState([NotNull] string panelID, CollapsiblePanelState defaultState)
    {
      CollapsiblePanelState currentState = this[panelID];

      if (currentState == CollapsiblePanelState.None)
      {
        currentState = defaultState;
      }

      if (currentState == CollapsiblePanelState.Collapsed)
      {
        this[panelID] = CollapsiblePanelState.Expanded;
      }
      else if (currentState == CollapsiblePanelState.Expanded)
      {
        this[panelID] = CollapsiblePanelState.Collapsed;
      }
    }
示例#6
0
 /// <summary>
 /// Gets the collapsible panel image url (expanded or collapsed).
 /// </summary>
 /// <param name="panelID">
 /// ID of collapsible panel
 /// </param>
 /// <param name="defaultState">
 /// Default Panel State
 /// </param>
 /// <returns>
 /// Image URL
 /// </returns>
 public string GetCollapsiblePanelImageURL([NotNull] string panelID, CollapsiblePanelState defaultState)
 {
     return(this.Get <ITheme>().GetCollapsiblePanelImageURL(panelID, defaultState));
 }
示例#7
0
文件: ForumPage.cs 项目: vzrus/VZF
 /// <summary>
 /// Gets the collapsible panel image url (expanded or collapsed).
 /// </summary>
 /// <param name="panelID">
 /// ID of collapsible panel
 /// </param>
 /// <param name="defaultState">
 /// Default Panel State
 /// </param>
 /// <returns>
 /// Image URL
 /// </returns>
 public string GetCollapsiblePanelImageURL([NotNull] string panelID, CollapsiblePanelState defaultState)
 {
     return this.Get<ITheme>().GetCollapsiblePanelImageURL(panelID, defaultState);
 }