|
DataMuseum.dkPresents historical artifacts from the history of: DKUUG/EUUG Conference tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about DKUUG/EUUG Conference tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: T m
Length: 6216 (0x1848) Types: TextFile Names: »main.c«
└─⟦8648bda34⟧ Bits:30007244 EUUGD5_II: X11R5 └─⟦87c3ac0e0⟧ »./contrib-3/contrib-3.00« └─⟦de8ce1454⟧ └─⟦this⟧ »contrib/lib/iv/src/bin/doc/main.c«
/* * Copyright (c) 1991 Stanford University * * Permission to use, copy, modify, distribute, and sell this software and its * documentation for any purpose is hereby granted without fee, provided * that the above copyright notice appear in all copies and that both that * copyright notice and this permission notice appear in supporting * documentation, and that the name of Stanford not be used in advertising or * publicity pertaining to distribution of the software without specific, * written prior permission. Stanford makes no representations about * the suitability of this software for any purpose. It is provided "as is" * without express or implied warranty. * * STANFORD DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. * IN NO EVENT SHALL STANFORD BE LIABLE FOR ANY SPECIAL, INDIRECT OR * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR * OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ #include "Application.h" #include "Document.h" #include "DocViewer.h" #include "properties.h" #include <InterViews/world.h> #include <stdio.h> const char* ACTIVE_HIGHLIGHT_COLOR = "active_highlight_color"; const char* DEFAULT_STYLE = "default_style"; const char* DOCUMENT_FILE_EXTENSION = "document_file_extension"; const char* DOCUMENT_PATH = "document_path"; const char* HIGHLIGHT_COLOR = "highlight"; const char* IDRAW_FONT_METRICS = "idraw_font_metrics"; const char* INIT_PSFIG_MODE = "init_psfig_mode"; const char* INSERT_FLASH_RATE = "insert_flash_rate"; const char* INSERT_HIGHLIGHT_COLOR = "insert_highlight_color"; const char* PAGE_ICON_FONT = "page_icon_font"; const char* POSTSCRIPT_FILE_EXTENSION = "postscript_file_extension"; const char* SCREEN_METRICS = "screen_metrics"; const char* SELECT_HIGHLIGHT_COLOR = "select_highlight_color"; const char* STYLE_FILE_EXTENSION = "style_file_extension"; const char* STYLE_PATH = "style_path"; const char* VERSION = "version"; const char* DEFAULT_PSFIG_MENUBAR = "default_psfig_menubar"; const char* DEFAULT_TABULAR_MENUBAR = "default_tabular_menubar"; const char* DEFAULT_TEXT_MENUBAR = "default_text_menubar"; const char* DEFAULT_PSFIG_KEYMAP = "default_psfig_keymap"; const char* DEFAULT_TABULAR_KEYMAP = "default_tabular_keymap"; const char* DEFAULT_ENCODED_KEYMAP = "default_encoded_keymap"; const char* DEFAULT_VERBATIM_KEYMAP = "default_verbatim_keymap"; const char* COMPLAINT_MODE = "complaint_mode"; static PropertyData props[] = { { "*active_highlight_color", "" }, { "*default_style", "article" }, { "*document_file_extension", "doc" }, { "*document_path", "." }, { "*highlight_color", "#CCC" }, { "*idraw_font_metrics", "on" }, { "*init_psfig_mode", "draft" }, { "*insert_flash_rate", "0.5", }, { "*insert_highlight_color", "#000", }, { "*page_icon_font", "5x8" }, { "*postscript_file_extension", "ps" }, { "*screen_metrics", "off" }, { "*select_highlight_color", "" }, { "*style_file_extension", "sty" }, { "*style_path", DEFAULT_STYLE_PATH }, { "*version", "1.0" }, { "*complaint_mode", "bell" }, { "*default_psfig_menubar", "default_menubar" }, { "*default_tabular_menubar", "default_menubar" }, { "*default_text_menubar", "default_menubar" }, { "*default_menubar", "\ <file> (menu default_file_menu) File\n\ <edit> (menu default_edit_menu) Edit" }, { "*default_file_menu", "\ <new> (viewer new) New\\hfil\n\ <open> (viewer open) Open ...\\hfil\n\ <save> (viewer save) Save\\hfil\\quad^S\n\ <saveas> (viewer saveas) Save as ...\\hfil\n\ \n\ <view> (viewer view) New view\\hfil\n\ <close> (viewer close) Close\\hfil\n\ <quit> (application quit) Quit\\hfil" }, { "*default_edit_menu", "\ <cut> (clip cut) Cut\\hfil\\quad^X\n\ <copy> (clip copy) Copy\\hfil\\quad^C\n\ <paste> (clip paste) Paste\\hfil\\quad^V" }, { "*default_psfig_keymap", "" }, { "*default_tabular_keymap", "" }, { "*default_verbatim_keymap", "" }, { "*default_encoded_keymap", "default_keymap" }, { "*default_keymap", "\ <015> (character parbreak)\n\ <040> (character wordspace)\n\ <055> (character visiblehyphen)\n\ <177> (delete preceding)\n\ <010> (delete preceding)\n\ <023> (viewer save)\n\ <030> (clip cut)\n\ <003> (clip copy)\n\ <026> (clip paste)" }, { nil } }; static OptionDesc options[] = { { "-screenmetrics", "*screen_metrics", OptionValueImplicit, "on" }, { "-style", "*default_style", OptionValueNext }, { "-psfinal", "*init_psfig_mode", OptionValueImplicit, "final" }, { nil } }; int main (int argc, char** argv) { World* world = new World("Doc", argc, argv, options, props); Application* application = new Application(); const char* doc_path = world->property_value(DOCUMENT_PATH); const char* doc_ext = world->property_value(DOCUMENT_FILE_EXTENSION); if (argc > 1) { char name[256]; while (argc > 1) { if (application->file_path(argv[1], doc_ext, doc_path, name)) { Document* document = application->read(name); if (document != nil) { document->name(name); application->open( new DocumentViewer(application, document) ); } else { fprintf(stderr, "Can't read file %s\n", name); } } else { fprintf(stderr, "Can't find document %s\n", argv[1]); } ++argv; --argc; } } else { Document* document = application->read(""); application->open(new DocumentViewer(application, document)); } application->run(); delete application; delete world; return 0; }