QuranPagesScreen constructor
const
QuranPagesScreen({
- Key? key,
- PreferredSizeWidget? appBar,
- Color? ayahIconColor,
- Color? ayahSelectedBackgroundColor,
- Color? ayahSelectedFontColor,
- BannerStyle? bannerStyle,
- BasmalaStyle? basmalaStyle,
- Color? backgroundColor,
- List bookmarkList = const [],
- Color? bookmarksColor,
- Color? customBookmarksColor()?,
- Widget? circularProgressWidget,
- DownloadFontsDialogStyle? downloadFontsDialogStyle,
- bool isDark = false,
- String? appLanguageCode,
- void onAyahLongPress(
- LongPressStartDetails details,
- AyahModel ayah
- dynamic onPageChanged(
- int pageNumber
- VoidCallback? onPagePress,
- void onSurahBannerPress(
- SurahNamesModel surah
- bool showAyahBookmarkedIcon = true,
- SurahInfoStyle? surahInfoStyle,
- SurahNameStyle? surahNameStyle,
- int? surahNumber,
- Color? textColor,
- List<
Color?> ? singleAyahTextColors, - bool useDefaultAppBar = true,
- bool withPageView = true,
- bool? isFontsLocal = false,
- String? fontsName = '',
- List<
int> ? ayahBookmarked = const [], - bool isAyahBookmarked(
- AyahModel ayah
- AyahAudioStyle? ayahStyle,
- SurahAudioStyle? surahStyle,
- bool? isShowAudioSlider = true,
- String? appIconUrlForPlayAudioInBackground,
- QuranTopBarStyle? topBarStyle,
- TajweedMenuStyle? tajweedMenuStyle,
- int? page,
- int? startPage,
- int? endPage,
- bool enableMultiSelect = false,
- List<
int> highlightedAyahs = const [], - Map<
int, List< highlightedAyahNumbersBySurah = const {},int> > - List<
({List< highlightedAyahNumbersInPages = const [],int> ayahs, int end, int start})> - List<
({int endAyah, int endSurah, int startAyah, int startSurah})> highlightedRanges = const [], - List<
String> highlightedRangesText = const [], - required BuildContext parentContext,
- IndexTabStyle? indexTabStyle,
- SearchTabStyle? searchTabStyle,
- AyahMenuStyle? ayahLongClickStyle,
- TafsirStyle? tafsirStyle,
- AyahDownloadManagerStyle? ayahDownloadManagerStyle,
- TopBottomQuranStyle? topBottomQuranStyle,
- SnackBarStyle? snackBarStyle,
- AyahMenuStyle? ayahMenuStyle,
- BookmarksTabStyle? bookmarksTabStyle,
- WordInfoBottomSheetStyle? wordInfoBottomSheetStyle,
Implementation
const QuranPagesScreen({
super.key,
// التخصيص العام
this.appBar,
this.ayahIconColor,
this.ayahSelectedBackgroundColor,
this.ayahSelectedFontColor,
this.bannerStyle,
this.basmalaStyle,
this.backgroundColor,
this.bookmarkList = const [],
this.bookmarksColor,
this.customBookmarksColor,
this.circularProgressWidget,
this.downloadFontsDialogStyle,
this.isDark = false,
this.appLanguageCode,
this.onAyahLongPress,
this.onPageChanged,
this.onPagePress,
this.onSurahBannerPress,
this.showAyahBookmarkedIcon = true,
this.surahInfoStyle,
this.surahNameStyle,
this.surahNumber,
this.textColor,
this.singleAyahTextColors,
this.useDefaultAppBar = true,
this.withPageView = true,
this.isFontsLocal = false,
this.fontsName = '',
this.ayahBookmarked = const [],
this.isAyahBookmarked,
this.ayahStyle,
this.surahStyle,
this.isShowAudioSlider = true,
this.appIconUrlForPlayAudioInBackground,
this.topBarStyle,
this.tajweedMenuStyle,
// تحديد الصفحات
this.page,
this.startPage,
this.endPage,
this.enableMultiSelect = false,
this.highlightedAyahs = const [],
this.highlightedAyahNumbersBySurah = const {},
this.highlightedAyahNumbersInPages = const [],
this.highlightedRanges = const [],
this.highlightedRangesText = const [],
required this.parentContext,
this.indexTabStyle,
this.searchTabStyle,
this.ayahLongClickStyle,
this.tafsirStyle,
this.ayahDownloadManagerStyle,
this.topBottomQuranStyle,
this.snackBarStyle,
this.ayahMenuStyle,
this.bookmarksTabStyle,
this.wordInfoBottomSheetStyle,
}) : assert(
(page != null && startPage == null && endPage == null) ||
(page == null && (startPage != null || endPage != null)),
'حدد إما page لصفحة واحدة أو startPage/endPage لنطاق صفحات',
);