you are not the only one, I have been coding 2 years now with Pharo ,
pragmas still look as the most non smalltalky things as the first time I
discovered them.

On Wed, Mar 23, 2016 at 10:58 PM Ala'a Mohammad <amal...@gmail.com> wrote:

> Thanks for the great explanation!
>
> I had reached an almost the target menu by modify all of
> SmalltalkEditor, TClassDescription and AbstractNautilusUI classes
> methods.
>
> To be honest I'm newbie and this pragma thing seems foreign between
> the other pleasant experiences with smalltaking, and kind of hindrance
> for the exploratory nature of normal smalltalk code browsing.
>
> Regards,
>
> Ala'a
>
> On Wed, Mar 23, 2016 at 2:05 AM, Nicolai Hess <nicolaih...@gmail.com>
> wrote:
> >
> >
> > 2016-03-22 22:27 GMT+01:00 Ala'a Mohammad <amal...@gmail.com>:
> >>
> >> Hi,
> >>
> >> I'm trying to modify the context menu of the code editor through
> >> modification to SmalltalkEditor class >> smalltalkEditorMenuOn:
> >
> >
> > Hi Ala'a
> >
> >>
> >>
> >> testing the modification with
> >> (PragmaMenuBuilder pragmaKeyword: 'smalltalkEditorMenu' model: nil)
> >> menu popUpInWorld
> >
> >
> > The context menu for Nautilus code pane works a bit different.
> > Can you test if your modifications are working in Workspace (or the
> > workspace are in a basic
> > inspector).
> >
> >>
> >>
> >> succeeds, and shows the final shape of the menu that I want (photo
> >> attached), but the actual one used by the system is messed up! (photo
> >> attached)
> >>
> >> I tried also to execute TextEditor class >> initialize, but that did not
> >> help.
> >>
> >> Another thing I did was trying to find senders and references to the
> >> SmalltalkEditor class >> smalltalkEditorMenuOn, and find none! (So who
> >> is calling that with a 'aBuilder'?), and the only implementation of it
> >> is the one I'm trying to update (more confusion - pardon the puzzled
> >> newbie).
> >
> >
> > The smalltalkEditorMenuOn: method, containing the
> smalltalkEditorMenu-Pragma
> > is not
> > called explicit. Instead, there is a Method SmalltalkEditor class >>
> > smalltalkEditorMenuKeyword
> > that returns the pragma name ('smalltalkEditorMenu') used to collect all
> > methods using this pragma
> > for defining the menus.
> >
> > For Nautilus, there is another step involved. First it calls
> > SmalltalkEditor yellowButtonMenu
> > this will ask for the pragma (SmalltalkEditor class >>
> > smalltalkEditorMenuKeyword) and builds a menu
> > from every method using this pragma (here only the method SmalltalkEditor
> > class >> smalltalkEditorMenuOn: ).
> > NOW it modifies this menu and adds (from all methods using the pragma
> > <nautilusGlobalSourceCodeMenu> and reorganize some more entries (this is
> > ugly, yes).
> >
> >>
> >>
> >> Attached are the photos for the original menu, target menu and the
> >> messed up menu.
> >>
> >> I'm using Pharo 4.0 from the official download for Linux from Pharo.org.
> >>
> >> my system is the following:
> >> Linuxmint 17.1 Rebecca
> >> 3.13.0-37-generic #64-Ubuntu SMP
> >>
> >> What I'm doing wrong? and/or what I'm missing?
> >>
> >> Thanks in advance for the help.
> >>
> >> Regards,
> >>
> >> Ala'a
> >
> >
>
>

Reply via email to