aboutsummaryrefslogtreecommitdiff
path: root/src/gtkshruler.c
diff options
context:
space:
mode:
authorhiro <hiro@ee746299-78ed-0310-b773-934348b2243d>2007-04-05 06:20:13 +0000
committerhiro <hiro@ee746299-78ed-0310-b773-934348b2243d>2007-04-05 06:20:13 +0000
commit22f34ddeb5761d2fe197a5f936e521247db363fe (patch)
tree433ecf1e52c81f50b9192b3fd2bfd2352ca0b0f6 /src/gtkshruler.c
parent412ddd5981f7f5e5b4345b81fea04aa87078e3d7 (diff)
added margin to the compose text view.
git-svn-id: svn://sylpheed.sraoss.jp/sylpheed/trunk@1595 ee746299-78ed-0310-b773-934348b2243d
Diffstat (limited to 'src/gtkshruler.c')
-rw-r--r--src/gtkshruler.c36
1 files changed, 27 insertions, 9 deletions
diff --git a/src/gtkshruler.c b/src/gtkshruler.c
index 05a78764..d4a72d57 100644
--- a/src/gtkshruler.c
+++ b/src/gtkshruler.c
@@ -1,6 +1,7 @@
/* GtkSHRuler
*
- * Copyright (C) 2000-2005 Alfons Hoogervorst & The Sylpheed Claws Team
+ * Copyright (C) 2000-2005 Alfons Hoogervorst & The Sylpheed Claws Team
+ * Copyright (C) 2007 Hiroyuki Yamamoto
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Library General Public
@@ -105,6 +106,7 @@ gtk_shruler_init (GtkSHRuler * shruler)
widget = GTK_WIDGET (shruler);
widget->requisition.width = widget->style->xthickness * 2 + 1;
widget->requisition.height = widget->style->ythickness * 2 + RULER_HEIGHT;
+ shruler->start_pos = 0;
}
@@ -114,6 +116,22 @@ gtk_shruler_new(void)
return GTK_WIDGET( g_object_new( gtk_shruler_get_type(), NULL ) );
}
+void
+gtk_shruler_set_start_pos(GtkSHRuler *ruler, gint pos)
+{
+ g_return_if_fail (GTK_IS_SHRULER (ruler));
+
+ ruler->start_pos = pos;
+}
+
+gint
+gtk_shruler_get_start_pos(GtkSHRuler *ruler)
+{
+ g_return_if_fail (GTK_IS_SHRULER (ruler));
+
+ return ruler->start_pos;
+}
+
static void
gtk_shruler_draw_ticks(GtkRuler *ruler)
{
@@ -159,27 +177,27 @@ gtk_shruler_draw_ticks(GtkRuler *ruler)
/* assume ruler->max_size has the char width */
/* i is increment of char_width, pos is label number
* y position is based on height of widget itself */
- for ( i = 0, pos = 0; i < widget->allocation.width - xthickness; i += ruler->max_size, pos++ ) {
+ for ( pos = GTK_SHRULER(ruler)->start_pos, i = 0; pos < widget->allocation.width - xthickness; pos += ruler->max_size, i++ ) {
gint length = height / 8;
- if ( pos % 10 == 0 ) length = ( 2 * height / 3 );
- else if ( pos % 5 == 0 ) length = ( height / 3 );
+ if ( i % 10 == 0 ) length = ( 2 * height / 3 );
+ else if ( i % 5 == 0 ) length = ( height / 3 );
gdk_draw_line(ruler->backing_store, gc,
- i, height + ythickness,
- i, height - length);
+ pos, height + ythickness,
+ pos, height - length);
- if ( pos % 10 == 0 ) {
+ if ( i % 10 == 0 ) {
gchar buf[8];
PangoLayout *layout;
/* draw label */
- g_snprintf(buf, sizeof buf, "%d", pos);
+ g_snprintf(buf, sizeof buf, "%d", i);
layout = gtk_widget_create_pango_layout
(GTK_WIDGET(ruler), buf);
- gdk_draw_layout(ruler->backing_store, gc, i + 2,
+ gdk_draw_layout(ruler->backing_store, gc, pos + 2,
0, layout);
g_object_unref(layout);