diff -r 346c88efed21 -r 5e2f62d02dcd wp/wp-admin/includes/screen.php --- a/wp/wp-admin/includes/screen.php Mon Jun 08 16:11:51 2015 +0000 +++ b/wp/wp-admin/includes/screen.php Tue Jun 09 03:35:32 2015 +0200 @@ -20,8 +20,22 @@ static $column_headers = array(); - if ( ! isset( $column_headers[ $screen->id ] ) ) - $column_headers[ $screen->id ] = apply_filters( 'manage_' . $screen->id . '_columns', array() ); + if ( ! isset( $column_headers[ $screen->id ] ) ) { + + /** + * Filter the column headers for a list table on a specific screen. + * + * The dynamic portion of the hook name, `$screen->id`, refers to the + * ID of a specific screen. For example, the screen ID for the Posts + * list table is edit-post, so the filter for that screen would be + * manage_edit-post_columns. + * + * @since 3.0.0 + * + * @param array $columns An array of column headers. Default empty. + */ + $column_headers[ $screen->id ] = apply_filters( "manage_{$screen->id}_columns", array() ); + } return $column_headers[ $screen->id ]; } @@ -46,7 +60,7 @@ * * @since 2.7.0 * - * @param string|WP_Screen $screen + * @param WP_Screen $screen */ function meta_box_prefs( $screen ) { global $wp_meta_boxes; @@ -101,9 +115,28 @@ else $hidden = array( 'slugdiv' ); } + + /** + * Filter the default list of hidden meta boxes. + * + * @since 3.1.0 + * + * @param array $hidden An array of meta boxes hidden by default. + * @param WP_Screen $screen WP_Screen object of the current screen. + */ $hidden = apply_filters( 'default_hidden_meta_boxes', $hidden, $screen ); } + /** + * Filter the list of hidden meta boxes. + * + * @since 3.3.0 + * + * @param array $hidden An array of hidden meta boxes. + * @param WP_Screen $screen WP_Screen object of the current screen. + * @param bool $use_defaults Whether to show the default meta boxes. + * Default true. + */ return apply_filters( 'hidden_meta_boxes', $hidden, $screen, $use_defaults ); } @@ -125,53 +158,6 @@ } /** - * Displays a screen icon. - * - * @uses get_screen_icon() - * @since 2.7.0 - * - * @param string|WP_Screen $screen Optional. Accepts a screen object (and defaults to the current screen object) - * which it uses to determine an icon HTML ID. Or, if a string is provided, it is used to form the icon HTML ID. - */ -function screen_icon( $screen = '' ) { - echo get_screen_icon( $screen ); -} - -/** - * Gets a screen icon. - * - * @since 3.2.0 - * - * @global $post_ID - * @param string|WP_Screen $screen Optional. Accepts a screen object (and defaults to the current screen object) - * which it uses to determine an icon HTML ID. Or, if a string is provided, it is used to form the icon HTML ID. - * @return string HTML for the screen icon. - */ -function get_screen_icon( $screen = '' ) { - if ( empty( $screen ) ) - $screen = get_current_screen(); - elseif ( is_string( $screen ) ) - $icon_id = $screen; - - $class = 'icon32'; - - if ( empty( $icon_id ) ) { - if ( ! empty( $screen->parent_base ) ) - $icon_id = $screen->parent_base; - else - $icon_id = $screen->base; - - if ( 'page' == $screen->post_type ) - $icon_id = 'edit-pages'; - - if ( $screen->post_type ) - $class .= ' ' . sanitize_html_class( 'icon32-posts-' . $screen->post_type ); - } - - return '
' . $default_help . '
'; @@ -851,7 +910,18 @@ id, $this ); if ( ! empty( $columns ) && isset( $columns[ $this->id ] ) ) @@ -899,20 +969,46 @@ $show_screen = ! empty( $wp_meta_boxes[ $this->id ] ) || $columns || $this->get_option( 'per_page' ); - switch ( $this->id ) { + switch ( $this->base ) { case 'widgets': $this->_screen_settings = '' . __('Enable accessibility mode') . '' . __('Disable accessibility mode') . "
\n"; break; + case 'post' : + $expand = ''; + $this->_screen_settings = $expand; + break; default: $this->_screen_settings = ''; break; } + /** + * Filter the screen settings text displayed in the Screen Options tab. + * + * This filter is currently only used on the Widgets screen to enable + * accessibility mode. + * + * @since 3.0.0 + * + * @param string $screen_settings Screen settings. + * @param WP_Screen $this WP_Screen object. + */ $this->_screen_settings = apply_filters( 'screen_settings', $this->_screen_settings, $this ); if ( $this->_screen_settings || $this->_options ) $show_screen = true; + /** + * Filter whether to show the Screen Options tab. + * + * @since 3.2.0 + * + * @param bool $show_screen Whether to show Screen Options tab. + * Default true. + * @param WP_Screen $this Current WP_Screen instance. + */ $this->_show_screen_options = apply_filters( 'screen_options_show_screen', $show_screen, $this ); return $this->_show_screen_options; } @@ -923,15 +1019,14 @@ * @since 3.3.0 */ public function render_screen_options() { - global $wp_meta_boxes, $wp_list_table; + global $wp_meta_boxes; $columns = get_column_headers( $this ); $hidden = get_hidden_columns( $this ); - $post = get_post(); ?>