wlmaker
Loading...
Searching...
No Matches
Typedefs | Enumerations | Functions | Variables
titlebar.h File Reference
#include <libbase/libbase.h>
#include <stdbool.h>
#include <stdint.h>
#include "element.h"
#include "style.h"
#include "window.h"
Include dependency graph for titlebar.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Typedefs

typedef struct _wlmtk_titlebar_t wlmtk_titlebar_t
 

Enumerations

enum  wlmtk_titlebar_property_t { WLMTK_TITLEBAR_PROPERTY_ICONIFY = UINT32_C(1) << 0 , WLMTK_TITLEBAR_PROPERTY_CLOSE = UINT32_C(1) << 1 }
 

Functions

wlmtk_titlebar_twlmtk_titlebar_create (wlmtk_window_t *window_ptr, const wlmtk_titlebar_style_t *style_ptr)
 
void wlmtk_titlebar_destroy (wlmtk_titlebar_t *titlebar_ptr)
 
bool wlmtk_titlebar_set_width (wlmtk_titlebar_t *titlebar_ptr, unsigned width)
 
void wlmtk_titlebar_set_properties (wlmtk_titlebar_t *titlebar_ptr, uint32_t properties)
 
void wlmtk_titlebar_set_activated (wlmtk_titlebar_t *titlebar_ptr, bool activated)
 
bool wlmtk_titlebar_is_activated (wlmtk_titlebar_t *titlebar_ptr)
 
void wlmtk_titlebar_set_title (wlmtk_titlebar_t *titlebar_ptr, const char *title_ptr)
 
wlmtk_element_twlmtk_titlebar_element (wlmtk_titlebar_t *titlebar_ptr)
 

Variables

const bs_test_case_t wlmtk_titlebar_test_cases []
 

Detailed Description

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

https://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Typedef Documentation

◆ wlmtk_titlebar_t

Forward declaration: Title bar.

Enumeration Type Documentation

◆ wlmtk_titlebar_property_t

Properties of the titlebar: Which buttons to show.

Enumerator
WLMTK_TITLEBAR_PROPERTY_ICONIFY 

Whether the 'iconify' button is shown.

WLMTK_TITLEBAR_PROPERTY_CLOSE 

Whether the 'close' button is shown.

Function Documentation

◆ wlmtk_titlebar_create()

wlmtk_titlebar_t * wlmtk_titlebar_create ( wlmtk_window_t window_ptr,
const wlmtk_titlebar_style_t style_ptr 
)

Creates a title bar, suitable as a window title.

Parameters
window_ptr
style_ptr
Returns
Pointer to the title bar state, or NULL on error. Must be free'd by calling wlmtk_titlebar_destroy.

◆ wlmtk_titlebar_destroy()

void wlmtk_titlebar_destroy ( wlmtk_titlebar_t titlebar_ptr)

Destroys the title bar.

Parameters
titlebar_ptr

◆ wlmtk_titlebar_element()

wlmtk_element_t * wlmtk_titlebar_element ( wlmtk_titlebar_t titlebar_ptr)

Returns the super Element of the titlebar.

Parameters
titlebar_ptr
Returns
Pointer to the wlmtk_element_t base instantiation to titlebar_ptr.

◆ wlmtk_titlebar_is_activated()

bool wlmtk_titlebar_is_activated ( wlmtk_titlebar_t titlebar_ptr)

Returns whether the title bar is activated.

◆ wlmtk_titlebar_set_activated()

void wlmtk_titlebar_set_activated ( wlmtk_titlebar_t titlebar_ptr,
bool  activated 
)

Sets whether the title bar is activated.

Parameters
titlebar_ptr
activated

◆ wlmtk_titlebar_set_properties()

void wlmtk_titlebar_set_properties ( wlmtk_titlebar_t titlebar_ptr,
uint32_t  properties 
)

Sets the properties of the title bar.

Parameters
titlebar_ptr
propertiesSee wlmtk_titlebar_property_t.

◆ wlmtk_titlebar_set_title()

void wlmtk_titlebar_set_title ( wlmtk_titlebar_t titlebar_ptr,
const char *  title_ptr 
)

Updates the title text of the titlebar.

Parameters
titlebar_ptr
title_ptrExpected to remain valid until the next call of wlmtk_titlebar_set_title or until the titlebar_ptr is destroyed.

◆ wlmtk_titlebar_set_width()

bool wlmtk_titlebar_set_width ( wlmtk_titlebar_t titlebar_ptr,
unsigned  width 
)

Sets the width of the title bar.

Parameters
titlebar_ptr
width
Returns
Whether the operation was successful.

Variable Documentation

◆ wlmtk_titlebar_test_cases

const bs_test_case_t wlmtk_titlebar_test_cases[]
extern

Unit test cases.