<p><a href="https://github.com/kugel-" class="user-mention">@kugel-</a> can you explain what you mean by signals being too "heavy weight"?  Its the way existing events in Geany are notified to plugins and anyone else who is interested ("document-save" etc).  But signal data passing and return is poor.</p>
<p><a href="https://github.com/kugel-" class="user-mention">@kugel-</a> your point about making the facilities available to non-C plugins is good.</p>
<p>The problem I see with anything gobject based is it requires specialist knowledge for someone to contribute a change to Geany to make a function overridable/modifyable by a plugin.  I would suspect that few plugin devs will have that ability, so making changes to allow plugins to do stuff will bottleneck at the few internal project people who have that knowledge.</p>
<p>It would be nice if there was a way that worked as simply as using signals, ie emit() and connect().  Then more people could contribute changes to Geany that let their plugin modify built-in behaviour.</p>

<p style="font-size:small;-webkit-text-size-adjust:none;color:#666;">—<br />You are receiving this because you are subscribed to this thread.<br />Reply to this email directly, <a href="https://github.com/geany/geany/issues/1458#issuecomment-294348514">view it on GitHub</a>, or <a href="https://github.com/notifications/unsubscribe-auth/ABDrJzJ8gpxw2vGXEdyIM8SfF5BQhZ-Mks5rwgWugaJpZM4M1Ajm">mute the thread</a>.<img alt="" height="1" src="https://github.com/notifications/beacon/ABDrJ5fsKmiD6A4oF1aJ0kPNBoHzznpKks5rwgWugaJpZM4M1Ajm.gif" width="1" /></p>
<div itemscope itemtype="http://schema.org/EmailMessage">
<div itemprop="action" itemscope itemtype="http://schema.org/ViewAction">
  <link itemprop="url" href="https://github.com/geany/geany/issues/1458#issuecomment-294348514"></link>
  <meta itemprop="name" content="View Issue"></meta>
</div>
<meta itemprop="description" content="View this Issue on GitHub"></meta>
</div>

<script type="application/json" data-scope="inboxmarkup">{"api_version":"1.0","publisher":{"api_key":"05dde50f1d1a384dd78767c55493e4bb","name":"GitHub"},"entity":{"external_key":"github/geany/geany","title":"geany/geany","subtitle":"GitHub repository","main_image_url":"https://cloud.githubusercontent.com/assets/143418/17495839/a5054eac-5d88-11e6-95fc-7290892c7bb5.png","avatar_image_url":"https://cloud.githubusercontent.com/assets/143418/15842166/7c72db34-2c0b-11e6-9aed-b52498112777.png","action":{"name":"Open in GitHub","url":"https://github.com/geany/geany"}},"updates":{"snippets":[{"icon":"PERSON","message":"@elextr in #1458: @kugel- can you explain what you mean by signals being too \"heavy weight\"?  Its the way existing events in Geany are notified to plugins and anyone else who is interested (\"document-save\" etc).  But signal data passing and return is poor.\r\n\r\n@kugel- your point about making the facilities available to non-C plugins is good.\r\n\r\nThe problem I see with anything gobject based is it requires specialist knowledge for someone to contribute a change to Geany to make a function overridable/modifyable by a plugin.  I would suspect that few plugin devs will have that ability, so making changes to allow plugins to do stuff will bottleneck at the few internal project people who have that knowledge.  \r\n\r\nIt would be nice if there was a way that worked as simply as using signals, ie emit() and connect().  Then more people could contribute changes to Geany that let their plugin modify built-in behaviour."}],"action":{"name":"View Issue","url":"https://github.com/geany/geany/issues/1458#issuecomment-294348514"}}}</script>