Blame libmetacity/meta-button-private.h

Packit 5e0819
/*
Packit 5e0819
 * Copyright (C) 2001 Havoc Pennington
Packit 5e0819
 *
Packit 5e0819
 * This program is free software: you can redistribute it and/or modify
Packit 5e0819
 * it under the terms of the GNU General Public License as published by
Packit 5e0819
 * the Free Software Foundation, either version 2 of the License, or
Packit 5e0819
 * (at your option) any later version.
Packit 5e0819
 *
Packit 5e0819
 * This program is distributed in the hope that it will be useful,
Packit 5e0819
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
Packit 5e0819
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
Packit 5e0819
 * GNU General Public License for more details.
Packit 5e0819
 *
Packit 5e0819
 * You should have received a copy of the GNU General Public License
Packit 5e0819
 * along with this program. If not, see <http://www.gnu.org/licenses/>.
Packit 5e0819
 */
Packit 5e0819
Packit 5e0819
#ifndef META_BUTTON_PRIVATE_H
Packit 5e0819
#define META_BUTTON_PRIVATE_H
Packit 5e0819
Packit 5e0819
#include "meta-button.h"
Packit 5e0819
Packit 5e0819
G_BEGIN_DECLS
Packit 5e0819
Packit 5e0819
typedef enum
Packit 5e0819
{
Packit 5e0819
  /* Ordered so that background is drawn first */
Packit 5e0819
  META_BUTTON_FUNCTION_LEFT_LEFT_BACKGROUND,
Packit 5e0819
  META_BUTTON_FUNCTION_LEFT_MIDDLE_BACKGROUND,
Packit 5e0819
  META_BUTTON_FUNCTION_LEFT_RIGHT_BACKGROUND,
Packit 5e0819
  META_BUTTON_FUNCTION_LEFT_SINGLE_BACKGROUND,
Packit 5e0819
  META_BUTTON_FUNCTION_RIGHT_LEFT_BACKGROUND,
Packit 5e0819
  META_BUTTON_FUNCTION_RIGHT_MIDDLE_BACKGROUND,
Packit 5e0819
  META_BUTTON_FUNCTION_RIGHT_RIGHT_BACKGROUND,
Packit 5e0819
  META_BUTTON_FUNCTION_RIGHT_SINGLE_BACKGROUND,
Packit 5e0819
  META_BUTTON_FUNCTION_CLOSE,
Packit 5e0819
  META_BUTTON_FUNCTION_MAXIMIZE,
Packit 5e0819
  META_BUTTON_FUNCTION_MINIMIZE,
Packit 5e0819
  META_BUTTON_FUNCTION_MENU,
Packit 5e0819
  META_BUTTON_FUNCTION_APPMENU,
Packit 5e0819
  META_BUTTON_FUNCTION_SHADE,
Packit 5e0819
  META_BUTTON_FUNCTION_ABOVE,
Packit 5e0819
  META_BUTTON_FUNCTION_STICK,
Packit 5e0819
  META_BUTTON_FUNCTION_UNSHADE,
Packit 5e0819
  META_BUTTON_FUNCTION_UNABOVE,
Packit 5e0819
  META_BUTTON_FUNCTION_UNSTICK,
Packit 5e0819
  META_BUTTON_FUNCTION_LAST
Packit 5e0819
} MetaButtonFunction;
Packit 5e0819
Packit 5e0819
struct _MetaButton
Packit 5e0819
{
Packit 5e0819
  MetaButtonType  type;
Packit 5e0819
  MetaButtonState state;
Packit 5e0819
Packit 5e0819
  /* The computed size of a button (really just a way of tying its visible
Packit 5e0819
   * and clickable areas together). The reason for two different rectangles
Packit 5e0819
   * here is Fitts' law & maximized windows; See bug #97703 for more details.
Packit 5e0819
   */
Packit 5e0819
  struct {
Packit 5e0819
    /* The area where the button's image is drawn. */
Packit 5e0819
    GdkRectangle  visible;
Packit 5e0819
Packit 5e0819
    /* The area where the button can be activated by clicking */
Packit 5e0819
    GdkRectangle clickable;
Packit 5e0819
  } rect;
Packit 5e0819
Packit 5e0819
  gboolean       visible;
Packit 5e0819
};
Packit 5e0819
Packit 5e0819
G_END_DECLS
Packit 5e0819
Packit 5e0819
#endif