1
0
Fork 0
mirror of https://gitlab.gnome.org/GNOME/calls.git synced 2024-05-23 05:29:26 +00:00

Add CallsHistoryHeaderBar

This commit is contained in:
Adrien Plazas 2018-08-02 12:48:16 +02:00
parent e58ce3f08d
commit 1a16271bcb
5 changed files with 169 additions and 0 deletions

View file

@ -0,0 +1,49 @@
/*
* Copyright (C) 2018 Purism SPC
*
* This file is part of Calls.
*
* Calls is free software: you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Calls is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Calls. If not, see <http://www.gnu.org/licenses/>.
*
* Author: Adrien Plazas <adrien.plazas@puri.sm>
*
* SPDX-License-Identifier: GPL-3.0-or-later
*
*/
#include "calls-history-header-bar.h"
struct _CallsHistoryHeaderBar
{
GtkHeaderBar parent_instance;
};
G_DEFINE_TYPE (CallsHistoryHeaderBar, calls_history_header_bar, GTK_TYPE_HEADER_BAR);
static void
calls_history_header_bar_init (CallsHistoryHeaderBar *self)
{
gtk_widget_init_template (GTK_WIDGET (self));
}
static void
calls_history_header_bar_class_init (CallsHistoryHeaderBarClass *klass)
{
GtkWidgetClass *widget_class = GTK_WIDGET_CLASS (klass);
gtk_widget_class_set_template_from_resource (widget_class, "/sm/puri/calls/ui/history-header-bar.ui");
}

View file

@ -0,0 +1,38 @@
/*
* Copyright (C) 2018 Purism SPC
*
* This file is part of Calls.
*
* Calls is free software: you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Calls is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Calls. If not, see <http://www.gnu.org/licenses/>.
*
* Author: Adrien Plazas <adrien.plazas@puri.sm>
*
* SPDX-License-Identifier: GPL-3.0-or-later
*
*/
#ifndef CALLS_HISTORY_HEADER_BAR_H__
#define CALLS_HISTORY_HEADER_BAR_H__
#include <gtk/gtk.h>
G_BEGIN_DECLS
#define CALLS_TYPE_HISTORY_HEADER_BAR (calls_history_header_bar_get_type ())
G_DECLARE_FINAL_TYPE (CallsHistoryHeaderBar, calls_history_header_bar, CALLS, HISTORY_HEADER_BAR, GtkHeaderBar);
G_END_DECLS
#endif /* CALLS_HISTORY_HEADER_BAR_H__ */

View file

@ -7,6 +7,7 @@
<file preprocess="xml-stripblanks">call-window.ui</file>
<file preprocess="xml-stripblanks">encryption-indicator.ui</file>
<file preprocess="xml-stripblanks">history-box.ui</file>
<file preprocess="xml-stripblanks">history-header-bar.ui</file>
<file preprocess="xml-stripblanks">new-call-box.ui</file>
</gresource>
</gresources>

View file

@ -48,6 +48,7 @@ calls_sources = ['calls-message-source.c', 'calls-message-source.h',
'calls-call-window.c', 'calls-call-window.h',
'calls-encryption-indicator.c', 'calls-encryption-indicator.h',
'calls-history-box.c', 'calls-history-box.h',
'calls-history-header-bar.c', 'calls-history-header-bar.h',
'calls-new-call-box.c', 'calls-new-call-box.h',
'calls-main-window.c', 'calls-main-window.h',
'util.c', 'util.h',

View file

@ -0,0 +1,80 @@
<?xml version="1.0" encoding="UTF-8"?>
<interface>
<requires lib="gtk+" version="3.22"/>
<requires lib="libhandy" version="0.0"/>
<template class="CallsHistoryHeaderBar" parent="GtkHeaderBar">
<property name="can_focus">False</property>
<property name="show-close-button">True</property>
<property name="title" translatable="yes">Recent Calls</property>
<property name="visible">True</property>
<child>
<object class="GtkButton" id="new_call">
<property name="action-name">win.new-call</property>
<property name="use-underline">True</property>
<property name="valign">center</property>
<property name="visible">True</property>
<style>
<class name="image-button"/>
</style>
<child internal-child="accessible">
<object class="AtkObject" id="a11y_new_call">
<property name="accessible-name" translatable="yes">New call…</property>
</object>
</child>
<child>
<object class="GtkImage" id="new_call_image">
<property name="visible">True</property>
<property name="icon-name">list-add-symbolic</property>
<property name="icon-size">1</property>
</object>
</child>
</object>
<packing>
<property name="pack-type">start</property>
</packing>
</child>
<child>
<object class="GtkMenuButton" id="menu">
<property name="popover">menu_popover</property>
<!-- Translators: tooltip for the application menu button -->
<property name="tooltip_text" translatable="yes">Menu</property>
<property name="use-underline">True</property>
<property name="valign">center</property>
<property name="visible">True</property>
<style>
<class name="image-button"/>
</style>
<child>
<object class="GtkImage" id="menu_image">
<property name="visible">True</property>
<property name="icon-name">open-menu-symbolic</property>
<property name="icon-size">1</property>
</object>
</child>
</object>
<packing>
<property name="pack-type">end</property>
</packing>
</child>
</template>
<object class="GtkPopoverMenu" id="menu_popover">
<property name="visible">True</property>
<child>
<object class="GtkBox">
<property name="can_focus">False</property>
<property name="border_width">12</property>
<property name="orientation">vertical</property>
<property name="visible">True</property>
<child>
<object class="GtkModelButton">
<property name="can_focus">True</property>
<property name="text" translatable="yes">About</property>
<property name="action-name">win.about</property>
<property name="visible">True</property>
</object>
</child>
</object>
</child>
</object>
</interface>