681 |
663 |
682 } |
664 } |
683 |
665 |
684 // -------------------------------------------------------------------------------------------- |
666 // -------------------------------------------------------------------------------------------- |
685 |
667 |
686 /*CAknIconArray* CFileBrowserFileUtils::GenerateIconArrayL(TBool aGenerateNewBasicIconArray) |
668 //CAknIconArray* CFileBrowserFileUtils::GenerateIconArrayL(TBool aGenerateNewBasicIconArray) |
687 { |
669 // { |
688 // TODO |
670 // // TODO |
689 |
671 // |
690 CAknIconArray* iconArray = NULL; |
672 // CAknIconArray* iconArray = NULL; |
691 |
673 // |
692 if (aGenerateNewBasicIconArray) |
674 // if (aGenerateNewBasicIconArray) |
693 { |
675 // { |
694 iconArray = new(ELeave) CAknIconArray(16); |
676 // iconArray = new(ELeave) CAknIconArray(16); |
695 } |
677 // } |
696 else |
678 // else |
697 { |
679 // { |
698 if (iEngine->FileListContainer()) |
680 // if (iEngine->FileListContainer()) |
699 iconArray = iEngine->FileListContainer()->ListBoxIconArrayL(); |
681 // iconArray = iEngine->FileListContainer()->ListBoxIconArrayL(); |
700 |
682 // |
701 if (!iconArray) |
683 // if (!iconArray) |
702 iconArray = new(ELeave) CAknIconArray(16); |
684 // iconArray = new(ELeave) CAknIconArray(16); |
703 } |
685 // } |
704 |
686 // |
705 |
687 // |
706 CleanupStack::PushL(iconArray); |
688 // CleanupStack::PushL(iconArray); |
707 |
689 // |
708 // generate basic items if not already existing |
690 // // generate basic items if not already existing |
709 if (iconArray->Count() < EFixedIconListLength) |
691 // if (iconArray->Count() < EFixedIconListLength) |
710 { |
692 // { |
711 // reset arrays |
693 // // reset arrays |
712 iconArray->Reset(); |
694 // iconArray->Reset(); |
713 iAppIconList->Reset(); |
695 // iAppIconList->Reset(); |
714 |
696 // |
715 // get default control color |
697 // // get default control color |
716 TRgb defaultColor; |
698 // TRgb defaultColor; |
717 defaultColor = iEngine->EikonEnv()->Color(EColorControlText); |
699 // defaultColor = iEngine->EikonEnv()->Color(EColorControlText); |
718 |
700 // |
719 // create a color icon of the marking indicator |
701 // // create a color icon of the marking indicator |
720 CFbsBitmap* markBitmap = NULL; |
702 // CFbsBitmap* markBitmap = NULL; |
721 CFbsBitmap* markBitmapMask = NULL; |
703 // CFbsBitmap* markBitmapMask = NULL; |
722 |
704 // |
723 AknsUtils::CreateColorIconL(AknsUtils::SkinInstance(), |
705 // AknsUtils::CreateColorIconL(AknsUtils::SkinInstance(), |
724 KAknsIIDQgnIndiMarkedAdd, |
706 // KAknsIIDQgnIndiMarkedAdd, |
725 KAknsIIDQsnIconColors, |
707 // KAknsIIDQsnIconColors, |
726 EAknsCIQsnIconColorsCG13, |
708 // EAknsCIQsnIconColorsCG13, |
727 markBitmap, |
709 // markBitmap, |
728 markBitmapMask, |
710 // markBitmapMask, |
729 AknIconUtils::AvkonIconFileName(), |
711 // AknIconUtils::AvkonIconFileName(), |
730 EMbmAvkonQgn_indi_marked_add, |
712 // EMbmAvkonQgn_indi_marked_add, |
731 EMbmAvkonQgn_indi_marked_add_mask, |
713 // EMbmAvkonQgn_indi_marked_add_mask, |
732 defaultColor |
714 // defaultColor |
733 ); |
715 // ); |
734 |
716 // |
735 // 0 marking indicator |
717 // // 0 marking indicator |
736 CGulIcon* markIcon = CGulIcon::NewL(markBitmap, markBitmapMask); |
718 // CGulIcon* markIcon = CGulIcon::NewL(markBitmap, markBitmapMask); |
737 iconArray->AppendL(markIcon); |
719 // iconArray->AppendL(markIcon); |
738 |
720 // |
739 // 1 empty |
721 // // 1 empty |
740 AppendGulIconToIconArrayL(iconArray, AknIconUtils::AvkonIconFileName(), |
722 // AppendGulIconToIconArrayL(iconArray, AknIconUtils::AvkonIconFileName(), |
741 EMbmAvkonQgn_prop_empty, EMbmAvkonQgn_prop_empty_mask, KAknsIIDQgnPropEmpty); |
723 // EMbmAvkonQgn_prop_empty, EMbmAvkonQgn_prop_empty_mask, KAknsIIDQgnPropEmpty); |
742 // 2 phone memory |
724 // // 2 phone memory |
743 AppendGulIconToIconArrayL(iconArray, AknIconUtils::AvkonIconFileName(), |
725 // AppendGulIconToIconArrayL(iconArray, AknIconUtils::AvkonIconFileName(), |
744 EMbmAvkonQgn_prop_phone_memc, EMbmAvkonQgn_prop_phone_memc_mask, KAknsIIDQgnPropPhoneMemc); |
726 // EMbmAvkonQgn_prop_phone_memc, EMbmAvkonQgn_prop_phone_memc_mask, KAknsIIDQgnPropPhoneMemc); |
745 // 3 memory card |
727 // // 3 memory card |
746 AppendGulIconToIconArrayL(iconArray, KMemoryCardUiBitmapFile, |
728 // AppendGulIconToIconArrayL(iconArray, KMemoryCardUiBitmapFile, |
747 EMbmAknmemorycarduiQgn_prop_mmc_memc, EMbmAknmemorycarduiQgn_prop_mmc_memc_mask, KAknsIIDQgnPropMmcMemc); |
729 // EMbmAknmemorycarduiQgn_prop_mmc_memc, EMbmAknmemorycarduiQgn_prop_mmc_memc_mask, KAknsIIDQgnPropMmcMemc); |
748 // 4 memory card disabled |
730 // // 4 memory card disabled |
749 AppendGulIconToIconArrayL(iconArray, KMemoryCardUiBitmapFile, |
731 // AppendGulIconToIconArrayL(iconArray, KMemoryCardUiBitmapFile, |
750 EMbmAknmemorycarduiQgn_prop_mmc_non, EMbmAknmemorycarduiQgn_prop_mmc_non_mask, KAknsIIDQgnPropMmcNon); |
732 // EMbmAknmemorycarduiQgn_prop_mmc_non, EMbmAknmemorycarduiQgn_prop_mmc_non_mask, KAknsIIDQgnPropMmcNon); |
751 // 5 folder |
733 // // 5 folder |
752 AppendGulIconToIconArrayL(iconArray, AknIconUtils::AvkonIconFileName(), |
734 // AppendGulIconToIconArrayL(iconArray, AknIconUtils::AvkonIconFileName(), |
753 EMbmAvkonQgn_prop_folder_small, EMbmAvkonQgn_prop_folder_small_mask, KAknsIIDQgnPropFolderSmall); |
735 // EMbmAvkonQgn_prop_folder_small, EMbmAvkonQgn_prop_folder_small_mask, KAknsIIDQgnPropFolderSmall); |
754 // 6 folder with subfolders |
736 // // 6 folder with subfolders |
755 AppendGulIconToIconArrayL(iconArray, AknIconUtils::AvkonIconFileName(), |
737 // AppendGulIconToIconArrayL(iconArray, AknIconUtils::AvkonIconFileName(), |
756 EMbmAvkonQgn_prop_folder_sub_small, EMbmAvkonQgn_prop_folder_sub_small_mask, KAknsIIDQgnPropFolderSubSmall); |
738 // EMbmAvkonQgn_prop_folder_sub_small, EMbmAvkonQgn_prop_folder_sub_small_mask, KAknsIIDQgnPropFolderSubSmall); |
757 // 7 current folder |
739 // // 7 current folder |
758 AppendGulIconToIconArrayL(iconArray, AknIconUtils::AvkonIconFileName(), |
740 // AppendGulIconToIconArrayL(iconArray, AknIconUtils::AvkonIconFileName(), |
759 EMbmAvkonQgn_prop_folder_current, EMbmAvkonQgn_prop_folder_current_mask, KAknsIIDQgnPropFolderCurrent); |
741 // EMbmAvkonQgn_prop_folder_current, EMbmAvkonQgn_prop_folder_current_mask, KAknsIIDQgnPropFolderCurrent); |
760 } |
742 // } |
761 |
743 // |
762 // append custom icons if not in drive list view and setting is enabled |
744 // // append custom icons if not in drive list view and setting is enabled |
763 if (!aGenerateNewBasicIconArray && !IsDriveListViewActive() && iEngine->Settings().iShowAssociatedIcons) |
745 // if (!aGenerateNewBasicIconArray && !IsDriveListViewActive() && iEngine->Settings().iShowAssociatedIcons) |
764 { |
746 // { |
765 // init id counter |
747 // // init id counter |
766 TInt idCounter(EFixedIconListLength + iAppIconList->Count()); |
748 // TInt idCounter(EFixedIconListLength + iAppIconList->Count()); |
767 |
749 // |
768 // loop all items in the file list |
750 // // loop all items in the file list |
769 for (TInt i=0; i<iFileEntryList->Count(); i++) |
751 // for (TInt i=0; i<iFileEntryList->Count(); i++) |
770 { |
752 // { |
771 TFileEntry& fileEntry = iFileEntryList->At(i); |
753 // TFileEntry& fileEntry = iFileEntryList->At(i); |
772 |
754 // |
773 // just check for normal files |
755 // // just check for normal files |
774 if (!fileEntry.iEntry.IsDir()) |
756 // if (!fileEntry.iEntry.IsDir()) |
775 { |
757 // { |
776 TUid appUid = GetAppUid(fileEntry); |
758 // TUid appUid = GetAppUid(fileEntry); |
777 TInt iconId = AppIconIdForUid(appUid); |
759 // TInt iconId = AppIconIdForUid(appUid); |
778 |
760 // |
779 if (appUid != KNullUid && iconId == KErrNotFound) |
761 // if (appUid != KNullUid && iconId == KErrNotFound) |
780 { |
762 // { |
781 // icon not found from the icon array, generate it |
763 // // icon not found from the icon array, generate it |
782 CFbsBitmap* bitmap = NULL; |
764 // CFbsBitmap* bitmap = NULL; |
783 CFbsBitmap* mask = NULL; |
765 // CFbsBitmap* mask = NULL; |
784 CGulIcon* appIcon = NULL; |
766 // CGulIcon* appIcon = NULL; |
785 |
767 // |
786 TRAPD(err, |
768 // TRAPD(err, |
787 AknsUtils::CreateAppIconLC(AknsUtils::SkinInstance(), appUid, EAknsAppIconTypeList, bitmap, mask); |
769 // AknsUtils::CreateAppIconLC(AknsUtils::SkinInstance(), appUid, EAknsAppIconTypeList, bitmap, mask); |
788 appIcon = CGulIcon::NewL(bitmap, mask); |
770 // appIcon = CGulIcon::NewL(bitmap, mask); |
789 CleanupStack::Pop(2); //bitmap, mask |
771 // CleanupStack::Pop(2); //bitmap, mask |
790 ); |
772 // ); |
791 |
773 // |
792 if (err == KErrNone) |
774 // if (err == KErrNone) |
793 { |
775 // { |
794 TAppIcon appIconEntry; |
776 // TAppIcon appIconEntry; |
795 appIconEntry.iId = idCounter; |
777 // appIconEntry.iId = idCounter; |
796 appIconEntry.iUid = appUid; |
778 // appIconEntry.iUid = appUid; |
797 |
779 // |
798 appIcon->SetBitmapsOwnedExternally(EFalse); |
780 // appIcon->SetBitmapsOwnedExternally(EFalse); |
799 iconArray->AppendL(appIcon); |
781 // iconArray->AppendL(appIcon); |
800 iAppIconList->AppendL(appIconEntry); |
782 // iAppIconList->AppendL(appIconEntry); |
801 |
783 // |
802 fileEntry.iIconId = idCounter; |
784 // fileEntry.iIconId = idCounter; |
803 |
785 // |
804 idCounter++; |
786 // idCounter++; |
805 } |
787 // } |
806 else |
788 // else |
807 { |
789 // { |
808 delete bitmap; |
790 // delete bitmap; |
809 delete mask; |
791 // delete mask; |
810 |
792 // |
811 TAppIcon appIconEntry; |
793 // TAppIcon appIconEntry; |
812 appIconEntry.iId = EFixedIconEmpty; |
794 // appIconEntry.iId = EFixedIconEmpty; |
813 appIconEntry.iUid = appUid; |
795 // appIconEntry.iUid = appUid; |
814 |
796 // |
815 iAppIconList->AppendL(appIconEntry); |
797 // iAppIconList->AppendL(appIconEntry); |
816 } |
798 // } |
817 } |
799 // } |
818 |
800 // |
819 else if (appUid != KNullUid && iconId >= 0) |
801 // else if (appUid != KNullUid && iconId >= 0) |
820 { |
802 // { |
821 // we already have already generated an icon for this uid, use it |
803 // // we already have already generated an icon for this uid, use it |
822 fileEntry.iIconId = iconId; |
804 // fileEntry.iIconId = iconId; |
823 } |
805 // } |
824 } |
806 // } |
825 } |
807 // } |
826 } |
808 // } |
827 |
809 // |
828 CleanupStack::Pop(); //iconArray |
810 // CleanupStack::Pop(); //iconArray |
829 return iconArray; |
811 // return iconArray; |
830 |
812 // |
831 } |
813 // } |
832 */ |
814 // |
833 // -------------------------------------------------------------------------------------------- |
815 // -------------------------------------------------------------------------------------------- |
834 |
816 |
835 //void CFileBrowserFileUtils::AppendGulIconToIconArrayL(CAknIconArray* aIconArray, const TDesC& aIconFile, TInt aIconId, TInt aMaskId, const TAknsItemID aAknsItemId) |
817 //void CFileBrowserFileUtils::AppendGulIconToIconArrayL(CAknIconArray* aIconArray, const TDesC& aIconFile, TInt aIconId, TInt aMaskId, const TAknsItemID aAknsItemId) |
836 // { |
818 // { |
837 // CGulIcon* icon = AknsUtils::CreateGulIconL( |
819 // CGulIcon* icon = AknsUtils::CreateGulIconL( |