Table of Contents Copyright - Copyright information Distribution - Copying conditions Disclaimer - Legal Information Trademark - Trademark information Support/Updates - How to get updates and support Author - How to reach the author Description - What is TimeString.mcc? Requirements - Requirements for using TimeString.mcc Installation - How to install TimeString.mcc Beta testers - Installation information for beta testers Developer Info - Information for developers History - Revision history of TimeString.mcc Todo - Todo list Known problems - List of known problems Acknowledgments - Acknowledgments Please rate - Please rate TimeString.mcc Software - Software that uses TimeString.mcc Copyright --------- This software and its documentation are copyright 1996-1997 by Kai Hofmann. All rights reserved! - Permission for COMMERCIAL USE is only given by an extra available commercial license that must be validated! Contact me directly for this license, because it will be individually handed out per your needs! - Permission is hereby granted, without written agreement and without license, to USE this software and its documentation for any NON-COMMERCIAL purpose, provided that the above copyright notice and the following paragraph appear in all copies of this software (Non-commercial includes Giftware!). Please send me a full version of your product at no cost including free updates! Extra money is welcome (For Bank Account see author - but *ONLY* send in DM to this Bank Account!). Distribution ------------ Permission is hereby granted, without written agreement and without license or royalty fees, to copy and distribute this software and its documentation for any purpose, provided that the above copyright notice and the following paragraphs appear in all copies of this software, to: - All who will distribute this software for free! - All free accessible INTERNET servers! - All Aminet® sites - Fred Fish for his great Amiga-Software-Library - The German SAAR AG PD-Library - Angela Schmidt's Meeting Pearls series - All others who do NOT take more than US$ 5.- for one disk that includes this software! IMPORTANT NOTE: This package may not be included on any further Aminet CD-ROMs unless authors contributing their software to the CD-ROM, (without mentioning distribution "NoCD") are granted a copy of the CD *completely* *free* *of* *charge*. The Meeting Pearls IV CD-ROM demonstrates that a Freebie policy is also possible with "very-low-budget" CD-ROMs (*), so Aminet should quickly re-establish the same Freebie policy it used up to Aminet CD 13. (*) Suggested retail price for MP4 is DM 14,95/US$ 12/£ 8.95. DISCLAIMER ---------- THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDER AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. THE AUTHOR HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. Trademark --------- DateLib is a trademark of Kai Hofmann. Amiga, AmigaDOS and Workbench are registered trademarks of Amiga International, Inc. Aminet is a registered trademark of Stefan Ossowskis Schatztruhe GmbH SAS/C is a registered trademark of SAS Institute Inc. All other trademarked names used herein are used for the purposes of identification and for the benefit of the trademark holder. No infringement of trademarks is intended. Trademarks remain the property of the trademark holder. Support/Updates --------------- - Updates will be available via Aminet® - Support will be available via the authors email address and via http://home.pages.de/~i07m/amiga/mui/TimeString.html Author ------ Kai Hofmann Arberger Heerstraße 92 28307 Bremen Germany Phone: (+49)-(0)421/480780 EMail: i07m@informatik.uni-bremen.de i07m@zfn.uni-bremen.de IRC : PowerStat@#AmigaGer WWW : http://home.pages.de/~i07m/ Bank account : 1203 7503 Account owner: Kai Hofmann Bank code : 290 501 01 Bank name : Sparkasse in Bremen/Germany Description ----------- TimeString is a Custom Class of the Magic User Interface © by Stefan Stuntz. It's a subclass of string-class and time-class. The idea of this class was born during developing my Gregor application. MUI public custom class that displaying a string gadget for time strings. The display format of the time string can be freely defined. An input string can be parsed by the given format string, or in various standard formates (see below). TimeString.mcc features that are of interest for users: - Can be dragged around - Accepts drops of other Time.mcc objects and time-strings - Handles daylight savings time - Handles time zones - Supports 12h and 24h clocks - Supports various string formats TimeString.mcc features of interest for developers: - Based on Time.mcc - Supports MUIM_Import and MUIM_Export - The time can be read in hour/minutes/seconds format or as seconds from midnight on - The time range can be restricted - so the user can only input time that lies within his/her working time - It's possible to notify a Date.mcc object when the next or previous day was reached - Method to set the current time - Methods for increasing and decreasing the time - Method to compare with another time object The display format for a TimeString object can be defined by the following (locale.library compatible) formatting codes: %q - hour using 24-hour style %Q - hour using 12-hour style %H - hour using 24-hour style with leading 0s %I - hour using 12-hour style with leading 0s %p - AM or PM strings %M - the number of minutes with leading 0s %S - number of seconds with leadings 0s %r - same as "%I:%M:%S %p" %R - same as "%H:%M" %T - same as "%H:%M:%S" %X - same as "%H:%M:%S" You can also use the following formatting codes: %Th1f - hour using 12h style with leading 0s %Th1v - hour using 12h style without leading 0s %Th2f - hour using 24h style with leading 0s %Th2v - hour using 24h style without leading 0s %Tpso - a/p %Tpsu - A/P %Tplo - am/pm %Tplu - AM/PM %Tmf - minute with leading 0s %Tmv - minute without leading 0s %Tsf - second with leading 0s %Tsv - second without leading 0s %Tj. - jd time starting with '.' %Tj, - jd time starting with ',' %Tj0 - jd time starting with '0.' %Tj1 - jd time starting with '0,' %Tzh?? - hours only %Tzm? - 0100 (always with leading 0s) %TzM?? - 01:00 %Tz?z? - Use Z for UTC/GMT %Tz?0? - Use +00 for UTC/GMT %Tz??f - use leading 0s %Tz??v - do not use leading 0s %Tc1 - Use DST for summer->winter change hour %Tc2 - Use I/II for summer->winter change hour %Tc3 - Use a/b for summer->winter change hour (24h only) - on 12h falls back to 2 The parser can always parse the following formats: H : hour (12h or 24h style) M : minute S : second H H am/pm HM H:M H.M H M HhM HhMm H:M am/pm HMS H:M:S H.M.S H M S HhMmS HhMmSs H:M:S am/pm jd - Julian time format '.5' = 12:00:00, '.75' = 18:00:00, etc. You can also add the following information: Z - UTC/GMT Timezone +00 - Timezone -0000 - Timezone +00:00 - Timezone DST - Daylight savings time I - Daylight saving hour during the summer->winter switch II - Normal hour during the summer->winter switch a - Daylight saving hour during the summer->winter switch b - Normal hour during the summer->winter switch Requirements ------------ - MUI 3.1 (Version 12) - date.library - locale.library - To use the Greek MCC-Install script you need the "Greek Workbench" © AC Software - To use the Russian MCC-Install script you need "Rusifier" © Dmitry Mikhilov Installation ------------ Only use the installer script! (The Installer must be in your system-path!) If you use an Installer prior to V42 you should set the LANGUAGE Tooltype to your language. Installer V42 and better automatically use your current locale. Please note that the installer-script is very special, because: - It features uninstallation - It is automated - It is very flexible - It is very intelligent (for an installer-script ;-) - It uses WrapGuide (if present) for the AmigaGuide® documentation if running under a pre V39 system. - It can be reused by (hopefully) all other MUI custom classes, because the authors of custom classes need to only change a few things: * The #copyright variable * The #min_os_version and #min_os_revision variables * The #min_mui_version and #min_mui_revision variables * The #language_mcc and #language_mcc variables * The P_CustomExists, P_CustomInstall and P_CustomUninstall procedures * The 'APPNAME' tooltype within the MCC-Install icon. Beta testers ------------ Version numbers of beta release will not change, so you must uninstall an earlier installed beta version before you can install a newer one! Information for Developers -------------------------- There is no multiple inheritance for Boopsi/MUI for the moment, so we haven't any chance to create a real Time basis-class. But there is another way to have the same result (compatibility for all classes that are dealing with time). The solution is called interface inheritance like it was done with IDL for CORBA. TimeString.mcc inherits the interface from Time.mcc! Btw. it would be wise to use a SetAttrs(obj, MUIA_Time_Hour, hour, MUIA_Time_Min, min, MUIA_Time_Sec, sec, TAG_DONE ); instead of single set()'s. - The following attributes are filtered out, so that they can't bring a TimeString object into trouble: MUIA_String_Contents, MUIA_String_Accept, MUIA_String_EditHook, MUIA_String_Integer, MUIA_String_LonelyEditHook, MUIA_String_Secret, MUIA_String_Reject, MUIA_FillArea - When MUIA_ObjectID is defined a TimeString object will load/save the following data during MUIM_Application_Load/MUIM_Application_Save Hour, Min, Sec, Time Zone, DaylightSaving status History ------- 14.10.1996 - First release on Aminet * Implementing MUIM_Import, MUIM_Export * Demo updated * Using MUIV_Font_Button for buttons * Own parser for time strings * %% is no longer supported 10.02.1997 - Second release on Aminet * Now based on Time.mcc * Improved demo * Adding great icons from Eric Gerard * Improved formatter * Improved parser * Fixed Assembler interface * Fixed Modula interface * Fixed Amiga-E interface * Fixed Oberon interface * Now needs date.library 33.230 14.03.1997 - Third release on Aminet * Now based on Time.mcc 12.2 * Demo updated * Added Blitz Basic 2 interface * Added Cluster interface * Added ARexx interface * Added MUIBuilder3 description * Added German documentation 14.08.1997 - Fourth release on Aminet * Added AmigaGuide® V40 features to the documentation * Added "Please rate" section to the documentation * Added MagicWB readme * Compiled with MCCLib 12.2 * MCC-Install 43.21 * Now needs date.library 33.278 * Now based on Time.mcc 12.3 * MUIA_String_Contents will now be filtered * Improved Demo 07.10.1997 - Fifth release on Aminet * Now based on Time.mcc 12.4 * Improved demo * Compiled with MCCLib 12.4 Todo ---- - BubbleHelp error text - Accept string by pressing Tab Known problems -------------- - I heard that using 'test' and then 'cancel' the test settings within the MUI preference manager will not work as expected when in using your MUI classes within Libs:MUI/ instead of MUI:Libs/MUI/ !!! - Old versions of the program called 'PhoneCost' written by André Schenk installed another 'date.library' into 'Libs:'. Acknowledgments are going to the following people: Rita Reichl : for correcting my English and being my inspiration James Cooper, Steve Krueger, Doug Walker : For supporting SAS/C® after SAS suspends the support. Stefan Stuntz : for the Magic User Interface and for his support Klaus Melchior : for the MUI custom class support Martin Huttenloher : for MagicWB Udo Schuermann : for WrapGuide Stefan Kost : for ag2txt Jürgen Kohrmeyer : for the rexxtricks.library Henning Thielemann : for help with the Cluster interface Eric Gerard : for his great icons Please rate ----------- Please rate TimeString.mcc and MCC-Install. To do so, send an email to aminet-server@wuarchive.wustl.edu with the following content: RATE dev/mui/MCC-Install.lha RATE dev/mui/MCC_TimeString.lha where is a mark from 0..10 with 10 being the best. You can rate several programs in one mail. Thank you! Software -------- The following software products use TimeString.mcc: This is a custom class of the MUI - MagicUserInterface Copyright © 1993-1997 by Stefan Stuntz MUI is a system to generate and maintain graphical user interfaces. With the aid of a preferences program, the user of an application has the ability to customize the outfit according to his personal taste. MUI is distributed as shareware. To obtain a complete package containing lots of examples and more information about registration please look for a file called "muiXXusr.lha" (XX means the latest version number) on your local bulletin boards or on public domain disks. If you want to register directly, feel free to send DM 30.- or US$ 20.- to Stefan Stuntz Eduard-Spranger-Straße 7 80935 München GERMANY Support and online registration are available at http://www.sasg.com/ This product is based on or uses parts of MagicWB - The Workbench Enhancer -------------------------------- Copyright © 1992-1997, Martin Huttenloher If you use and like this product you should very much consider to take a look at MagicWB, which is the authentic source of the style, colors and design elements contained in this package. It features hundreds of original icons, patterns, image-drawers, dock-brushes and some specially designed high-quality fonts to improve the comfort & legibility of your daily Workbench session. What is MagicWB? MagicWB is a full replacement for the Graphical User Interface of the Workbench and has become the standard visual interface on the Amiga. Over the last years MagicWB has received various merits and an overwhelming response from Amiga magazines and users worldwide proclaiming it "a must for all Amiga users". Even commercial applications are supporting the multi-colored look & style of MagicWB. Get yourself the latest version of MagicWB and see for yourself the wonders it can do by automatically transforming your old and dull Amiga Workbench into an impressive workstation environment that will be the envy of all PC Windows and Mac users. Update yourself to the state-of-the-art workbench standard everyone uses on the Amiga! It is also your key to enjoy the new look & feel of many applications and other MWB add-ons and extensions. MagicWB is distributed as shareware. Get yourself the latest FREE PUBLIC RELEASE of MagicWB now: It is called ---------------- MagicWB21p.lha ---------------- and can be found everywhere on Aminet (or your local BBS or public domain series). Install it and witness the instant magic it performs on your old Amiga Workbench. Also included is the latest SASG registration program with which you can order and get the full registered version of MagicWB. If you want to order directly, feel free to send DM 30.- or US$ 20.- (cash, no checks!) to Martin Huttenloher Am Hochstraess 4 D-89081 Ulm Germany You may also choose to visit the official MagicWB homepage on the world wide web. There you can find the latest news & support and even register your MagicWB online (which is much more comfortable and faster). You can even benefit from various special offers & discounts for MagicWB if you order through our website! Come and visit MagicWB at: ---------------------- http://www.sasg.com/ ---------------------- Save 20% by using the discounts on our website! Ordering online also saves you a lot of time and work! WrapGuide is Copyright 1994-1995 Udo Schuermann All rights reserved