## This code example is from the following source:
##
## Book Title:  Programming with Objects, A Comparative Presentation
##              of Object-Oriented Programming with C++ and Java
##
## Book Author:   Avinash Kak
##
## Chapter:     Chapter 17  OO For Graphical User Interfaces, A Tour Of Three Toolkits
##
## Section:     Section 17.14.1  A Qt Exammple that Requires Meta Object Compilation
##


#Makefile_Qt_CrazyWindow

CC=g++
LDLIBS=-L$(QTDIR)/lib -lqt
CFLAGS=-g -I$(QTDIR)/include 

CrazyWindow: moc_CrazyWindow.o moc_MyDrawPanel.o moc_MyTextPanel.o \
             CrazyWindow.o MyDrawPanel.o MyTextPanel.o             \
             main_CrazyWindow.o Makefile_Qt_CrazyWindow
	$(CC) $(LDLIBS)  -o CrazyWindow moc_CrazyWindow.o            \
             moc_MyDrawPanel.o moc_MyTextPanel.o CrazyWindow.o     \
             MyDrawPanel.o MyTextPanel.o main_CrazyWindow.o


moc_CrazyWindow.cc: CrazyWindow.h
	moc -o moc_CrazyWindow.cc CrazyWindow.h
moc_MyDrawPanel.cc: MyDrawPanel.h
	moc -o moc_MyDrawPanel.cc MyDrawPanel.h
moc_MyTextPanel.cc: MyTextPanel.h
	moc -o moc_MyTextPanel.cc MyTextPanel.h

moc_CrazyWindow.o: moc_CrazyWindow.cc
	$(CC) -c $(CFLAGS) -O2 moc_CrazyWindow.cc
moc_MyDrawPanel.o: moc_MyDrawPanel.cc
	$(CC) -c $(CFLAGS) -O2 moc_MyDrawPanel.cc
moc_MyTextPanel.o: moc_MyTextPanel.cc
	$(CC) -c $(CFLAGS) -O2 moc_MyTextPanel.cc

CrazyWindow.o: CrazyWindow.cc
	$(CC) -c $(CFLAGS) -O2 CrazyWindow.cc
MyDrawPanel.o: MyDrawPanel.cc
	$(CC) -c $(CFLAGS) -O2 MyDrawPanel.cc
MyTextPanel.o: MyTextPanel.cc
	$(CC) -c $(CFLAGS) -O2 MyTextPanel.cc

main_CrazyWindow.o: main_CrazyWindow.cc
	$(CC) -c $(CFLAGS) -O2 main_CrazyWindow.cc

clean:
	rm -f CrazyWindow
	rm -f *.o
	rm -f moc*.*
