3 * Copyright (C) 2001-2009 Jim Evins <evins@snaught.com>.
5 * This file is part of gLabels.
7 * gLabels is free software: you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation, either version 3 of the License, or
10 * (at your option) any later version.
12 * gLabels is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Public License for more details.
17 * You should have received a copy of the GNU General Public License
18 * along with gLabels. If not, see <http://www.gnu.org/licenses/>.
23 #include "view-text.h"
25 #include <glib/gi18n.h>
27 #include "label-text.h"
29 #include "pixmaps/cursor_text.xbm"
30 #include "pixmaps/cursor_text_mask.xbm"
35 /*========================================================*/
36 /* Private macros and constants. */
37 /*========================================================*/
40 /*========================================================*/
42 /*========================================================*/
45 /*========================================================*/
46 /* Private globals. */
47 /*========================================================*/
50 /*========================================================*/
51 /* Private function prototypes. */
52 /*========================================================*/
55 /*****************************************************************************/
56 /* Return apropos cursor for create object mode. */
57 /*****************************************************************************/
59 gl_view_text_get_create_cursor (void)
61 GdkCursor *cursor = NULL;
62 GdkPixmap *pixmap_data, *pixmap_mask;
63 GdkColor fg = { 0, 0, 0, 0 };
64 GdkColor bg = { 0, 65535, 65535, 65535 };
66 gl_debug (DEBUG_VIEW, "START");
68 pixmap_data = gdk_bitmap_create_from_data (NULL,
69 (gchar *)cursor_text_bits,
72 pixmap_mask = gdk_bitmap_create_from_data (NULL,
73 (gchar *)cursor_text_mask_bits,
74 cursor_text_mask_width,
75 cursor_text_mask_height);
76 cursor = gdk_cursor_new_from_pixmap (pixmap_data, pixmap_mask, &fg,
77 &bg, cursor_text_x_hot,
80 gl_debug (DEBUG_VIEW, "END");
86 /*****************************************************************************/
87 /* Object creation handler: button press event. */
88 /*****************************************************************************/
90 gl_view_text_create_button_press_event (glView *view,
97 gl_label_unselect_all (view->label);
99 object = gl_label_text_new (view->label, TRUE);
101 gl_label_object_set_position (GL_LABEL_OBJECT(object), x, y, FALSE);
102 lines = gl_text_node_lines_new_from_text (_("Text"));
103 gl_label_text_set_lines (GL_LABEL_TEXT(object), lines, FALSE);
105 view->create_object = GL_LABEL_OBJECT (object);
111 /*****************************************************************************/
112 /* Object creation handler: motion event. */
113 /*****************************************************************************/
115 gl_view_text_create_motion_event (glView *view,
119 gl_label_object_set_position (GL_LABEL_OBJECT(view->create_object), x, y, FALSE);
123 /*****************************************************************************/
124 /* Object creation handler: button relesase event. */
125 /*****************************************************************************/
127 gl_view_text_create_button_release_event (glView *view,
131 gl_label_object_set_position (GL_LABEL_OBJECT(view->create_object), x, y, FALSE);
137 * Local Variables: -- emacs
139 * c-basic-offset: 8 -- emacs
140 * tab-width: 8 -- emacs
141 * indent-tabs-mode: nil -- emacs