On 11.02.2014 19:54, Germán Arias wrote: > On 2014-02-11 12:44:56 -0600 Fred Kiefer <[email protected]> wrote: > >> On 11.02.2014 06:42, Germán Arias wrote: >>> On 2014-02-10 02:11:34 -0600 Fred Kiefer <[email protected]> >>> wrote: [...] >>>> >>>> What you describe here seems about the correct thing to do. I >>>> really would be interested in understanding what goes wrong >>>> here. As I understand your mails this only happens with the >>>> extended WinUX open panel, not with the standard one from >>>> GNUstep gui, is this correct? >>>> >>>> Fred >>> >>> The problem is only with Open/Save panels in WinUXTheme. The >>> GNUstep panels works in a different way, and don't use >>> +readable/writableTypes. Attached is a patch for WinNSOpenPanel.m >>> in WinUXTheme. This contains the changes I'm testing currently. >>> There are two changes. First in function >>> filter_string_from_types() I put one entry for each extension (I >>> will improve this later). Second change is at method >>> -runModalForDirectory:file:.... in WinNSSavePanel implementation. >>> Here I get all the extensions for all writable types, preventing >>> add duplications since -fileExtensionsFromType: return all >>> extension (NSUnixExtensions and NSDOSExtensions). With these >>> changes Ink works perfectly. But Gorm (Save panel) not. >>> >>> I don't have a Windows machine. But I will try tomorrow with GDB >>> or adding some NSLog. However, if I remember correctly, NSLog >>> don't works in a theme (almost on Windows). >> >> What I don't understand about this change is why you cannot just >> use the filetypes that get handed into the method instead of using >> writableTypes? I understand that you need to filter duplicates, but >> why use a different list of names? >> > The parameter fileTypes only contains the extension of the document > that will be saved. On Ink is "RTF", in Gorm is "gorm". So, I'm > trying to get all available types.
That is interesting. If this is the case, then it is a bug in the GNUstep code. I looked through the code in NSOpenPanel and NSSavePanel and the only place that looks dubious in that regard is -setRequiredFileType: which calls -setAllowedFileTypes:, but even that looks correct to me. Could you please provide a stack trace that shows where this issue comes from? Fred _______________________________________________ Gnustep-dev mailing list [email protected] https://lists.gnu.org/mailman/listinfo/gnustep-dev
