! Xquote defaults
!
Xquote.title:				Xquote 1.1
!
! For adding or modifying server list search for 'serverList'.

! Xquote.fontList is an application resource.  It must not be deleted.
! If its changed, the name large must remain or you will get
! the fallback fontList values.
Xquote.fontList:	-*-helvetica-bold-r-*-*-*-180-*-*-*-*-*-*=large
Xquote.allowShellResize:		False

! menu bar
*Menubar*fontList:	-*-helvetica-bold-r-*-*-*-120-*-*-*-*-iso8859-*
*Menubar.button_0.labelString:		File
*Menubar.button_0.mnemonic:		F
*Menubar.button_1.labelString:		Options
*Menubar.button_1.mnemonic:		O
*Menubar.button_2.labelString:		View
*Menubar.button_2.mnemonic:		V
*Menubar.button_3.labelString:		Help
*Menubar.button_3.mnemonic:		H
!
*Filemenu*fontList:	-*-helvetica-bold-r-*-*-*-120-*-*-*-*-iso8859-*
*Filemenu.button_0.labelString:		Update Now
*Filemenu.button_0.mnemonic:		N
*Filemenu.button_0.accelerator:		Ctrl<Key>N
*Filemenu.button_0.acceleratorText:	Ctrl+N
*Filemenu.button_1.labelString:		Stop
*Filemenu.button_1.mnemonic:		S
*Filemenu.button_1.accelerator:		Ctrl<Key>S
*Filemenu.button_1.acceleratorText:	Ctrl+S
*Filemenu.button_2.labelString:		Save Session
*Filemenu.button_2.mnemonic:		L
*Filemenu.button_3.labelString:		Log to File...
*Filemenu.button_3.mnemonic:		L
*Filemenu.button_4.labelString:		Stop Log
*Filemenu.button_4.mnemonic:		t
*Filemenu.button_5.labelString:		Quit
*Filemenu.button_5.mnemonic:		Q
!
*Optionmenu.button_0.labelString:	Network...
*Optionmenu.button_0.mnemonic:		w
*Optionmenu.button_0.accelerator:	Ctrl<Key>W
*Optionmenu.button_0.acceleratorText:	Ctrl+W
*Optionmenu.button_1.labelString:	Ticker Symbols...
*Optionmenu.button_1.mnemonic:		T
*Optionmenu.button_1.accelerator:	Ctrl<Key>T
*Optionmenu.button_1.acceleratorText:	Ctrl+T
*Optionmenu.button_2.labelString:	Tape...
*Optionmenu.button_2.mnemonic:		a
*Optionmenu.button_2.accelerator:	Ctrl<Key>P
*Optionmenu.button_2.acceleratorText:	Ctrl+P
*Optionmenu.button_3.labelString:	Updates...
*Optionmenu.button_3.mnemonic:		U
*Optionmenu.button_3.accelerator:	Ctrl<Key>U
*Optionmenu.button_3.acceleratorText:	Ctrl+U
*Optionmenu.button_4.labelString:	Details...
*Optionmenu.button_4.mnemonic:		D
*Optionmenu.button_4.accelerator:	Ctrl<Key>D
*Optionmenu.button_4.acceleratorText:	Ctrl+D
!
*Viewmenu.button_0.labelString:		Detail Table
*Viewmenu.button_0.mnemonic:		D
*Viewmenu.button_1.labelString:		Ticker Tape
*Viewmenu.button_1.mnemonic:		T
!
*Helpmenu.button_0.labelString:         About...
*Helpmenu.button_0.mnemonic:            A
*Helpmenu.button_1.labelString:         Help...
*Helpmenu.button_1.mnemonic:            H

*Heading.orientation:			VERTICAL
*Heading.packing:			PACK_COLUMN
*Heading.entryAlignment:		ALIGNMENT_CENTER
*Detail.fontList:		-*-fixed-bold-r-*-*-*-120-*-*-*-*-iso8859-*
*Scroll.scrollBarDisplayPolicy:		STATIC
*Scroll*XmRowColumn.orientation:	HORIZONTAL
*Scroll*XmRowColumn.packing:		PACK_COLUMN
*Scroll*XmRowColumn.entryAlignment:	ALIGNMENT_END
*Scroll*XmRowColumn*fontList:	-*-fixed-bold-r-*-*-*-120-*-*-*-*-iso8859-*

