parent
10d037819e
commit
ad5cef35d4
After Width: | Height: | Size: 33 KiB |
@ -0,0 +1,16 @@ |
||||
#include "device.h" |
||||
|
||||
struct DEVICE |
||||
{ |
||||
|
||||
}; |
||||
|
||||
char* device_get_image(device_t* device) |
||||
{ |
||||
return "/home/valentin/Documents/prjs/ginput/drivers/g-wolves/htx/htx_0.png"; |
||||
} |
||||
|
||||
char* device_get_name(device_t* device) |
||||
{ |
||||
return "G-Wolves HTX 4K"; |
||||
} |
@ -0,0 +1,9 @@ |
||||
#ifndef DEVICE_H |
||||
#define DEVICE_H |
||||
|
||||
typedef struct DEVICE device_t; |
||||
|
||||
char* device_get_image(device_t* device); |
||||
char* device_get_name(device_t* device); |
||||
|
||||
#endif |
@ -0,0 +1,42 @@ |
||||
#include "mouse-panel.h" |
||||
|
||||
struct _MousePanel |
||||
{ |
||||
Panel parent_instance; |
||||
|
||||
GtkImage* mouse_image; |
||||
GtkLabel* mouse_name;
|
||||
}; |
||||
|
||||
G_DEFINE_TYPE (MousePanel, mouse_panel, panel_get_type()) |
||||
|
||||
static void |
||||
mouse_panel_class_init(MousePanelClass* klass) |
||||
{ |
||||
GObjectClass* object_class = G_OBJECT_CLASS(klass); |
||||
GtkWidgetClass* widget_class = GTK_WIDGET_CLASS(klass); |
||||
PanelClass* panel_class = GINPUT_PANEL_CLASS(klass); |
||||
|
||||
gtk_widget_class_set_template_from_resource(widget_class, "/v/ginput/panel-mouse.ui"); |
||||
|
||||
gtk_widget_class_bind_template_child(widget_class, MousePanel, mouse_image); |
||||
gtk_widget_class_bind_template_child(widget_class, MousePanel, mouse_name); |
||||
} |
||||
|
||||
static void |
||||
mouse_panel_init(MousePanel* self) |
||||
{ |
||||
gtk_widget_init_template(GTK_WIDGET(self)); |
||||
} |
||||
|
||||
Panel* |
||||
mouse_panel_new(void) |
||||
{ |
||||
return g_object_new(mouse_panel_get_type(), NULL); |
||||
} |
||||
|
||||
void mouse_panel_set_device(MousePanel* self, device_t* device) |
||||
{ |
||||
gtk_image_set_from_file(self->mouse_image, device_get_image(device)); |
||||
gtk_label_set_label(self->mouse_name, device_get_name(device)); |
||||
} |
@ -0,0 +1,15 @@ |
||||
#pragma once |
||||
|
||||
#include "ui/panel.h" |
||||
#include "device/device.h" |
||||
|
||||
G_BEGIN_DECLS |
||||
|
||||
G_DECLARE_FINAL_TYPE(MousePanel, mouse_panel, GINPUT, MOUSE_PANEL, Panel) |
||||
|
||||
G_END_DECLS |
||||
|
||||
Panel* mouse_panel_new(void); |
||||
|
||||
void mouse_panel_set_device(MousePanel* self, device_t* device); |
||||
|
Loading…
Reference in new issue