Closer integration of GUIs

Registered by Jon Lund Steffensen on 2010-06-21

Allow GUIs to configure and control Redshift while displaying information on the current status of the program.

Blueprint information

Status:
Not started
Approver:
None
Priority:
High
Drafter:
None
Direction:
Approved
Assignee:
None
Definition:
Discussion
Series goal:
None
Implementation:
Unknown
Milestone target:
None

Whiteboard

There are several options:

1) Integrate the GUI directly in the main program. This would require a rewrite of the python GUIs in C and would integration of the "main loop" in Redshift with the GTK+ main loop. Probably the easiest solution but also the least flexible.

2) Implement a simple protocol over the pipe between gtk-redshift and redshift. This would allow exchange of status from redshift and control requests from gtk-redshift. The implementation would probably be unnecessarily complex compared to plain DBus integration.

3) Implement configuration of Redshift through GConf or some equivalent system. This would allow Redshift to be configured though any GUI application. This wouldn't solve the issue of getting the GUI to show information from Redshift.

4) Integrate Redshift with D-Bus. This would allow any kind of communtication or signal between Redshift and any GUI or even non-GUI application. This seems to be the most flexible solution and the one I'd like to see implemented at least in the long term.

[2010-09-03 11:07:08] [fmarl] I've got no email notification about your feedback request, I'm sorry for this late reply :(
I agree that option 4 will be the best way to go.
Work items:
- dbus-ify redshift: produce a API draft, implement it
- produce mockups and implement the GUI

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.