From e7766d22748115410567d666906162c9bdb91548 Mon Sep 17 00:00:00 2001 From: tlatorre Date: Sat, 12 Nov 2022 13:22:12 -0800 Subject: add some comments --- vito.c | 30 ++++++++++++++++-------------- 1 file changed, 16 insertions(+), 14 deletions(-) diff --git a/vito.c b/vito.c index 05456ac..effba9e 100644 --- a/vito.c +++ b/vito.c @@ -4,6 +4,12 @@ #include #include +/* Time in milliseconds it takes to write a character, i.e. if you hold down + * the mouse button for this many ms it will write the character and move on to + * the next character (or emoji). + * + * Initially had this set to 500 ms (half a second), but that was a bit short, + * so I've updated it to one second. */ #define CLICK_TIME 1000 #define LEN(x) ((sizeof(x)/sizeof(0[x])) / ((size_t)(!(sizeof(x) % sizeof(0[x]))))) @@ -22,6 +28,7 @@ static void aeGetTime(long *seconds, long *milliseconds) GtkWidget *text_widget; GtkTextTag *tag; +/* List of emojis. */ #define STOP "\xf0\x9f\x9b\x91" #define THANK_YOU "\xf0\x9f\x99\x8f" #define UNAMUSED "\xf0\x9f\x98\x92" @@ -76,8 +83,6 @@ const char *emoji_array[] = { CLEAR_SCREEN, }; -chars emoji = { emoji_array, LEN(emoji_array)}; - const char *alphabet_array[] = { "a", "b", @@ -115,8 +120,8 @@ const char *alphabet_array[] = { "." }; +chars emoji = { emoji_array, LEN(emoji_array)}; chars alphabet = {alphabet_array, LEN(alphabet_array)}; - chars *current_chars = &emoji; char buf[100000]; @@ -167,14 +172,14 @@ static void write_buf(void) gtk_text_buffer_apply_tag(text_buffer, tag, &start, &end); } -static int pressed2(GtkWidget *widget, gpointer data) +static int right_click_pressed(GtkWidget *widget, gpointer data) { backspace(); write_buf(); return TRUE; } -static int released2(GtkWidget *widget, gpointer data) +static int right_click_released(GtkWidget *widget, gpointer data) { return TRUE; } @@ -267,8 +272,7 @@ static void activate(GtkApplication *app, gpointer user_data) GtkTextBuffer *text_buffer; GtkCssProvider *provider; GtkStyleContext *context; - GtkGesture *gesture; - GtkGesture *gesture2; + GtkGesture *gesture, *right_click_gesture; GtkEventController *event_controller; window = gtk_application_window_new(app); @@ -279,11 +283,11 @@ static void activate(GtkApplication *app, gpointer user_data) g_signal_connect(event_controller, "key-pressed", G_CALLBACK(on_key_press), NULL); gtk_widget_add_controller(window, event_controller); - gesture2 = gtk_gesture_click_new(); - gtk_gesture_single_set_button(GTK_GESTURE_SINGLE (gesture2), 3); - g_signal_connect(gesture2, "pressed", G_CALLBACK(pressed2), NULL); - g_signal_connect(gesture2, "released", G_CALLBACK(released2), NULL); - gtk_widget_add_controller(window, GTK_EVENT_CONTROLLER(gesture2)); + right_click_gesture = gtk_gesture_click_new(); + gtk_gesture_single_set_button(GTK_GESTURE_SINGLE (right_click_gesture), 3); + g_signal_connect(right_click_gesture, "pressed", G_CALLBACK(right_click_pressed), NULL); + g_signal_connect(right_click_gesture, "released", G_CALLBACK(right_click_released), NULL); + gtk_widget_add_controller(window, GTK_EVENT_CONTROLLER(right_click_gesture)); gesture = gtk_gesture_click_new(); g_signal_connect(gesture, "pressed", G_CALLBACK(pressed), NULL); @@ -311,8 +315,6 @@ static void activate(GtkApplication *app, gpointer user_data) /* Use a tag to change the color for just one part of the widget */ tag = gtk_text_buffer_create_tag(text_buffer, "red_foreground", "foreground", "red", NULL); - buf[0] = 'a'; - buf[1] = '\0'; write_buf(); gtk_window_set_child(GTK_WINDOW(window), text_widget); -- cgit