! Table display
*Scroll.height:				120
*Scroll.width:				400

! Ticker tape display
*Tape.height:				32
*Tape.width:				400
*Tape*fontList:			-*-helvetica-bold-r-*-*-*-120-*-*-*-*-iso8859-*

! Status Line
*StatusLabel.alignment:			ALIGNMENT_BEGINNING
*StatusLabel*fontList:	-*-helvetica-bold-r-*-*-*-100-*-*-*-*-iso8859-*
! Progress Bar
*ProgressBar.sliderMark:		NONE
*ProgressBar.slidingMode:		SLIDER

! Dialog for Ticker
*OptionTick.title:			Ticker Symbol
*OptionTick*fontList:		-*-helvetica-bold-r-*-*-*-120-*-*-*-*-iso8859-*
*OptionTick*XmList*fontList:	-*-fixed-bold-r-*-*-*-120-*-*-*-*-iso8859-*
*OptionTick*label_0.labelString:	Ticker Symbol:
*OptionTick*label_1.labelString:	Symbol Type:
*OptionTick*label_2.labelString:	Alarm Low:
*OptionTick*label_3.labelString:	Alarm High:
*OptionTick*label_4.labelString:	Shares:
! button labels
*OptionTick*button_0.labelString:	Ok
*OptionTick*button_1.labelString:	Cancel
*OptionTick*button_2.labelString:	Add
*OptionTick*button_3.labelString:	Remove
*OptionTick*button_4.labelString:	Change

! Dialog for quote variables
*OptionDetail.title:			Detail Table
*OptionDetail*fontList:	-*-helvetica-bold-r-*-*-*-120-*-*-*-*-iso8859-*
*DetailCheckBox.orientation:		VERTICAL
*DetailCheckBox.numColumns:		2
*DetailCheckBox*indicatorSize:		15
*DetailCheckBox.button_0.labelString:	Price
*DetailCheckBox.button_1.labelString:	Change
*DetailCheckBox.button_2.labelString:	Volume
*DetailCheckBox.button_3.labelString:	Daily Low
*DetailCheckBox.button_4.labelString:	Daily High
*DetailCheckBox.button_5.labelString:	ExDiv Date
*DetailCheckBox.button_6.labelString:	52 Week Low
*DetailCheckBox.button_7.labelString:	52 Week High
*DetailCheckBox.button_8.labelString:	P/E Ratio
*DetailCheckBox.button_9.labelString:	Dividend
*DetailCheckBox.button_10.labelString:	Yield
*DetailCheckBox.button_11.labelString:	Date
*DetailCheckBox.button_12.labelString:	Time
*DetailCheckBox.button_13.labelString:	Name

*OptionDetail*ButForm.fractionBase:	3
*OptionDetail*ButForm.button_0.labelString:	Ok
*OptionDetail*ButForm.button_0.leftPosition:	0
*OptionDetail*ButForm.button_0.rightPosition:	1
*OptionDetail*ButForm.button_1.labelString:	Cancel
*OptionDetail*ButForm.button_1.leftPosition:	2
*OptionDetail*ButForm.button_1.rightPosition:	3

! Dialog for Tape settings
*OptionTape.title:			Tape Settings
*OptionTape*fontList:	-*-helvetica-bold-r-*-*-*-120-*-*-*-*-iso8859-*
*Tapelabel.labelString:			Tape Settings
*Tapeform.button_3.labelString:		Smooth
*TapeScale.titleString:			Speed
*TapeScale.minimum:			1
*TapeScale.maximum:			50
*TapeScale.showValue:			True
*TapeScale.orientation:			HORIZONTAL
*TapeScale.showArrows:			EACH_SIDE
*TapeScale.sliderMark:			THUMB_MARK

