DumontEXE 0.0.1
cmcFieldDefs.cpp
00001 /* ***************************************************************************
00002 **
00003 ** Copyright (C) 2007 Lorimark Solutions, LLC. All rights reserved.
00004 **
00005 ** This file is part of the DumontEXE Scripting Extension Kit
00006 **
00007 ** This file may be used under the terms of the GNU General Public
00008 ** License version 2.0 as published by the Free Software Foundation
00009 ** and appearing in the file LICENSE.GPL included in the packaging of
00010 ** this file.  Please review the following information to ensure GNU
00011 ** General Public Licensing requirements will be met:
00012 ** http://dumont.showoff-db.org/opensource.html
00013 **
00014 ** If you are unsure which license is appropriate for your use, please
00015 ** review the following information:
00016 ** http://dumont.showoff-db.org/licensing.html 
00017 ** or contact the sales department at sales@lorimarksolutions.com.
00018 **
00019 ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
00020 ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
00021 **
00022 ** author: Mark Petryk ~ Lorimark Solutions, LLC
00023 ** **************************************************************************/
00024 
00025 #include <QStringList>
00026 
00027 #include "cmcFieldDefs.h"
00028 #include "cmcCategoryDef.h"
00029 #include "cmcApplication.h"
00030 #include "cmcDatabase.h"
00031 #include "cmcConversation.h"
00032 #include "cmcFieldDef.h"
00033 
00034 namespace cmcDatabaseApi {
00035 
00036 cmcFieldDefs::cmcFieldDefs( const cmcFieldDefs & copy ):
00037   cmcObjects( copy )
00038 {
00039 }
00040 
00041 cmcFieldDefs::cmcFieldDefs( cmcCategoryDef * i_categoryDef ):
00042   cmcObjects( "FieldDefs", i_categoryDef-> app(), i_categoryDef )
00043 {
00044 //  TRACE_FUNCTION
00045 
00046   QString names = cv()-> getFieldNames(categoryName());
00047 
00048   if( names.length() > 0 )
00049     m_names = cv()-> getFieldNames(categoryName()).split("\r\n");
00050 
00051 }
00052 
00053 cmcFieldDefs::~cmcFieldDefs()
00054 {
00055 //  TRACE_FUNCTION
00056 }
00057 
00058 bool cmcFieldDefs::load()
00059 {
00060   for( int i=0; i<m_names.count(); i++ )
00061     load( m_names[i] );
00062 
00063   return( true );
00064 }
00065 
00066 cmcObject * cmcFieldDefs::load( const QString & name )
00067 {
00068   return( new cmcFieldDef( name, app(), this ) );
00069 }
00070 
00071 bool cmcFieldDefs::save()
00072 {
00073   return( true );
00074 }
00075 
00076 long cmcFieldDefs::count()
00077 {
00078 //  TRACE_FUNCTION
00079   return( m_names.count() );
00080 }
00081 
00082 cmcCategoryDef * cmcFieldDefs::categoryDef()
00083 {
00084   return( qobject_cast<cmcCategoryDef*>(parent()) );
00085 }
00086 
00087 QString cmcFieldDefs::categoryName()
00088 {
00089   return( categoryDef()-> categoryName() );
00090 }
00091 
00092 cmcFieldDef * cmcFieldDefs::get( const QString & name )
00093 {
00094   cmcFieldDef * retVal = qobject_cast<cmcFieldDef*>(cmcObjects::get(name));
00095 
00096   if( !retVal )
00097   {
00098     retVal = new cmcFieldDef( name, app(), this );
00099   }
00100 
00101   return( retVal );
00102 
00103 }
00104 
00105 cmcFieldDef * cmcFieldDefs::get( long index )
00106 {
00107   return( get(m_names.at(index)) );
00108 }
00109 
00110 
00111 } // endnamespace cmcDatabaseApi
00112 
 All Classes Namespaces Functions Variables Enumerations Enumerator Properties




~ ~ ~ ~ ~ ~
Source Code without Comments is like a Cranberry Garland
without the berries. Comment your Code!
 
Commence Database User Support Group Forum
http://newsgroup.showoff-db.org/
~ ~ ~ ~ ~ ~
Author: Mark Petryk
Lorimark Solutions, LLC
mark@lorimarksolutions.com