Do

Interfaces split to be based off the UI kit used rather than the o/s

Registered by ootz0rz on 2009-06-26

Based off the discussion below. It makes more sense to have interfaces divided by the UI kit that is used rather than the platform, since the GTK kit is already cross platform. However, there are cases where platform-specific code should be used, so then the interface can be further subdivided into each platform. The structure would be similar to this:

interface
interface.common (if needed?)
interface.GTK
interface.GTK.linux
interface.GTK.windows
interface.WinForms
interface.WinForms.windows

etc...

Here is the original conversation:

Jun 25 18:47:14 <cszikszoy> it would be damned hard, but I think we should also investigate whether or not we can completely strip core from all GTK stuff
Jun 25 18:47:23 <ootz0rz> something else i was thinking about was, interfaces should probably be split between UI frameworks rather than by operating system
Jun 25 18:47:33 <cszikszoy> GTK doesn't look horrible on windows, but it'd be nice to have a Do UI written entirely in cocoa for osx
Jun 25 18:47:38 <ootz0rz> do.interface.gtk makes more sense than do.interface.linux
Jun 25 18:47:49 <ootz0rz> and then under that u can have .linux .windows .macos where needed
Jun 25 18:48:18 <ootz0rz> because we have a lot of duplicate code between our interface.windows and interface.linux
Jun 25 18:48:28 <cszikszoy> there's a thought too.
Jun 25 18:48:31 <ootz0rz> and it'd be a huge pain to keep the two syncd
Jun 25 18:48:39 <ootz0rz> when we only changed a few files really
Jun 25 18:49:12 <ootz0rz> might have to do the same for platform
Jun 25 18:50:08 <ootz0rz> then people could even use other UI frameworks to do w/e they want
Jun 25 18:50:15 <ootz0rz> someone could do WX for example
Jun 25 18:50:16 <ootz0rz> or w/e
Jun 25 18:50:33 <cszikszoy> lamalex, any thoughts ^^^
Jun 25 18:51:11 <ootz0rz> its obviously a much bigger change than simply taking key binding out of core for example
Jun 25 18:51:26 <ootz0rz> but i think it makes sense for a crossplatform solution...since UI kits can be crossplatform
Jun 25 18:52:55 <lamalex> ootz0rz: thats one for dbo really
Jun 25 18:52:58 <lamalex> sounds fine to me
Jun 25 18:53:05 <lamalex> we basically just called gtk linux
Jun 25 18:53:19 <lamalex> so it doesn't really mean LINUX in many places

Blueprint information

Status:
Not started
Approver:
None
Priority:
Undefined
Drafter:
None
Direction:
Needs approval
Assignee:
None
Definition:
New
Series goal:
None
Implementation:
Unknown
Milestone target:
None

Related branches

Sprints

Whiteboard

(?)

Work Items

Dependency tree

* Blueprints in grey have been implemented.

This blueprint contains Public information 
Everyone can see this information.

Subscribers

No subscribers.