
%%%================%%%
%%%================%%%	
%%
%%   __________________________________
%%   Copyright © 2020-2026 RoostaTeX
%%  
%%       
%%%================%%%
%%%================%%%	
%\NeedsTeXFormat{LaTeX2e}
%\ProvidesClass{RoostaTeXthesis}
%              [20/2/2020 v1.
% 			Thesis [Math] class in XeLaTeX]
%\DeclareOption*{\PassOptionsToClass{\CurrentOption}{report}}
%\ProcessOptions
%\LoadClass[a4paper,12pt]{report}

%%%================%%%
%%%================%%%	

% در این فایل، فراخوانی بسته‌های مورد نیاز، آورده شده است.

\usepackage[numbers,sort&compress]{natbib}
\usepackage{tocloft}
\usepackage{amsmath}
\usepackage{amssymb}{\large}
\usepackage{amsthm, amscd,amsfonts}
\usepackage{mathrsfs}
\allowdisplaybreaks

\usepackage{setspace}
\usepackage{algorithm}
\usepackage{algpseudocode}
\usepackage{caption}
\usepackage{setspace}
%\usepackage{fontspec}

\usepackage{titlesec}
\usepackage{subfig}
%\usepackage{subfigure}
%\usepackage[subfigure]{tocloft}
\usepackage{float}
%============
\usepackage{eurosym}
\usepackage[mathscr]{euscript}
\usepackage{booktabs}

%============

\usepackage{listings}
%\usepackage{caption}
%\usepackage{lipsum}
%\usepackage{rotating}

\usepackage[]{geometry}
%\usepackage[top=30mm, bottom=30mm, 
%left=30mm, right=30mm,footskip=13mm]{geometry}


% بسته‌‌ای برای ظاهر شدن شکل‌ها و تصاویر متن
\usepackage{color,soul}
%\usepackage[usenames,dvipsnames]{color}
\usepackage[dvipsnames]{xcolor}
\usepackage{graphics}
\usepackage{graphicx}
\usepackage{epsfig}

%=================

\usepackage{tikz}
\usetikzlibrary{patterns,calc}
\usetikzlibrary{tikzmark}
\usepackage{tikz-qtree}
\usepackage{forest}
\usepackage{siunitx}
\usetikzlibrary{shapes.arrows}
\usetikzlibrary{math}
\usetikzlibrary{decorations.pathmorphing, shadows}
\usetikzlibrary{decorations.pathreplacing, calligraphy} 
\usetikzlibrary{decorations.pathreplacing, matrix}
\usetikzlibrary{arrows.meta}
\usetikzlibrary{positioning}
\usetikzlibrary{calc,arrows.meta}

\usepackage{eso-pic}

%=================
% بسته‌ای برای رسم کادر

\usepackage{framed} 
\setlength{\fboxsep}{7pt}

% بسته‌‌ای برای چاپ شدن خودکار تعداد صفحات در صفحه «معرفی پایان‌نامه»
\usepackage{lastpage}
% بسته‌ و دستوراتی برای ایجاد لینک‌های رنگی با امکان جهش
\usepackage[pagebackref=false,colorlinks,linkcolor=blue,citecolor=magenta]{hyperref}

% بسته‌ لازم برای تنظیم سربرگ‌ها
\usepackage{fancyhdr}
% بسته‌ای برای ظاهر شدن «مراجع» و «نمایه» در فهرست مطالب ولی بدون فهرست شکلها و ...
\usepackage[nottoc,notlof,notlot]{tocbibind}
% دستورات مربوط به ایجاد نمایه
\usepackage{makeidx}
\makeindex

\usepackage{longtable}
\usepackage{array}
\usepackage{multirow}
\usepackage{tabularx}
\usepackage{nicematrix}
\usepackage[table]{xcolor}


