LumaPictures / usd-qt

Reusable Qt Components for Pixar's USD
Other
153 stars 40 forks source link

Initial merge of UsdQtEditors #3

Closed pxmkuruc closed 7 years ago

pxmkuruc commented 7 years ago

Chad, you guys will likely need to set this environment variable.

PXR_USDQT_APPEND_NOT_ADD

I'm hoping that API changes don't come up often, but if they do we should probably reevaluate being more specific about what build of usd we're compatible with/iterating on.

chadrik commented 7 years ago

Hey Matt, aren't there C++ defines available with the USD version that we can use in the preprocessor directives instead of setting an environment variable?

pxmkuruc commented 7 years ago

I meant to say C++ Define. I'm not sure why I said environment variable.

chadrik commented 7 years ago

What I mean is that we should be able to do this with the existing PXR_MAJOR_VERSION, PXR_MINOR_VERSION defines in pxr.h. That way we don't have to add a new define for every potential backward incompatibility moving forward.

chadrik commented 7 years ago

Another topic for discussion is package structure. Currently we have proposed:

UsdQt/
UsdQtWidgets/

But a more traditional python package layout would be more deeply nested:

UsdQt/
  Widgets/
  Models/

I favor the latter because the two are very tightly related, so I'm not sure if it makes sense to have a top-level split.

Also I just want to throw out there that I think eventually we'll want to migrate usdviewq.stageView into our widgets library.

pxmkuruc commented 7 years ago

I ran it by some others internally and because UsdQt is a hybrid python/C++ library, we'd prefer to keep it separate, accepting that the structure is less pythonic.

chadrik commented 7 years ago

Ok. Sounds good. What do you think about the suggestion to replace PXR_USDQT_APPEND_NOT_ADD with PXR_MAJOR_VERSION / PXR_MINOR_VERSION?

pxmkuruc commented 7 years ago

It definitely sounds like a good idea, but there wasn't enough internal consensus about which version numbers to use. There's no API guarantees yet with the version numbers. We should definitely revisit it.

pxmkuruc commented 7 years ago

Hey Chad. I think I've addressed your notes in latest push. Let's follow up more on package structure and import best practices in an e-mail thread.

chadrik commented 7 years ago

done!