Soon the current focused could be something else than a BTextView...

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40662 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Philippe Houdoin 2011-02-24 14:26:13 +00:00
parent 3c4365e313
commit 2f76808976
1 changed files with 13 additions and 10 deletions

View File

@ -129,18 +129,21 @@ PersonWindow::MenusBeginning()
fSave->SetEnabled(enabled);
fRevert->SetEnabled(enabled);
bool isRedo = false;
undo_state state = ((BTextView*)CurrentFocus())->UndoState(&isRedo);
fUndo->SetEnabled(state != B_UNDO_UNAVAILABLE);
BTextView* textView = dynamic_cast<BTextView*>(CurrentFocus());
if (textView != NULL) {
bool isRedo = false;
undo_state state = textView->UndoState(&isRedo);
fUndo->SetEnabled(state != B_UNDO_UNAVAILABLE);
if (isRedo)
fUndo->SetLabel(B_TRANSLATE("Redo"));
else
fUndo->SetLabel(B_TRANSLATE("Undo"));
if (isRedo)
fUndo->SetLabel(B_TRANSLATE("Redo"));
else
fUndo->SetLabel(B_TRANSLATE("Undo"));
enabled = fView->IsTextSelected();
fCut->SetEnabled(enabled);
fCopy->SetEnabled(enabled);
enabled = fView->IsTextSelected();
fCut->SetEnabled(enabled);
fCopy->SetEnabled(enabled);
}
be_clipboard->Lock();
fPaste->SetEnabled(be_clipboard->Data()->HasData("text/plain", B_MIME_TYPE));