Lines Matching defs:model

223 BPoseView::BPoseView(Model* model, uint32 viewMode)
237 fModel(model),
778 Model* model = pose->TargetModel();
781 if (model->IsRoot())
784 poseInfo.fInitedDirectory = model->EntryRef()->directory;
790 ModelNodeLazyOpener opener(model, true);
795 extendedPoseInfo = ReadExtendedPoseInfo(model);
817 if (model->InitCheck() != B_OK) {
822 ASSERT(model);
823 ASSERT(model->InitCheck() == B_OK);
826 bool isTrash = model->IsTrash() && IsDesktopView();
827 if (model->IsRoot() || isTrash) {
850 model->WriteAttrKillForeign(kAttrPoseInfo,
855 model->WriteAttrKillForeign(kAttrExtendedPoseInfo,
1265 BPoseView::AddPoses(Model* model)
1267 // if model is zero, PoseView has other means of iterating through all
1269 if (model != NULL) {
1271 if (model->IsRoot()) {
1286 if (model != NULL)
1287 params->ref = *model->EntryRef();
1433 Model* model = 0;
1459 model = new Model(&dirNode, &itemNode, eptr->d_name, false);
1460 result = model->InitCheck();
1462 posesResult->fModels[modelChunkIndex] = model;
1489 // try to watch the model, no matter what
1492 // failed to init pose, model is a zombie, add to zombie
1494 PRINT(("1 adding model %s to zombie list, error %s\n",
1495 model->Name(), strerror(model->InitCheck())));
1496 view->fZombieList->AddItem(model);
1501 view->ReadPoseInfo(model,
1504 if (!PoseVisible(model,
1510 if (model->IsSymLink())
1511 view->CreateSymlinkPoseTarget(model);
1584 Model model(&entry);
1585 if (model.InitCheck() == B_OK) {
1591 monitorMsg.AddInt32("device", model.NodeRef()->device);
1592 monitorMsg.AddInt64("node", model.NodeRef()->node);
1593 monitorMsg.AddInt64("directory", model.EntryRef()->directory);
1594 monitorMsg.AddString("name", model.EntryRef()->name);
1624 Model* model = pose->TargetModel();
1625 if (model != NULL) {
1626 if (model->IsVolume()) {
1627 DeletePose(model->NodeRef());
1657 Model model(&entry);
1658 if (model.InitCheck() == B_OK)
1659 AddPoses(&model);
1746 Model* model = new Model(&entry);
1748 ReadPoseInfo(model, &info);
1749 CreatePose(model, &info, false, NULL, NULL, true);
1756 BPoseView::CreatePose(Model* model, PoseInfo* poseInfo, bool insertionSort,
1760 CreatePoses(&model, poseInfo, 1, &result, insertionSort, indexPtr,
1925 Model* model = models[modelIndex];
1927 // pose adopts model and deletes it when done
1928 if (fInsertedNodes.Contains(*(model->NodeRef()))
1929 || FindZombie(model->NodeRef())) {
1930 watch_node(model->NodeRef(), B_STOP_WATCHING, this);
1931 delete model;
1937 fInsertedNodes.Add(*(model->NodeRef()));
1939 if ((clipboardMode = FSClipboardFindNodeMode(model, !clipboardLocked,
1944 model->OpenNode();
1945 ASSERT(model->IsNodeOpen());
1947 BPose* pose = new BPose(model, this, clipboardMode);
2023 if (model->IsSymLink())
2024 model->ResolveIfLink()->CloseNode();
2026 model->CloseNode();
2040 BPoseView::PoseVisible(const Model* model, const PoseInfo* poseInfo)
2047 BPoseView::ShouldShowPose(const Model* model, const PoseInfo* poseInfo)
2049 if (!PoseVisible(model, poseInfo))
2057 convert_to_stat_beos(model->StatBuf(), &stat);
2059 return fRefFilter->Filter(model->EntryRef(), model->Node(), &stat,
2060 model->MimeType());
2930 BPoseView::ReadPoseInfo(Model* model, PoseInfo* poseInfo)
2932 BModelOpener opener(model);
2933 if (model->Node() == NULL)
2938 model->GetEntry(&entry);
2939 bool isTrash = model->IsTrash() && IsDesktopView();
2943 if (model->IsRoot() || isTrash) {
2957 ASSERT(model->IsNodeOpen());
2961 if (model->Node() == NULL)
2964 result = ReadAttr(model->Node(), kAttrPoseInfo,
2979 const StatStruct* stat = model->StatBuf();
2984 // model->Name(), count));
2994 || (poseInfo->fInitedDirectory != model->EntryRef()->directory
3010 BPoseView::ReadExtendedPoseInfo(Model* model)
3012 BModelOpener opener(model);
3013 if (model->Node() == NULL)
3022 if (model->IsRoot()) {
3036 result = GetAttrInfo(model->Node(), extendedPoseInfoAttrName,
3044 result = ReadAttr(model->Node(), extendedPoseInfoAttrName,
3739 Model* model = pose->TargetModel();
3740 ExtendedPoseInfo* info = ReadExtendedPoseInfo(model);
4297 // get the mime type of the model, following a possible symlink
5152 Model* model = selectionList->ItemAt(i)->ResolvedModel();
5153 if (model != NULL)
5154 srcList->AddItem(new entry_ref(*(model->EntryRef())));
5206 UpdateWasBrokenSymlinkBinder(BPose* pose, Model* model, int32 index,
5209 if (!model->IsSymLink())
5214 if (model->LinkTo() != NULL)
5215 fBrokenLinks->RemoveItem(model);
5242 BPoseView::PoseHandleDeviceUnmounted(BPose* pose, Model* model, int32 index,
5245 if (model->NodeRef()->device == device)
5246 poseView->DeletePose(model->NodeRef());
5247 else if (model->IsSymLink() && model->LinkTo() != NULL
5248 && model->LinkTo()->NodeRef()->device == device) {
5249 poseView->DeleteSymLinkPoseTarget(model->LinkTo()->NodeRef(),
5256 OneMetaMimeChanged(BPose* pose, Model* model, int32 index,
5259 ASSERT(model != NULL);
5261 if (model->IconFrom() != kNode
5262 && model->IconFrom() != kUnknownSource
5263 && model->IconFrom() != kUnknownNotFromNode
5265 && strcasecmp(model->MimeType(), type) == 0) {
5426 Model* model = new Model(&dirNode, &itemNode, name);
5427 if (model->IsDirectory()) {
5428 BString createdPath(BPath(model->EntryRef()).Path());
5430 BPath createdDir(model->EntryRef());
5448 delete model;
5527 Model model(&entry);
5528 if (model.InitCheck() == B_OK)
5529 AddPoses(&model);
5608 Model* model = new Model(dirNode, itemNode, name, true);
5610 if (model->InitCheck() != B_OK) {
5611 // if we have trouble setting up model then we stuff it into
5613 PRINT(("2 adding model %s to zombie list, error %s\n", model->Name(),
5614 strerror(model->InitCheck())));
5615 fZombieList->AddItem(model);
5620 ReadPoseInfo(model, &poseInfo);
5622 if (!PoseVisible(model, &poseInfo)) {
5623 watch_node(model->NodeRef(), B_STOP_WATCHING, this);
5624 delete model;
5628 // model is a symlink, cache up the symlink target or scrap
5630 if (model->IsSymLink() && !CreateSymlinkPoseTarget(model)) {
5631 watch_node(model->NodeRef(), B_STOP_WATCHING, this);
5632 delete model;
5636 return CreatePose(model, &poseInfo, true, indexPtr);
5742 PRINT(("converting model %s from a zombie\n", zombie->Name()));
5960 // we received an attr changed notification for a zombie model, it means
5966 PRINT(("converting model %s from a zombie\n", zombie->Name()));
5969 PRINT(("model has no pose but is not a zombie either!\n"));
7567 AddPoseRefToMessage(Model* model, BMessage* message)
7571 BNode node(model->EntryRef());
7577 BPath path(model->EntryRef());
7582 message->AddRef("refs", model->EntryRef());
8133 PRINT(("deleting zombie model %s\n", zombie->Name()));
8357 Model* model = pose->TargetModel();
8358 if (model->IsVolume()) {
8359 BVolume volume(model->NodeRef()->device);
8413 Model* model = new Model(newDirRef, true);
8414 if (model->InitCheck() != B_OK || !model->IsDirectory()) {
8415 delete model;
8429 fModel = model;
8431 // check if model is a trash dir, if so
8435 ContainerWindow()->UpdateIfTrash(model);
8576 Model model(&resolvedEntry);
8577 if (!model.IsQuery() && !model.IsQueryTemplate())
9822 // if this is an OpenWith window, we'll have no target model