Blame bus/panelproxy.h

Packit Service 1d8f1c
/* -*- mode: C; c-basic-offset: 4; indent-tabs-mode: nil; -*- */
Packit Service 1d8f1c
/* vim:set et sts=4: */
Packit Service 1d8f1c
/* ibus - The Input Bus
Packit Service 1d8f1c
 * Copyright (C) 2008-2014 Peng Huang <shawn.p.huang@gmail.com>
Packit Service 1d8f1c
 * Copyright (C) 2017-2018 Takao Fujiwara <takao.fujiwara1@gmail.com>
Packit Service 1d8f1c
 * Copyright (C) 2008-2018 Red Hat, Inc.
Packit Service 1d8f1c
 *
Packit Service 1d8f1c
 * This library is free software; you can redistribute it and/or
Packit Service 1d8f1c
 * modify it under the terms of the GNU Lesser General Public
Packit Service 1d8f1c
 * License as published by the Free Software Foundation; either
Packit Service 1d8f1c
 * version 2.1 of the License, or (at your option) any later version.
Packit Service 1d8f1c
 *
Packit Service 1d8f1c
 * This library is distributed in the hope that it will be useful,
Packit Service 1d8f1c
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
Packit Service 1d8f1c
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
Packit Service 1d8f1c
 * Lesser General Public License for more details.
Packit Service 1d8f1c
 *
Packit Service 1d8f1c
 * You should have received a copy of the GNU Lesser General Public
Packit Service 1d8f1c
 * License along with this library; if not, write to the Free Software
Packit Service 1d8f1c
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301
Packit Service 1d8f1c
 * USA
Packit Service 1d8f1c
 */
Packit Service 1d8f1c
#ifndef __BUS_PANEL_PROXY_H_
Packit Service 1d8f1c
#define __BUS_PANEL_PROXY_H_
Packit Service 1d8f1c
Packit Service 1d8f1c
#include <ibus.h>
Packit Service 1d8f1c
#include "connection.h"
Packit Service 1d8f1c
#include "inputcontext.h"
Packit Service 1d8f1c
Packit Service 1d8f1c
/*
Packit Service 1d8f1c
 * Type macros.
Packit Service 1d8f1c
 */
Packit Service 1d8f1c
Packit Service 1d8f1c
/* define GOBJECT macros */
Packit Service 1d8f1c
#define BUS_TYPE_PANEL_PROXY             \
Packit Service 1d8f1c
    (bus_panel_proxy_get_type ())
Packit Service 1d8f1c
#define BUS_PANEL_PROXY(obj)             \
Packit Service 1d8f1c
    (G_TYPE_CHECK_INSTANCE_CAST ((obj), BUS_TYPE_PANEL_PROXY, BusPanelProxy))
Packit Service 1d8f1c
#define BUS_PANEL_PROXY_CLASS(klass)     \
Packit Service 1d8f1c
    (G_TYPE_CHECK_CLASS_CAST ((klass),   \
Packit Service 1d8f1c
                              BUS_TYPE_PANEL_PROXY, \
Packit Service 1d8f1c
                              BusPanelProxyClass))
Packit Service 1d8f1c
#define BUS_IS_PANEL_PROXY(obj)          \
Packit Service 1d8f1c
    (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BUS_TYPE_PANEL_PROXY))
Packit Service 1d8f1c
#define BUS_IS_PANEL_PROXY_CLASS(klass)  \
Packit Service 1d8f1c
    (G_TYPE_CHECK_CLASS_TYPE ((klass), BUS_TYPE_PANEL_PROXY))
Packit Service 1d8f1c
#define BUS_PANEL_PROXY_GET_CLASS(obj)   \
Packit Service 1d8f1c
    (G_TYPE_INSTANCE_GET_CLASS ((obj),   \
Packit Service 1d8f1c
                                BUS_TYPE_PANEL_PROXY, \
Packit Service 1d8f1c
                                BusPanelProxyClass))
