Ignore:
Timestamp:
Mar 10, 2007, 12:11:43 PM (18 years ago)
Author:
cinc
Message:

Implemented methods to add/remove objects to/from folders (and folder windows).

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/desktop/class_c/wpobject.c

    r241 r244  
    250250            //g_message("   in %s wpNoteBook: %lx pui %lx", __FUNCTION__, wpNoteBook, pui);
    251251            /* Make sure the view item is removed when the window is closed */
    252             g_signal_connect(G_OBJECT(NOMWindow_queryWindowHandle((NOMWindow*)wpNoteBook, NULLHANDLE)),"delete-event",
     252            g_signal_connect(G_OBJECT(NOMWindow_queryWindowHandle((NOMWindow*)wpNoteBook, NULLHANDLE)),
     253                             "delete-event",
    253254                             G_CALLBACK(defaultWPWindowDeleteHandler), (gpointer) pui);
    254255            WPObject_wpAddToObjUseList(nomSelf, pui, ev);
     
    418419  else{
    419420    pUseItem=(PUSEITEM)pCurrentItem;
    420     pUseItem--;
     421    pUseItem--; /* Note that VIEWITEM comes after the USEITEM structure */
    421422    pUseItem=WPObject_wpFindUseItem(nomSelf, USAGE_OPENVIEW,  pUseItem, ev);
    422423  }
     
    426427      ++pUseItem;
    427428      pViewItem=(PVIEWITEM)pUseItem;
    428       pUseItem--;
     429      pUseItem--; /* Note that VIEWITEM comes after the USEITEM structure */
    429430      //g_message("        a in %s %d", __FUNCTION__, flViews);
    430431      if((pViewItem->ulView == ulView) && (pViewItem->nameSpaceId==nameSpaceId))
     
    811812}
    812813
     814
    813815NOM_Scope CORBA_boolean NOMLINK impl_WPObject_wpMoveObject(WPObject* nomSelf,
    814816                                                           const PWPFolder wpTargetFolder,
     
    816818{
    817819/* WPObjectData* nomThis=WPObjectGetData(nomSelf); */
    818   g_message("Calling %s, not implemented yet", __FUNCTION__);
     820  WPFolder * wpFolder;
     821  PUSEITEM pui;
     822
     823  if(!nomIsObj(wpTargetFolder))
     824    return FALSE;
     825
     826  /* Get folder holding the object */
     827  wpFolder=WPObject_wpQueryFolder(nomSelf, NULLHANDLE);
     828
     829  g_message("Parent folder is %s",
     830            NOMPath_queryCString(WPFolder_wpQueryFileName(wpFolder, TRUE, NULLHANDLE),
     831                                 NULLHANDLE));
     832
     833  /* Remove it from the parent folders content list. */
     834  WPFolder_wpDeleteFromContent(wpFolder, nomSelf, NULLHANDLE);
     835
     836  /* Remove it from the folders model thus any folder window. */
     837  pui=_wpDeleteFromStore(wpFolder, nomSelf, NULLHANDLE);
     838  _wpFreeMem(nomSelf, pui, NULLHANDLE);
     839
     840  g_message("Target folder is %s",
     841            NOMPath_queryCString(WPFolder_wpQueryFileName(wpTargetFolder, TRUE, NULLHANDLE),
     842                                 NULLHANDLE));
     843
     844  /* Insert into the new folder */
     845  _wpAddToContent(wpTargetFolder, nomSelf, NULLHANDLE, NULLHANDLE);
     846  _wpAddToStore(wpTargetFolder, nomSelf, NULLHANDLE);
    819847
    820848  return FALSE;
     
    828856/* WPObjectData* nomThis=WPObjectGetData(nomSelf); */
    829857
    830   g_message("Calling %s, not implmnted yet", __FUNCTION__);
     858  g_message("Calling %s, not implmented yet", __FUNCTION__);
     859
    831860  return FALSE;
    832861}
Note: See TracChangeset for help on using the changeset viewer.