diff options
author | Benjamin Otte <otte@redhat.com> | 2019-04-12 05:30:14 +0200 |
---|---|---|
committer | Benjamin Otte <otte@redhat.com> | 2019-04-12 19:34:29 +0200 |
commit | 117fc68195e06ecda46b3269764cdee8cf08e467 (patch) | |
tree | d7b9db8fb47f61ca394ecea6978220905c997c12 /tests | |
parent | f310609a66deb84f34047c44c0294beb1d0079e4 (diff) | |
download | gtk+-117fc68195e06ecda46b3269764cdee8cf08e467.tar.gz |
tests: Remove testboxcss
That test was cool in 2011, but hasn't been updated or used since then
because its features are now part of widget-factory and the inspector.
So let's remove it.
Diffstat (limited to 'tests')
-rw-r--r-- | tests/meson.build | 1 | ||||
-rw-r--r-- | tests/testboxcss.c | 240 |
2 files changed, 0 insertions, 241 deletions
diff --git a/tests/meson.build b/tests/meson.build index 67be74027f..66359eb75a 100644 --- a/tests/meson.build +++ b/tests/meson.build @@ -19,7 +19,6 @@ gtk_tests = [ ['testassistant'], ['testbaseline'], ['testbox'], - ['testboxcss'], ['testbuttons'], ['testcairo'], ['testcalendar'], diff --git a/tests/testboxcss.c b/tests/testboxcss.c deleted file mode 100644 index 2a72309724..0000000000 --- a/tests/testboxcss.c +++ /dev/null @@ -1,240 +0,0 @@ -/* testbox.c - * - * Copyright (C) 2010 Benjamin Otte <otte@gnome.ogr> - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This library 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 - * Library General Public License for more details. - * - * You should have received a copy of the GNU Library General Public - * License along with this library. If not, see <http://www.gnu.org/licenses/>. - */ -#include "config.h" -#include <gtk/gtk.h> - -/* This is exactly the style information you've been looking for */ -#define GTK_STYLE_PROVIDER_PRIORITY_FORCE G_MAXUINT - -#define DEFAULT_CSS \ - ".play {\n" \ - " background-image: none;\n" \ - " background-color: red;\n" \ - " border-color: black;\n" \ - " border-radius: 0px;\n" \ - "}\n" \ - "\n" \ - ".play:nth-child(even) {\n" \ - " background-color: yellow;\n" \ - " color: green;\n" \ - "}\n" \ - "\n" \ - ".play:nth-child(first) {\n" \ - " border-radius: 5px 0px 0px 5px;\n" \ - "}\n" \ - "\n" \ - ".play:nth-child(last) {\n" \ - " border-radius: 0px 5px 5px 0px;\n" \ - "}\n" \ - "\n" - -static void -show_parsing_error (GtkCssProvider *provider, - GtkCssSection *section, - const GError *error, - GtkTextBuffer *buffer) -{ - const GtkCssLocation *start_location, *end_location; - GtkTextIter start, end; - const char *tag_name; - - start_location = gtk_css_section_get_start_location (section); - gtk_text_buffer_get_iter_at_line_index (buffer, - &start, - start_location->lines, - start_location->line_bytes); - end_location = gtk_css_section_get_end_location (section); - gtk_text_buffer_get_iter_at_line_index (buffer, - &end, - end_location->lines, - end_location->line_bytes); - - if (error->domain == GTK_CSS_PARSER_WARNING) - tag_name = "warning"; - else - tag_name = "error"; - - gtk_text_buffer_apply_tag_by_name (buffer, tag_name, &start, &end); -} - -static void -css_text_changed (GtkTextBuffer *buffer, - GtkCssProvider *provider) -{ - GtkTextIter start, end; - char *text; - - gtk_text_buffer_get_start_iter (buffer, &start); - gtk_text_buffer_get_end_iter (buffer, &end); - gtk_text_buffer_remove_all_tags (buffer, &start, &end); - - text = gtk_text_buffer_get_text (buffer, &start, &end, FALSE); - gtk_css_provider_load_from_data (provider, text, -1); - g_free (text); -} - -static void -remove_widget (GtkWidget *widget) -{ - gtk_container_remove (GTK_CONTAINER (gtk_widget_get_parent (widget)), widget); -} - -static int count = 0; - -static void -add_button (GtkBox *box) -{ - GtkWidget* button; - char *text; - - text = g_strdup_printf ("Remove %d", ++count); - button = (GtkWidget *)gtk_button_new_with_label (text); - g_free (text); - gtk_style_context_add_class (gtk_widget_get_style_context (button), "play"); - g_signal_connect_swapped (button, - "clicked", - G_CALLBACK (remove_widget), - button); - gtk_widget_show (button); - gtk_container_add (GTK_CONTAINER (box), button); -} - -static void -add_toolbutton (GtkToolbar *toolbar) -{ - GtkWidget* button; - char *text; - - text = g_strdup_printf ("Remove %d", ++count); - button = (GtkWidget *)gtk_tool_button_new (NULL, text); - g_free (text); - gtk_style_context_add_class (gtk_widget_get_style_context (button), "play"); - g_signal_connect_swapped (button, - "clicked", - G_CALLBACK (remove_widget), - button); - gtk_widget_show (button); - gtk_container_add (GTK_CONTAINER (toolbar), button); -} - -static void -set_orientation (GtkSwitch *switch_) -{ - gtk_widget_set_default_direction (gtk_switch_get_active (switch_) ? GTK_TEXT_DIR_LTR : GTK_TEXT_DIR_RTL); -} - -gint -main (gint argc, gchar **argv) -{ - GtkWidget *window, *main_box, *container, *child; - GtkWidget *box, *toolbar; - GtkStyleProvider *provider; - GtkTextBuffer *css; - - gtk_init (); - - css = gtk_text_buffer_new (NULL); - gtk_text_buffer_create_tag (css, - "warning", - "background", "rgba(255,255,0,0.3)", - NULL); - gtk_text_buffer_create_tag (css, - "error", - "background", "rgba(255,0,0,0.3)", - NULL); - - provider = GTK_STYLE_PROVIDER (gtk_css_provider_new ()); - gtk_style_context_add_provider_for_display (gdk_display_get_default (), - provider, - GTK_STYLE_PROVIDER_PRIORITY_FORCE); - - window = gtk_window_new (GTK_WINDOW_TOPLEVEL); - - g_signal_connect (window, "destroy", G_CALLBACK (gtk_main_quit), NULL); - - main_box = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0); - gtk_container_add (GTK_CONTAINER (window), main_box); - - toolbar = gtk_toolbar_new (); - gtk_toolbar_set_style (GTK_TOOLBAR (toolbar), GTK_TOOLBAR_TEXT); - gtk_container_add (GTK_CONTAINER (main_box), toolbar); - - box = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); - gtk_container_add (GTK_CONTAINER (main_box), box); - - container = gtk_scrolled_window_new (NULL, NULL); - gtk_scrolled_window_set_min_content_width (GTK_SCROLLED_WINDOW (container), 200); - gtk_scrolled_window_set_min_content_height (GTK_SCROLLED_WINDOW (container), 200); - gtk_widget_set_vexpand (container, TRUE); - gtk_container_add (GTK_CONTAINER (main_box), container); - child = gtk_text_view_new_with_buffer (css); - gtk_container_add (GTK_CONTAINER (container), child); - g_signal_connect (css, - "changed", - G_CALLBACK (css_text_changed), - provider); - gtk_text_buffer_set_text (css, - DEFAULT_CSS, - -1); - g_signal_connect (provider, - "parsing-error", - G_CALLBACK (show_parsing_error), - gtk_text_view_get_buffer (GTK_TEXT_VIEW (child))); - - container = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); - gtk_container_add (GTK_CONTAINER (main_box), container); - child = gtk_switch_new (); - gtk_switch_set_active (GTK_SWITCH (child), gtk_widget_get_default_direction () == GTK_TEXT_DIR_LTR); - g_signal_connect (child, - "notify::active", - G_CALLBACK (set_orientation), - NULL); - gtk_container_add (GTK_CONTAINER (container), child); - child = gtk_label_new ("left-to-right"); - gtk_widget_set_hexpand (child, TRUE); - gtk_widget_set_halign (child, GTK_ALIGN_START); - gtk_container_add (GTK_CONTAINER (container), child); - child = gtk_button_new_with_label ("Add toolbutton"); - g_signal_connect_swapped (child, - "clicked", - G_CALLBACK (add_toolbutton), - toolbar); - gtk_container_add (GTK_CONTAINER (container), child); - child = gtk_button_new_with_label ("Add button"); - g_signal_connect_swapped (child, - "clicked", - G_CALLBACK (add_button), - box); - gtk_container_add (GTK_CONTAINER (container), child); - - add_toolbutton (GTK_TOOLBAR (toolbar)); - add_toolbutton (GTK_TOOLBAR (toolbar)); - add_toolbutton (GTK_TOOLBAR (toolbar)); - add_toolbutton (GTK_TOOLBAR (toolbar)); - - add_button (GTK_BOX (box)); - add_button (GTK_BOX (box)); - add_button (GTK_BOX (box)); - add_button (GTK_BOX (box)); - - gtk_widget_show (window); - - gtk_main (); - - return 0; -} |