second encodings menu up for save as with field

git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3853 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
shatty
2003-07-05 01:17:02 +00:00
parent e6903129a7
commit 0b2e176dc0
4 changed files with 44 additions and 18 deletions
+16 -2
View File
@@ -278,6 +278,8 @@ StyledEditWindow::InitWindow()
/***************************MENUS ADDED***********************/
fSavePanel = 0; // build lazily
fSavePanelEncodingMenu = 0; // build lazily
fSaveAsEncoding = 0; // default UTF-8
} /***StyledEditWindow::Initwindow()***/
void
@@ -605,6 +607,15 @@ StyledEditWindow::MessageReceived(BMessage *message)
// clear flags
}
break;
/*********"Document"-menu*************/
case SAVE_AS_ENCODING:
void * ptr;
if (message->FindPointer("source",&ptr) == B_OK) {
if (fSavePanelEncodingMenu != 0) {
fSaveAsEncoding = (uint32)fSavePanelEncodingMenu->IndexOf((BMenuItem*)ptr);
}
}
break;
default:
BWindow::MessageReceived(message);
break;
@@ -858,8 +869,8 @@ StyledEditWindow::SaveAs()
status_t status = B_OK;
CharacterSetRoster * roster = CharacterSetRoster::Roster(&status);
if (status == B_OK) {
for (int id = 0; (id < roster->GetCharacterSetCount()) ; id++) {
const CharacterSet * cs = roster->FindCharacterSetByConversionID(id);
for (int index = 0; (index < roster->GetCharacterSetCount()) ; index++) {
const CharacterSet * cs = roster->GetCharacterSet(index);
BString name(cs->GetPrintName());
name.Append(" (");
name.Append(cs->GetMIMEName());
@@ -867,6 +878,9 @@ StyledEditWindow::SaveAs()
BMenuItem * item = new BMenuItem(name.String(),new BMessage(SAVE_AS_ENCODING));
item->SetTarget(this);
fSavePanelEncodingMenu->AddItem(item);
if (index == fSaveAsEncoding) {
item->SetMarked(true);
}
}
}
}