Example #1
0
 private bool Elektrisches(Heft heft)
 {
     if (heft.KeysCode.Contains("E") || heft.KeysCode.Contains("e"))
     {
         return(true);
     }
     return(false);
 }
Example #2
0
 private void AddToIndexFehlend(Heft heft)
 {
     if (FehltImArchiv(heft))
     {
         if (Elektrisches(heft))
         {
             sbFehlendE.Append(heft.Signatur + " ");
             return;
         }
         sbFehlendA.Append(heft.Signatur + " ");
     }
 }
Example #3
0
 public void Add(Heft heft)
 {
     char[] codes = heft.KeysCode.ToCharArray();
     if (codes.Length == 0)
     {
         return;
     }
     foreach (var c in codes)
     {
         Increment(c);
     }
 }
Example #4
0
        public void Add(Heft heft)
        {
            int year = heft.Chronologie;

            if (year <= 0)
            {
                return;
            }
            if (chronoDict.ContainsKey(year))
            {
                string newValue = chronoDict[year] + " " + heft.Signatur;
                chronoDict[year] = newValue;
            }
            else
            {
                chronoDict[year] = heft.Signatur;
            }
        }
Example #5
0
        public Heft Consolidate()
        {
            Heft heft = new Heft();

            heft.Serie        = Serie;
            heft.Signatur     = ahSignatur.PrettyString;
            heft.Inhalt       = ahInhalt.Inhalt;
            heft.Jahr         = ahYear.AsString;
            heft.Status       = ahStatus.AsString;
            heft.Organisation = ahOrganisation.AsString;
            heft.KeysCode     = ahKeys.RawKeywordString;
            heft.Keys         = ahKeys.Keywords;
            heft.Beilagen     = ahBeilagen.Paragraphs;
            heft.Bearbeiter   = ahBearbeiter.Paragraphs;
            heft.Bemerkungen  = ahBemerkungen.Paragraphs;
            heft.Chronologie  = ahYear.AsNumber;
            heft.Markierung   = ahMarkierung.Markierung;
            return(heft);
        }
Example #6
0
 private bool FehltImArchiv(Heft heft)
 {
     return(!heft.Status.Contains("im Archiv."));
 }
Example #7
0
        public void AddHeft(Heft heft)
        {
            // wenn Datei bereits abgeschlossen, tue nichts.
            if (sourceFinalized == true)
            {
                return;
            }
            // zu welcher Serie gehörig?
            serie = heft.Serie;
            // create Preamble
            if (!preambleCreated)
            {
                CreatePreamble();
            }
            // Nehme Heft in Index fehlender Hefte auf
            AddToIndexFehlend(heft);
            // Nehme Heft ins Chronologisch Verzeichnis auf
            chronoIndex.Add(heft);
            // Nehme Heft ins Spezialverzeichnis auf
            spezialIndex.Add(heft);
            // Je nachdem aus welchen Verzeichnis entnommen, gibt es eine neue Überschrift
            InVerzeichnisHeft(heft.Signatur);
            // die Breiten der beiden minipages sollen der Signatur angepasst sein
            string leftMinipageFormat, rightMinipageFormat;

            switch (heft.Signatur.Length)
            {
            case 3:
                leftMinipageFormat  = @"\begin{minipage}[t]{0.1\textwidth}\vspace{0pt}";
                rightMinipageFormat = @"\begin{minipage}[t]{0.9\textwidth}\vspace{0pt}";
                break;

            case 4:
                leftMinipageFormat  = @"\begin{minipage}[t]{0.15\textwidth}\vspace{0pt}";
                rightMinipageFormat = @"\begin{minipage}[t]{0.85\textwidth}\vspace{0pt}";
                break;

            case 5:
                leftMinipageFormat  = @"\begin{minipage}[t]{0.2\textwidth}\vspace{0pt}";
                rightMinipageFormat = @"\begin{minipage}[t]{0.8\textwidth}\vspace{0pt}";
                break;

            default:
                leftMinipageFormat  = @"\begin{minipage}[t]{0.22\textwidth}\vspace{0pt}";
                rightMinipageFormat = @"\begin{minipage}[t]{0.78\textwidth}\vspace{0pt}";
                break;
            }
            sbLatexSource.AppendLine(@"%%%%% " + heft.Signatur + @" %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%");
            sbLatexSource.AppendLine(@"\parbox{\textwidth}{%");
            sbLatexSource.AppendLine(@"\rule{\textwidth}{1pt}\vspace*{-3mm}\\");
            // Signatur
            sbLatexSource.AppendLine(leftMinipageFormat);
            sbLatexSource.AppendLine(@"\Huge\rule[-4mm]{0cm}{1cm}" + heft.Signatur);
            sbLatexSource.AppendLine(@"\end{minipage}");
            // Titel + Beilagen
            sbLatexSource.AppendLine(@"\hfill");
            sbLatexSource.AppendLine(rightMinipageFormat);
            sbLatexSource.AppendLine(@"\large " + AhEncode(heft.Inhalt) + @"\rule[-2mm]{0mm}{2mm}");
            if (heft.Beilagen.Count != 0)
            {
                sbLatexSource.AppendLine(@"{\footnotesize \\{}");
                for (int i = 0; i < heft.Beilagen.Count; i++)
                {
                    sbLatexSource.AppendLine(string.Format("Beilage\\,B{0}: {1}\\\\", i + 1, AhEncode(heft.Beilagen[i])));
                }
                sbLatexSource.AppendLine(@"}");
            }
            sbLatexSource.AppendLine(@"\end{minipage}");
            // Sachgebiete
            if (heft.Keys.Count != 0)
            {
                sbLatexSource.AppendLine(@"{\footnotesize\flushright");
                for (int i = 0; i < heft.Keys.Count; i++)
                {
                    sbLatexSource.AppendLine(string.Format("{0}\\\\", AhEncode(heft.Keys[i])));
                }
                sbLatexSource.AppendLine(@"}");
            }
            // Jahr, Amt und Status
            sbLatexSource.AppendLine(FormatJahr(heft.Jahr) + @"\quad---\quad " + AhEncode(heft.Organisation) + @"\quad---\quad Heft " + AhEncode(heft.Status) + @"\\");
            // Bemerkungen
            if (heft.Bemerkungen.Count != 0)
            {
                sbLatexSource.AppendLine(@"\textcolor{blue}{Bemerkungen:\\{}");
                for (int i = 0; i < heft.Bemerkungen.Count; i++)
                {
                    sbLatexSource.AppendLine(string.Format("{0}", AhEncode(heft.Bemerkungen[i])) + @"\\{}");
                }
                sbLatexSource.AppendLine(@"}");
                sbLatexSource.AppendLine(@"\\[-15pt]");
            }
            sbLatexSource.AppendLine(@"\rule{\textwidth}{1pt}");
            sbLatexSource.AppendLine(@"}");
            sbLatexSource.AppendLine(@"\\");
            sbLatexSource.AppendLine(@"\vspace*{-2.5pt}\\");
        }