Changeset 3374 in Sophya for trunk/SophyaPI


Ignore:
Timestamp:
Nov 6, 2007, 12:21:54 AM (18 years ago)
Author:
ansari
Message:

suite corrections pour eviter blocage: Request UpdateObjMgrWindow() -> SOpExObj::AddOpe()/run() - Reza 05/11/2007

Location:
trunk/SophyaPI/PIext
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/SophyaPI/PIext/nobjmgr.cc

    r3366 r3374  
    120120      NamedObjMgr _momg;
    121121      _momg.UpdateObjMgrWindow(-1);
     122      obmWUpdReq = false;
    122123    }
    123124  }
     
    17081709{
    17091710if (!myImgApp)  return;
    1710 if (myMtxLocked) {
    1711   obmWUpdReq = true;
    1712   obmWvis = false;
    1713   (myImgApp->ObjMgrW())->SetUnSensitive();
     1711NObjMgrSync zs(0); zs.NOp();
     1712UpdateObjMgrWindow_P(did);
     1713}
     1714
     1715/* --Methode-- */
     1716void NamedObjMgr::SetObjMgrWindowVisibility(bool fgvis)
     1717{
     1718obmWvis = fgvis;
     1719}
     1720
     1721/* --Methode-- */
     1722void NamedObjMgr::UpdateObjMgrWindow_P(int did)
     1723{
     1724obmWUpdReq = false;
     1725obmWvis = false;
     1726if (!myImgApp)  return;
     1727if ( !_fgimgapp )  myImgApp->LockMutex();
     1728if ( !(myImgApp->ObjMgrW())->Visible() ||
     1729     ( (did >= 0) && (myImgApp->ObjMgrW())->GetCurDirId() != did) ) {
     1730  if ( !_fgimgapp )  myImgApp->UnlockMutex(true);
    17141731  return;
    1715 }
    1716 NObjMgrSync zs(0); zs.NOp();
     1732  }
     1733
    17171734if (did < 0) {
    17181735  string cdir = *currDir;
     
    17211738  did = (myImgApp->ObjMgrW())->GetCurDirId();
    17221739}
    1723 
    1724 UpdateObjMgrWindow_P(did);
    1725 (myImgApp->ObjMgrW())->SetSensitive();
    1726 obmWUpdReq = false;
    1727 obmWvis = true;
    1728 }
    1729 
    1730 /* --Methode-- */
    1731 void NamedObjMgr::SetObjMgrWindowVisibility(bool fgvis)
    1732 {
    1733 obmWvis = fgvis;
    1734 }
    1735 
    1736 /* --Methode-- */
    1737 void NamedObjMgr::UpdateObjMgrWindow_P(int did)
    1738 {
    1739 if (!myImgApp)  return;
    1740 if ( !_fgimgapp )  myImgApp->LockMutex();
    1741 if ( !(myImgApp->ObjMgrW())->Visible() ||
    1742      ( (myImgApp->ObjMgrW())->GetCurDirId() != did) ) {
    1743   if ( !_fgimgapp )  myImgApp->UnlockMutex(true);
    1744   return;
    1745   }
    17461740
    17471741(myImgApp->ObjMgrW())->ClearObjList();
     
    17561750  (myImgApp->ObjMgrW())->AddObj(cn.c_str(), (*it).second.oid);
    17571751  }
     1752
     1753(myImgApp->ObjMgrW())->SetSensitive();
    17581754if ( !_fgimgapp )  myImgApp->UnlockMutex(true);
     1755obmWvis = true;
    17591756return;
    17601757}
  • trunk/SophyaPI/PIext/piacmd.cc

    r3366 r3374  
    441441    mutx_inps.unlock();
    442442    try {
    443       if (cmd == "SCO") {  // set cobj
     443      if (cmd == "UPD") {  // UpdateObjMgrWindow()
     444        int did = atoi(nom.c_str());
     445        omg.UpdateObjMgrWindow(did);
     446      }
     447      else if (cmd == "SCO") {  // set cobj
    444448        string ss = "set cobj ";
    445449        ss += nom;
  • trunk/SophyaPI/PIext/pisiadw.cc

    r3366 r3374  
    7272{
    7373PIWindow::Show();
    74 dap->ObjMgr()->UpdateObjMgrWindow( -1 );
     74SetUnSensitive();
     75UpdateList(-1);
    7576return;
    7677}
     
    9697  }
    9798else if (msg >= 30000) {
    98   dap->ObjMgr()->UpdateObjMgrWindow(msg-30000);
     99  UpdateList(msg-30000);
    99100  return;
    100101  }
     
    155156{
    156157if (!Visible()) return;
    157 if ( (did >0) &&(did != GetCurDirId()) )  return;
    158 dap->ObjMgr()->UpdateObjMgrWindow(did);
     158if ( (did >= 0)&&(did != GetCurDirId()) )  return;
     159char buff[48];
     160sprintf(buff,"UPD %d",did);
     161string cmd = buff;
     162dap->getSOpExObj()->AddOpe(cmd);
    159163return;
    160164}
Note: See TracChangeset for help on using the changeset viewer.