Przeglądaj źródła

cmGrPlot.c : _cmGrPlotObjDestroy() now checks if the object about to be

destroyed is the focused object and updates p->fop accordingly.
master
kevin 10 lat temu
rodzic
commit
a112c6b6a2
1 zmienionych plików z 8 dodań i 0 usunięć
  1. 8
    0
      cmGrPlot.c

+ 8
- 0
cmGrPlot.c Wyświetl plik

@@ -92,6 +92,7 @@ cmGrPlotObj_t* _cmGrPlObjHandleToPtr( cmGrPlObjH_t oh )
92 92
   return op;
93 93
 }
94 94
 
95
+// Destroy the embedded cmGrH_t object
95 96
 cmGrPlRC_t _cmGrPlotObjDelete( cmGrPlotObj_t* op )
96 97
 {
97 98
   if( op==NULL || cmGrObjIsValid( op->grH, op->grObjH)==false )
@@ -323,6 +324,13 @@ void _cmGrPlotObjDestroy(  cmGrObjFuncArgs_t* args )
323 324
 {
324 325
   cmGrPlotObj_t* op = args->cbArg;
325 326
   
327
+  // if the focused op is being destroyed
328
+  if( op->p->fop == op )
329
+  {
330
+    _cmGrPlotObjCb(op->p->fop, kStateChangeGrPlId, kFocusGrPlFl );
331
+    op->p->fop = NULL;
332
+  }
333
+
326 334
   // TODO: is it possible to prevent destruction by returning
327 335
   // 'false' from the used defined callback.  This feature is
328 336
   // slightly complicated by the fact

Ładowanie…
Anuluj
Zapisz