Quote:
Originally Posted by user_none
1) You have two sets of the same data that need to be kept in sync. Make a change to the GUI and make sure you change the lib version. Make an API change using the lib then you have to ensure the GUI gets updated. In this case how do you inform the GUI the elements changes? You need to signal to the GUI that that happened. Now you have a whole lot more logic to deal with.
<snip>
Have you seen how the C# classes at university are taught? GUI builders where the business logic goes into the GUI event handlers.
|
I've been taught option 1. It was strictly forbidden to put business logic into the GUI classes or event handlers. If that is now the default modus operandi, then universities have done a 180 degree turn.
Quote:
Calibre uses and ships with 2.7. This is mainly because of the effort involved in porting all of calibre to Python 3. New code however has all Python 3 compatibility features enabled so it's pretty close to what you'd write for Python 3.
|
Thanks, in that case I'll revert to Python 2.7 for now. Maybe I can add a small wanted function to the Count Pages plugin; for someone who knows Calibre and Python already, it'd probably be like 15 minutes of work