[med-svn] [SCM] aghermann branch, master, updated. c0bd21ca8eb529ade7e0c7aad22951a308a8dc8f

Andrei Zavada johnhommer at gmail.com
Wed May 1 00:09:24 UTC 2013


The following commit has been merged in the master branch:
commit afd290475deb1fe41eb07092034d7bf735fc2535
Author: Andrei Zavada <johnhommer at gmail.com>
Date:   Mon Apr 22 18:17:59 2013 +0300

    in-/decrement scale individually with Ctrl, all msmts at once with Ctrl+Shift

diff --git a/src/ui/mw/measurements.cc b/src/ui/mw/measurements.cc
index 64ae161..9a77170 100644
--- a/src/ui/mw/measurements.cc
+++ b/src/ui/mw/measurements.cc
@@ -298,24 +298,27 @@ draw_timeline( cairo_t *cr) const
 
 void
 aghui::SExpDesignUI::
-modify_profile_scales( const GdkScrollDirection d)
+modify_active_profile_scale( const GdkScrollDirection d)
 {
-	switch ( d ) {
-	case GDK_SCROLL_DOWN:
-		profile_scale_psd /= 1.05;
-		profile_scale_swu /= 1.05;
-		profile_scale_mc  /= 1.05;
-	    break;
-	case GDK_SCROLL_UP:
-		profile_scale_psd *= 1.05;
-		profile_scale_swu *= 1.05;
-		profile_scale_mc  *= 1.05;
-	    break;
-	default:
-	    break;
+	auto fac = (d == GDK_SCROLL_DOWN) ? 1/1.05 : 1.05;
+	switch ( display_profile_type ) {
+	case metrics::TType::psd: profile_scale_psd *= fac; break;
+	case metrics::TType::swu: profile_scale_swu *= fac; break;
+	case metrics::TType::mc : profile_scale_mc  *= fac; break;
+	default: break;
 	}
 }
 
+void
+aghui::SExpDesignUI::
+modify_profile_scales( const GdkScrollDirection d)
+{
+	auto fac = (d == GDK_SCROLL_DOWN) ? 1/1.05 : 1.05;
+	profile_scale_psd *= fac;
+	profile_scale_swu *= fac;
+	profile_scale_mc  *= fac;
+}
+
 // Local Variables:
 // Mode: c++
 // indent-tabs-mode: 8
diff --git a/src/ui/mw/measurements_cb.cc b/src/ui/mw/measurements_cb.cc
index ceef0f9..7470f16 100644
--- a/src/ui/mw/measurements_cb.cc
+++ b/src/ui/mw/measurements_cb.cc
@@ -127,10 +127,15 @@ daSubjectTimeline_scroll_event_cb(
 	auto& J = *(SExpDesignUI::SSubjectPresentation*)userdata;
 	auto& ED = J._p._p;
 
-	if ( event->state & GDK_CONTROL_MASK ) {
+	if ( event->state & (GDK_CONTROL_MASK | GDK_SHIFT_MASK) ) {
 		ED.modify_profile_scales( event->direction);
 		gtk_widget_queue_draw( (GtkWidget*)ED.cMeasurements);
 		return TRUE;
+
+	} else if ( event->state & GDK_CONTROL_MASK ) {
+		ED.modify_active_profile_scale( event->direction);
+		gtk_widget_queue_draw( (GtkWidget*)ED.cMeasurements);
+		return TRUE;
 	} else
 		return FALSE;
 }
diff --git a/src/ui/mw/mw.hh b/src/ui/mw/mw.hh
index 38391b3..3aaa244 100644
--- a/src/ui/mw/mw.hh
+++ b/src/ui/mw/mw.hh
@@ -264,6 +264,7 @@ class SExpDesignUI
 		profile_scale_swu,
 		profile_scale_mc;
 	double calculate_profile_scale();
+	void modify_active_profile_scale( GdkScrollDirection);
 	void modify_profile_scales( GdkScrollDirection);
 
 	bool	autoscale;

-- 
Sleep experiment manager



More information about the debian-med-commit mailing list