Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [cdt-dev] Module dependency

Hi Martin,

I used to assume the code is clear enough, but it seems I was wrong. Thanks for pointing to this fact! :)

1) "org.eclipse.cdt.core.options" package provides generic API
2) "org.eclipse.cdt.doxygen.core" package provides domain-specific API for doxygen - you will need to define your own, but very similar. 3) org.eclipse.cdt.doxygen.internal.core.DoxygenPreferenceAccess is implementation for DoxygenConfiguration and DoxygenPreferences interfaces
=== warning! magic starts from here
4) and, org.eclipse.cdt.doxygen.internal.core.DoxygenPreferenceAccess is an OSGi component (see annotation and manifest in OSGI-INF/) 5) CEditorPreferencePage gets the DoxygenPreferences service via E4 context:  EclipseContextFactory
.getServiceContext(FrameworkUtil.getBundle(getClass()).getBundleContext())
                .get(DoxygenPreferences.class)

This is how it works. Hope it will help.

And I also have a question for you: where do you expect to find this info initially? It is important question, because it may help us to improve the information discoverability.

Regards,
AF

12.03.2020 23:12, 15 knots пишет:
  Hi Alexander,

I had a look at OptionStorage and found DocCommentOwnerArea using it
but I get no clue how it is supposed to work.
Can you point me to some kind of tutorial?

Martin


Am Do., 12. März 2020 um 18:50 Uhr schrieb Alexander Fedorov
<alexander.fedorov@xxxxxxxxxx>:
Hi Martin,

You are right, .core should never require .ui
One of the reasons it to keep the most part of functionality easily testable in pipeline. And ideally, UI layer should be as thin as databinding between SWT widget and "data storage".

The solution is simple: we focus or preference reading/writing in .core bundle and deal with visualization in .ui bundle.
We already have this in CDT, you can start from here https://github.com/eclipse-cdt/cdt/tree/master/core/org.eclipse.cdt.core/options/org/eclipse/cdt/core/options

Regards,
AF

12.03.2020 0:22, Jonah Graham пишет:

Marco has pointed you in the right direction. I hope Alexander F can point you in the best direction going forward to go with his commit.

CDT has some bad examples (anti-patterns) in the current code base.

Jonah


~~~
Jonah Graham
Kichwa Coders
www.kichwacoders.com


On Wed, 11 Mar 2020 at 16:06, 15 knots <fifteenknots505@xxxxxxxxx> wrote:
Hi all,

I am implementing a UI bundle which provides a preferences page and
exports the preference constant keys.
My core bundle needs to read the preferences by the keys. This causes
a dependency of the core bundle to the UI bundle which somehow seems
to be wrong to me.

How does CDT usually handle this case?

TIA, Martin
_______________________________________________
cdt-dev mailing list
cdt-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/cdt-dev

_______________________________________________
cdt-dev mailing list
cdt-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/cdt-dev


_______________________________________________
cdt-dev mailing list
cdt-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/cdt-dev
_______________________________________________
cdt-dev mailing list
cdt-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/cdt-dev



Back to the top