! Dialog for Network Settings
*OptionNet.title:			Network
*OptionNet*fontList:	-*-helvetica-bold-r-*-*-*-120-*-*-*-*-iso8859-*
*NetUpdate.labelString:			Quote Update
*NetRow.numColumns:			2
*NetRow.orientation:			VERTICAL
*NetRow.packing:			PACK_TIGHT

*NetSource.labelString:			Quote Source
*NetOptionMenu.labelString:		From:
*NetProxy.labelString:			HTTP Proxy Server
*NetRow*form_1.label_0.labelString:	Host:
*NetRow*form_1.text_0.columns:		24
*NetRow*form_1.label_1.labelString:	Port:
*NetRow*form_1.text_1.columns:		2
*NetRow*form_1.text_1.value:		80

*OptionNet*ButForm.button_0.labelString:	Ok
*OptionNet*ButForm.button_1.labelString:	Cancel

! Dialog for Update Settings
*OptionUpdate.title:			Update
*OptionUpdate*fontList:	-*-helvetica-bold-r-*-*-*-120-*-*-*-*-iso8859-*
*UpdateAuto.labelString:		Update Frequency
*UpdateRow.numColumns:			3
*UpdateRow.orientation:			VERTICAL
*UpdateRow.packing:			PACK_TIGHT
! Frequency
*UpdateRow*form_0.button_0.labelString:	Automatic
*UpdateRow*form_0.button_0.indicatorSize:	15
*UpdateScale.titleString:		Minutes
*UpdateScale.orientation:		HORIZONTAL
*UpdateScale.value:			5
*UpdateScale.minimum:			1
*UpdateScale.maximum:			60
*UpdateScale.showValue:			True
*UpdateScale.orientation:		HORIZONTAL
*UpdateScale.showArrows:		EACH_SIDE
*UpdateScale.sliderMark:		THUMB_MARK
*UpdateScale.leftOffset:		20
*UpdateScale.rightOffset:		20
! Days
*UpdateDay.labelString:			Update Days
*UpdateDayMenu.labelString:		Every:
*UpdateDayMenu.button_0.labelString:	Monday-Friday
*UpdateDayMenu.button_1.labelString:	Monday-Sunday
! Hours
*UpdateHour.labelString:		Update Hours
*UpdateHS.labelString:			Start:
*UpdateHS.packing:			PACK_COLUMN
*UpdateHS.numColumns:			2
*UpdateHE.labelString:			End:
*UpdateHE.numColumns:			2
*UpdateHE.packing:			PACK_COLUMN
*UpdateHour.XmForm*XmRowColumn.label_0.labelString: 	AM  
*UpdateHour.XmForm*XmRowColumn.button_0.labelString: 	0:00  
*UpdateHour.XmForm*XmRowColumn.button_1.labelString: 	1:00  
*UpdateHour.XmForm*XmRowColumn.button_2.labelString: 	2:00  
*UpdateHour.XmForm*XmRowColumn.button_3.labelString: 	3:00  
*UpdateHour.XmForm*XmRowColumn.button_4.labelString: 	4:00  
*UpdateHour.XmForm*XmRowColumn.button_5.labelString: 	5:00  
*UpdateHour.XmForm*XmRowColumn.button_6.labelString: 	6:00  
*UpdateHour.XmForm*XmRowColumn.button_7.labelString: 	7:00  
*UpdateHour.XmForm*XmRowColumn.button_8.labelString: 	8:00  
*UpdateHour.XmForm*XmRowColumn.button_9.labelString: 	9:00  
*UpdateHour.XmForm*XmRowColumn.button_10.labelString: 	10:00  
*UpdateHour.XmForm*XmRowColumn.button_11.labelString:	11:00  
*UpdateHour.XmForm*XmRowColumn.label_1.labelString:	PM  
*UpdateHour.XmForm*XmRowColumn.button_12.labelString:	12:00  
*UpdateHour.XmForm*XmRowColumn.button_13.labelString:	13:00  
*UpdateHour.XmForm*XmRowColumn.button_14.labelString:	14:00  
*UpdateHour.XmForm*XmRowColumn.button_15.labelString:	15:00  
*UpdateHour.XmForm*XmRowColumn.button_16.labelString:	16:00  
*UpdateHour.XmForm*XmRowColumn.button_17.labelString:	17:00  
*UpdateHour.XmForm*XmRowColumn.button_18.labelString:	18:00  
*UpdateHour.XmForm*XmRowColumn.button_19.labelString:	19:00  
*UpdateHour.XmForm*XmRowColumn.button_20.labelString:	20:00  
*UpdateHour.XmForm*XmRowColumn.button_21.labelString:	21:00  
*UpdateHour.XmForm*XmRowColumn.button_22.labelString:	22:00  
*UpdateHour.XmForm*XmRowColumn.button_23.labelString:	23:00  
!
*OptionUpdate*ButForm.button_0.labelString:	Ok
*OptionUpdate*ButForm.button_1.labelString:	Cancel

