Removed the MIME type picker from the MimeTypeEditor - it was not yet finished

anyway, and I think it doesn't really belong to this app's realm.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6759 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Axel Dörfler 2004-02-26 13:04:55 +00:00
parent b3c153d680
commit 35789209bd

View File

@ -51,10 +51,7 @@ class MimeTypeEditor : public BView {
void UpdateText();
private:
void AddMimeTypesToMenu();
DataEditor &fEditor;
BMenu *fMimeTypeMenu;
BTextControl *fTextControl;
BString fPreviousText;
};
@ -195,28 +192,20 @@ StringEditor::MessageReceived(BMessage *message)
MimeTypeEditor::MimeTypeEditor(BRect rect, DataEditor &editor)
: BView(rect, "MIME Type Editor", B_FOLLOW_NONE, 0),
: BView(rect, "MIME Type Editor", B_FOLLOW_LEFT_RIGHT, 0),
fEditor(editor)
{
SetViewColor(ui_color(B_PANEL_BACKGROUND_COLOR));
rect.right -= 100;
fTextControl = new BTextControl(rect.InsetByCopy(5, 5), B_EMPTY_STRING, "MIME Type:", NULL,
new BMessage(kMsgValueChanged), B_FOLLOW_ALL);
fTextControl->SetDivider(StringWidth(fTextControl->Label()) + 8);
fMimeTypeMenu = new BMenu(B_EMPTY_STRING);
rect = fTextControl->Frame();
rect.left = rect.right + 5;
rect.right = Bounds().right;
//rect.top++;
BMenuField *menuField = new BMenuField(rect, NULL, NULL, fMimeTypeMenu);
menuField->SetDivider(0);
menuField->ResizeToPreferred();
AddChild(menuField);
float width, height;
fTextControl->GetPreferredSize(&width, &height);
fTextControl->ResizeTo(rect.Width() - 10, height);
ResizeTo(fTextControl->Bounds().Width() + menuField->Bounds().Width() + 10,
menuField->Bounds().Height() + 10);
ResizeTo(rect.Width(), height + 10);
AddChild(fTextControl);
}
@ -243,7 +232,6 @@ MimeTypeEditor::AttachedToWindow()
fTextControl->SetTarget(this);
fEditor.StartWatching(this);
AddMimeTypesToMenu();
UpdateText();
}
@ -279,48 +267,6 @@ MimeTypeEditor::MessageReceived(BMessage *message)
}
void
MimeTypeEditor::AddMimeTypesToMenu()
{
// add MIME type tree list
BMessage types;
if (BMimeType::GetInstalledSupertypes(&types) == B_OK) {
const char *superType;
int32 index = 0;
while (types.FindString("super_types", index++, &superType) == B_OK) {
BMenu *superMenu = new BMenu(superType);
// ToDo: there are way too many "application" types... (need to lay off to another thread)
if (!strcmp(superType, "application"))
continue;
BMessage subTypes;
if (BMimeType::GetInstalledTypes(superType, &subTypes) == B_OK) {
const char *type;
int32 subIndex = 0;
while (subTypes.FindString("types", subIndex++, &type) == B_OK) {
BMessage *message = new BMessage(kMimeTypeItem);
message->AddString("super_type", superType);
message->AddString("mime_type", type);
superMenu->AddItem(new BMenuItem(strchr(type, '/') + 1, message));
}
}
if (superMenu->CountItems() != 0) {
fMimeTypeMenu->AddItem(new BMenuItem(superMenu));
// the MimeTypeMenu's font is not correct at this time
superMenu->SetFont(be_plain_font);
superMenu->SetTargetForItems(this);
} else
delete superMenu;
}
}
}
// #pragma mark -