Definition at line 761 of file RotorBrowser.h. References BookmarkActiveCenter(), BookmarkSpecific(), CheckKBN(), Impala::Visualization::RotorBrowser::RotorBrowserContext::GetCenter(), Impala::Visualization::RotorBrowser::RotorBrowserContext::GetName(), Impala::Visualization::RotorBrowser::RotorBrowserContext::GetRelative(), Impala::Visualization::RotorBrowser::RotorBrowserContext::GoFirst(), Impala::Visualization::RotorBrowser::RotorBrowserContext::GoLast(), Impala::Visualization::RotorBrowser::RotorBrowserContext::GoLeft(), Impala::Visualization::RotorBrowser::RotorBrowserContext::GoRight(), Impala::Visualization::RotorBrowser::RotorBrowserContext::GoTo(), ILOG_USER, mActiveContext, mKeepCenterCentered, PublishContextMoved(), and UpdateViewsToContext(). Referenced by KeyboardRotorFunc(). 00762 { 00763 int c = 0; 00764 if ( CheckKBN("RbGoForward", k, state)) 00765 c = 'd'; 00766 else if (CheckKBN("RbGoBackward", k, state)) 00767 c = 'a'; 00768 else if (CheckKBN("RbGoFirst", k, state)) 00769 c = 'q'; 00770 else if (CheckKBN("RbGoLast", k, state)) 00771 c = 'e'; 00772 else if (CheckKBN("RbBookmarkNext", k, state)) 00773 c = 'D'; 00774 else if (CheckKBN("RbBookmarkPrev", k, state)) 00775 c = 'A'; 00776 00777 if (!c) 00778 return false; 00779 00780 if (c=='a') mActiveContext->GoLeft(); 00781 if (c=='d') mActiveContext->GoRight(); 00782 if (c=='q') mActiveContext->GoFirst(); 00783 if (c=='e') mActiveContext->GoLast(); 00784 00785 if (c=='q' || c=='e') 00786 ILOG_USER("KB: RotorBrowser moving active " << 00787 mActiveContext->GetName() << " to " << 00788 (c=='q' ? "FIRST" : "LAST")); 00789 00790 00791 if (c=='A' || c=='D') 00792 { 00793 if (!mKeepCenterCentered) { 00794 ILOG_USER("KB: bookmark center " << 00795 mActiveContext->GetCenter() << " from " << 00796 mActiveContext->GetName() << " and go " << 00797 (c=='A' ? "LEFT" : "RIGHT") << " in "<< 00798 mActiveContext->GetName()); 00799 int nextshot = mActiveContext->GetRelative(c=='A'? -1 : 1); 00800 BookmarkActiveCenter(); 00801 mActiveContext->GoTo(nextshot); 00802 } 00803 else 00804 { 00805 int target = mActiveContext->GetRelative(c=='A' ? -1 : 1); 00806 ILOG_USER("KB: RotorBrowser bookmark " << target << 00807 (c=='A'? "left" : "right") << " of center from " << 00808 mActiveContext->GetName() ); 00809 BookmarkSpecific(target); 00810 } 00811 } 00812 UpdateViewsToContext(); 00813 if ( !(keepCenter && (c=='A' || c=='D'))) 00814 PublishContextMoved((c=='A' || c=='a' || c=='q') ? -1 : 1); 00815 00816 return true; 00817 }
Here is the call graph for this function:
|