home contents changes options help

by Robin Rowe 12/28/05; updated 1/4/06


Took a little longer, but the Glasgow code re-org is checked in. Builds in vcpp7. Other platforms broken until the relevant project files get updated for Linux, Mac, and vcpp8 respectively.

If you already have a check-out of Glasgow you may want to rename it and do a new check-out to another directory. Glasgow has been streamlined to have a lot fewer directories than before.

Also under plug-ins are blur, jpeg, png, test_client, and tiff. These and plug-ins.dll should go away when open_img is integrated. The plug-ins in the new architecture are supposed to load from open_img.exe instead of cinepaint.exe. Glasgow reused some of the Film Gimp plug-ins as a stopgap because I'm still building open_img. The plan is to have open_img in February.

Under VC++ 7 I'm seeing some build link warnings with gui.lib for multiply defined methods. This seems to be caused when VC++ elects to make an inline method out-of-line (as is permitted by C++). When this happens it finds (identical) definitions in both plug-ins.dll and gui.lib and triggers a warning. One way to eliminate this warning is to make everything out-of-line in the classes causing warnings, but that's sub-optimal. Anyone know the right way to fix it?

The image_tools.dll was renamed image_ops.dll, but I haven't tested the code that loads it.

Sometime this week I'll check in FLTK 1.1.7. That should eliminate the window resize bug in our version of 1.1.6.

Old structure described below. Ignore.


Note this structure is much too complex. To be changed. Confusingly, the project files and directories don't have a direct relationship. There are cpp files being linked from multiple directories.

CinePaint Glasgow VC++ Project Layout

CinePaint Glasgow Directory Layout

The core-plug-ins design probably doesn't make sense with open_img, but here's how it works now. The image_tools.dll is loaded as imageops during app init. The tools.dll is loaded as tools. Likewise, the design of core and core_interfaces needs to be rethought. The Scotland team had core intended as the real guts of the CinePaint applications (without UI), whereas core_interfaces was intended as all the interfaces that external apps/plugins may need.