* Created separate PNG exporters for 16x16, 32x32 and 64x64 sizes.
* When exporting for the first time, use the native saver's file name to initialize the file panel save text. * Don't shadow exportMode variable. * Small cleanups. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41181 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -136,7 +136,7 @@ IconEditorApp::MessageReceived(BMessage* message)
|
|||||||
saver = fDocument->NativeSaver();
|
saver = fDocument->NativeSaver();
|
||||||
else
|
else
|
||||||
saver = fDocument->ExportSaver();
|
saver = fDocument->ExportSaver();
|
||||||
if (saver) {
|
if (saver != NULL) {
|
||||||
saver->Save(fDocument);
|
saver->Save(fDocument);
|
||||||
_PickUpActionBeforeSave();
|
_PickUpActionBeforeSave();
|
||||||
break;
|
break;
|
||||||
@@ -171,24 +171,26 @@ IconEditorApp::MessageReceived(BMessage* message)
|
|||||||
}
|
}
|
||||||
_SyncPanels(fSavePanel, fOpenPanel);
|
_SyncPanels(fSavePanel, fOpenPanel);
|
||||||
} else {
|
} else {
|
||||||
|
printf("configure file panel\n");
|
||||||
// configure the file panel
|
// configure the file panel
|
||||||
const char* saveText = NULL;
|
const char* saveText = NULL;
|
||||||
FileSaver* saver = dynamic_cast<FileSaver*>(
|
FileSaver* saver = dynamic_cast<FileSaver*>(
|
||||||
fDocument->NativeSaver());
|
fDocument->NativeSaver());
|
||||||
|
if (saver != NULL)
|
||||||
bool exportMode = message->what == MSG_EXPORT_AS
|
|
||||||
|| message->what == MSG_EXPORT;
|
|
||||||
if (exportMode) {
|
|
||||||
saver = dynamic_cast<FileSaver*>(
|
|
||||||
fDocument->ExportSaver());
|
|
||||||
}
|
|
||||||
|
|
||||||
if (saver)
|
|
||||||
saveText = saver->Ref()->name;
|
saveText = saver->Ref()->name;
|
||||||
|
|
||||||
fSavePanel->SetExportMode(exportMode);
|
bool isExportMode = message->what == MSG_EXPORT_AS
|
||||||
|
|| message->what == MSG_EXPORT;
|
||||||
|
if (isExportMode) {
|
||||||
|
saver = dynamic_cast<FileSaver*>(
|
||||||
|
fDocument->ExportSaver());
|
||||||
|
if (saver != NULL && saver->Ref()->name != NULL)
|
||||||
|
saveText = saver->Ref()->name;
|
||||||
|
}
|
||||||
|
|
||||||
|
fSavePanel->SetExportMode(isExportMode);
|
||||||
// fSavePanel->Refresh();
|
// fSavePanel->Refresh();
|
||||||
if (saveText)
|
if (saveText != NULL)
|
||||||
fSavePanel->SetSaveText(saveText);
|
fSavePanel->SetSaveText(saveText);
|
||||||
fSavePanel->Show();
|
fSavePanel->Show();
|
||||||
}
|
}
|
||||||
@@ -469,8 +471,7 @@ IconEditorApp::_Open(const entry_ref& ref, bool append)
|
|||||||
// least one ref already
|
// least one ref already
|
||||||
switch (refMode) {
|
switch (refMode) {
|
||||||
case REF_MESSAGE:
|
case REF_MESSAGE:
|
||||||
fDocument->SetNativeSaver(
|
fDocument->SetNativeSaver(new NativeSaver(ref));
|
||||||
new NativeSaver(ref));
|
|
||||||
break;
|
break;
|
||||||
case REF_FLAT:
|
case REF_FLAT:
|
||||||
fDocument->SetExportSaver(
|
fDocument->SetExportSaver(
|
||||||
@@ -592,7 +593,13 @@ IconEditorApp::_CreateSaver(const entry_ref& ref, uint32 exportMode)
|
|||||||
saver = new SimpleFileSaver(new SourceExporter(), ref);
|
saver = new SimpleFileSaver(new SourceExporter(), ref);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case EXPORT_MODE_BITMAP:
|
case EXPORT_MODE_BITMAP_16:
|
||||||
|
saver = new SimpleFileSaver(new BitmapExporter(16), ref);
|
||||||
|
break;
|
||||||
|
case EXPORT_MODE_BITMAP_32:
|
||||||
|
saver = new SimpleFileSaver(new BitmapExporter(32), ref);
|
||||||
|
break;
|
||||||
|
case EXPORT_MODE_BITMAP_64:
|
||||||
saver = new SimpleFileSaver(new BitmapExporter(64), ref);
|
saver = new SimpleFileSaver(new BitmapExporter(64), ref);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
|||||||
@@ -35,7 +35,9 @@ enum {
|
|||||||
EXPORT_MODE_MESSAGE = 0,
|
EXPORT_MODE_MESSAGE = 0,
|
||||||
EXPORT_MODE_FLAT_ICON,
|
EXPORT_MODE_FLAT_ICON,
|
||||||
EXPORT_MODE_SVG,
|
EXPORT_MODE_SVG,
|
||||||
EXPORT_MODE_BITMAP,
|
EXPORT_MODE_BITMAP_16,
|
||||||
|
EXPORT_MODE_BITMAP_32,
|
||||||
|
EXPORT_MODE_BITMAP_64,
|
||||||
EXPORT_MODE_BITMAP_SET,
|
EXPORT_MODE_BITMAP_SET,
|
||||||
EXPORT_MODE_ICON_ATTR,
|
EXPORT_MODE_ICON_ATTR,
|
||||||
EXPORT_MODE_ICON_MIME_ATTR,
|
EXPORT_MODE_ICON_MIME_ATTR,
|
||||||
|
|||||||
@@ -239,8 +239,14 @@ SavePanel::SetExportMode(int32 mode)
|
|||||||
case EXPORT_MODE_SVG:
|
case EXPORT_MODE_SVG:
|
||||||
fSVGMI->SetMarked(true);
|
fSVGMI->SetMarked(true);
|
||||||
break;
|
break;
|
||||||
case EXPORT_MODE_BITMAP:
|
case EXPORT_MODE_BITMAP_16:
|
||||||
fBitmapMI->SetMarked(true);
|
fBitmap16MI->SetMarked(true);
|
||||||
|
break;
|
||||||
|
case EXPORT_MODE_BITMAP_32:
|
||||||
|
fBitmap32MI->SetMarked(true);
|
||||||
|
break;
|
||||||
|
case EXPORT_MODE_BITMAP_64:
|
||||||
|
fBitmap64MI->SetMarked(true);
|
||||||
break;
|
break;
|
||||||
case EXPORT_MODE_BITMAP_SET:
|
case EXPORT_MODE_BITMAP_SET:
|
||||||
fBitmapSetMI->SetMarked(true);
|
fBitmapSetMI->SetMarked(true);
|
||||||
@@ -413,9 +419,17 @@ SavePanel::_BuildMenu()
|
|||||||
|
|
||||||
fFormatM->AddSeparatorItem();
|
fFormatM->AddSeparatorItem();
|
||||||
|
|
||||||
fBitmapMI = new SaveItem("PNG",
|
fBitmap16MI = new SaveItem("PNG 16x16",
|
||||||
new BMessage(MSG_FORMAT), EXPORT_MODE_BITMAP);
|
new BMessage(MSG_FORMAT), EXPORT_MODE_BITMAP_16);
|
||||||
fFormatM->AddItem(fBitmapMI);
|
fFormatM->AddItem(fBitmap16MI);
|
||||||
|
|
||||||
|
fBitmap32MI = new SaveItem("PNG 32x32",
|
||||||
|
new BMessage(MSG_FORMAT), EXPORT_MODE_BITMAP_32);
|
||||||
|
fFormatM->AddItem(fBitmap32MI);
|
||||||
|
|
||||||
|
fBitmap64MI = new SaveItem("PNG 64x64",
|
||||||
|
new BMessage(MSG_FORMAT), EXPORT_MODE_BITMAP_64);
|
||||||
|
fFormatM->AddItem(fBitmap64MI);
|
||||||
|
|
||||||
fBitmapSetMI = new SaveItem(B_TRANSLATE("PNG Set"),
|
fBitmapSetMI = new SaveItem(B_TRANSLATE("PNG Set"),
|
||||||
new BMessage(MSG_FORMAT), EXPORT_MODE_BITMAP_SET);
|
new BMessage(MSG_FORMAT), EXPORT_MODE_BITMAP_SET);
|
||||||
|
|||||||
@@ -77,7 +77,9 @@ class SavePanel : public BFilePanel,
|
|||||||
SaveItem* fRDefMI;
|
SaveItem* fRDefMI;
|
||||||
SaveItem* fSourceMI;
|
SaveItem* fSourceMI;
|
||||||
SaveItem* fSVGMI;
|
SaveItem* fSVGMI;
|
||||||
SaveItem* fBitmapMI;
|
SaveItem* fBitmap16MI;
|
||||||
|
SaveItem* fBitmap32MI;
|
||||||
|
SaveItem* fBitmap64MI;
|
||||||
SaveItem* fBitmapSetMI;
|
SaveItem* fBitmapSetMI;
|
||||||
SaveItem* fIconAttrMI;
|
SaveItem* fIconAttrMI;
|
||||||
SaveItem* fIconMimeAttrMI;
|
SaveItem* fIconMimeAttrMI;
|
||||||
|
|||||||
Reference in New Issue
Block a user