Packit Service 1d8f1c
Packit Service 1d8f1c
G_BEGIN_DECLS
Packit Service 1d8f1c
Packit Service 1d8f1c
typedef enum
Packit Service 1d8f1c
{
Packit Service 1d8f1c
    PANEL_TYPE_NONE,
Packit Service 1d8f1c
    PANEL_TYPE_PANEL,
Packit Service 1d8f1c
    PANEL_TYPE_EXTENSION_EMOJI
Packit Service 1d8f1c
} PanelType;
Packit Service 1d8f1c
Packit Service 1d8f1c
typedef struct _BusPanelProxy BusPanelProxy;
Packit Service 1d8f1c
typedef struct _BusPanelProxyClass BusPanelProxyClass;
Packit Service 1d8f1c
Packit Service 1d8f1c
GType            bus_panel_proxy_get_type      (void);
Packit Service 1d8f1c
BusPanelProxy   *bus_panel_proxy_new           (BusConnection     *connection,
Packit Service 1d8f1c
                                                PanelType          panel_type);
Packit Service 1d8f1c
Packit Service 1d8f1c
gboolean         bus_panel_proxy_send_signal   (BusPanelProxy   *panel,
Packit Service 1d8f1c
                                                const gchar     *interface_name,
Packit Service 1d8f1c
                                                const gchar     *signal_name,
Packit Service 1d8f1c
                                                GVariant        *parameters,
Packit Service 1d8f1c
                                                GError         **error);
Packit Service 1d8f1c
/* functions that invoke D-Bus methods of the panel component. */
Packit Service 1d8f1c
void             bus_panel_proxy_focus_in      (BusPanelProxy     *panel,
Packit Service 1d8f1c
                                                BusInputContext   *context);
Packit Service 1d8f1c
void             bus_panel_proxy_focus_out     (BusPanelProxy     *panel,
Packit Service 1d8f1c
                                                BusInputContext   *context);
Packit Service 1d8f1c
void             bus_panel_proxy_destroy_context
Packit Service 1d8f1c
                                               (BusPanelProxy     *panel,
Packit Service 1d8f1c
                                                BusInputContext   *context);
Packit Service 1d8f1c
void             bus_panel_proxy_set_cursor_location
Packit Service 1d8f1c
                                               (BusPanelProxy     *panel,
Packit Service 1d8f1c
                                                gint32             x,
Packit Service 1d8f1c
                                                gint32             y,
Packit Service 1d8f1c
                                                gint32             w,
Packit Service 1d8f1c
                                                gint32             h);
Packit Service 1d8f1c
void             bus_panel_proxy_set_cursor_location_relative
Packit Service 1d8f1c
                                               (BusPanelProxy     *panel,
Packit Service 1d8f1c
                                                gint32             x,
Packit Service 1d8f1c
                                                gint32             y,
Packit Service 1d8f1c
                                                gint32             w,
Packit Service 1d8f1c
                                                gint32             h);
Packit Service 1d8f1c
void             bus_panel_proxy_update_preedit_text
Packit Service 1d8f1c
                                               (BusPanelProxy     *panel,
Packit Service 1d8f1c
                                                IBusText          *text,
Packit Service 1d8f1c
                                                guint              cursor_pos,
Packit Service 1d8f1c
                                                gboolean           visible);
Packit Service 1d8f1c
void             bus_panel_proxy_show_preedit_text
Packit Service 1d8f1c
                                               (BusPanelProxy     *panel);
Packit Service 1d8f1c
void             bus_panel_proxy_hide_preedit_text
Packit Service 1d8f1c
                                               (BusPanelProxy     *panel);
Packit Service 1d8f1c
void             bus_panel_proxy_update_auxiliary_text
Packit Service 1d8f1c
                                               (BusPanelProxy     *panel,
Packit Service 1d8f1c
                                                IBusText          *text,
Packit Service 1d8f1c
                                                gboolean           visible);
Packit Service 1d8f1c
void             bus_panel_proxy_show_auxiliary_text
Packit Service 1d8f1c
                                               (BusPanelProxy     *panel);
