[chronojump] Several fixes on encSelReps and genericWin delegates
- From: Xavier de Blas <xaviblas src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [chronojump] Several fixes on encSelReps and genericWin delegates
- Date: Fri, 29 Jul 2016 12:29:02 +0000 (UTC)
commit dfb51ceec6ac62c290fe74134b7f675233dad45d
Author: Xavier de Blas <xaviblas gmail com>
Date: Fri Jul 29 14:28:24 2016 +0200
Several fixes on encSelReps and genericWin delegates
src/gui/encoder.cs | 4 +++-
src/gui/encoderSelectRepetitions.cs | 32 ++++++++++++++++++++++++++++----
2 files changed, 31 insertions(+), 5 deletions(-)
---
diff --git a/src/gui/encoder.cs b/src/gui/encoder.cs
index 5c5ac2b..f2dec05 100644
--- a/src/gui/encoder.cs
+++ b/src/gui/encoder.cs
@@ -1062,6 +1062,7 @@ public partial class ChronoJumpWindow
if(encSelReps == null || encSelReps.Type !=
EncoderSelectRepetitions.Types.INDIVIDUAL_CURRENT_SESSION)
encSelReps = new EncoderSelectRepetitionsIndividualCurrentSession();
+ encSelReps.FakeButtonDeleteCurve.Clicked -= new EventHandler(on_delete_encoder_curve);
encSelReps.FakeButtonDeleteCurve.Clicked += new EventHandler(on_delete_encoder_curve);
}
else if(radio_encoder_analyze_individual_all_sessions.Active)
@@ -1088,7 +1089,7 @@ public partial class ChronoJumpWindow
void on_delete_encoder_curve (object o, EventArgs args)
{
- encSelReps.FakeButtonDeleteCurve.Clicked -= new EventHandler(on_delete_encoder_curve);
+ LogB.Information("at on_delete_encoder_curve");
delete_encoder_curve(false, encSelReps.DeleteCurveID);
}
void delete_encoder_curve(bool dbconOpened, int uniqueID)
@@ -1216,6 +1217,7 @@ public partial class ChronoJumpWindow
protected void on_encoder_load_signal_accepted (object o, EventArgs args)
{
+ LogB.Information("on load signal accepted");
genericWin.Button_accept.Clicked -= new EventHandler(on_encoder_load_signal_accepted);
int uniqueID = genericWin.TreeviewSelectedRowID();
diff --git a/src/gui/encoderSelectRepetitions.cs b/src/gui/encoderSelectRepetitions.cs
index 0790a8a..eae751a 100644
--- a/src/gui/encoderSelectRepetitions.cs
+++ b/src/gui/encoderSelectRepetitions.cs
@@ -110,7 +110,7 @@ public class EncoderSelectRepetitions
{
//if user destroyed window (on_delete_event), recreate it again
if(genericWinESR.GenericWindowBoxIsNull() || ! createdGenericWinIsOfThisType())
- createGenericWindow();
+ Do();
activateCallbacks();
genericWinESR.ShowNow();
@@ -132,6 +132,11 @@ public class EncoderSelectRepetitions
genericWinESR.Button_accept.Clicked -= new EventHandler(on_show_repetitions_done);
genericWinESR.Button_accept.Clicked += new EventHandler(on_show_repetitions_done);
}
+ //as genericWin is called by many parts of the software, ensure no undesirable methods are called
from a previous genericWindow
+ protected virtual void removeCallbacks() {
+ //manage selected, unselected curves
+ genericWinESR.Button_accept.Clicked -= new EventHandler(on_show_repetitions_done);
+ }
protected virtual void on_show_repetitions_done (object o, EventArgs args) {
}
@@ -309,10 +314,19 @@ public class EncoderSelectRepetitionsIndividualCurrentSession : EncoderSelectRep
genericWinESR.Button_row_delete.Clicked -= new
EventHandler(on_show_repetitions_row_delete_pre);
genericWinESR.Button_row_delete.Clicked += new
EventHandler(on_show_repetitions_row_delete_pre);
}
+ protected override void removeCallbacks() {
+ genericWinESR.Button_accept.Clicked -= new EventHandler(on_show_repetitions_done);
+ genericWinESR.Button_row_edit.Clicked -= new EventHandler(on_show_repetitions_row_edit);
+ genericWinESR.Button_row_edit_apply.Clicked -= new
EventHandler(on_show_repetitions_row_edit_apply);
+ genericWinESR.Button_row_delete.Clicked -= new
EventHandler(on_show_repetitions_row_delete_pre);
+ }
protected override void on_show_repetitions_done (object o, EventArgs args)
{
+ //genericWinESR.Button_accept.Clicked -= new EventHandler(on_show_repetitions_done);
+ removeCallbacks();
+
//get selected/deselected rows
checkboxes = genericWinESR.GetColumn(1, false);
@@ -374,9 +388,11 @@ public class EncoderSelectRepetitionsIndividualCurrentSession : EncoderSelectRep
// --------------- delete curves start ---------------
- protected void on_show_repetitions_row_delete_pre (object o, EventArgs args) {
+ ConfirmWindow confirmWin;
+ protected void on_show_repetitions_row_delete_pre (object o, EventArgs args)
+ {
if(askDeletion) {
- ConfirmWindow confirmWin = ConfirmWindow.Show(Catalog.GetString(
+ confirmWin = ConfirmWindow.Show(Catalog.GetString(
"Are you sure you want to delete this repetition?"), "", "");
confirmWin.Button_accept.Clicked -= new EventHandler(on_show_repetitions_row_delete);
confirmWin.Button_accept.Clicked += new EventHandler(on_show_repetitions_row_delete);
@@ -384,7 +400,9 @@ public class EncoderSelectRepetitionsIndividualCurrentSession : EncoderSelectRep
on_show_repetitions_row_delete (o, args);
}
- protected void on_show_repetitions_row_delete (object o, EventArgs args) {
+ protected void on_show_repetitions_row_delete (object o, EventArgs args)
+ {
+ confirmWin.Button_accept.Clicked -= new EventHandler(on_show_repetitions_row_delete);
LogB.Information("row delete at show curves");
int uniqueID = genericWinESR.TreeviewSelectedUniqueID;
@@ -547,6 +565,9 @@ public class EncoderSelectRepetitionsIndividualAllSessions : EncoderSelectRepeti
protected override void on_show_repetitions_done (object o, EventArgs args)
{
+ //genericWinESR.Button_accept.Clicked -= new EventHandler(on_show_repetitions_done);
+ removeCallbacks();
+
updateEncoderCompareInterAndReps();
updateEncoderInterSessionDateOnXWeights();
@@ -690,6 +711,9 @@ public class EncoderSelectRepetitionsGroupalCurrentSession : EncoderSelectRepeti
protected override void on_show_repetitions_done (object o, EventArgs args)
{
+ //genericWinESR.Button_accept.Clicked -= new EventHandler(on_show_repetitions_done);
+ removeCallbacks();
+
updateEncoderCompareInterAndReps();
FakeButtonDone.Click();
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]