summary refs log tree commit diff stats
path: root/src/fe-gtk
diff options
context:
space:
mode:
Diffstat (limited to 'src/fe-gtk')
-rw-r--r--src/fe-gtk/fe-gtk.c24
-rw-r--r--src/fe-gtk/setup.c31
2 files changed, 48 insertions, 7 deletions
diff --git a/src/fe-gtk/fe-gtk.c b/src/fe-gtk/fe-gtk.c
index 8a7ce283..ad401bca 100644
--- a/src/fe-gtk/fe-gtk.c
+++ b/src/fe-gtk/fe-gtk.c
@@ -552,13 +552,31 @@ fe_set_topic (session *sess, char *topic, char *stripped_topic)
 {
 	if (!sess->gui->is_tab || sess == current_tab)
 	{
-		gtk_entry_set_text (GTK_ENTRY (sess->gui->topic_entry), stripped_topic);
+		if (prefs.text_stripcolor_topic)
+		{
+			gtk_entry_set_text (GTK_ENTRY (sess->gui->topic_entry), stripped_topic);
+		}
+		else
+		{
+			gtk_entry_set_text (GTK_ENTRY (sess->gui->topic_entry), topic);
+		}
 		mg_set_topic_tip (sess);
-	} else
+	}
+	else
 	{
 		if (sess->res->topic_text)
+		{
 			free (sess->res->topic_text);
-		sess->res->topic_text = strdup (stripped_topic);
+		}
+
+		if (prefs.text_stripcolor_topic)
+		{
+			sess->res->topic_text = strdup (stripped_topic);
+		}
+		else
+		{
+			sess->res->topic_text = strdup (topic);
+		}
 	}
 }
 
diff --git a/src/fe-gtk/setup.c b/src/fe-gtk/setup.c
index fafb8334..3cf059e3 100644
--- a/src/fe-gtk/setup.c
+++ b/src/fe-gtk/setup.c
@@ -143,7 +143,7 @@ static const char *const tabcompmenu[] =
 
 static const setting inputbox_settings[] =
 {
-	{ST_HEADER, N_("Input box"),0,0,0},
+	{ST_HEADER, N_("Input Box"),0,0,0},
 	{ST_TOGGLE, N_("Use the Text box font and colors"), P_OFFINTNL(style_inputbox),0,0,0},
 #if defined(USE_GTKSPELL) || defined(USE_LIBSEXY)
 	{ST_TOGGLE, N_("Spell checking"), P_OFFINTNL(gui_input_spell),0,0,0},
@@ -219,7 +219,7 @@ static const setting userlist_settings[] =
 	{ST_MENU,	N_("User list sorted by:"), P_OFFINTNL(userlist_sort), 0, ulmenutext, 0},
 	{ST_MENU,	N_("Show user list at:"), P_OFFINTNL(gui_ulist_pos), 0, ulpos, 1},
 
-	{ST_HEADER,	N_("Away tracking"),0,0,0},
+	{ST_HEADER,	N_("Away Tracking"),0,0,0},
 	{ST_TOGGLE,	N_("Track the Away status of users and mark them in a different color"), P_OFFINTNL(away_track),0,0,2},
 	{ST_NUMBER, N_("On channels smaller than:"), P_OFFINTNL(away_size_max),0,0,10000},
 
@@ -281,6 +281,15 @@ static const setting tabs_settings[] =
 	{ST_END, 0, 0, 0, 0, 0}
 };
 
+static const setting color_settings[] =
+{
+	{ST_TOGGLE, N_("Messages"), P_OFFINTNL(text_stripcolor_msg), 0, 0, 0},
+	{ST_TOGGLE, N_("Scrollback"), P_OFFINTNL(text_stripcolor_replay), 0, 0, 0},
+	{ST_TOGGLE, N_("Topic"), P_OFFINTNL(text_stripcolor_topic), 0, 0, 0},
+
+	{ST_END, 0, 0, 0, 0, 0}
+};
+
 static const char *const dccaccept[] =
 {
 	N_("No"),
@@ -413,7 +422,7 @@ static const setting advanced_settings[] =
 	{ST_TOGGLE, N_("Send window"), P_OFFINTNL(autoopendccsendwindow), 0, 0, 0},
 	{ST_TOGGLE, N_("Receive window"), P_OFFINTNL(autoopendccrecvwindow), 0, 0, 0},
 	{ST_TOGGLE, N_("Chat window"), P_OFFINTNL(autoopendccchatwindow), 0, 0, 0},
-	{ST_HEADER,	N_("Auto-Copy Behavior"),0,0,0},
+	{ST_HEADER,	N_("Auto Copy Behavior"),0,0,0},
 	{ST_TOGGLE, N_("Automatically copy selected text"), P_OFFINTNL(autocopy_text),
 					N_("Copy selected text to clipboard when left mouse button is released. "
 						"Otherwise, CONTROL-SHIFT-C will copy the "
@@ -464,7 +473,9 @@ static const setting logging_settings[] =
 {
 	{ST_HEADER,	N_("Logging"),0,0,0},
 	{ST_TOGGLE,	N_("Display scrollback from previous session"), P_OFFINTNL(text_replay), 0, 0, 0},
-	{ST_TOGGLE,	N_("Strip colors when displaying scrollback"), P_OFFINTNL(text_replay_strip_color), 0, 0, 0},
+#if 0 /* Now it's done under Colors */
+	{ST_TOGGLE,	N_("Strip colors when displaying scrollback"), P_OFFINTNL(text_stripcolor_replay), 0, 0, 0},
+#endif
 	{ST_TOGGLE,	N_("Enable logging of conversations to disk"), P_OFFINTNL(logging), 0, 0, 2},
 	{ST_ENTRY,	N_("Log filename:"), P_OFFSETNL(logmask), 0, 0, sizeof prefs.logmask},
 	{ST_LABEL,	N_("%s=Server %c=Channel %n=Network.")},
@@ -1417,6 +1428,18 @@ setup_create_color_page (void)
 	setup_create_other_colorR (_("Spell checker:"), COL_SPELL, 11, tab);
 #endif
 
+	setup_create_header (tab, 15, N_("Color Stripping"));
+
+	/* label = gtk_label_new (_("Strip colors from:"));
+	gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5);
+	gtk_table_attach (GTK_TABLE (tab), label, 2, 3, 16, 17,
+							GTK_SHRINK | GTK_FILL, GTK_SHRINK | GTK_FILL, LABEL_INDENT, 0); */
+
+	for (i = 0; i < 3; i++)
+	{
+		setup_create_toggleL (tab, i + 16, &color_settings[i]);
+	}
+
 	return box;
 }