As if it's possible for COM to be beautiful? :)

I looked over your code briefly and it looks pretty nice.

Implementing something like QtDockTile is somewhat odd because the it was 
developed as a series of plugins with a single QDockTile API. I think the 
abstraction of these platform features into a single logical API is useful, 
however I'm not sure we can do that easily with the current QWindowsExtras / 
QMacExtras / QX11Extras trio. QDockTile as a class would have to go into QtGui 
to make proper use of that abstraction, but then you have the problem of 
backporting it to Qt 4. Or you could duplicate the header across all 3 
libraries which isn't exactly ideal. I guess the best approach is to just 
forego having it as a single API and just have a series of individual classes 
for the functionality of each platform in each of the Q***Extras libraries.

Then there's the problem of where the Unity portion goes *at all*. Not 
QX11Extras since it's not window system specific but DE-specific, and I doubt 
anyone would want to create a QUnityExtras (although I certainly wouldn't be 
opposed - it'll have to go somewhere).

The QPixmap-and-friends conversion functions is a big one that definitely 
belongs in QWindowsExtras. I already mentioned that in my initial proposal to 
create a QWindowsExtras library, and Morten Sørvig and I both have some changes 
pending to add similar conversion functions in QMacExtras.

So yes, the Windows 7 jump lists, etc., functionality should definitely be 
implemented in QWindowsExtras in my opinion. The questions I see that need 
answering are:

* Is there a place for a QDockTile abstraction on top of Windows 7 taskbar 
features, OS X Dock features and Unity launcher features (while still having 
the individual APIs available)?
* Where would the Unity functionality go? Do we need a QUnityExtras as well?

What do others think?

Either way, I don't think anyone would disagree that we need a QWindowsExtras. 
Could someone create it in playground/qwindowsextras so those of us interested 
in contributing can begin submitting code?

Jake Petroules
Petroules Corporation (www.petroules.com)
Email: [email protected]
Telephone: +1 (970) 587-3821

On Jan 24, 2013, at 5:40 PM, Ivan V. <[email protected]> wrote:

> Something more beautiful. :) 
> 
> Firstly, there's no need in C-style abstractions.
> Secondly, there will be implemented some more features. 
> And it won't be designed as a pugin for plugin, which uses library wrapped by 
> another library.
> 
> I've already done some features. Code is here: 
> https://github.com/dtf/QtWindowsExtras
> Alsio, it is going to include various conversion functions, which where 
> removed from QPixmap in Qt5, as was asked here: 
> http://lists.qt-project.org/pipermail/development/2013-January/009390.html .
> 
> But that's not the topic. The only thing I would like to know is if it is ok 
> to include in Qt code, which, I think, is some kind of hack. What do you 
> think?
> 
> 25.01.2013, 00:30, "Jake Thomas Petroules" <[email protected]>:
>> Ah, I'm familiar with the project from which it was forked. If this is not 
>> the code that is going to be a proposal for QWindowsExtras then what is?
>> 
>> Jake Petroules
>> Petroules Corporation (www.petroules.com)
>> Email: [email protected]
>> Telephone: +1 (970) 587-3821
>> 
>> On Jan 24, 2013, at 5:14 PM, Ivan V. <[email protected]> wrote:
>> 
>>>  Of course it is.
>>>  Here is the project: https://github.com/dtf/QtDockTile
>>>  Here is the somewhat ugly code, which was born by cloudy consciousness: 
>>> https://github.com/dtf/QtDockTile/tree/master/src/plugins/windows
>>> 
>>>  Note that it is not the code that is going to be a proposal for Qt Windows 
>>> Extras.
>>> 
>>>  25.01.2013, 00:07, "Jake Thomas Petroules" <[email protected]>:
>>>>  Interesting. Is your wrapper open source and where might one find it?
>>>> 
>>>>  Jake Petroules
>>>>  Petroules Corporation (www.petroules.com)
>>>>  Email: [email protected]
>>>>  Telephone: +1 (970) 587-3821
>>>> 
>>>>  On Jan 24, 2013, at 4:34 PM, Ivan V. <[email protected]> wrote:
>>>>>   Hello, Jake,
>>>>> 
>>>>>   The main "unusualness" about our wrapper is that it not only wraps 
>>>>> ICustomDestinationList COM-interface, but also allows programmer to put 
>>>>> there QActions and use it like with some kind of menus. What it does it 
>>>>> stores these actions, gives them unique id's, and those id-s puts into 
>>>>> command-line argument to rundll32, which after activation of jumplist 
>>>>> item calls a procedure, which then finds respective action by id and 
>>>>> triggers it. It's pretty common mechanism of transforming this unusable 
>>>>> "Jump Lists", which is only list of shortcuts, into something more usable.
>>>>>   _______________________________________________
>>>>>   Development mailing list
>>>>>   [email protected]
>>>>>   http://lists.qt-project.org/mailman/listinfo/development
>>>  _______________________________________________
>>>  Development mailing list
>>>  [email protected]
>>>  http://lists.qt-project.org/mailman/listinfo/development
> _______________________________________________
> Development mailing list
> [email protected]
> http://lists.qt-project.org/mailman/listinfo/development

_______________________________________________
Development mailing list
[email protected]
http://lists.qt-project.org/mailman/listinfo/development

Reply via email to