\usepackage[figurewithin=chapter, tablewithin=chapter]{caption}
\newfloat{Chart}{htbp}{chart}[chapter]
%\captionsetup[Chart]{name={نمودار}}
\captionsetup[Chart]{name={نمودار}, labelformat=simple, labelsep=period}
%\newcommand{\thehart}{\thechapter-\arabic{chart}}
%\makeatletter
%\g@addto@macro\endnewtable{\refstepcounter{table}}
%\g@addto@macro\endtable{\refstepcounter{newtable}}
%\makeatother


\usepackage{indentfirst}


%=================
% Footnote
%=================
%=================
%\makeatletter
%\def\LTRfootnote{\@ifnextchar[\@xLTRfootnote{\stepcounter\@mpfn
		%		\protected@xdef\@thefnmark{\persianfont\thempfn}%
		%		\@footnotemark\@LTRfootnotetext}}
%\makeatother

%\usepackage{etoolbox}
%\makeatletter
%\patchcmd{\@makefnmark}{\normalfont}{\persianfont}{}{}
%\makeatother

%\usepackage{zref-perpage}
%\zmakeperpage{footnote}
%=================
%the perpage package
\usepackage{perpage} 
\MakePerPage{footnote}
\renewcommand{\thefootnote}{\persianfont\arabic{footnote}}
%=================


%=================
% فراخوانی بسته زی‌پرشین فارسی
\usepackage[]{xepersian}
% %[perpagefootnote=on]
% [extrafootnotefeatures]
% [resetcounterperpage=footnote]


%============

%حذف نقطه بعد از قضیه، مثال و....
\makeatletter
\def\@begintheorem#1#2[#3]{%
	\deferred@thm@head{\the\thm@headfont \thm@indent
		\@ifempty{#1}{\let\thmname\@gobble}{\let\thmname\@iden}%
		\@ifempty{#2}{\let\thmnumber\@gobble}{\let\thmnumber\@iden}%
		\@ifempty{#3}{\let\thmnote\@gobble}{\let\thmnote\@iden}%
		\thm@swap\swappedhead\thmhead{#1}{#2}{#3}%
		%    \the\thm@headpunct
		\thmheadnl % possibly a newline.
		\hskip\thm@headsep
	}%
	\ignorespaces}
\makeatother




%دستور برای اضافه کردن کلمات  عنوان و صفحه به بالای  فهرست
\makeatletter
\renewcommand*\l@chapter[2]{%
	\ifnum \c@tocdepth >\m@ne
	\addpenalty{-\@highpenalty}%
	\vskip 1.0em \@plus\p@
	\setlength\@tempdima{1.5em}%
	\begingroup
	\parindent \z@ \if@RTL\leftskip\else\rightskip\fi \@pnumwidth
	\parfillskip -\@pnumwidth
	\leavevmode \bfseries
	\advance\if@RTL\rightskip\else\leftskip\fi\@tempdima
	\hskip -\if@RTL\rightskip\else\leftskip\fi
	#1\nobreak\leaders\hbox{$\m@th
		\mkern \@dotsep mu\hbox{.}\mkern \@dotsep
		mu$}\hfill \nobreak\hb@xt@\@pnumwidth{\hss #2}\par
	\penalty\@highpenalty
	\endgroup
	\fi}

\renewcommand\tableofcontents{
	\if@twocolumn
	\@restonecoltrue\onecolumn
	\else
	\@restonecolfalse
	\fi
	\centerline{\huge\bfseries\contentsname
		\@mkboth{%
			\MakeUppercase\contentsname}{\MakeUppercase\contentsname}}%
	\vskip 40\p@
	\@starttoc{toc}%
	\if@restonecol\twocolumn\fi
}

\renewcommand{\@starttoc}[1]{%
	\hboxR to \textwidth{{\bf عنوان} \hfill {\bf صفحه}}
	\begingroup
	\makeatletter
	\@input{\jobname.#1}%
	\if@filesw
	\expandafter\newwrite\csname tf@#1\endcsname
	\immediate\openout \csname tf@#1\endcsname \jobname.#1\relax
	\fi
	\@nobreakfalse
	\endgroup}

\makeatother

%%%%%%%%%%%%%%%%%%%%%%%%%%
%%دستور برای وسط چین شدن عنوان فصل‌ها
%\makeatletter
%\def\@makechapterhead#1{%
	%  \vspace*{50\p@}%
	%  {\parindent \z@ \centering\normalfont
		%    \ifnum \c@secnumdepth >\m@ne
		%      \if@mainmatter
		%        \huge\bfseries \@chapapp\space \thechapter
		%        \par\nobreak
		%        \vskip 20\p@
		%      \fi
		%    \fi
		%    \interlinepenalty\@M
		%    \Huge \bfseries #1\par\nobreak
		%    \vskip 40\p@
		%  }}
%\def\@makeschapterhead#1{%
	%  \vspace*{50\p@}%
	%  {\parindent \z@ \centering
		%    \normalfont
		%    \interlinepenalty\@M
		%    \Huge \bfseries  #1\par\nobreak
		%    \vskip 40\p@
		%  }}
%\makeatother

%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% دستورات اضافه کردن کلمه فصل به ابتدای شماره فصل در فهرست
\makeatletter \let\orig@chapter\@chapter
\def\@chapter[#1]#2{\ifnum \c@secnumdepth >\m@ne
	\if@mainmatter
	\refstepcounter{chapter}%
	\typeout{\@chapapp\space\thechapter.}%
	\addcontentsline{toc}{chapter}%
	{\@chapapp~\protect\numberline{\bfseries \thechapter:}#1}%
	\else
	\addcontentsline{toc}{\LARGE \bfseries chapter}{#1}%
	\fi
	\else 
	\addcontentsline{toc}{chapter}{#1}%
	\fi
	\chaptermark{#1}%
	\addtocontents{lof}{\protect\addvspace{10\p@}}%
	\addtocontents{lot}{\protect\addvspace{10\p@}}%
	\if@twocolumn
	\@topnewpage[\@makechapterhead{#2}]%
	\else 
	\@makechapterhead{#2}%
	\@afterheading
	\fi}
%\renewcommand*\l@section{\@dottedtocline{1}{3.5em}{2.3em}}

\renewcommand*\l@section{\@dottedtocline{1}{2em}{2.5em}}
\renewcommand*\l@subsection{\@dottedtocline{2}{3em}{3.7em}}
%\renewcommand*\l@subsubsection{\@dottedtocline{3}{5.8em}{3.2em}}
\makeatother

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% دستورهایی برای سفارشی کردن صفحات اول فصل‌ها
\makeatletter
\def\@makechapterhead#1{%
	\vspace*{50\p@}%
	{\parindent \z@ \centering\normalfont
		\ifnum \c@secnumdepth >\m@ne
		\if@mainmatter
		{\LARGE \bfseries \@chapapp\space \thechapter} 
		\par\nobreak
		\vskip 220\p@
		\fi
		\fi
		\interlinepenalty\@M 
		{\Huge \bfseries #1}  \thispagestyle{empty}\par\nobreak 
		\vskip 40\p@
		\newpage
		\thispagestyle{plain}
		\vspace*{50\p@}
		\par\nobreak
		\vskip 40\p@
}}
\def\@makeschapterhead#1{
	\vspace*{50\p@}
	{\parindent \z@ \centering
		\normalfont
		\interlinepenalty\@M
		\Huge \bfseries  #1\par\nobreak
		\vskip 40\p@
}}
\makeatother
%\SepMark{--}


%============
% صفحه‌آرایی و تنظیم خطوط در صفحه
%============

%%%برای فاصله خطوط و تعداد خط در صفحه
%\renewcommand{\baselinestretch}{2}
%\baselineskip=1.1cm
%%صفحات بدون سر برگ
\pagestyle{plain}

%============
%============