! Dialog for Help
*Help*topicframe.shadowType:		SHADOW_ETCHED_IN
*Help*topiclist.visibleItemCount:	15
*Help*textframe.shadowType:		SHADOW_ETCHED_IN
*Help*text.columns:			40
*Help*text.fontList:	-*-helvetica-medium-r-*-*-*-120-*-*-*-*-iso8859-*
*Help*fontList:		-*-helvetica-bold-r-*-*-*-120-*-*-*-*-iso8859-*

! Dialog for About
*About.dialogTitle:			About
*About*fontList:	-*-helvetica-bold-r-*-*-*-120-*-*-*-*-iso8859-*
*About*newsLabel.childHorizontalAlignment:ALIGNMENT_CENTER
*About*newsLabel.labelString:		News
*About*newsText.rows:			5
*About*newsText.value:			No news is good news!
*Aboutform*label_1.topOffset:		5
*Aboutform*label_1.alignment:		ALIGNMENT_BEGINNING
*Aboutform*label_1.labelString:	Xquote 1.1 Copyright \2511997 Mark Buser\n\
See online help for terms and conditions.
*Aboutform.text.height:			40
*About*ButForm.fractionBase:		3
*About*ButForm.button_0.labelString:	Ok
*About*ButForm.button_0.leftPosition:	1
*About*ButForm.button_0.rightPosition:	2

!
! Dialog for error message
*alert.dialogTitle:			Alert
*alert*fontList:	-*-helvetica-bold-r-*-*-*-120-*-*-*-*-iso8859-*