Packit Service 1d8f1c
void             bus_panel_proxy_hide_auxiliary_text
Packit Service 1d8f1c
                                               (BusPanelProxy     *panel);
Packit Service 1d8f1c
void             bus_panel_proxy_update_lookup_table
Packit Service 1d8f1c
                                               (BusPanelProxy     *panel,
Packit Service 1d8f1c
                                                IBusLookupTable   *table,
Packit Service 1d8f1c
                                                gboolean           visible);
Packit Service 1d8f1c
void             bus_panel_proxy_show_lookup_table
Packit Service 1d8f1c
                                               (BusPanelProxy     *panel);
Packit Service 1d8f1c
void             bus_panel_proxy_hide_lookup_table
Packit Service 1d8f1c
                                               (BusPanelProxy     *panel);
Packit Service 1d8f1c
void             bus_panel_proxy_page_up_lookup_table
Packit Service 1d8f1c
                                               (BusPanelProxy     *panel);
Packit Service 1d8f1c
void             bus_panel_proxy_page_down_lookup_table
Packit Service 1d8f1c
                                               (BusPanelProxy     *panel);
Packit Service 1d8f1c
void             bus_panel_proxy_cursor_up_lookup_table
Packit Service 1d8f1c
                                               (BusPanelProxy     *panel);
Packit Service 1d8f1c
void             bus_panel_proxy_cursor_down_lookup_table
Packit Service 1d8f1c
                                               (BusPanelProxy     *panel);
Packit Service 1d8f1c
void             bus_panel_proxy_register_properties
Packit Service 1d8f1c
                                               (BusPanelProxy     *panel,
Packit Service 1d8f1c
                                                IBusPropList      *prop_list);
Packit Service 1d8f1c
void             bus_panel_proxy_update_property
Packit Service 1d8f1c
                                               (BusPanelProxy     *panel,
Packit Service 1d8f1c
                                                IBusProperty      *prop);
Packit Service 1d8f1c
void             bus_panel_proxy_set_content_type
Packit Service 1d8f1c
                                               (BusPanelProxy     *panel,
Packit Service 1d8f1c
                                                guint              purpose,
Packit Service 1d8f1c
                                                guint              hints);
Packit Service 1d8f1c
PanelType        bus_panel_proxy_get_panel_type
Packit Service 1d8f1c
                                               (BusPanelProxy     *panel);
Packit Service 1d8f1c
void             bus_panel_proxy_panel_extension_received
Packit Service 1d8f1c
                                               (BusPanelProxy     *panel,
Packit Service 1d8f1c
                                                IBusExtensionEvent
Packit Service 1d8f1c
                                                                  *event);
Packit Service 1d8f1c
void             bus_panel_proxy_process_key_event
Packit Service 1d8f1c
                                               (BusPanelProxy     *panel,
Packit Service 1d8f1c
                                                guint              keyval,
Packit Service 1d8f1c
                                                guint              keycode,
Packit Service 1d8f1c
                                                guint              state,
Packit Service 1d8f1c
                                                GAsyncReadyCallback
Packit Service 1d8f1c
                                                                   callback,
Packit Service 1d8f1c
                                                gpointer           user_data);
Packit Service 1d8f1c
void             bus_panel_proxy_commit_text_received
Packit Service 1d8f1c
                                               (BusPanelProxy     *panel,
Packit Service 1d8f1c
                                                IBusText          *text);
Packit Service 1d8f1c
void             bus_panel_proxy_candidate_clicked_lookup_table
Packit Service 1d8f1c
                                               (BusPanelProxy     *panel,
Packit Service 1d8f1c
                                                guint              index,
Packit Service 1d8f1c
                                                guint              button,
Packit Service 1d8f1c
                                                guint              state);
Packit Service 1d8f1c
Packit Service 1d8f1c
G_END_DECLS
Packit Service 1d8f1c
#endif
Packit Service 1d8f1c