[bt-devel] General development questions re installmgr

Joachim Ansorg bt-devel@crosswire.org
Tue, 3 Jul 2001 09:33:38 +0200


Hi Tim!

> 1) It seems that I spend a great deal of time trying to maintain
>     a stable development environment.  Today I did a CVS update
>     to my development directory, and had to do a make -f Makefile.cvs
>     and ./configure in order to build correctly (This was done after
>     I had to "create" the missing common directory and files in the
>     docs/sk/HTML folder).

make -f Makefile.cvs is required if a new subdirectory with a Makefile.am 
inside of it is added in CVS. ./configure have to be run after make -f 
Makefile.am to create the new Makefiles.

Updating with "cvs -z5 up -Pd" should create new subdirectories, so you 
should at least get the new directories froom CVS.

>     After letting everything recompile, BT showed the splash and SIGSEGV.
>     So now I must download the 1.0 release tarball, and have to
>     recompile the world again to try to find the problem.

This is a bad way. Do not try to fix the bug if you have not introduced it.
Other developers who comitted the new code are knowing better where the bug 
may be. If you get a crash write to this mailing list and you'll get 
(probably) soon some help with the bug. Don't forget to include some 
backtraces and infos shown by Dr. Kongy.
Sometimes the local directoy gets mixed up and causes a SIGSEV. make 
distclean and a new compile session after this should solve this.

>     Do developers do cvs commits on code that won't at least clean
>     compile, or am I facing a platform problem here?

Developers should commit code that compiles fine and which does not cause a 
crash in BibleTime.

> 2) In order to add a page to the options dialogue, I am looking at the
>     coptionsdialog.cpp, ressource.h and coptionsdialog.h files.

Do you want to add the installmgr to the optionsdialog?
Please don't forget, that the interface of the installmgr may get bigger so 
it's hard to integrate it into the optionsdialog. And it should be possible 
to open the installmgr using a command line option.
If you have questions about this please ask me.

This is my opinion and it's probably not the best. I'm open for discussion 
about this point.

IMHO the solution would be to add a new menu item and to create an own dialog 
for the installmgr.

>     In ressource.h, I could add:
>     #define OD_ICON_INSTALLMGR LOAD_OD_ICON("package_utilities")
>
>     In coptionsdialog.h, I could add the method definitions for:
>     COptionsDialog::initInstallMgr() and
>     COptionsDialog::saveInstallMgr()
>
>     And in coptionsdialog.cpp I could add the code for the above,
>     perhaps basing the option page on a QHBox object.

This looks ok. It's like the way we did for the other options-pages.

>     Things seem pretty hard to understand at this point.  It's difficult
>     for me to predict what is to happen next.  If I do the above with
>     say a call to:
>
>     addHBoxPage(i18n("Install"), i18n("Install and Configure Modules",
>                 OD_ICON_INSTALLMGR );
>
>     in the initInstallMgr method, should I expect to see the graphic
>     "package_utilities.png" displayed in the list, even though I
>     haven't done anything else (such as define a signal/slot pair)?

This is right.
Are you sure you added the closing bracket after i18n("Install and Configure 
Modules" ? Otherwise the icon name will be included in the translation.


Joachim