732 switch (nodeType) |
732 switch (nodeType) |
733 { |
733 { |
734 case MWsWindowTreeNode::EWinTreeNodeClient: |
734 case MWsWindowTreeNode::EWinTreeNodeClient: |
735 { |
735 { |
736 node = CAlfNodeWindow::NewL( this, iStream, iScreenNumber ); |
736 node = CAlfNodeWindow::NewL( this, iStream, iScreenNumber ); |
|
737 |
|
738 #ifdef __WINS__ |
|
739 if (++iDebug_CheckNodeTableItegrityCounter > 100) // Do not check too often as is can be slow |
|
740 { |
|
741 Debug_CheckNodeTableItegrity(_L("CAlfHierarchyModel::DoNodeCreatedL")); |
|
742 } |
|
743 #endif |
|
744 |
737 break; |
745 break; |
738 } |
746 } |
739 case MWsWindowTreeNode::EWinTreeNodeRoot: |
747 case MWsWindowTreeNode::EWinTreeNodeRoot: |
740 { |
748 { |
741 node = CAlfNodeRoot::NewL( this ,iStream, iScreenNumber ); |
749 node = CAlfNodeRoot::NewL( this ,iStream, iScreenNumber ); |
795 } |
803 } |
796 #endif |
804 #endif |
797 |
805 |
798 AMT_INC_COUNTER_IF(node && (nodeType==MWsWindowTreeNode::EWinTreeNodeClient), iWindowNodeCount ); |
806 AMT_INC_COUNTER_IF(node && (nodeType==MWsWindowTreeNode::EWinTreeNodeClient), iWindowNodeCount ); |
799 AMT_INC_COUNTER_IF(node && (nodeType==MWsWindowTreeNode::EWinTreeNodeGroup), iWindowGroupNodeCount ); |
807 AMT_INC_COUNTER_IF(node && (nodeType==MWsWindowTreeNode::EWinTreeNodeGroup), iWindowGroupNodeCount ); |
800 AMT_INC_COUNTER_IF(node, iTotalNodeCount ); |
808 AMT_INC_COUNTER_IF(node, iTotalNodeCount ); |
|
809 |
|
810 AMT_MAP_INC_VALUE_IF( node && nodeType == MWsWindowTreeNode::EWinTreeNodeClient, |
|
811 iIntMap, node->iId, EAlfModuleTestTypeHierarchyModelCreateWindow ); |
|
812 AMT_MAP_INC_VALUE_IF( node && nodeType == MWsWindowTreeNode::EWinTreeNodeGroup, |
|
813 iIntMap, node->iId, EAlfModuleTestTypeHierarchyModelCreateWindowGroup ); |
801 } |
814 } |
802 |
815 |
803 // --------------------------------------------------------------------------- |
816 // --------------------------------------------------------------------------- |
804 // DoNodeReleasedL |
817 // DoNodeReleasedL |
805 // --------------------------------------------------------------------------- |
818 // --------------------------------------------------------------------------- |
828 USER_INVARIANT(); |
841 USER_INVARIANT(); |
829 } |
842 } |
830 |
843 |
831 AMT_DEC_COUNTER_IF(node && (nodeType==MWsWindowTreeNode::EWinTreeNodeClient), iWindowNodeCount ); |
844 AMT_DEC_COUNTER_IF(node && (nodeType==MWsWindowTreeNode::EWinTreeNodeClient), iWindowNodeCount ); |
832 AMT_DEC_COUNTER_IF(node && (nodeType==MWsWindowTreeNode::EWinTreeNodeGroup), iWindowGroupNodeCount ); |
845 AMT_DEC_COUNTER_IF(node && (nodeType==MWsWindowTreeNode::EWinTreeNodeGroup), iWindowGroupNodeCount ); |
833 AMT_DEC_COUNTER_IF(node, iTotalNodeCount ); |
846 AMT_DEC_COUNTER_IF(node, iTotalNodeCount ); |
|
847 |
|
848 AMT_MAP_INC_VALUE_IF( node && nodeType == MWsWindowTreeNode::EWinTreeNodeClient, |
|
849 iIntMap, nodeId, EAlfModuleTestTypeHierarchyModelReleaseWindow ); |
|
850 AMT_MAP_INC_VALUE_IF( node && nodeType == MWsWindowTreeNode::EWinTreeNodeGroup, |
|
851 iIntMap, nodeId, EAlfModuleTestTypeHierarchyModelReleaseWindowGroup ); |
834 } |
852 } |
835 |
853 |
836 // --------------------------------------------------------------------------- |
854 // --------------------------------------------------------------------------- |
837 // DoNodeActivatedL |
855 // DoNodeActivatedL |
838 // --------------------------------------------------------------------------- |
856 // --------------------------------------------------------------------------- |
849 else |
867 else |
850 { |
868 { |
851 USER_INVARIANT(); |
869 USER_INVARIANT(); |
852 } |
870 } |
853 |
871 |
854 AMT_INC_COUNTER_IF( node && (nodeType==MWsWindowTreeNode::EWinTreeNodeClient), iWindowNodeActivatedCount ); |
872 AMT_INC_COUNTER_IF( node && (nodeType==MWsWindowTreeNode::EWinTreeNodeClient), iWindowNodeActivatedCount ); |
|
873 |
|
874 AMT_MAP_SET_VALUE_IF( node && nodeType == MWsWindowTreeNode::EWinTreeNodeClient, |
|
875 iBoolMap, nodeId, ETrue, |
|
876 EAlfModuleTestTypeHierarchyModelActiveWindow ); |
855 } |
877 } |
856 |
878 |
857 // --------------------------------------------------------------------------- |
879 // --------------------------------------------------------------------------- |
858 // DoNodeExtentChangedL |
880 // DoNodeExtentChangedL |
859 // --------------------------------------------------------------------------- |
881 // --------------------------------------------------------------------------- |
882 } |
904 } |
883 #endif |
905 #endif |
884 |
906 |
885 AMT_INC_COUNTER_IF(node, iNodeExtentChangedCount ); |
907 AMT_INC_COUNTER_IF(node, iNodeExtentChangedCount ); |
886 AMT_SET_VALUE_IF(node, iLatestNodeExtentRect, rect ); |
908 AMT_SET_VALUE_IF(node, iLatestNodeExtentRect, rect ); |
887 AMT_MAP_SET_VALUE_IF( ( node && node->iWindow ), |
909 AMT_MAP_SET_VALUE_IF( node && node->iWindow, |
888 iSizeMap, node->iWindow->WsInfo().iClientSideId.iWindowIdentifer, |
910 iSizeMap, node->iWindow->WsInfo().iClientSideId.iWindowIdentifer, |
889 rect.Size(), EAlfModuleTestTypeHierarchyModelChangeSize ); |
911 rect.Size(), EAlfModuleTestTypeHierarchyModelChangeWindowSize ); |
890 AMT_MAP_SET_VALUE_IF( ( node && node->iWindow ), |
912 AMT_MAP_SET_VALUE_IF( node && node->iWindow, |
891 iPositionMap, node->iWindow->WsInfo().iClientSideId.iWindowIdentifer, |
913 iPositionMap, node->iWindow->WsInfo().iClientSideId.iWindowIdentifer, |
892 rect.iTl, EAlfModuleTestTypeHierarchyModelChangePosition ); |
914 rect.iTl, EAlfModuleTestTypeHierarchyModelChangeWindowPosition ); |
893 } |
915 } |
894 |
916 |
895 // --------------------------------------------------------------------------- |
917 // --------------------------------------------------------------------------- |
896 // DoNodeSiblingOrderChangedL |
918 // DoNodeSiblingOrderChangedL |
897 // --------------------------------------------------------------------------- |
919 // --------------------------------------------------------------------------- |
949 { |
971 { |
950 USER_INVARIANT(); |
972 USER_INVARIANT(); |
951 } |
973 } |
952 |
974 |
953 AMT_INC_COUNTER_IF(node, iTotalNodeFlagChangedCount ); |
975 AMT_INC_COUNTER_IF(node, iTotalNodeFlagChangedCount ); |
954 AMT_MAP_INC_VALUE_IF( ( node && node->iWindow ), |
976 AMT_MAP_SET_VALUE_IF( node && node->iWindow && MWsWindowTreeObserver::EVisible == flag, |
955 iIntMap, node->iWindow->WsInfo().iClientSideId.iWindowIdentifer, |
977 iBoolMap, |
956 EAlfModuleTestTypeHierarchyModelChangeFlag ); |
978 node->iWindow->WsInfo().iClientSideId.iWindowIdentifer, |
|
979 newValue, |
|
980 EAlfModuleTestTypeHierarchyModelChangeWindowVisibility ); |
957 } |
981 } |
958 |
982 |
959 // --------------------------------------------------------------------------- |
983 // --------------------------------------------------------------------------- |
960 // DoNodeFadeAllChildrenL |
984 // DoNodeFadeAllChildrenL |
961 // --------------------------------------------------------------------------- |
985 // --------------------------------------------------------------------------- |
1150 else |
1174 else |
1151 { |
1175 { |
1152 USER_INVARIANT(); // attribute change for unexpected node type. new code needed! |
1176 USER_INVARIANT(); // attribute change for unexpected node type. new code needed! |
1153 } |
1177 } |
1154 |
1178 |
1155 AMT_INC_COUNTER_IF(node, iTotalNodeAttributeChangedCount ); |
1179 AMT_INC_COUNTER_IF(node, iTotalNodeAttributeChangedCount ); |
1156 } |
1180 } |
1157 |
1181 |
1158 // --------------------------------------------------------------------------- |
1182 // --------------------------------------------------------------------------- |
1159 // DoNodeAttributeChangedL |
1183 // DoNodeAttributeChangedL |
1160 // --------------------------------------------------------------------------- |
1184 // --------------------------------------------------------------------------- |
1269 __ALFLOGSTRING1("CAlfHierarchyModel::PostBufferL endMarker: %d ", packetState); |
1293 __ALFLOGSTRING1("CAlfHierarchyModel::PostBufferL endMarker: %d ", packetState); |
1270 break; |
1294 break; |
1271 } |
1295 } |
1272 } |
1296 } |
1273 } |
1297 } |
1274 |
1298 |
1275 |
1299 |
|
1300 #ifdef __WINS__ |
|
1301 // --------------------------------------------------------------------------- |
|
1302 // |
|
1303 // --------------------------------------------------------------------------- |
|
1304 // |
|
1305 void CAlfHierarchyModel::Debug_CheckNodeTableItegrity(const TDesC16& aContext) |
|
1306 { |
|
1307 iDebug_CheckNodeTableItegrityCounter = 0; |
|
1308 |
|
1309 // Loop through the all items |
|
1310 TInt count = 0; |
|
1311 THashMapIter <TUint32,CNodeHashStruct> ptrHashSetIter(iNodeHashArray); |
|
1312 for ( ; ; ) |
|
1313 { |
|
1314 const CNodeHashStruct* resNext = ptrHashSetIter.NextValue(); |
|
1315 if (!resNext) |
|
1316 { |
|
1317 break; |
|
1318 } |
|
1319 count++; |
|
1320 if (resNext->iNode->Type() == MWsWindowTreeNode::EWinTreeNodeClient) |
|
1321 { |
|
1322 resNext->iNode->Debug_CheckSiblingOrder(aContext); |
|
1323 } |
|
1324 } |
|
1325 } |
|
1326 #endif |
|
1327 |
|
1328 |
|
1329 |