Cleaning those directories did not help. It only generates the header file for the first dialog and then the build fails because it can't find the other header files that uic3 should have generated. So it appears to me that even though all the rules are in the make file they are for some reason not correctly formed to result in the correct files being generated..
When I try to run uic3 against one of the ui files I get:
uic3 src/parmsqt/profileparmsbase.ui -o .ui/profileparmsbase.h
uic3: property `lineWidth' for widget `smoothnessButtonGroup' of type `Q3ButtonGroup' is not supported. Line: 336 Column: 45
uic3: property `paletteBackgroundColor' for widget `textLabel14' of type `QLabel' is not supported. Line: 496 Column: 39
After running this the header file is created and looking at it it does appear to be OK. Running uic3 -impl ... results in an error message about not being able to parse the fist line of the header file and an empty implementation file. But looking that the qt4 docs I am not sure that I have to run uic3 -impl ... since it appears that everything needed is created inline in the header file.
Even after creating the header file for the first file that the build is issuing a "no such file..." error for it still issues the same error. So for some reason the build is not looking in .ui even though the make file has -I.ui in the include path. I discovered that if I copy the uic3 generated header to the the same directory as the base .ui file that then the build finds it. I then ran uic3 by hand to generate the headers in a location where the build would find them. At that point I start seeing all kinds of compiler errors. Which is something I would expect on my code. So where this is happening with my as yet un-ported code I don't have an issue. But I am also seeing this in the uic3 generated header files which is something that I would not expect. Here is an example:
./profilecheckerbase.h: In member function 'void Ui_ProfileCheckerBase::setupUi(QDialog*)':
./profilecheckerbase.h:289: error: 'class Q3Table' has no member named 'setAutoMask'
Looking in the above header file I find that this is happening with an object named ResultsGrid. Opening the ui file in designer 3 and navigating to this object I can't find a property having a name that corresponds to this so I don't know how to change the ui file to get rid of the error. Does that mean that I need to hand edit the generated header file? If so this is a very ugly issue in that it means that using uic3 I can no longer make changes to the ui files without it tuning into a major operation that requires lots of hand steps to get the project to build. By the way commenting out the one line in the generated header file does allow the build to get farther.
At this point I would have to say that I am confused about how this should all work since much of it appears to be broken and none of the existing documentation seems to cover any of the issues I am seeing. My gut tells me that there must be something that I am doing wrong but I don't know what that is.
Bookmarks