Repository: FreeCAD/FreeCAD
File: src/Gui/Document.h (C/C++)

Code before:
    void slotRecomputed(const App::Document&);
    void slotSkipRecompute(const App::Document& doc, const std::vector<App::DocumentObject*>& objs);
    void slotTouchedObject(const App::DocumentObject&);
    void slotChangePropertyEditor(const App::Document&, const App::Property&);
    void callSignalBeforeRecompute();
    //@}

public:
    void addViewProvider(Gui::ViewProviderDocumentObject*);

    /** @name Signals of the document */
    //@{
    /// signal on new Object
    mutable fastsignals::signal<void(const Gui::ViewProviderDocumentObject&)> signalNewObject;
    /// signal on deleted Object
    mutable fastsignals::signal<void(const Gui::ViewProviderDocumentObject&)> signalDeletedObject;
    /** signal on changed Object, the 2nd argument is the changed property
        of the referenced document object, not of the view provider */
    mutable fastsignals::signal<void(const Gui::ViewProviderDocumentObject&, const App::Property&)>
        signalChangedObject;
    /// signal on renamed Object
    mutable fastsignals::signal<void(const Gui::ViewProviderDocumentObject&)> signalRelabelObject;
    /// signal on activated Object (relay of App activation signal)
    mutable fastsignals::signal<void(const Gui::ViewProviderDocumentObject&)> signalActivatedObject;
    /// signal on activated Object in the tree (bold item)
    mutable fastsignals::signal<void(const Gui::ViewProviderDocumentObject*, const char*)> signalActivatedVP;
    /// signal on entering in edit mode
    mutable fastsignals::signal<void(const Gui::ViewProviderDocumentObject&)> signalInEdit;
    /// signal on leaving edit mode
    mutable fastsignals::signal<void(const Gui::ViewProviderDocumentObject&)> signalResetEdit;
    /// signal on changed Object, the 2nd argument is the highlite mode to use
    mutable fastsignals::signal<void(
        const Gui::ViewProviderDocumentObject&,
        const Gui::HighlightMode&,
        bool,
        App::DocumentObject* parent,
        const char* subname
    )>
        signalHighlightObject;
    /// signal on changed Object, the 2nd argument is the highlite mode to use
    mutable fastsignals::signal<void(
        const Gui::ViewProviderDocumentObject&,
        const Gui::TreeItemMode&,
        App::DocumentObject* parent,
        const char* subname
    )>
        signalExpandObject;
    /// signal on changed ShowInTree property in view provider
    mutable fastsignals::signal<void(const Gui::ViewProviderDocumentObject&)> signalShowItem;
    /// signal on scrolling to an object
    mutable fastsignals::signal<void(const Gui::ViewProviderDocumentObject&)> signalScrollToObject;

Review comment (suggestion):
I know that this seems like a really crude nitpicking and `VP` is pretty well established abbreviation in FreeCAD codebase - but let's not introduce abbrevations if not absolutely necessary. This class does not use `VP` in any other method. 

```suggestion
    mutable fastsignals::signal<void(const Gui::ViewProviderDocumentObject*, const char*)> signalActivatedViewProvider;
```

Code after:
    void slotRecomputed(const App::Document&);
    void slotSkipRecompute(const App::Document& doc, const std::vector<App::DocumentObject*>& objs);
    void slotTouchedObject(const App::DocumentObject&);
    void slotChangePropertyEditor(const App::Document&, const App::Property&);
    void callSignalBeforeRecompute();
    //@}

public:
    void addViewProvider(Gui::ViewProviderDocumentObject*);

    /** @name Signals of the document */
    //@{
    /// signal on new Object
    mutable fastsignals::signal<void(const Gui::ViewProviderDocumentObject&)> signalNewObject;
    /// signal on deleted Object
    mutable fastsignals::signal<void(const Gui::ViewProviderDocumentObject&)> signalDeletedObject;
    /** signal on changed Object, the 2nd argument is the changed property
        of the referenced document object, not of the view provider */
    mutable fastsignals::signal<void(const Gui::ViewProviderDocumentObject&, const App::Property&)>
        signalChangedObject;
    /// signal on renamed Object
    mutable fastsignals::signal<void(const Gui::ViewProviderDocumentObject&)> signalRelabelObject;
    /// signal on activated Object (relay of App activation signal)
    mutable fastsignals::signal<void(const Gui::ViewProviderDocumentObject&)> signalActivatedObject;
    /// signal on activated Object in the tree (bold item)
    mutable fastsignals::signal<void(const Gui::ViewProviderDocumentObject*, const char*)>
        signalActivatedViewProvider;
    /// signal on entering in edit mode
    mutable fastsignals::signal<void(const Gui::ViewProviderDocumentObject&)> signalInEdit;
    /// signal on leaving edit mode
    mutable fastsignals::signal<void(const Gui::ViewProviderDocumentObject&)> signalResetEdit;
    /// signal on changed Object, the 2nd argument is the highlite mode to use
    mutable fastsignals::signal<void(
        const Gui::ViewProviderDocumentObject&,
        const Gui::HighlightMode&,
        bool,
        App::DocumentObject* parent,
        const char* subname
    )>
        signalHighlightObject;
    /// signal on changed Object, the 2nd argument is the highlite mode to use
    mutable fastsignals::signal<void(
        const Gui::ViewProviderDocumentObject&,
        const Gui::TreeItemMode&,
        App::DocumentObject* parent,
        const char* subname
    )>
        signalExpandObject;
    /// signal on changed ShowInTree property in view provider
    mutable fastsignals::signal<void(const Gui::ViewProviderDocumentObject&)> signalShowItem;
    /// signal on scrolling to an object