home *** CD-ROM | disk | FTP | other *** search
/ Frozen Fish 1: Amiga / FrozenFish-Apr94.iso / bbs / alib / d5xx / d564 / mscalendar.lha / MSCalendar / MSCal.dok < prev    next >
Text File  |  1991-11-21  |  16KB  |  357 lines

  1. ==========================================================================
  2. ============================== MSCal V1.10 ===============================
  3. ==========================================================================
  4.  
  5.                     Ein Free-Ware Kalender Utility von
  6.              Markus Stipp, (c) Copyright 1991 by Markus Stipp
  7.                           alle Rechte vorbehalten
  8.  
  9. ==========================================================================
  10.  
  11.  Der  Autor garantiert  weder die  Richtigkeit  noch die volle Funktions-
  12.  faehigkeit  der in dieser  Anleitung beschriebenen Funktionen von MSCal.
  13.  Weiterhin uebernimmt  er  keine  Haftung  fuer  Schaeden,  die durch die
  14.  Benutzung von  MSCal entstanden sind.  Die Benutzung von MSCal geschieht
  15.  auf eigenes Risiko !
  16.  
  17. ==========================================================================
  18.                                 I N H A L T
  19. ==========================================================================
  20.  
  21.             1. Einleitung
  22.                 1.1 Copyright
  23.                 1.2 Entstehungsgeschichte/Hintergruendiges
  24.             2. Bedienung von MSCal
  25.                 2.1 Starten vom CLI
  26.                 2.2 Starten von der Workbench
  27.                 2.3 Starten beim Hochfahren des Systems
  28.                 2.4 Arbeiten mit MSCal
  29.                 2.5 Allgemeines
  30.             3. Hinweise zum Compilieren
  31.             4. Verschiedenes
  32.             5. Zukunft
  33.             6. Bug's
  34.             7. Autor
  35.  
  36. ==========================================================================
  37.  
  38. ==========================================================================
  39.  1                              Einleitung
  40. ==========================================================================
  41.  1.1                             Copyright
  42. ==========================================================================
  43.  
  44.  MSCal ist  FreeWare.  Die Copyright-Rechte liegen  weiterhin beim Autor.
  45.  MSCal darf frei  kopiert werden,  solange diese Anleitung,  das Programm
  46.  und der Sourcecode unveraendert beiliegen.
  47.  
  48.  Der Sourcecode ist mit im Archiv enthalten,  darf aber nicht kommerziell
  49.  genutzt werden (hoechstens nach  Absprache mit dem Autor). Das Verwenden
  50.  einzelner Routinen in nicht-kommerziellen Public-Domain- bzw.  FreeWare-
  51.  Programmen ist aber dennoch gestattet, wenn der Autor davon unterrichtet
  52.  wird.   Die   Benutzung    einzelner   Routinen   in   Programmen,   die
  53.  militaerischen Zwecken dienen ist NICHT gestattet.
  54.  
  55.  Der Vertrieb von  MSCal  durch Public-Domain-Serien ist gestattet,  wenn
  56.  der Autor informiert wird,  auf welcher PD-Serie das Programm erscheint.
  57.  Es ist gestattet,  eine Kopiergebuehr   zur Deckung  der Unkosten zu er-
  58.  heben, solange  diese  den  Betrag  von  5,-- DM  (Fuenf  Deutsche Mark)
  59.  nicht uebersteigt. Die Diskette darf also inclusive Porto und Verpackung
  60.  nicht mehr als 5,-- DM kosten !
  61.  
  62.  Der Autor ist kleinen  materiellen Gaben und Geschenken nicht abgeneigt,
  63.  und weist auch Geldbetraege nicht zurueck. :-)
  64.  
  65. ==========================================================================
  66.  1.2              Entstehungsgeschichte/Hintergruendiges
  67. ==========================================================================
  68.  
  69.  MSCal ist entstanden,  weil ich oft  einen Kalender benoetigte und keine
  70.  Lust hatte,  erst einen Hardware-Kalender hervorzukramen.  Zuerst machte
  71.  ich mich auf die Suche nach  einem fertigen Kalenderprogramm,  habe aber
  72.  kein gescheites gefunden. Irgendwelche Macken hatten sie immer, und wenn
  73.  sie nur nicht richtig mit groesseren Fonts als Topaz 8 unter Kick/WB 2.0
  74.  klarkamen.
  75.  
  76.  Aehnliche  Probleme gab es  mit kleinen  Utilities,  die eine  Speicher-
  77.  anzeige  und eine  Uhr hatten.  MClk zum Beispiel  frisst viel  zu  viel
  78.  Rechenzeit und kommt  ausserdem mal wieder nicht mit anderen Fonts unter
  79.  Kick/WB 2.0 klar.
  80.  
  81.  Also blieb mir wohl nichts anderes  uebrig,  als solche Utilities selber
  82.  zu schreiben.  Dabei ist nun MSCal herausgekommen,  das beide  Utilities
  83.  miteinander vereint. Ich hoffe, dass es einigermassen fehlerfrei laeuft,
  84.  und  dass es  noch jemand  anderes ausser mir gebrauchen kann.  Ich habe
  85.  sogar von Leuten gehoert, die es angeblich freiwillig benutzen. :-)
  86.  
  87. ==========================================================================
  88.  2                        Bedienung von MSCal
  89. ==========================================================================
  90.  2.1                        Starten vom CLI
  91. ==========================================================================
  92.  
  93.  MSCal laesst sich vom CLI und von der WB aus starten. Der Aufruf vom CLI
  94.  sieht folgendermassen aus:
  95.  
  96.       MSCal [Option] [Option] [...]
  97.  
  98.  wobei folgende Optionen zur Verfuegung stehen:
  99.  
  100.       -x###   ### ist hierbei die x-Position des Kalenderfensters.
  101.       -y###   ### ist hierbei... na was wohl.
  102.       -u###   ### ist die x-Position des Clock-Windows.
  103.       -v###   ### ist die y-Position des Clock-Windows.
  104.       -f      Das Clock-Window legt sich automatisch immer in den
  105.               Vordergrund.
  106.       -b      Es wird zu jeder vollen Stunde ein DisplayBeep()
  107.               (Bildschirmblitz) aufgerufen.
  108.       -i      Das Programm wird gleich mit dem Clock-Window gestartet.
  109.  
  110.  Wird  eine unbekannte  Option angegeben  oder einfach nur "MSCal ?",  so
  111.  wird eine kleine  Hilfe ausgegeben.  MSCal loest  sich  nicht selbst vom
  112.  CLI,  sondern muss dazu mit Run bzw.  RunBack gestartet werden.  Fehler-
  113.  meldungen werden auf stdout ausgegeben.
  114.  
  115.  Ein Beispielaufruf waere:
  116.  
  117.       MSCal -x50 -y70 -f
  118.  
  119.  Der Kalender macht dann sein Fenster an  der Position 50/70 auf, und das
  120.  Clock-Window kann nicht von einem anderen Fenster verdeckt werden.
  121.  
  122.  Bei einem  Wert von -1 bei den  Positionen  wird  das Fenster moeglichst
  123.  weit rechts bzw. unten aufgemacht.
  124.  
  125. ==========================================================================
  126.  2.2                     Starten von der WorkBench
  127. ==========================================================================
  128.  
  129.  Zum Start von der Workbench muss man einfach nur das Icon anklicken.
  130.  
  131.  Natuerlich kann man ueber das Icon auch Parameter uebergeben. Diese muss
  132.  man bei den ToolTypes des Icons eintragen. Folgende ToolTypes stehen zur
  133.  Verfuegung:
  134.  
  135.      XPOS=###       ### ist hier wieder die x-Position des
  136.                     Kalenderfensters
  137.      YPOS=###       ### ist entsprechend die y-Position des
  138.                     Kalenderfensters
  139.      IXPOS=###      ### ist die x-Position des Clock-Windows
  140.      IYPOS=###      ### ist die y-Position des Clock-Windows
  141.      FLAGS=[Flags]  Folgende Flags stehen zur Verfuegung:
  142.                        FRONT   Das Clock-Window liegt immer
  143.                                im Vordergrund (entspricht -f)
  144.                        BEEP    Zur vollen Stunde wird DisplayBeep()
  145.                                aufgerufen (entspricht -b)
  146.                        ICONIFY Es wird mit dem Clock-Window gestartet
  147.                                (entspricht -i)
  148.  
  149.  Die Flags koennen  mit '|' kombiniert werden.  Folgende  ToolTypes  sind
  150.  also z.B. zulaessig:
  151.  
  152.       XPOS=-1 (Rechte Screenkante)
  153.       IYPOS=50
  154.       FLAGS=ICONIFY|FRONT
  155.  
  156.  Die   Schluesselwoerter  muessen  alle  in  Grossbuchstaben  geschrieben
  157.  werden, da  sie  sonst  nicht  erkannt werden.
  158.  
  159. ==========================================================================
  160.  2.3                Starten beim hochfahren des Systems
  161. ==========================================================================
  162.  
  163.  Unter  der Betriebssystemversion  2.0 gibt  es zwei  Moeglichkeiten, ein
  164.  Programm beim  hochfahren des Systems zu starten.  Einmal kann es in der
  165.  Startup-Sequence  (bzw. im  User-Startup)  aufgerufen  werden,  und  zum
  166.  anderen kann  das Icon des Programms in  das WBStartup-Directory kopiert
  167.  werden. Ein Aufruf in der Startup-Sequence sollte wie folgt aussehen:
  168.  
  169.       RunBack c:MSCal [Option] [...]
  170.  
  171.  oder:
  172.  
  173.       Run >nil: <nil: c:MSCal [Option] [...]
  174.  
  175.  Danach  kann  das  CLI-Fenster  problemlos  geschlossen  werden.  Dieses
  176.  funktioniert auch unter der Betriebssystemversion 1.3.
  177.  
  178.  Wenn MSCal in einem Verzeichnis liegt, das auch im Pfad eingetragen ist,
  179.  so  kann auch  das  Icon  von  MSCal in  das WBStartup-Directory kopiert
  180.  werden.   Hierzu  muss  allerdings  im  Icon  der  ToolType  'DONOTWAIT'
  181.  angegeben werden. Dieser Tooltype sagt der Workbench, dass sie nicht auf
  182.  das  Reply der WBStartup-Message warten soll,  ist also eine Information
  183.  an  die  Workbench  und nicht  an das Programm.  Alle  anderen ToolTypes
  184.  koennen  natuerlich weiterhin  wie  weiter  oben  beschrieben  angegeben
  185.  werden, und werden voll beruecksichtigt.
  186.  
  187. ==========================================================================
  188.  2.4                      Das Arbeiten mit MSCal
  189. ==========================================================================
  190.  
  191.  Die Funktionen von MSCal sind recht einfach und schnell erklaert.
  192.  
  193.  Tastenfunktionen:
  194.  
  195.    Cusor Hoch/Runter:   Die Jahre werden um 1 hoch- bzw. runtergezaehlt.
  196.                         Wird  dabei die  SHIFT-Taste  gedrueckt,  werden
  197.                         jeweils 10 Jahre hoch- bzw. runtergezaehlt.
  198.  
  199.    Cursor Rechts/Links: Die  Monate  werden  um 1 weiter-  bzw. zurueck-
  200.                         geschaltet.  Wird  dabei zusaetzlich  die SHIFT-
  201.                         Taste  gedrueckt, so betraegt die Schrittweite 3
  202.                         Monate.
  203.  
  204.    Taste 'i':           Es wird auf das Clock-Window umgeschaltet.
  205.  
  206.    Taste 't':           Es  wird  das Kalenderblatt des aktuellen Datums
  207.                         eingestellt.
  208.  
  209.  Mausfunktionen:
  210.  
  211.    Rechte Maustaste:    Mit  der  Rechten  Maustaste  wird  zwischen den
  212.                         beiden  Fenstern  hin- und  hergeschaltet.  Wird
  213.                         dabei auf das Clock-Window umgeschaltet, so wird
  214.                         das Fenster gleich deaktiviert.
  215.  
  216.    Gadget:              Das Feld, in dem das aktuelle Datum steht (unten
  217.                         rechts) ist  ein Gadget,  mit dem man sofort auf
  218.                         das Kalenderblatt des aktuellen  Datums springen
  219.                         kann.
  220.  
  221.  
  222. ==========================================================================
  223.  2.5                       Allgemeines zu MSCal
  224. ==========================================================================
  225.  
  226.  MSCal startet immer  mit dem  Kalenderblatt des  aktuellen Datums, wobei
  227.  der  aktuelle Tag  eingerahmt ist.  Wenn sich  das Datum aendert,  merkt
  228.  MSCal  das  innerhalb  der  naechsten  Sekunde.  Wenn  dabei  der  Monat
  229.  wechselt,  wird das  Kalenderblatt  auch gleich mit umgeblaettert,ausser
  230.  wenn das Kalenderblatt  des aktuellen  Datums  gerade  nicht eingestellt
  231.  war.
  232.  
  233.  Das  Kalenderblatt merkt sich MSCal auch noch im Clock-Window. Wenn also
  234.  zwischendurch   umgeschaltet  wurde,   so   bleibt   das   Kalenderblatt
  235.  unveraendert.
  236.  
  237.  Das Datum  laesst sich vom Januar 1901 bis zum Dezember 2099 einstellen.
  238.  Wird  ueber eine  dieser Marken  hinweggeblaettert,  so faengt MSCal  am
  239.  anderen Ende wieder an.
  240.  
  241.  MSCal ist mit  dem Hintergedanken an Kick/WB 2.0  geschrieben worden. Es
  242.  laeuft  zwar  unter 1.3 auch  einwandfrei,  aber  es sieht  aufgrund der
  243.  normalerweise anderen Farben nicht ganz so gut aus. Es werden also keine
  244.  speziellen 2.0-Funktionen benutzt (Auch nicht unter 2.0).
  245.  
  246.  Ein kleines Problem war es,  die Unterstuetzung der proportionalen Fonts
  247.  fuer das Clock-Window zu implementieren. Falls unter 2.0 fuer den Screen
  248.  ein  Proportionalfont   eingestellt  ist,   so  wird  dieser  auch  voll
  249.  unterstuetzt.  Dafuer wird beim Umschalten auf das Clock-Window erst ein
  250.  kleineres Fenster aufgemacht,  dann die benoetigte Breite berechnet, und
  251.  dann wird das Fenster auf die richtige Breite eingestellt.
  252.  
  253.  Werden  fuer  die  Koordinaten  zu  grosse  Werte  oder  der  Wert  '-1'
  254.  eingestellt, so werden  die  Fenster moeglichst  weit an der Screenkante
  255.  aufgemacht.
  256.  
  257.  MSCal  kann resident  gemacht werden.  Ich glaube  zwar nicht,  dass das
  258.  jemand benoetigt, aber das laesst sich mit DICE so einfach machen... :-)
  259.  
  260. ==========================================================================
  261.  3                          Hinweise zum kompilieren
  262. ==========================================================================
  263.  
  264.  MSCal  wurde komplett  mit  der registrierten  Version von  DICE 2.06.18
  265.  entwickelt (Shareware-C-Compiler von Matthew Dillon).  Um ein Executable
  266.  zu  erzeugen,  das  mit  dem  mitgelieferten  identisch  ist,  muss  mit
  267.  folgendem Aufruf kompiliert werden:
  268.  
  269.       dcc -ms -mc -md -mRR -r -2.0 cal.c -oMSCal
  270.  
  271.  Dazu  werden  die  amigasr20.lib  und  die  Includes  von  Kick / WB 2.0
  272.  benoetigt.
  273.  
  274.  Wenn  man in  cal.h die  #include's  der Prototypen (#include <clib/#?>)
  275.  entfernt, so sollte sich der Source auch mit der unregistrierten Version
  276.  von DICE  und auch mit den  1.3-Includes uebersetzen lassen,  allerdings
  277.  ist das nicht getestet worden, ich uebernehme also keine Garantie.
  278.  
  279.  Eine  deutsche Version von MSCal laesst sich erzeugen,  wenn zusaetzlich
  280.  zu den obigen Optionen noch '-D GERMAN' angegeben wird.
  281.  
  282.  Das  Programm   wird  sich  mit  anderen  Compilern  ausser  DICE  nicht
  283.  uebersetzen lassen, da unter Anderem das wbmain() von DICE benutzt wird.
  284.  
  285. ==========================================================================
  286.  4                               Verschiedenes
  287. ==========================================================================
  288.  
  289.  Falls  jemand  das  Programm  benutzt dann moege er mir doch einfach mal
  290.  schreiben.  Zu erreichen bin ich ueber die Adressen,  die am Ende dieser
  291.  Anleitung aufgefuehrt sind. Ich freue mich immer ueber Post :-).
  292.  
  293.  Ausserdem  moechte  ich  mich  bei  allen bedanken,  die  mich  bei  der
  294.  Programmierung  unterstuetzt haben,  indem  sie  mir gute Tips und  Bug-
  295.  reports zukommen lassen haben, und bei allen, die mir neue Inspirationen
  296.  fuer weitere Features gegeben haben.
  297.  
  298.  Falls jemand noch weitere Ideen hat, oder Bugs im Programm gefunden hat,
  299.  so moege  er mir das bitte mitteilen.  Ich bin  fuer solche Sachen immer
  300.  dankbar...
  301.  
  302. ==========================================================================
  303.  5                                 Zukunft
  304. ==========================================================================
  305.  
  306.  Dies soll  vorlaeufig  die letzte  Version von MSCal sein. Diese Version
  307.  wird  wahrscheinlich  auch  die  letzte  sein,  die noch  unter Kick 1.3
  308.  laeuft.  Ich  werde nur  noch Fehler berichtigen,  falls welche gefunden
  309.  werden. Alle weiteren  Funktionen, die ich gleich noch beschreibe werden
  310.  erst implementiert, wenn ich die 2.0 RKM's habe, und wenn fuer alle Kick
  311.  2.0 verfuegbar ist.
  312.  
  313.  Geplant  sind ein  paar Gadgets  zum  blaettern im  Kalender,  bzw. eine
  314.  Moeglichkeit, ein Kalenderblatt direkt anzuspringen.
  315.  
  316.  Ausserdem soll irgendwann einmal die Moeglichkeit bestehen, den Kalender
  317.  ganz in den Hintergrund zu legen,  ohne dass das Clock-Window aufgemacht
  318.  wird.  Mit einer  einstellbaren Tastenkombination soll  dann das Fenster
  319.  wieder in den Vordergrund geholt werden koennen.
  320.  
  321.  Eine Anzeige von variablen  Feiertagen (Ostern), sowie eine Moeglichkeit
  322.  Geburtstage  etc.  anzeigen  zu lassen ist  auch  schon  geplant. Einige
  323.  Routinen dafuer habe ich schon gesammelt (Osternberechnung etc.)
  324.  
  325. ==========================================================================
  326.  6                                  Bug's
  327. ==========================================================================
  328.  
  329.  Wenn man zu  einem unguenstigen Zeitpunkt  auf das Today-Gadget  klickt,
  330.  kann es passieren, dass der Text darin invers dargestellt wird. Dies ist
  331.  nur  ein  optischer  Fehler  und  wird  nach  ca.  1-2  Sekunden  wieder
  332.  rueckgaengig gemacht. Dieser Fehler wird deshalb nicht behoben werden.
  333.  
  334. ==========================================================================
  335.  7                                  Autor
  336. ==========================================================================
  337.  
  338.  Geschrieben wurde MSCal von:
  339.  
  340.  Markus Stipp                     Semesteranschrift:
  341.  
  342.  Waldemeinestr. 35                Dubelohstr. 245
  343.  W-4902 Bad Salzuflen 1           W-4790 Paderborn
  344.  Germany                          Germany
  345.  
  346.  Tel: 05222/12862                 Tel: 05254/7444
  347.  
  348.  zu erreichen bin ich ueber:
  349.  
  350.  Fido  : Markus Stipp@2:242/25.25
  351.  E-Mail: corwin@uni-paderborn.de
  352.  
  353. ==========================================================================
  354.                                      Ende
  355. ==========================================================================
  356.  
  357.