00001 //<<<<<< INCLUDES >>>>>> 00002 00003 #include "Iguana/Studio/interface/IgViewCreator.h" 00004 #include "Iguana/Studio/interface/IgViewDB.h" 00005 #include "Iguana/Studio/interface/IgView.h" 00006 #include "Iguana/Studio/interface/IgPage.h" 00007 00008 //<<<<<< PRIVATE DEFINES >>>>>> 00009 //<<<<<< PRIVATE CONSTANTS >>>>>> 00010 //<<<<<< PRIVATE TYPES >>>>>> 00011 //<<<<<< PRIVATE VARIABLE DEFINITIONS >>>>>> 00012 //<<<<<< PUBLIC VARIABLE DEFINITIONS >>>>>> 00013 //<<<<<< CLASS STRUCTURE INITIALIZATION >>>>>> 00014 //<<<<<< PRIVATE FUNCTION DEFINITIONS >>>>>> 00015 //<<<<<< PUBLIC FUNCTION DEFINITIONS >>>>>> 00016 //<<<<<< MEMBER FUNCTION DEFINITIONS >>>>>> 00017 00018 IgViewCreator::IgViewCreator (IgViewDB::Iterator &i, IgPage *page) 00019 : m_page (page), 00020 m_iterator (i) 00021 { 00022 } 00023 00024 void 00025 IgViewCreator::createView (void) 00026 { 00027 // FIXME: IgView API is pretty small so that we have to explicitly 00028 // call show () in the Ig*View constructor in order to be able to 00029 // show the MDI window. It would be nice to have IgView::show() so 00030 // that view writers don't have to call it... But maybe 00031 // not...Let's wait for Lassi to see what he thinks... 00032 IgView* view = (*m_iterator)->create (m_page); 00033 if (!view->state ()) 00034 delete view; 00035 }