X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=openbox%2Fframe.h;h=8eacbb1bcdd2d96c021a838c3040bbd428e98d74;hb=cb3c457b8270df540c53400ba999517f919a0121;hp=4f117fae89607b83f9174cc5a98b7a9e86f3fd01;hpb=7d943a950e39d4d93113c0efc7b41916f6b8c66d;p=chaz%2Fopenbox diff --git a/openbox/frame.h b/openbox/frame.h index 4f117fae..8eacbb1b 100644 --- a/openbox/frame.h +++ b/openbox/frame.h @@ -17,6 +17,8 @@ typedef enum { OB_FRAME_CONTEXT_FRAME, OB_FRAME_CONTEXT_BLCORNER, OB_FRAME_CONTEXT_BRCORNER, + OB_FRAME_CONTEXT_TLCORNER, + OB_FRAME_CONTEXT_TRCORNER, OB_FRAME_CONTEXT_MAXIMIZE, OB_FRAME_CONTEXT_ALLDESKTOPS, OB_FRAME_CONTEXT_SHADE, @@ -26,6 +28,22 @@ typedef enum { OB_FRAME_NUM_CONTEXTS } ObFrameContext; +/*! The decorations the client window wants to be displayed on it */ +typedef enum { + OB_FRAME_DECOR_TITLEBAR = 1 << 0, /*!< Display a titlebar */ + OB_FRAME_DECOR_HANDLE = 1 << 1, /*!< Display a handle (bottom) */ + OB_FRAME_DECOR_GRIPS = 1 << 2, /*!< Display grips in the handle */ + OB_FRAME_DECOR_BORDER = 1 << 3, /*!< Display a border */ + OB_FRAME_DECOR_ICON = 1 << 4, /*!< Display the window's icon */ + OB_FRAME_DECOR_ICONIFY = 1 << 5, /*!< Display an iconify button */ + OB_FRAME_DECOR_MAXIMIZE = 1 << 6, /*!< Display a maximize button */ + /*! Display a button to toggle the window's placement on + all desktops */ + OB_FRAME_DECOR_ALLDESKTOPS = 1 << 7, + OB_FRAME_DECOR_SHADE = 1 << 8, /*!< Displays a shade button */ + OB_FRAME_DECOR_CLOSE = 1 << 9 /*!< Display a close button */ +} ObFrameDecorations; + struct _ObFrame { struct _ObClient *client; @@ -50,6 +68,9 @@ struct _ObFrame Window lgrip; Window rgrip; + Window tlresize; + Window trresize; + RrAppearance *a_unfocused_title; RrAppearance *a_focused_title; RrAppearance *a_unfocused_label; @@ -79,13 +100,15 @@ struct _ObFrame gboolean desk_press; gboolean shade_press; gboolean iconify_press; + gboolean max_hover; + gboolean close_hover; + gboolean desk_hover; + gboolean shade_hover; + gboolean iconify_hover; gboolean focused; }; -void frame_startup(); -void frame_shutdown(); - ObFrame *frame_new(); void frame_show(ObFrame *self); void frame_hide(ObFrame *self);