!PLEASE CHECK WITH ANY SITE YOU ADD TO THIS FILE, SOME SPECIFICALLY PROHIBIT
!AUTOMATED DOWNLOAD (AS OPPOSED TO USING A BROWSER). SITES PROVIDED BY 
!DEFAULT HAVE NO SUCH POSTED RESTRICTION OR AGREED TO ALLOW XQUOTE ACCESS.
!
!BY MODIFYING THE SERVER LIST YOU ASSUME ALL LIABILITY WITH RESPECT TO DAMAGES
!RESULTING FROM THE PROHIBITED USE OF THIRD PARTY WEB RESOURCES. IN NO EVENT 
!WILL THE AUTHOR BE HELD LIABLE FOR ANY PROHIBITED USE OF SAID RESOURCES. 
!THE USER ASSUMES ALL LIABILITY FOR DAMAGES OR ANY OTHER FEE OR CHARGE RESULTING
!FROM UNAUTHORIZED ACCESS.
!
! 1. Add the name you want to call a new server to serverList. This name
!    must match the name in all of its defined resources.
! 2. Add a 'title' resource to be displayed on the network dialog option menu.
! 3. Add the URL of the page to get quote information WITHOUT the 'http://'.
!    The site must have a URL that only the ticker symbol can be plugged into.
!    Xquote can not handle other kinds of name mangling.  This is less of a
!    problem than you think if the site has a posted form for entering ticker
!    symbols.  Replace the ticker symbol with the keyword 'SYMBOL'.  Xquote
!    will replace this with ticker symbols that the user has selected.
! 3. Add the number and name of the types this site supports.  The names
!    are arbitrary but must match the name used when describing the 14 items
!    Xquote will search for. Types are useful if the html is different for
!    say stock quotes and mutual funds.  In this case you could have two
!    types for this server.  The type is selected for a given ticker symbol
!    when it is added in the ticker list dialog.
! 4. Add instructions on how find the 14 items of note that Xquote supports in
!    the HTML.  Each item begins processing at the 'top' of the html,
!    not where the previous item left off. The format of these lines is: 
!    *server.type.name.item: comma separated list of operations, NULL 
!
!Xquote skips HTML tags and only searches text that isn't in a tag.  In vi,
!you can simulate this with "/>[ ]*[0-9,a-z,A-Z,+,-]".  This isn't a perfect 
!match because Xquote ignores newlines, but should get you going.
!
! NO SPACES AFTER COMMAS BELOW, THE PATTERN MATCHER LOOKS AT EVERYTHING
! BETWEEN COMMAS FOR MATCHES. EMBEDDED SPACES ARE NOT IGNORED.
!
!SKIPH    - skip this text and search for next non-HTML text
!SKIPC    - skip a character (good for stepping over '$', for instance.
!DIGIT    - expect this text to be a number of form [+,-]d[.d]
!OPTFRACT - an optional fraction, assume digit(s)/digit(s)
!OPTHFRACT- an optional fraction, assume digit(s)<tag>/<tag>digit(s)
!STRING   - expect a string of alphanumerics, copied until next tag begin.
!otherwise, its a literal string to find in the text. 
 
! Add the name of each server to the server list.  It must match the
! *server.'name'.* of the resources below.
*serverList:		cnnfn,yahoo

! CNNFN Quote
*server.cnnfn.title:  CNN/fn
*server.cnnfn.type:   stock,fund
! Stock type
*server.cnnfn.stock.title:  Stock
*server.cnnfn.stock.url: qs2.cnnfn.com/tq/stockquote?symbols=SYMBOL
*server.cnnfn.stock.price:  Last,SKIPH,DIGIT,OPTFRACT,NULL
*server.cnnfn.stock.change: Change,SKIPH,DIGIT,OPTFRACT,NULL
*server.cnnfn.stock.volume: Volume,SKIPH,DIGIT,NULL
*server.cnnfn.stock.dailyl: Today's low,SKIPH,DIGIT,OPTFRACT,NULL
*server.cnnfn.stock.dailyh: Today's high,SKIPH,DIGIT,OPTFRACT,NULL
*server.cnnfn.stock.exdiv:  NULL
*server.cnnfn.stock.52l:    52-week low,SKIPH,DIGIT,OPTFRACT,NULL
*server.cnnfn.stock.52h:    52-week high,SKIPH,DIGIT,OPTFRACT,NULL
*server.cnnfn.stock.pe:     P/E Ratio,SKIPH,DIGIT,NULL
*server.cnnfn.stock.div:    Dividend per share,SKIPH,DIGIT,NULL
*server.cnnfn.stock.yield:  NULL
! tricky, Date appears in the http response
*server.cnnfn.stock.date:   Date,Date,SKIPH,STRING,NULL
*server.cnnfn.stock.time:   Time,SKIPH,STRING,NULL
*server.cnnfn.stock.name:   strong,SKIPH,STRING,NULL
! Fund type
*server.cnnfn.fund.title:  Mutual Fund
*server.cnnfn.fund.url: qs2.cnnfn.com/tq/stockquote?symbols=SYMBOL
*server.cnnfn.fund.price:  Yield,SKIPH,DIGIT,OPTFRACT,NULL
*server.cnnfn.fund.change: Change,SKIPH,DIGIT,OPTFRACT,NULL
*server.cnnfn.fund.volume: NULL
*server.cnnfn.fund.dailyl: NULL
*server.cnnfn.fund.dailyh: NULL
*server.cnnfn.fund.exdiv:  NULL
*server.cnnfn.fund.52l:    NULL
*server.cnnfn.fund.52h:    NULL
*server.cnnfn.fund.pe:     NULL
*server.cnnfn.fund.div:    NULL
*server.cnnfn.fund.yield:  NULL
*server.cnnfn.fund.date:   Date,Date,SKIPH,STRING,NULL
*server.cnnfn.fund.time:   Time,SKIPH,STRING,NULL
*server.cnnfn.fund.name:   strong,SKIPH,STRING,NULL

! Yahoo Quote
*server.yahoo.title:  Yahoo Quote
*server.yahoo.type:   stock,fund
! Stock type
*server.yahoo.stock.title:  Stock
*server.yahoo.stock.url:    quote.yahoo.com/quotes?symbols=SYMBOL&detailed=t
*server.yahoo.stock.price:  Last Trade,SKIPH,SKIPH,DIGIT,SKIPH,OPTHFRACT,NULL
*server.yahoo.stock.change: Change,SKIPH,DIGIT,SKIPH,OPTHFRACT,NULL
*server.yahoo.stock.volume: Volume,SKIPH,DIGIT,NULL
*server.yahoo.stock.dailyl: Day's Range,SKIPH,DIGIT,SKIPH,OPTHFRACT,NULL
! Neat!, look for "Day's Range", followed by " - " before finding digits.
*server.yahoo.stock.dailyh: Day's Range, - ,DIGIT,SKIPH,OPTHFRACT,NULL
*server.yahoo.stock.exdiv:  Ex-Div,SKIPH,STRING,NULL
*server.yahoo.stock.52l:    52-week Range,SKIPH,DIGIT,SKIPH,OPTHFRACT,NULL
*server.yahoo.stock.52h:    52-week Range, - ,DIGIT,SKIPH,OPTHFRACT,NULL
*server.yahoo.stock.pe:     P/E,SKIPH,DIGIT,NULL
*server.yahoo.stock.div:    Div/Shr,SKIPH,DIGIT,NULL
*server.yahoo.stock.yield:  Yield,SKIPH,DIGIT,NULL
*server.yahoo.stock.date:   NULL
*server.yahoo.stock.time:   NULL
*server.yahoo.stock.name:   NULL
! Fund type
*server.yahoo.fund.title:  Mutual Fund
*server.yahoo.fund.url:    quote.yahoo.com/quotes?symbols=SYMBOL&detailed=t
*server.yahoo.fund.price:  Net Asset Value,SKIPH,SKIPH,DIGIT,OPTHFRACT,NULL
*server.yahoo.fund.change: Change,SKIPH,DIGIT,OPTHFRACT,NULL
*server.yahoo.fund.volume: NULL
*server.yahoo.fund.dailyl: NULL
*server.yahoo.fund.dailyh: NULL
*server.yahoo.fund.exdiv:  NULL
*server.yahoo.fund.52l:    NULL
*server.yahoo.fund.52h:    NULL
*server.yahoo.fund.pe:     NULL
*server.yahoo.fund.div:    NULL
*server.yahoo.fund.yield:  NULL
*server.yahoo.fund.date:   Net Asset Value,SKIPH,STRING,NULL
*server.yahoo.fund.time:   NULL
*server.yahoo.fund.name:   NULL

! News server, don't touch!
*server.news.title:  	Xquote Home Page
*server.news.url: 	sunsite.auc.dk/xinvest/
*server.news.headlines: NAME="News",LOOP,"pushpin.gif",SKIPH,STRING,ENDLOOP

! CDE users don't need anything below here
*background:				#6e91aa
*highlightColor:			#cc686f
*XmDialogShell*background:		#8b979f
*Menubar*background:			#8b979f
*XmMenuShell*background:		#6e91aa
*XmList.background:			#e1ebe1
*XmText.background:			#e1ebe1
*XmTextField.background:		#e1ebe1
*XmDialogShell*XmList.background:	#e1ebe1
*XmDialogShell*XmText.background:	#e1ebe1
*XmDialogShell*XmTextField.background:	#e1ebe1
