65 lines
2.9 KiB
Markdown
65 lines
2.9 KiB
Markdown
|
|
# بهروزرسانی CalendarSwitcher - اضافه شدن به صفحات اصلی
|
|||
|
|
|
|||
|
|
## خلاصه تغییرات
|
|||
|
|
CalendarSwitcher با موفقیت به صفحه ورود (LoginPage) و داشبورد (ProfileShell) اضافه شد.
|
|||
|
|
|
|||
|
|
## فایلهای تغییر یافته
|
|||
|
|
|
|||
|
|
### 1. LoginPage (`lib/pages/login_page.dart`)
|
|||
|
|
- ✅ اضافه شدن import های مورد نیاز
|
|||
|
|
- ✅ اضافه شدن CalendarController به constructor
|
|||
|
|
- ✅ اضافه شدن AppBar با CalendarSwitcher و LanguageSwitcher
|
|||
|
|
- ✅ ترتیب: CalendarSwitcher → LanguageSwitcher
|
|||
|
|
|
|||
|
|
### 2. ProfileShell (`lib/pages/profile/profile_shell.dart`)
|
|||
|
|
- ✅ اضافه شدن import های مورد نیاز
|
|||
|
|
- ✅ اضافه شدن CalendarController به constructor
|
|||
|
|
- ✅ اضافه شدن CalendarSwitcher به AppBar actions
|
|||
|
|
- ✅ ترتیب: CalendarSwitcher → LanguageSwitcher → ThemeModeSwitcher
|
|||
|
|
- ✅ رفع خطای deprecated (surfaceVariant → surfaceContainerHighest)
|
|||
|
|
|
|||
|
|
### 3. Main.dart (`lib/main.dart`)
|
|||
|
|
- ✅ بهروزرسانی LoginPage route برای ارسال CalendarController
|
|||
|
|
- ✅ بهروزرسانی ProfileShell route برای ارسال CalendarController
|
|||
|
|
|
|||
|
|
## ویژگیهای پیادهسازی شده
|
|||
|
|
|
|||
|
|
### ✅ صفحه ورود (LoginPage)
|
|||
|
|
- AppBar با عنوان برنامه
|
|||
|
|
- CalendarSwitcher در سمت راست
|
|||
|
|
- LanguageSwitcher در کنار CalendarSwitcher
|
|||
|
|
- طراحی responsive و زیبا
|
|||
|
|
|
|||
|
|
### ✅ داشبورد (ProfileShell)
|
|||
|
|
- AppBar با لوگو و عنوان برنامه
|
|||
|
|
- CalendarSwitcher در actions
|
|||
|
|
- LanguageSwitcher در کنار CalendarSwitcher
|
|||
|
|
- ThemeModeSwitcher در انتها
|
|||
|
|
- LogoutButton در انتهای actions
|
|||
|
|
|
|||
|
|
## ترتیب نمایش در AppBar
|
|||
|
|
1. **CalendarSwitcher** - انتخاب نوع تقویم (میلادی/شمسی)
|
|||
|
|
2. **LanguageSwitcher** - انتخاب زبان (فارسی/انگلیسی)
|
|||
|
|
3. **ThemeModeSwitcher** - انتخاب تم (فقط در ProfileShell)
|
|||
|
|
4. **LogoutButton** - خروج (فقط در ProfileShell)
|
|||
|
|
|
|||
|
|
## تست و بررسی
|
|||
|
|
- ✅ Flutter analyze بدون خطای critical
|
|||
|
|
- ✅ تمام import ها صحیح
|
|||
|
|
- ✅ Constructor ها بهروزرسانی شده
|
|||
|
|
- ✅ UI responsive و زیبا
|
|||
|
|
- ✅ ترتیب منطقی در AppBar
|
|||
|
|
|
|||
|
|
## نحوه استفاده
|
|||
|
|
کاربران حالا میتوانند در تمام صفحات اصلی (ورود، خانه، داشبورد) نوع تقویم مورد نظر خود را انتخاب کنند:
|
|||
|
|
|
|||
|
|
1. **صفحه ورود**: CalendarSwitcher در AppBar بالای فرم ورود
|
|||
|
|
2. **صفحه خانه**: CalendarSwitcher در AppBar کنار LanguageSwitcher
|
|||
|
|
3. **داشبورد**: CalendarSwitcher در AppBar کنار سایر کنترلها
|
|||
|
|
|
|||
|
|
## نکات مهم
|
|||
|
|
- CalendarSwitcher در تمام صفحات در دسترس است
|
|||
|
|
- انتخاب کاربر در SharedPreferences ذخیره میشود
|
|||
|
|
- تغییر تقویم به صورت سراسری اعمال میشود
|
|||
|
|
- طراحی یکپارچه و زیبا در تمام صفحات
|