>> You will never be able to create a GUI that covers everything >>that is configurable across a wide variety of vendor products... >>nor should you try.
>Not true. Look at the limited vocabulary you presently have in >XF86Config: keywords, list-of-values, integers, bools. Bools map to >radio buttons, integers can have spin buttons, list of values are >combos. Where's the problem? That the unified code doesn't know what >parameters each driver support? That's the purpose of the metadata, so >the driver can tell it. Your example proves that you can use standard data types to convey the information. No argument there... but that wasn't the problem. The problem is providing a usable configuration tool. Yes you could map all the standard types to radio buttons, list boxes, etc without knowledge of their function and provide a good driver independent way to access the functionality, but in my opinion that isn't really a usable solution. Just as providing 100 options in the XF86Config file is possible, but not desired. I'll use a couple real world options that would prove hard to map onto a driver independent GUI in any usable manner. Gamma: Intel hardware can gamma control the output using independent 256 point mapping for each of red, green, and blue. You could have a very nice GUI with independent spline curves that could be point and click edited to generate the 256 points. The data would then just be 256*3 integers. Your cross platform GUI would provide 256*3 sliders and put 256*3 entries in the config file. It would work, but isn't useful. If you made 256*3 integers the standard then a lot of other hardware would have to convert that into a single integer. Multi-display: There are two multi-display concepts that XFree understands. 1) Dual Independent desktops. 2) Xinerama extended desktops. but it does not understand multiple screens for the same desktop... and it doesn't really need to. Some Intel hardware can do multi-display in four varieties. The two described above, and 3) Two screens with independent size and refresh using the same framebuffer, 4) Two screens with the same size and refresh using the same framebuffer. The configuration details for which displays can be turned on/off, panned/not panned are extremely complicated and probably require back<->forth communication with the driver just to draw the GUI. You would of-course want unavailable displays to be drawn as such right? (Note: Even on Windows XP, Methods 3 and 4 are handled by vendors in their own GUI's. many vendors have this feature especially in laptops) Note my point: It is 100% possible to shuffle the configuration around in a device independent manner, in fact that it probably the best way to do it. Building a customer friendly way to interact with that data for all datasets is an entirely different problem. Anyone who is willing is welcome to tackle the problem. Try to build a complete GUI that satisfies all the configuration requirements. Maybe you will get closer than anyone did before, that would be great. However, in the eventuality that you discover something that just needs to be different for different hardware, I suggest you leave it alone and let a vendor specific GUI handle it rather than implement it in a way that doesn't meet anyone's needs. The more you can handle in the cross device GUI the better, but it doesn't eliminate the need and desire for vender specific additions. >Same danger. You are writing to someone who's running as root (X). >Big security concern. The less often you do it (e.g., one binary >instead of every vendor rolling their own binaries) the more you >can concentrate on making sure that binary is secure in terms of >exploits. It is a danger, but don't let existing XFree design characteristics prevent the user from having a good experience. If you use the standard data types you were discussing above you can leave all the reading/writing to X. X gets 1000 data types that it knows nothing about and sends them to the driver. When the driver has verified them/applied them it can notify XFree to save them off to a file. It isn't hard to make that secure. In the end we can agree to disagree. As long as there is a protocol for configuring everything including modes, multi-display, and any possible parameter, there is no requirement that there be only one GUI tool. XFree could have a standard one and vendors (Linux distributions, HW Vendors, etc) could all make their own replacements as they see fit. -Matt _______________________________________________ Devel mailing list [EMAIL PROTECTED] http://XFree86.Org/mailman/listinfo/devel
