本文整理汇总了C++中BPoseView::HideBarberPole方法的典型用法代码示例。如果您正苦于以下问题:C++ BPoseView::HideBarberPole方法的具体用法?C++ BPoseView::HideBarberPole怎么用?C++ BPoseView::HideBarberPole使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类BPoseView
的用法示例。
在下文中一共展示了BPoseView::HideBarberPole方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: str
//.........这里部分代码省略.........
view->SetViewMode(kIconMode);
view->ShowBarberPole();
view->UnlockLooper();
alert = new BAlert("Error", "IconVader:\nClick on the icons to get points."
"\nAvoid symlinks!", "OK");
alert->SetFlags(alert->Flags() | B_CLOSE_ON_ESCAPE);
alert->Go();
int32 score = 0;
int32 count = 300;
while (count--) {
status = B_ERROR;
if (!msgr.LockTarget()) {
Error(view, status);
return;
}
BPose *pose;
for (int32 i = 0; (pose = view->PoseAtIndex(i)); i++) {
if (pose->IsSelected()) {
if (pose->TargetModel()->IsFile())
score++;
if (pose->TargetModel()->IsDirectory())
score+=2;
if (pose->TargetModel()->IsSymLink())
score-=10;
pose->Select(false);
}
#ifdef __HAIKU__
BPoint location = pose->Location(view);
#else
BPoint location = pose->Location();
#endif
location.x += ((rand() % 20) - 10);
location.y += ((rand() % 20) - 10);
#ifdef __HAIKU__
pose->SetLocation(location, view);
#else
pose->SetLocation(location);
#endif
}
view->CheckPoseVisibility();
view->Invalidate();
BString str("Score: ");
str << score;
view->Window()->SetTitle(str.String());
view->UnlockLooper();
snooze(100000);
}
BString scoreStr("You scored ");
scoreStr << score << " points!";
alert = new BAlert("Error", scoreStr.String(), "Cool!");
alert->SetFlags(alert->Flags() | B_CLOSE_ON_ESCAPE);
alert->Go();
status = B_ERROR;
if (!msgr.LockTarget()) {
Error(view, status);
return;
}
/*
status = B_BAD_HANDLER;
view = dynamic_cast<BPoseView *>(msgr.Target(NULL));
if (!view)
goto err1;
*/
view->HideBarberPole();
view->SetViewMode(poseViewModeBackup);
view->RestoreState(poseViewBackup);
view->RestoreColumnState(poseViewColumnBackup);
view->Window()->SetTitle(windowTitleBackup.String());
/*
BMessage('_RRC') {
TrackerViewToken = BMessenger(port=32004, team=591, target=direct:0x131)
} */
//be_roster->Launch("application/x-vnd.haiku-filetypes", refs);
view->UnlockLooper();
return;
}