homesync/contentmanager/mediaservant/inc/mssettingitems.h
changeset 0 7f85d04be362
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/homesync/contentmanager/mediaservant/inc/mssettingitems.h	Thu Dec 17 08:52:00 2009 +0200
@@ -0,0 +1,218 @@
+/*
+* Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  Definition for MediaServant fill rule editor class
+*
+*/
+
+
+#ifndef C_MSSETTINGITEMS_H
+#define C_MSSETTINGITEMS_H
+
+#include <aknsettingitemlist.h>
+
+// CLASS DECLARATIONS
+
+/**
+ * CMSTextSettingItem
+ * Text setting item class
+ *
+ * @Since S60 5.1
+ */
+class CMSTextSettingItem : public CAknTextSettingItem
+    {
+    public:
+        /**
+         * Constructor
+         *
+         * @Since S60 5.1
+         * @param aIdentifier, resource id
+         * @param aText, setting item text
+         * @return None
+         */
+        CMSTextSettingItem( TInt aIdentifier, TDes& aText );
+    
+    protected:
+    
+// From base class MAknSettingPageObserver
+    
+        /**
+         * From MAknSettingPageObserver
+         * See base class definition
+         */
+        void  HandleSettingPageEventL ( CAknSettingPage* aSettingPage,
+                                        TAknSettingPageEvent aEventType );
+    public:
+    
+        /* Setting page acceptance status
+         * @since S60 5.1
+         * @param None
+         * @return TBool, ETrue if accepted EFalse if cancelled
+         */
+        TBool SettingAccepted();
+        
+        /**
+         * Sets setting page accept state
+         * @since S60 5.1
+         * @param aState, ETrue if accepted
+         * @return None
+         */
+        void SetAcceptState( TBool aState );
+
+        /**
+         * Gets settingitem text
+         * @since S60 5.1
+         * @param None
+         * @return TPtr&, setting item text
+         */
+        TPtr& Text(); 
+
+        /**
+         * Sets settingitem text
+         * @since S60 5.1
+         * @param text, new text
+         * @return None
+         */
+        void SetText( TDesC& text );
+
+    private:
+
+        /*
+         * Setting page acceptance status
+         */
+        TBool iOKPressed;
+    };
+
+/**
+ * CMSEnumeratedTextPopupSettingItem
+ * Enumerated text popup setting item class
+ *
+ * @Since S60 5.1 
+ */
+class CMSEnumeratedTextPopupSettingItem : 
+    public CAknEnumeratedTextPopupSettingItem
+    {
+    public:
+
+        /*
+         * Constructor
+         *
+         * @Since S60 5.1
+         * @param aIdentifier, resource id
+         * @param aValue, selected value
+         * @return None
+         */
+        CMSEnumeratedTextPopupSettingItem( TInt aResourceId, TInt& aValue );
+
+    protected:
+
+// From base class MAknSettingPageObserver
+
+        /**
+         * From MAknSettingPageObserver
+         * See base class definition
+         */
+        void  HandleSettingPageEventL ( CAknSettingPage* aSettingPage,
+                                        TAknSettingPageEvent aEventType );
+    public:
+        /* Setting page acceptance status
+         * @since S60 5.1
+         * @return TBool, ETrue if accepted EFalse if cancelled
+         */
+        TBool SettingAccepted();
+
+        /**
+         * Sets setting page accept state
+         * @since S60 5.1
+         * @param aState, ETrue if accepted
+         */
+        void SetAcceptState( TBool aState );
+
+    private:
+        /*
+         * Setting page acceptance status
+         */
+        TBool iOKPressed;
+    };
+
+/**
+ * CMSTimeOrDateSettingItem
+ * Time and date setting item class
+ *
+ * @since S60 5.1
+ */
+class CMSTimeOrDateSettingItem : public CAknTimeOrDateSettingItem
+    {
+    public:
+        /*
+         * Constructor
+         *
+         * @Since S60 5.1
+         * @param aIdentifier, resource id
+         * @param aMode, time or date mode
+         * @param aTime, time value
+         * @return None
+         */
+        CMSTimeOrDateSettingItem( TInt aCMSIdentifier,
+            TInt aIdentifier,
+            CAknTimeOrDateSettingItem::TAknTimeOrDateSettingItemMode aMode,
+            TTime& aTime );
+            
+    protected:
+    
+// From base class MAknSettingPageObserver
+        
+        /**
+         * From MAknSettingPageObserver
+         * See base class definition
+         */
+        void  HandleSettingPageEventL ( CAknSettingPage* aSettingPage,
+                                        TAknSettingPageEvent aEventType );
+    public:
+        /* Setting page acceptance status
+         * @since S60 5.1
+         * @return TBool, ETrue if accepted EFalse if cancelled
+         */
+        TBool SettingAccepted();
+
+        /**
+         * Sets setting page accept state
+         * @since S60 5.1
+         * @param aState, ETrue if accepted
+         */
+        void SetAcceptState( TBool aState );
+   
+        /**
+         * This launches the setting page for Time or Date editing
+         * @since S60 5.1
+         * @param aState, ETrue if from menu called
+         */  
+        void EditItemL( TBool aCalledFromMenu );   
+
+    private:
+        /*
+         * Setting page acceptance status
+         */
+        TBool  iOKPressed;
+        /*
+         * Internal time
+         */
+        TTime& iCMSInternalTime;
+        /*
+         * Resource identifier(From / Util)
+         */
+         TInt  iCMSIdentifier;
+         
+    };
+
+#endif // C_MSSETTINGITEMS_H
\ No newline at end of file