uiacceltk/hitchcock/ServerCore/Inc/alfbridge.h
branchRCL_3
changeset 17 c9d868f1e20c
parent 15 cd0ae4656946
child 18 1801340c26a2
equal deleted inserted replaced
15:cd0ae4656946 17:c9d868f1e20c
   157      */
   157      */
   158     void ShowControlGroupL(
   158     void ShowControlGroupL(
   159             CHuiRoster& aRoster, 
   159             CHuiRoster& aRoster, 
   160             CHuiControlGroup& aGroup, 
   160             CHuiControlGroup& aGroup, 
   161             TInt aWhere, 
   161             TInt aWhere, 
   162             TInt aScreenNumber );
   162             TInt aScreenNumber = 0);
   163 
   163 
   164     /**
   164     /**
   165      * This method sets the windowgroup id for the alf window.
   165      * This method sets the windowgroup id for the alf window.
   166      * 
   166      * 
   167      */
   167      */
   200  	 * Function to be called when CHuiFxEffect class effect has ended
   200  	 * Function to be called when CHuiFxEffect class effect has ended
   201   	 * @param aHandle handle of the effect, given when the effect is started
   201   	 * @param aHandle handle of the effect, given when the effect is started
   202   	 */
   202   	 */
   203     void AlfGfxEffectEndCallBack( TInt aHandle );
   203     void AlfGfxEffectEndCallBack( TInt aHandle );
   204    
   204    
   205     TInt FindClientWindowGroupId( TInt aScreenNumber, CHuiControlGroup& aControlGroup );
   205     TInt FindClientWindowGroupId(CHuiControlGroup& aControlGroup );
   206     TInt FindWindowGroupNodeId( TInt aScreenNumber, CHuiControlGroup& aControlGroup ) const;
   206     TInt FindWindowGroupNodeId(CHuiControlGroup& aControlGroup ) const;
   207     
   207     
   208     void CleanAllFxVisuals();
   208     void CleanAllFxVisuals();
   209 
   209 
   210     /**
   210     /**
   211      * Helper function to abort fullscreen effect
   211      * Helper function to abort fullscreen effect
   404 	*	@return ETrue	If storing was required and could be done.
   404 	*	@return ETrue	If storing was required and could be done.
   405     *					OR storing was not required. 
   405     *					OR storing was not required. 
   406 	*/    
   406 	*/    
   407     TBool StoreLayoutIfRequiredByEffectL(CHuiLayout* aLayout, CFullScreenEffectState& aEvent, TBool& aNeededStoredLayout);
   407     TBool StoreLayoutIfRequiredByEffectL(CHuiLayout* aLayout, CFullScreenEffectState& aEvent, TBool& aNeededStoredLayout);
   408 
   408 
       
   409     void HandleGfxRedirection(CFullScreenEffectState& aEvent, CHuiLayout*& aLayout);
   409     /**
   410     /**
   410      * Handles begin and end fullscreen events
   411      * Handles begin and end fullscreen events
   411      */
   412      */
   412     TBool HandleGfxEventL(CFullScreenEffectState& aEvent, CHuiLayout* aToLayout, CHuiLayout *aFromLayout);
   413     TBool HandleGfxEventL(CFullScreenEffectState& aEvent, CHuiLayout* aToLayout, CHuiLayout *aFromLayout);
   413     
   414     
   614 	void HandleSetCursorDataL( TAlfBridgerData& aData );
   615 	void HandleSetCursorDataL( TAlfBridgerData& aData );
   615 	
   616 	
   616 	void HandleSetNodeTracking( TAlfBridgerData& aData );
   617 	void HandleSetNodeTracking( TAlfBridgerData& aData );
   617 	
   618 	
   618 	void HandleSetFadeEffectL( TAlfBridgerData& aData );
   619 	void HandleSetFadeEffectL( TAlfBridgerData& aData );
       
   620 	
       
   621 	void HandleGroupChained( TAlfBridgerData& aData);
       
   622 	
       
   623 	void HandleGroupChainBroken( TAlfBridgerData& aData);
   619 	
   624 	
   620 	void HandleMoveWindowToNewGroupL( TAlfBridgerData& aData );
   625 	void HandleMoveWindowToNewGroupL( TAlfBridgerData& aData );
   621 
   626 
   622     void HandleSetLayoutSwitchEffectL();
   627     void HandleSetLayoutSwitchEffectL();
   623 	
   628 	
   709      *                 the pointer to visual corresponding the client side keys.
   714      *                 the pointer to visual corresponding the client side keys.
   710      */       
   715      */       
   711     CHuiCanvasVisual* FindVisualByClientSideIds(TUint32 aClientSideId, TUint32 aClientSideGroupId );
   716     CHuiCanvasVisual* FindVisualByClientSideIds(TUint32 aClientSideId, TUint32 aClientSideGroupId );
   712 
   717 
   713     /**
   718     /**
       
   719 	 * FindChainedGroup
       
   720 	 * 
       
   721 	 * Find chained windowgroup from iWindowChainsArray. Return 0, if not found.
       
   722 	 */
       
   723     TUint32 FindChainedGroup(TUint32 aTreeNodeId);
       
   724 
       
   725     /**
       
   726 	 * IsChainedGroup
       
   727 	 * 
       
   728 	 * @return ETrue if group is chained.
       
   729 	 */    
       
   730     TBool IsChainedGroup(TUint32 aTreeNodeId);
       
   731     
       
   732     /**
   714      * This method finds controlgroup which has been assosiated with given window group id. 
   733      * This method finds controlgroup which has been assosiated with given window group id. 
   715      * Control group may or may not be active in roster.
   734      * Control group may or may not be active in roster.
   716      *
   735      *
   717      * @param aWindowGroupNodeId Node id of the window group, internal.
   736      * @param aWindowGroupNodeId Node id of the window group, internal.
   718      */
   737      */
   719     CHuiControlGroup* FindControlGroup(TInt aWindowGroupNodeId, TInt aScreenNumber );
   738     CHuiControlGroup* FindControlGroup(TInt aWindowGroupNodeId, TInt aScreenNumber = 0);
   720 
   739 
   721     /**
   740     /**
   722      * This method finds controlgroup which has been assosiated with window server window group id. 
   741      * This method finds controlgroup which has been assosiated with window server window group id. 
   723      *
   742      *
   724      * @param aWindowGroupNodeId window server window group id of the window group, internal.
   743      * @param aWindowGroupNodeId window server window group id of the window group, internal.
   738      * @param aSecureId Secure ID to seacrh for
   757      * @param aSecureId Secure ID to seacrh for
   739      * @param aWgId Client window group ID. Ignored if -1.
   758      * @param aWgId Client window group ID. Ignored if -1.
   740      * @return Pointer to found control gruop. NULL if not found.
   759      * @return Pointer to found control gruop. NULL if not found.
   741      */
   760      */
   742     CHuiControlGroup* FindControlGroupBySecureId( TInt aSecureId, TInt aWgId = -1 ) const;
   761     CHuiControlGroup* FindControlGroupBySecureId( TInt aSecureId, TInt aWgId = -1 ) const;
       
   762 	 /**
       
   763 	  *	FindControlGroupBySecureId
       
   764 	  *
       
   765 	  *	Returns a list of window groups belonging to aSecureId.
       
   766 	  */
       
   767     void FindControlGroupBySecureId( TInt aSecureId, RPointerArray<CHuiControlGroup>& aGroupList);
   743     
   768     
   744     /**
   769     /**
   745      * Finds control gruop which matches the full screen effect end state.
   770      * Finds control gruop which matches the full screen effect end state.
   746      * 
   771      * 
   747      * @return Pointer to found control gruop. NULL if not found.
   772      * @return Pointer to found control gruop. NULL if not found.
   759      * This method deletes controlgroup which has been assosiated with given window group id. 
   784      * This method deletes controlgroup which has been assosiated with given window group id. 
   760      * Control group may or may not be active in roster.
   785      * Control group may or may not be active in roster.
   761      *
   786      *
   762      * @param aWindowGroupNodeId Node id of the window group, internal.
   787      * @param aWindowGroupNodeId Node id of the window group, internal.
   763      */
   788      */
   764     void DeleteControlGroupL(TInt aWindowGroupNodeId, TInt aScreenNumber );
   789     void DeleteControlGroupL(TInt aWindowGroupNodeId, TInt aScreenNumber = 0);
   765 
   790 
   766     /**
   791     /**
   767      * Creates a control group
   792      * Creates a control group
   768      *
   793      *
   769      * @param aWindowGroupNodeId Node id of the window group, internal.
   794      * @param aWindowGroupNodeId Node id of the window group, internal.
   785      * This method reorders alf controlgroups to just above alf servers
   810      * This method reorders alf controlgroups to just above alf servers
   786      * windowgroup.
   811      * windowgroup.
   787      * 
   812      * 
   788      */
   813      */
   789 
   814 
   790     void ReorderAlfControlGroupsL( TInt aScreenNumber );
   815     void ReorderAlfControlGroupsL( TInt aScreenNumber = 0);
   791         
   816         
   792     /**
   817     /**
   793      * Called to notify the observer that a display refresh is about to begin.
   818      * Called to notify the observer that a display refresh is about to begin.
   794      * The observer should prepare its state for the display.
   819      * The observer should prepare its state for the display.
   795      */
   820      */
  1007         TInt32 iClientSideId;
  1032         TInt32 iClientSideId;
  1008         TInt32 iClientSideGroupId;
  1033         TInt32 iClientSideGroupId;
  1009         };
  1034         };
  1010     
  1035     
  1011     RHashMap<TUint32,THashVisualStruct> iWindowHashArray;
  1036     RHashMap<TUint32,THashVisualStruct> iWindowHashArray;
       
  1037     
       
  1038     class TChainData
       
  1039         {
       
  1040     public:
       
  1041         TChainData(TUint32 aParent, TUint32 aChainee) : iParent(aParent), iChainee(aChainee)
       
  1042             {
       
  1043             }
       
  1044         TUint32 iParent;
       
  1045         TUint32 iChainee;
       
  1046         };
       
  1047     RHashMap<TUint32,TChainData> iWindowChainsArray;
       
  1048     
  1012     CHuiControl* iOrphanStorage; // owned. holds the visuals which are orphaned from their control group
  1049     CHuiControl* iOrphanStorage; // owned. holds the visuals which are orphaned from their control group
  1013     class TRegisteredEffectsStruct
  1050     class TRegisteredEffectsStruct
  1014         {
  1051         {
  1015     public:
  1052     public:
  1016         TRegisteredEffectsStruct()
  1053         TRegisteredEffectsStruct()