[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: GSBaseLocalizedString()
From: |
Germán Arias |
Subject: |
Re: GSBaseLocalizedString() |
Date: |
Tue, 15 Feb 2011 12:08:19 -0600 |
On mar, 2011-02-15 at 06:29 +0000, Richard Frith-Macdonald wrote:
> On 14 Feb 2011, at 23:53, Germán Arias wrote:
>
> > On mar, 2011-02-15 at 00:20 +0100, Wolfgang Lux wrote:
> >> Germán Arias wrote:
> >>
> >>> On lun, 2011-02-14 at 21:55 +0100, Wolfgang Lux wrote:
> >>>>
> >>>> I didn't have a look whether your definition is correct, because it
> >>>> is
> >>>> simply pointless. The macro _(X) is defined exactly for that purpose
> >>>> and it is available in -base (provided the header GNUstepBase/
> >>>> GNUstep.h is included, but this should be the case for
> >>>> NSUndoManager).
> >>>> Furthermore, make_strings will recognize this macro in contrast to
> >>>> your definition, so you could automatically prepare a strings file
> >>>> (though -base at present is not prepared to do that). Even without
> >>>> that macro, you would be off using NSLocalizedString or
> >>>> NSLocalizedStringFromTable rather than reinventing the wheel.
> >>>>
> >>>> Wolfgang
> >>>>
> >>>
> >>> I tried this (include GNUstepBase/GNUstep.h and use _() ) but don't
> >>> works, I get:
> >>>
> >>> NSUndoManager.m: In function ‘-[NSUndoManager
> >>> redoMenuTitleForUndoActionName:]’:
> >>> NSUndoManager.m:720: warning: implicit declaration of function
> >>> ‘NSLocalizedString’
> >>> NSUndoManager.m:720: warning: return makes pointer from integer
> >>> without
> >>> a cast
> >>> NSUndoManager.m:725: warning: passing argument 1 of
> >>> ‘stringWithFormat:’
> >>> makes pointer from integer without a cast
> >>> NSUndoManager.m: In function ‘-[NSUndoManager
> >>> undoMenuTitleForUndoActionName:]’:
> >>> NSUndoManager.m:1001: warning: return makes pointer from integer
> >>> without
> >>> a cast
> >>> NSUndoManager.m:1006: warning: passing argument 1 of
> >>> ‘stringWithFormat:’
> >>> makes pointer from integer without a cast
> >>>
> >>> for this reason I implemented the function GSBaseLocalizedString as
> >>> suggested the FIXME note. Maybe there is a bug in NSLocalizedString?
> >>
> >> This error should tell you that the compiler didn't find the prototype
> >> of function NSLocalizedString. Adding #import <Foundation/NSBundle.h>
> >> to NSUndoManager fixes that problem.
> >>
> >> Wolfgang
> >>
> >
> > Well, adding NSBundle compile fine, but there aren't localized strings.
> > The menu puts "Undo" and "Redo", even when the localized strings are in
> > the Localizable.strings file :(
>
> That's because, while Wolfgang is right in principle, there was the problem
> that the _() macro uses the main bundle to lookup strings.
> I changed the code so that, within the base library, the macro is redefined
> to use the base library bundle rather than the main bundle
> (the redefinition is done in Source/common.h).
> The changes are now in svn ... please let me know if that works OK.
>
Now works fine, thanks.
- GSBaseLocalizedString(), Germán Arias, 2011/02/14
- Re: GSBaseLocalizedString(), Wolfgang Lux, 2011/02/14
- Re: GSBaseLocalizedString(), Germán Arias, 2011/02/14
- Re: GSBaseLocalizedString(), Wolfgang Lux, 2011/02/14
- Re: GSBaseLocalizedString(), Germán Arias, 2011/02/14
- Re: GSBaseLocalizedString(), Richard Frith-Macdonald, 2011/02/15
- Re: GSBaseLocalizedString(), David Chisnall, 2011/02/15
- Re: GSBaseLocalizedString(), Richard Frith-Macdonald, 2011/02/16
- Re: GSBaseLocalizedString(),
Germán Arias <=