MatewnckPager

MatewnckPager — a pager widget, showing the content of workspaces.

Stability Level

Unstable, unless otherwise indicated

Functions

Types and Values

Object Hierarchy

    GObject
    ╰── GInitiallyUnowned
        ╰── GtkObject
            ╰── GtkWidget
                ╰── MatewnckPager

Implemented Interfaces

MatewnckPager implements AtkImplementorIface and GtkBuildable.

Includes

#include <libmatewnck/libmatewnck.h>

Description

A MatewnckPager shows a miniature view of the workspaces, representing managed windows by small rectangles, and allows the user to initiate various window manager actions by manipulating these representations. The MatewnckPager offers ways to move windows between workspaces and to change the current workspace.

Alternatively, a MatewnckPager can be configured to only show the names of the workspace instead of their contents.

The MatewnckPager is also responsible for setting the layout of the workspaces. Since only one application can be responsible for setting the layout on a screen, the MatewnckPager automatically tries to obtain the manager selection for the screen and only sets the layout if it owns the manager selection. See matewnck_pager_set_orientation() and matewnck_pager_set_n_rows() to change the layout.

Functions

matewnck_pager_new ()

GtkWidget *
matewnck_pager_new (MatewnckScreen *screen);

Creates a new MatewnckPager. The MatewnckPager will show the MatewnckWorkspace of the MatewnckScreen it is on.

Parameters

screen

deprecated argument, can be NULL.

 

Returns

a newly created MatewnckPager.


matewnck_pager_set_screen ()

void
matewnck_pager_set_screen (MatewnckPager *pager,
                           MatewnckScreen *screen);

matewnck_pager_set_screen has been deprecated since version 2.20 and should not be used in newly-written code.

Does nothing.

Parameters

pager

a MatewnckPager.

 

screen

a MatewnckScreen.

 

Since 2.2


matewnck_pager_set_orientation ()

gboolean
matewnck_pager_set_orientation (MatewnckPager *pager,
                                GtkOrientation orientation);

Tries to change the orientation of the layout of MatewnckWorkspace on the MatewnckScreen pager is watching. Since no more than one application should set this property of a MatewnckScreen at a time, setting the layout is not guaranteed to work.

If orientation is GTK_ORIENTATION_HORIZONTAL, the MatewnckWorkspace will be laid out in rows, with the first MatewnckWorkspace in the top left corner.

If orientation is GTK_ORIENTATION_VERTICAL, the MatewnckWorkspace will be laid out in columns, with the first MatewnckWorkspace in the top left corner.

For example, if the layout contains one row, but the orientation of the layout is vertical, the MatewnckPager will display a column of MatewnckWorkspace.

If pager has not been added to a widget hierarchy, the call will fail because pager can't know the screen on which to modify the orientation.

Parameters

pager

a MatewnckPager.

 

orientation

orientation to use for the layout of MatewnckWorkspace on the MatewnckScreen pager is watching.

 

Returns

TRUE if the layout of MatewnckWorkspace has been successfully changed or did not need to be changed, FALSE otherwise.


matewnck_pager_set_n_rows ()

gboolean
matewnck_pager_set_n_rows (MatewnckPager *pager,
                           int n_rows);

Tries to change the number of rows in the layout of MatewnckWorkspace on the MatewnckScreen pager is watching. Since no more than one application should set this property of a MatewnckScreen at a time, setting the layout is not guaranteed to work.

If pager has not been added to a widget hierarchy, the call will fail because pager can't know the screen on which to modify the layout.

Parameters

pager

a MatewnckPager.

 

n_rows

the number of rows to use for the layout of MatewnckWorkspace on the MatewnckScreen pager is watching.

 

Returns

TRUE if the layout of MatewnckWorkspace has been successfully changed or did not need to be changed, FALSE otherwise.


matewnck_pager_set_layout_policy ()

void
matewnck_pager_set_layout_policy (MatewnckPager *pager,
                                  MatewnckPagerLayoutPolicy policy);

Sets the layout policy for pager to policy .

Parameters

pager

a MatewnckPager.

 

policy

a layout policy.

 

Since 2.32


matewnck_pager_set_display_mode ()

void
matewnck_pager_set_display_mode (MatewnckPager *pager,
                                 MatewnckPagerDisplayMode mode);

Sets the display mode for pager to mode .

Parameters

pager

a MatewnckPager.

 

mode

a display mode.

 

matewnck_pager_set_show_all ()

void
matewnck_pager_set_show_all (MatewnckPager *pager,
                             gboolean show_all_workspaces);

Sets pager to display all MatewnckWorkspace or not, according to show_all_workspaces .

Parameters

pager

a MatewnckPager.

 

show_all_workspaces

whether to display all MatewnckWorkspace in pager .

 

matewnck_pager_set_shadow_type ()

void
matewnck_pager_set_shadow_type (MatewnckPager *pager,
                                GtkShadowType shadow_type);

Sets the shadow type for pager to shadow_type . The main use of this function is proper integration of MatewnckPager in panels with non-system backgrounds.

Parameters

pager

a MatewnckPager.

 

shadow_type

a shadow type.

 

Since 2.2

Types and Values

struct MatewnckPager

struct MatewnckPager;

The MatewnckPager struct contains only private fields and should not be directly accessed.


enum MatewnckPagerLayoutPolicy

Policy defining the geometry management used by a MatewnckPager.

Members

MATEWNCK_PAGER_LAYOUT_POLICY_AUTOMATIC

the MatewnckPager geometry management is "height for width" when in vertical orientation, or "width for height" when in horizontal orientation. This is the default behavior.

 

MATEWNCK_PAGER_LAYOUT_POLICY_WIDTH_FOR_HEIGHT

the MatewnckPager calculates its width in proportion to a preset height. This can be used for a vertical MatewnckPager inside a horizontal panel.

 

MATEWNCK_PAGER_LAYOUT_POLICY_HEIGHT_FOR_WIDTH

the MatewnckPager calculates its height in proportion to a preset width. This can be used for a horizontal MatewnckPager inside a vertical panel.

 

Since 2.32


enum MatewnckPagerDisplayMode

Mode defining what a MatewnckPager will display.

Members

MATEWNCK_PAGER_DISPLAY_NAME

the MatewnckPager will only display the names of the workspaces.

 

MATEWNCK_PAGER_DISPLAY_CONTENT

the MatewnckPager will display a representation for each window in the workspaces.

 

See Also

MatewnckScreen