Matt Rogers schrieb:
> On Sunday 03 January 2010 05:33:19 am Frank Schaefer wrote:
>   
>> The problem is, that (AFAIK) subversion isn't capable of creating
>> offline patch-series.
>> That's why I used git, which is usually not a problem.
>> But for some unknown reasons, review-board doesn't accept them (even
>> after modifying them manually).
>>
>> So here they are as atachments.
>> All patches apply fine with "patch p1 < patchname" from kopetes'
>> root-directory.
>>
>> As I already mentioned, the main intention is to make the API for the
>> video-controls more flexible and functional.
>>
>> Some of the problems with the current code are:
>>  - only a fixed set of controls is supported
>>  - no possibility to determine if a control is really supported by a
>>    device
>>  - non-numeric controls (e.g. actions) are not supported
>>  - custom (driver-defined) controls are not supported
>>  - additional informations like default-/min-/max-values and required
>>    step-size are not available
>>  - problems: e.g. the V4L2-control V4L2_CID_HUE combines the two
>>    controls "hue" and "color" in a single control
>>
>> That's why I suggest the following changes:
>> - use IDs to identify/address the supported controls
>> - the values of controls can be querried/set with the new functions
>>      getControlValue(ctrl_ID, value)
>>      setControlValue(ctrl_ID, value)
>> - the controls supported by the device can be querried with 4 new
>>   functions, one of them for each group of controls (numeric, boolean,
>>   menus, actions). These functions return data structures which contain
>>   the control-ID, the title and additional informations (depending on
>>   the control-type).
>>
>> Some additional benefits are
>> - control-grouping makes GUI-design easier (different GUI-elements)
>> - controls can be reset to default-values
>> - the real (not normed) numeric value of a control can be displayed
>> - ...
>>
>>
>> There are still some things to do:
>> - reenable saving of the settings (loading is disabled in current runk,
>>   too !) After taking a deeper look into the loading-/saving-procedures,
>>   I noticed that there are many other problems...
>>   For example: devices should be identified by their uid, not their
>>   model-name !
>> - translation of the control-titles.
>>   I'm not yet familar with KDEs translation mechanism, but the only
>>   problem I see is the translation of custom (driver-specific) controls.
>>   We get them from the V4L2-API directly.
>> - Documentation
>>
>> Although the patches are working fine, they are mainly intended for
>> discussion about the general approach (so please don't complain about
>> whitespace-errors ;) )
>>
>> Comments are appreciated.
>>
>> Frank
>>     
>
> 0001 is fine.
> 0002 is fine.
> 0003 is fine.
> 0004 is fine.
> 0005 is fine.
> 0006 is fine.
> 0007 is fine.
>
>   
Cool, thanks ! Here are some changes I suggest ;) :
- use int instead of bool as return values for get/setControlValue(...)
- use KComboBox instead of QComboBox, KPushButton instead of
QPushButton, ...
- remove a uselss QObject::tr( )

Further comments/suggestions ?
> I reviewed the original mail you sent (sorry for not moderating it in time, I 
> was without a decently usable mail client all weekend) and I think all these 
> patches are fine and can go in once trunk is opened for new stuff, since they 
> add new strings (via the UI files), unless this is really a bug fix, which at 
> that point, we might be able to get an exception from the translation team.
>   
No problem, I didn't know that there is a 80kB limit for mails.
Of course, all patches are intended for KDE 4.5.

Cheers,
Frank

_______________________________________________
kopete-devel mailing list
kopete-devel@kde.org
https://mail.kde.org/mailman/listinfo/kopete-devel

Reply via email to