Changeset 2530 in Sophya


Ignore:
Timestamp:
Apr 28, 2004, 12:13:29 PM (21 years ago)
Author:
ansari
Message:

Amelioration gestion highlight des PIDrawers - Reza 28/4/2004

Location:
trunk/SophyaPI/PI
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/SophyaPI/PI/pidrawer.cc

    r2522 r2530  
    6868  mDndfg = false;  // Pour controle de l'appel de Detach() si delete
    6969
    70   mFgHighLight = false;  // Flag de control d'affichage en mode HighLight
     70  lastHLStatus = mFgHighLight = false;  // Flag de control d'affichage en mode HighLight
    7171
    7272
     
    238238PIDrawer::HighLight(bool fgh)
    239239{
    240   mFgHighLight = fgh;
     240  if (lastHLStatus == fgh)  return;
     241  lastHLStatus = mFgHighLight = fgh;
    241242  Refresh();
    242243  mFgHighLight = false;
     
    459460    mGrUC->SelForeground(PI_HighlightBlue);
    460461    mGrUC->LockForegroundColor();
     462    lastHLStatus = true;
    461463  }
     464  else lastHLStatus = false;
    462465 
    463466  return(mGrUC);
  • trunk/SophyaPI/PI/pidrawer.h

    r2522 r2530  
    131131  PIGraphicUC* mGrUC;
    132132
    133 // Flag de control d'affichage en mode HighLight
    134   bool mFgHighLight;
     133// Flag de control d'affichage en mode HighLight, dernier etat highlight ou non
     134  bool mFgHighLight, lastHLStatus;
    135135// Flag indiquant s'il y a une fenetre de controle specifique
    136136  bool mFgSpecContWind;
  • trunk/SophyaPI/PI/pimenux.cc

    r2322 r2530  
    476476evt.display = dsp;
    477477evt.window = sw;
     478evt.subwindow = None;
    478479evt.root = rw;
    479480evt.x_root = xr;
     
    482483evt.y = py;
    483484evt.serial = PIXGetLastEventSerial();
    484 evt.time = PIXGetLastEventTime();
     485// evt.time = PIXGetLastEventTime();
     486PIXGetLastEventInfo(evt.state, evt.time);
     487evt.button = 1;
     488// evt.state = 0;
    485489evt.send_event = False;
    486490evt.same_screen = True;
     491cout << " XmMenuPosition-DBG xr,yr= " << xr << "," << yr
     492     << " x,y=" << px << "," << py << endl;
    487493XmMenuPosition(XtWdg(), &evt);
    488494// SetPos(xr, yr);
  • trunk/SophyaPI/PI/piscdrawwdg.cc

    r2529 r2530  
    428428    int nid = FindNearestDrawerId(x,y);
    429429    SetActiveDrawerId(nid);
    430 //    PIDrawer*  actdr = GetActiveDrawer();
    431 //    if (actdr) {
    432 //      actdr->HighLight(true);
    433 //    }
     430    PIDrawer*  actdr = GetActiveDrawer();
     431    if (actdr) {
     432      actdr->HighLight(true);
     433      if (mDrwMen) delete mDrwMen;
     434      mDrwMen = new PIDrwMgrMenu(this);
     435      mDrwMen->Show(this, x, y);
     436    }
    434437    return;
    435438  }
     
    474477  if (mFgShiftBut) {  //SetActive Drawer on Shift-Button-1
    475478    mFgShiftBut = false;
     479    /*
    476480    PIDrawer*  actdr = GetActiveDrawer();
    477481    if (actdr) {
     
    481485      mDrwMen->Show();
    482486    }
    483 
     487    */
    484488    return;
    485489  }
Note: See TracChangeset for help on using the changeset viewer.