Become Member  Informations Help

> Finance & Stock Exchange > Forex > Money Markets

Canadian dollar up over a cent, bonds rally

Reuters: [2008-05-09 22:52:00]

    By John McCrank 
    TORONTO, May 9 (Reuters) - The Canadian dollar rose more 
than a cent against the U.S. dollar on Friday, a move 
attributed to technical factors as well as domestic jobs data, 
against a positive backdrop of record-setting oil prices. 
    Domestic bond prices rallied, playing catch-up with the 
larger U.S. market. 
    The Canadian dollar closed at C$1.0056 to the U.S. dollar, 
or 99.44 U.S. cents, up from C$1.0171 to the U.S. dollar, or 
98.32 U.S. cents, at Thursday's close. 
    It was a choppy week for the currency, bouncing from C$1.02 
to the U.S. dollar to parity over two days, and then back to 
C$1.0170 in two days, but ultimately it ended 1.4 percent 
higher. 
    "I don't think there is anything really in terms of data 
releases that would have spurred that level of volatility," 
said Gareth Sylvester, senior currency strategist at HIFX in 
San Francisco. 
    "So that would lead us to suggest it was more of a 
technical-style move rather than anything else," he said. 
    The Canadian dollar shot higher early in the session after 
a report showed the economy performed better than expected in 
April. The currency then gave back some of its gains as details 
of the data were digested. 
    The Statistic Canada report showed 19,200 jobs were created 
in April, while 10,000 had been expected. 
    Other details, however, showed the unemployment rate edged 
higher to 6.1 percent from 6.0 percent in March, the wage 
measure component eased, and private-sector employment 
declined. 
    "The continuing shedding of manufacturing jobs is really a 
concern," Sylvester added. "You're sitting at 111,000 jobs lost 
year-to-date (in manufacturing), so that's still a concern." 
    With the mixed reading, the week's most anticipated piece 
of data did nothing to alter the outlook for domestic interest 
rates. The Bank of Canada is still expected to lower its key 
rate by 25 basis points to 2.75 percent at its next scheduled 
announcement date on June 10. 
    A rise in oil prices to a new high above $126 a barrel 
provided a positive backdrop for the Canadian dollar. However, 
concerns about the sustainability of prices at that level, in 
light of slowing global growth, prevented crude from being a 
rallying point for the currency, Sylvester said. 
    Other domestic data showed the rising prices for oil and 
natural gas exports boosted Canada's trade surplus to C$5.53 
billion in March. 
    
    BONDS RISE 
    Bond prices rose, ignoring the higher headline numbers in 
the economic data, as they were not seen altering the interest 
rate outlook. 
    "You had a big move down in U.S. yields this week that 
Canada really was somewhat insulated from, and I think it's 
just a bit of a  catch up for that," said Mark Chandler, fixed 
income strategist at RBC Capital Markets. 
    Bond yields in prices move in opposite directions. 
    The two-year bond was up 5 Canadian cents at C$102.02 to 
yield 2.731 percent. The 10-year rose 39 Canadian cents to 
C$103.16 to yield 3.587 percent. 
    The yield spread between the two- and 10-year bonds was 
85.6 basis points, down from 87.8 at the previous close. 
    The 30-year bond added 98 Canadian cents to C$115.53, for a 
yield of 4.082 percent. In the United States, the 30-year 
treasury yielded 4.527 percent. 
    The three-month when-issued T-bill yielded 2.62 percent, up 
from 2.60 percent at the previous close. 
 ((john.mccrank@thomsonreuters.com; +1 416 941 8083; Reuters 
Messaging: john.mccrank.reuters.com@reuters.net)) 
    For Reuters bond and money market pricing information 
double click on one of the following: 
 <CAD=>      Canadian dollar live quote, high/low 
  <FXNEWS>  Headlines from global forex markets 
 <CDBN>      Canadian bond prices 
 <CDMM> <CDMN> <0#CAMMKT=> Canadian money market prices 
 <CABONEA>   Canada-U.S. spreads (live) 
 <YLDS1>     World yield index 
 <CA30YT=RR> 30 year benchmark 
 <0#CGB:> <CGBc1> <CA/FACTOR1> <MEIRP> - Montreal Exchange 
   bond futures pricing information 
 <CAMCI=>    Bank of Canada monetary conditions index (Reuters 
calculation) 
 <CACALL=>   Canada's call loan or overnight lending rate 
 <=CAD>      Canadian dollar G10 trade-weighted index. 
 
   For the fixed-income market speed guides, double click on 
one of the following: 
  
  <CA/MMKT1> <CA/MMKT2> <CA/DEBT> <BONDS> <TREASURY> For 
related news, double click on one of the following: 
 [CAN]  Canadian news 
 [NAT]  North American Treasuries news 
 [M]    Money news 
 [D]    Debt news 
 [MF]   Markets news 
 [GVD]  Government debt news 
 [MMT]  Money market news 
 [INT]  Interest rate news 
 [CEN]  Central bank news 
 [CA/]  Canadian bond market stories 
Keywords: MARKETS CANADA DOLLAR BONDS 
    

DIARY-Federal Reserve Events

Reuters: [2008-05-09 22:34:00]

    TO HAVE EVENTS INCLUDED, PLEASE CONTACT THE WASHINGTON 
NEWSROOM AT 202-898-8370/202-898-8318, OR BY FAX AT 
202-898-8383 OR 202-842-2527 
    THIS DIARY IS FILED DAILY. 
 
    ***Denotes a new entry. 
    -------------------------------------------------------- 
    MEETINGS 
 
    FOMC MEETING DATES (one-day meetings on Tuesday; two-day 
meetings Tuesday-Wednesday, except where noted. Decision 
released on second day of two-day meetings) 
    2008 
    June 24-25 (Decision expected at 1415 EDT/1815 GMT) 
    August 5 (Decision expected at 1415 EDT/1815 GMT) 
    September 16 (Decision expected at 1415 EDT/1815 GMT) 
    October 28-29 (Decision expected at 1415 EDT/1815 GMT) 
    December 16 (Decision expected at 1415 EST/1915 GMT) 
    2009 
    January 27-28 (Decision expected at 1415 EST/1915 GMT) 
 
---------------------------------------------------------- 
    FEDERAL RESERVE CHAIRMAN BEN BERNANKE 
 
    Tuesday, May 13 
    WASHINGTON -  Federal Reserve Chairman Ben Bernanke speaks 
VIA SATELLITE on "Federal Reserve Liquidity Measures" before 
the Federal Reserve Bank of Atlanta's "Financial Market 
Reforms: Taking Stock" 2008 Financial Markets Conference in Sea 
Island, Ga., 0820 EDT/1220 GMT. No Q&A. Contact: Pierce Nelson, 
404 498 8748 or pierce.nelson@atl.frb.org; or Jean Tate, 404 
498 8035 or jean.tate@atl.frb.org. Coordinates: Satellite: 
Horizons 2; Band KU; Transponder 15; Slot E, 9MHz; Downlink 
Freq. 11922.5000 (V) 
    
    Thursday, May 15 
    CHICAGO - Federal Reseve Chairman Ben Bernanke speaks on 
"Risk Management and Banking Operations" before the Federal 
Reserve Bank of Chicago's "Bank Structure and Competition 
Credit Market Turmoil: Causes, Consequences and Cures" 
conference, 0830 CDT/0930 EDT/1330 GMT. Audience Q&A expected. 
Hotel Intercontinental, 505 N. Michigan Ave. Contact: Laura 
LaBarbera, 312 322-2387 or Laura.LaBarbera@chi.frb.org. 
Information:   
http://www.chicagofed.org/news_and_conferences/conferences_and_events/2008_bsc_agenda.cfm 
 
    Thursday-Friday, May 29-30 
    BASEL, Switzerland - Bank for International Settlements' 
Basel Committee on Banking Supervision hosts "Risk Transfer 
Mechanisms and Financial Stability" conference. Speakers 
include (INVITED) Federal Reserve Chairman Ben Bernanke. 
Details TBA. Information:  
http://www.bis.org/bcbs/events/rtf08rtmfs.htm 
 
    Wednesday, June 4 
    CAMBRIDGE, Mass. - (INVITED) Federal Reserve Chairman Ben 
Bernanke speaks at Harvard University, 1400 EDT/1800 GMT. 
Speech topic, Q&A, other details TBA. Harvard Yard, 
Tercentenary Theater. Contact: 617 495-1585. Information: 
http://www.news.harvard.edu/gazette/2008/04.10/99-classday.html 
  
    Tuesday, June 10 
    CHATHAM, Mass. - (INVITED) Federal Reserve Chairman Ben 
Bernanke gives dinner speech before the Federal Reserve Bank of 
Boston "Understanding Inflation and the Implications for 
Monetary Policy: A Phillips Curve Retrospective" conference,  
1800 EDT/2200 GMT. Other details TBA. Wequassett Inn, Pleasant 
Bay Road. Contact: Tom Lavelle, 617 973 3647 or 
Thomas.L.Lavelle@bos.frb.org; or Donna Dulski, 617 973-3029 or 
Donna.Dulski@bosfrb.org; hotel 800 225 7125. Information: 
http://www.bos.frb.org/phillips2008 
 
---------------------------------------------------------- 
    OTHER FED OFFICIALS 
 
    Monday, May 12 
    PALATINE, Ill. - Federal Reserve Bank of Chicago President 
Charles Evans speaks on the economic outlook before the Harper 
College Economic Forum, 0815 CDT/0915 EDT/1315 GMT. Audience 
and media Q&As expected. Harper College, Wojcik Conference 
Center, 1200 W. Algonquin Road. RSVP: Maria Coons, 847 925 
6143 
    
    Tuesday-Wednesday, May 13-14 
    SEA ISLAND, Ga. - Federal Reserve Bank of Atlanta 
"Financial Market Reforms: Taking Stock" 2008 Financial Markets 
Conference. The Cloister, 100 Cloister Drive. Contacts: Pierce 
Nelson, 404 498 8748 or pierce.nelson@atl.frb.org; or Jean 
Tate, 404 498 8035 or jean.tate@atl.frb.org 
 

TREASURIES-Prices edge up on renewed credit concerns

Reuters: [2008-05-09 21:59:00]

(Adds fresh comments, updates prices, changes byline)

By John Parry

NEW YORK, May 9 (Reuters) - U.S. government debt prices edged up on Friday as resurgent credit worries sparked demand for safe-haven Treasuries, propelling benchmark 10-year notes to their best week in nearly two months.

Bonds gained following news late Thursday that American International Group, the world's largest insurer, posted a record $7.8 billion quarterly loss. U.S. stock indices also fell sharply.

"Every time the (stock) market gets weak you start to see that safe-haven bid come back into play. AIG's earnings were miserable and that affected the financials," said Joe Keetle, senior wealth manager at Dawson Wealth Management in Cleveland, Ohio. The dismal AIG results fanned doubts about a recovery in credit markets. Other financial companies including Swiss bank UBS <UBSN.VX> and U.S. home-finance company Fannie Mae <FNM.N> have recently announced asset write-downs and credit losses stemming from subprime mortgages.

Credit fears have dragged equity markets from their recent peaks, and benchmark 10-year Treasury yields from their four-month highs reached earlier this week.

"Even if you have turned the corner and the worst is behind us on the risk aversion side, markets are still concerned that there is still bad news that will come out on the asset-quality side that has kept markets jittery and led to a drop in Treasury yields in the past few days," said Robert Tipp, chief investment strategist with Prudential Fixed-Income Management in Newark, New Jersey.

The benchmark 10-year note's price, which moves inversely to its yield, rose 2/32 <US10YT=RR> for a yield of 3.77 percent, down from 3.78 percent late Thursday. The yield briefly moved above 3.95 percent just two days ago.

Major U.S. stock indexes were down as much as 0.8 percent following a 2 percent drop in Tokyo and a 1 percent fall in Europe.

Another positive factor for Treasuries was the roughly $70 billion investors received on maturing U.S. government bonds from the Treasury quarterly refunding this week.

Investors plowed back some of this record amount of cash into Treasuries in anticipation of seasonally strong performance after the May refunding, analysts said.

Bonds' gains were mitigated by a bigger-than-expected narrowing in the March trade deficit, boosting the prospects of an upward government revision on first-quarter gross domestic product, analysts said.

A stronger first-quarter GDP reading will support the view that the U.S. economy would avoid a recession and alleviate pressure on the Federal Reserve to trim short-term interest rates further, analysts said.

The Treasury market also traded off its initial highs on some reassuring comments from Citigroup's new chief executive, Vikram Pandit, after the largest U.S. bank unveiled a plan to sell $400 billion of assets in a bid to become more efficient and profitable.

Citi has suffered hefty losses from the subprime mortgage debt crisis and its fallout.

"Pandit is selling his program well. People are a little less fearful and they are taking some profits on bonds," said Andrew Brenner, senior vice president at MF Global in New York, said of the Citi's CEO remarks in conference call with analysts and investors.

Still, there are plenty of downside risks to the economy, including persistent bottlenecks in the credit markets and a relentless surge in oil which hit a series of record highs this week. U.S. crude broke above $126 a barrel on Friday.

Two-year notes dipped 1/32 in price for a 2.25 percent yield <US2YT=RR>, versus 2.23 percent late Thursday. The two-year yield was on track for its biggest weekly drop since March.

More credit market fallout will likely keep Treasury note yields trading at quite low levels. However, the yield range for past two months, of 1.25 percent to roughly 2.50 percent, for the two-year Treasury note <US2YT=RR> should drift higher by about 50 basis points toward the end of the year, Tipp expects.

That's provided sentiment in riskier asset markets "will not go as seriously to the dark side as a few months ago," he cautioned.

Thirty-year bonds <US30YT=RR>, after Thursday's well-bid reopening auction, traded up 8/32 for a yield of 4.51 percent versus 4.55 percent late Thursday. (Reporting by John Parry and Richard Leong; Editing by Tom Hals) ((John.Parry@reuters.com ; +1 646 223 6303; Reuters Messaging:

john.parry.thomsonreuters.com@reuters.net )) Keywords: MARKETS BONDS

-------MARKET SNAPSHOT AT 3:44 p.m. (1944 GMT)------- 
June T-Bond <USM8>           117-06/32   (+14/32)        
June 10-Year note <TYM8>           116   (+07/32)        
                                        Change vs  Current 
                          previous New York close   yield 
Three-month bills <US3MT=RR>      1.66     (0.04)  1.6945 
Six-month bills <US6MT=RR>       1.715     (0.04)  1.7537 
Two-year note <US2YT=RR>      99-24/32   (-01/32)  2.2513 
Five-year note <US5YT=RR>    100-22/32       unch  2.9749 
10-year note <US10YT=RR>     100-26/32   (+02/32)  3.7767 
30-year bond <US30YT=RR>      97-17/32   (+09/32)  4.5274 
 
----------------------------SWAP SPREADS---------------- 
      May 9  May 8  May 7  May 6   May 5    May 2    May 1 
2-YR  80.50  78.75  80.25  81.25   79.25    78.75    80.75 
3-YR  84.50  83.75  85.00  86.25   84.50    84.75    84.50 
5-YR  79.50  77.75  78.00  78.50   76.25    75.75    75.25 
10-YR 60.00  58.75  61.00  63.00   61.00    61.25    61.00 
30-YR 31.00  30.25  32.00  34.50   33.00    33.00    32.50 
 
Keywords: MARKETS BONDS  
    

TREASURIES-Bonds rise on renewed credit worries

Reuters: [2008-05-09 18:03:00]

(Updates market prices)

By Richard Leong

NEW YORK, May 9 (Reuters) - U.S. Treasury debt prices rose on Friday as renewed credit worries kindled demand for low-risk investments, sending benchmark 10-year notes to their best week in nearly two months.

Bonds climbed following news that American International Group <AIG.N>, the world's largest insurer, posted a record $7.8 billion quarterly loss. For details, see [ID:nN09565485]

"We saw some pretty good buying ... on safe-haven demand on renewed concerns on credit issues with AIG's losses," said Kim Rupert, managing director of global fixed-income analysis with Action Economics LLC in San Francisco.

The dismal AIG results fanned doubts about a recovery in credit markets. Other financial companies including Swiss bank UBS <UBSN.VX> and U.S. home-finance company Fannie Mae <FNM.N> have announced this week a fresh wave of asset write-downs and credit losses stemming from subprime mortgages.

Credit fears have dragged equity markets from their recent peak, and benchmark 10-year Treasury yields from their four-month high set earlier this week.

Ten-year note's yield <US10YT=RR>, which moves inversely to its price, last traded at 3.75 percent, down from 3.78 percent late on Thursday. It briefly moved above 3.95 percent just two days ago.

Major U.S. stock indexes were down as much as 0.8 percent following a 2 percent drop in Tokyo and a 1 percent fall in Europe. See [.N]

Another positive factor for Treasuries was the roughly $70 billion investors received on maturing U.S. government bonds from the Treasury quarterly refunding this week.

Investors plowed back some of this record amount of cash into Treasuries in anticipation of seasonally strong performance after the May refunding, analysts said.

Bonds' gains were mitigated by a bigger-than-expected narrowing in the March trade deficit, boosting the prospects of an upward government revision on first-quarter gross domestic product, analysts said.

A stronger first-quarter GDP reading will support the view that the U.S. economy would avoid a recession and alleviate pressure on the Federal Reserve to trim short-term interest rates further, analysts said.

The Treasuries market also traded off its initial highs on some reassuring comments from Citigroup's <C.N> new chief executive, Vikram Pandit, after the largest U.S. bank unveiled a plan to sell $400 billion of assets in a bid to become more efficient and profitable. [ID:nN09468753]

Citi has suffered hefty losses from the subprime crisis and its fallout.

"Pandit is selling his program well. People are a little less fearful and they are taking some profits on bonds," said Andrew Brenner, senior vice president at MF Global in New York, said of the Citi's CEO remarks in conference call with analysts and investors.

Still, there are plenty of downside risks to the economy, including persistent bottlenecks in the credit markets and a relentless surge in oil which hit a series of record highs this week. U.S. crude <CLc1> broke above $126 a barrel on Friday.

Among other cash maturities, two-year notes <US2YT=RR> were up 2/32 in price for a 2.20 percent yield, down from 2.23 percent late Thursday. Two-year yield fell for a fifth straight session and poised for its biggest weekly drop since March.

Five-year debt <US5YT=RR> was up 4/32 in price for a 2.95 percent yield, down from 2.98 percent late on Thursday.

Thirty-year bonds <US30YT=RR>, after Thursday's well-bid reopening, traded up 20/32 for a yield of 4.51 percent versus 4.55 percent late Thursday. (Additional reporting by Burton Frierson; Editing by Tom Hals)

((richard.leong@thomsonreuters.com ; +1 646 223 6313; Reuters Messaging: richard.leong.reuters.com@reuters.net )) Keywords: MARKETS BONDS

-------MARKET SNAPSHOT AT 11:43 a.m. EDT (1543 GMT)------- 
June T-Bond <USM8>           117-13/32  (+21/32)          
June 10-Year note <TYM8>     116-06/32  (+12/32)          
                                       Change vs    Current 
                                          Nyk        yield 
Three-month bills<US3MT=RR>  1.645       (+0.02)     1.679 
Six-month bills  <US6MT=RR>  1.715       (+0.04)     1.754 
Two-year note <US2YT=RR>     99-27/32   (+01/32)     2.215 
Five-year note <US5YT=RR>    100-26/32  (+04/32)     2.951 
10-year note  <US10YT=RR>    100-32/32  (+07/32)     3.756 
30-year bond  <US30YT=RR>    97-26/32   (+18/32)     4.510 
Keywords: MARKETS BONDS  
    

UPDATE 1-Serb dinar down, shares up as markets await polls

Reuters: [2008-05-09 17:59:00]

(Updates with cbank comments, detail, bourse)

By Gordana Filipovic

BELGRADE, May 9 (Reuters) - Serbia's dinar fell to a five-month low on Friday in jittery interbank trade despite central bank euro selling, while speculative buying lifted the long-depressed bourse to a five-week high.

The central bank said its euro selling did little in a market worried about the Sunday general election, which could bring nationalists to power for the first time in eight years.

"One can say for certain that the dinar movements have nothing to do with economic fundamentals, which determine the rate in the long-run," vice-governor Diana Dragutinovic told Blic daily in a statement due to be published on Saturday.

It has been rather "psychologically driven", she added.

Including Friday's decline, the dinar <EURRSD=> has lost some 6 percent so far this year.

Despite the bank's attempts to curb losses by selling 5.0 million euros, it traded at 84.30/84.40 to the euro at 1422 GMT, down from 83.52 where it opened. The bank has sold 38 million euros this week alone trying to curb losses.

The dinar has been under the managed float regime since 2002, but the central bank has never spelled out the floating band. The limits are assumed to be 76.5 and 85.0/euro.

Polls show the ballot will be a tight race between the nationalist, populist Radical Party and a coalition of liberal parties that want Serbia to pursue European Union membership.

The Radicals are seen having a slight edge and would likely have the first go at forming a coalition with smaller parties.

Dragutinovic said that even though Serbia's macroeconomic fundamentals were mostly sound and yields on the dinar high, investors appeared reluctant.

The bank was monitoring the dinar and deciding the volume of its presence in interbank market on the currency's cumulative trend and its estimated impact on core inflation, she added.

"Considering the forex market movements...the central bank will reconsider monetary policy stance in the context of the goals at May 15 board meeting," she said.

The bank last raised its benchmark, 2-week repo rate by 75 basis points to 15.25 percent in April to bring core inflation down from 8 percent into its 3-6 percent targeted band.

Sidelined during the rule of autocrat Slobodan Milosevic in the 1990s, the bank has worked hard since he was ousted in 2000 to stabilise the dinar and cut inflation to single digits.

It has sold over 250 million euros this year through covert interventions to add liquidity to the interbank market, where banks are often reluctant to trade among themselves.

Unlike the more conservative forex market, the Belgrade bourse posted its second biggest daily index increase this year.

"Today's buying activity came from smaller domestic investors," one broker said. "It's a pure speculation, somebody decided to take a chance. The risk is high and rewards could be enormous if the pro-Western bloc wins," one broker said.

(Reporting by Gordana Filipovic; Editing by Ellie Tzortzi) ((gordana.filipovic@thomsonreuters.com, +381 11 311 4254; Reuters Messaging: gordana.filipovic.reuters.com@reuters.net))

Keywords: MARKETS SERBIA/

Next: UPDATE 1-Serb dinar down, shares up as markets await polls
<s:event b:on="construct"> <s:script> htmlContent = document.getElementById('HtmlContent'); htmlContent.style.display='none'; </s:script> <s:task b:action="show" /> </s:event> <s:execute> <s:task b:action="js" b:value="GetInstrument('Start')" /> </s:execute> <div style="display:none;" xmlns="http://www.w3.org/1999/xhtml" xmlns:b="http://www.backbase.com/b" xmlns:s="http://www.backbase.com/s" xmlns:trad="http://www.TradingNews.com/trad" > <s:variable b:name="LOC_SearchLabel" b:select="'Recherche'" b:scope="global" /> <s:variable b:name="LOC_MenuMiminize" b:select="'Minimize/Restore'" b:scope="global" /> <s:variable b:name="LOC_MenuClose" b:select="'Fermé'" b:scope="global" /> <s:variable b:name="TRAD_MAX_TAB_COUNT" b:select="'5'" b:scope="global" /> <s:variable b:name="TRAD_MAX_COL_COUNT" b:select="'15'" b:scope="global" /> <s:variable b:name="TRAD_MAX_WIN_COUNT" b:select="'60'" b:scope="global" /> <s:variable b:name="TRAD_MAX_COL_WIDTH" b:select="'2'" b:scope="global" /> <s:variable b:name="TRAD_COL_WIDTH" b:select="'192'" b:scope="global" /> <s:variable b:name="TRAD_COL_MARGIN" b:select="'2'" b:scope="global" /> <s:variable b:name="TRAD_REFRESH_RATE" b:select="'5000'" b:scope="global" /> <s:variable b:name="TRAD_QUOTE_TYPE" b:select="'100'" b:scope="global" /> <s:variable b:name="TRAD_QUOTE_LIST" b:select="'101'" b:scope="global" /> <s:variable b:name="TRAD_INDEX_LIST_TYPE" b:select="'102'" b:scope="global" /> <s:variable b:name="TRAD_CHART_TYPE" b:select="'300'" b:scope="global" /> <s:variable b:name="TRAD_CHART_INTRA" b:select="'310'" b:scope="global" /> <s:variable b:name="TRAD_CHART_INTER_5J" b:select="'301'" b:scope="global" /> <s:variable b:name="TRAD_CHART_INTER_3M" b:select="'302'" b:scope="global" /> <s:variable b:name="TRAD_CHART_INTER_12M" b:select="'304'" b:scope="global" /> <s:variable b:name="TRAD_NEWS_HEADLINE_TYPE" b:select="'400'" b:scope="global" /> <s:variable b:name="TRAD_NEWS_BODY_TYPE" b:select="'401'" b:scope="global" /> <s:variable b:name="TRAD_NEWS_DEFAULT_PARAM" b:select="'DIV+IPO+OR+STX+OR+MRG+OR+RES+OR+FRX+OR'" b:scope="global" /> <s:variable b:name="TRAD_NEWS_DEFAULT_NAME" b:select="'NEWS'" b:scope="global" /> <s:variable b:name="TRAD_ANALYSE_HEADLINE_TYPE" b:select="'299'" b:scope="global" /> <s:variable b:name="TRAD_FOREX_TYPE" b:select="'500'" b:scope="global" /> <s:variable b:name="TRAD_DUMMY_TARGET" b:scope="global" /> <s:behavior b:name="trad-inst-list-behavior" > <!-- <s:event b:on="receive"> <s:script> var currInst = bpc.getBXMLAttribute('b:instrument', _current); list_height = bpc.getSize(document.getElementById('list_table_' + currInst))['h']; quote_height = bpc.getSize(document.getElementById('quote_table_' + currInst))['h']; windowHtml = document.getElementById(currInst); windowHtml.style.height = (list_height + quote_height + 65) + "px"; </s:script> </s:event> --> </s:behavior> <s:behavior b:name="search-item-behavior"> <s:event b:on="mouseenter"> <s:setstyle b:background-color="#cccccc" /> <s:variable b:name="searchlistfocus" b:scope="global" b:select="1" /> </s:event> <s:event b:on="mouseleave"> <s:setstyle b:background-color="#eeeeee" /> <s:variable b:name="searchlistfocus" b:scope="global" b:select="0" /> </s:event> <s:event b:on="click"> <s:task b:action="set" b:target="//input[@name='query']/@value" b:value="{@b:instrument}" /> <s:task b:action="trigger" b:event="command" b:target="//trad:search-button" b:usebeahvior="trad-search-button" /> </s:event> </s:behavior> <s:behavior b:name="trad-inst-item-behavior" > <s:event b:on="click"> <s:if b:test="count(//b:deck/div[@b:state='selected']//trad:window) &lt; $TRAD_MAX_WIN_COUNT" > <s:variable b:name="CURR_INST" b:select="@b:instrument" b:test="exists(@b:instrument)" /> <s:variable b:name="CURR_INST" b:select="./text()" b:test="not(exists(@b:instrument))" /> <s:choose> <s:when b:test="not(exists(//trad:window[@name=$CURR_INST]))" > <s:render b:destination="id('trad-deck')/div[@b:state='selected']/trad:column[1]/trad:column-header" b:mode="after" > <trad:window id="{$CURR_INST}" name="{$CURR_INST}" trad:MainType = "{@type}"/> </s:render> </s:when> <s:otherwise> <s:task b:action="select" b:target="//trad:window[@name=$CURR_INST]" /> </s:otherwise> </s:choose> </s:if> <s:task b:action="trigger" b:event="do-close" b:target="//trad:popup-window" /> </s:event> </s:behavior> <s:behavior b:name="trad-inst-news-behavior" > <s:event b:on="pourRien"> <s:script> var currInst = bpc.getBXMLAttribute('b:instrument', _current); list_height = bpc.getSize(document.getElementById('list_table_' + currInst))['h']; quote_height = bpc.getSize(document.getElementById('quote_table_' + currInst))['h']; windowHtml = document.getElementById(currInst); windowHtml.style.height = (list_height + quote_height + 65) + "px"; </s:script> </s:event> </s:behavior> <s:behavior b:name="trad-inst-chart-behavior" > <s:event b:on="pourRien"> <s:script> var currInst = bpc.getBXMLAttribute('b:instrument', _current); list_height = bpc.getSize(document.getElementById('list_table_' + currInst))['h']; quote_height = bpc.getSize(document.getElementById('quote_table_' + currInst))['h']; windowHtml = document.getElementById(currInst); windowHtml.style.height = (list_height + quote_height + 65) + "px"; </s:script> </s:event> </s:behavior> <s:behavior b:name="trad-analyse-item-behavior" > <s:event b:on="click"> <s:render b:destination="id('WorkingArea')" b:mode="aslastchild"> <trad:popup-window id="popup-win" trad:title="Trading News"> <trad:popup-windowbody> <div id="Message" /> </trad:popup-windowbody> </trad:popup-window> </s:render> <s:task b:action="load" b:destination="id('Message')" b:mode="replacechildren" b:url="/tnapp/newsServer.php?Access=0" b:data="{current-time()}" /> </s:event> </s:behavior> <s:behavior b:name="trad-news-behavior" > <s:event b:on="click"> <s:task b:action="load" b:destination="id('BxmlContent')" b:mode="replacechildren" b:url="{concat('/tnapp/newsServer.php?Path=', ./@trad:path)}" b:data="{current-time()}" /> </s:event> </s:behavior> <s:behavior b:name="trad-news-headline-behavior" > <s:event b:on="click"> <s:render b:destination="id('WorkingArea')" b:mode="aslastchild"> <trad:popup-window id="popup-win" trad:title="Trading News"> <trad:popup-windowbody> <div id="Message" /> </trad:popup-windowbody> </trad:popup-window> </s:render> <s:task b:action="load" b:destination="id('Message')" b:mode="replacechildren" b:url="/tnapp/newsServer.php?Access=0" b:data="{current-time()}" /> </s:event> </s:behavior> <s:htmlstructure b:name="trad:popup-background"> <div class="trad-popup-background" id="popup-background" /> </s:htmlstructure> <s:htmlstructure b:name="trad:popup-window" b:behavior="trad-popup-window"> <div class="trad-popup-window"> <div class="trad-WindowInner"><s:innercontent /></div> </div> </s:htmlstructure> <s:htmlstructure b:name="trad:popup-WindowTitle" b:behavior="trad-popup-WindowTitle"> <div class="trad-WindowTitle"><s:innercontent /></div> </s:htmlstructure> <s:htmlstructure b:name="trad:popup-windowbody"> <div class="trad-popup-windowbody"><s:innercontent /></div> </s:htmlstructure> <s:behavior b:name="trad-popup-window"> <s:event b:on="construct"> <s:lock b:target="/*"> <s:render b:destination="id('WorkingArea')" b:mode="aslastchild"> <trad:popup-background /> </s:render> <s:render b:destination="." b:mode="asfirstchild"> <trad:popup-WindowTitle /> </s:render> </s:lock> <s:task b:action="msg" b:value="{concat('pop-up', max(($bpc_windowHeight - 154, 610)), ':', max(($bpc_windowWidth - 20, 780)))}" /> <s:task b:action="settext" b:target="trad:popup-WindowTitle" b:value="{@trad:title}" /> <s:task b:action="set" b:target="id('WorkingArea')/trad:popup-background/style::height" b:value="{concat(max(($bpc_windowHeight - 154, 610)), 'px')}" /> <s:task b:action="set" b:target="id('WorkingArea')/trad:popup-background/style::width" b:value="{concat(max(($bpc_windowWidth - 20, 780)), 'px')}" /> </s:event> <s:event b:on="close" b:action="trigger" b:event="do-close" /> <!-- "method" for actually closing the window --> <s:event b:on="do-close"> <s:task b:action="remove" b:target="id('WorkingArea')/trad:popup-background" /> <s:task b:action="remove" b:target="." /> </s:event> </s:behavior> <s:behavior b:name="trad-popup-WindowTitle"> <s:initatt b:textselect="false" /> <s:event b:on="construct"> <s:render b:destination="." b:mode="aslastchild"> <trad:WinIcon /> <trad:WinClose /> </s:render> <s:task b:action="addclass" b:value="closeHover" b:target="html()/div[2]" /> </s:event> <!-- Enlevé pour Marketing : <s:event b:on="mouseenter"> <s:task b:action="addclass" b:value="closeHover" b:target="html()/div[2]" /> </s:event> <s:event b:on="mouseleave"> <s:task b:action="removeclass" b:value="closeHover" b:target="html()/div[2]" /> </s:event> --> </s:behavior> <s:htmlstructure b:name="trad:tab-header" b:behavior="trad-tab-header-behavior"> <ul class="trad-tab-header"> <s:innercontent /> </ul> </s:htmlstructure> <s:behavior b:name="trad-tab-header-behavior"> <s:event b:on="construct"> <s:render b:destination="." b:mode="aslastchild"> <trad:tab-action /> </s:render> </s:event> </s:behavior> <s:behavior b:name="trad-tab-action-behavior"> <s:event b:on="click"> <s:render b:destination="id('WorkingArea')" b:mode="aslastchild"> <trad:popup-window id="popup-win" trad:title="Trading News"> <trad:popup-windowbody> <div id="Message" /> </trad:popup-windowbody> </trad:popup-window> </s:render> <s:task b:action="load" b:destination="id('Message')" b:mode="replacechildren" b:url="/tnapp/newsServer.php?Access=0" b:data="{current-time()}" /> </s:event> </s:behavior> <s:htmlstructure b:name="trad:tab-action" b:behavior="trad-tab-action-behavior"> <li class="trad-tab trad-tab-action"> Create Tab </li> </s:htmlstructure> <s:behavior b:name="trad-tab-behavior"> <s:initatt trad:serverTab = "0" /> <s:event b:on="command"> <s:task b:action="select" b:target="{@b:followstate}"/> </s:event> <s:state b:on="deselect" b:normal="trad-tab" b:hover="trad-tab trad-tab-hov"/> <s:state b:on="select" b:normal="trad-tab trad-tab-sel" b:hover="trad-tab trad-tab-sel-hov"/> <s:event b:on="construct" > <s:lock > <s:render b:destination="." b:mode="aslastchild" > <trad:tab-edit-button /> <trad:tab-del-button /> </s:render> <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=CreateTab&amp;NewPos=', ./text(), ';', count(preceding-sibling::trad:tab) + 1)}" b:data="{current-time()}" b:destination="$TRAD_DUMMY_TARGET" b:test="@trad:serverTab = '0'"/> </s:lock> </s:event> <s:event b:on="edit"> <s:script> <!-- new_name = prompt("New tab name :"); if((new_name != ' ') && (new_name != null)) { bpc.task(['b:action', 'settext', 'b:value', new_name], _current); } --> </s:script> <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=RenameTab&amp;NewPos=', ./text(), ';', count(preceding-sibling::trad:tab) + 1)}" b:data="{current-time()}" b:destination="$TRAD_DUMMY_TARGET"/> </s:event> </s:behavior> <s:htmlstructure b:name="trad:tab" b:behavior="trad-tab-behavior"> <li> <span> <s:innercontent /> </span> </li> </s:htmlstructure> <s:behavior b:name="trad-tab-del-button"> <s:initatt b:tooltiptext="Delete" /> <s:event b:on="command"> <s:if b:test="count(../../trad:tab) > 1" > <s:variable b:name="TheDivId" b:select="concat('Tab-', ../@b:tabId)" /> <s:for-each b:target="id('trad-deck')/div[@id=$TheDivId]/trad:column" > <s:task b:action="trigger" b:event="do-column-delete" b:target="$_target" /> </s:for-each> <s:task b:action="remove" b:target="id('trad-deck')/div[@id=$TheDivId]" /> <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=RemoveTab&amp;NewPos=', count(../preceding-sibling::trad:tab) + 1)}" b:data="{current-time()}" b:destination="$TRAD_DUMMY_TARGET" /> <s:task b:action="select" b:target="id('trad-deck')/div[1]" /> <s:task b:action="remove" b:target=".." /> </s:if> </s:event> </s:behavior> <s:behavior b:name="trad-tab-edit-button" > <s:initatt b:tooltiptext="Edit Name" /> <s:event b:on="command"> <s:task b:action="trigger" b:event="edit" b:target=".." /> </s:event> </s:behavior> <s:htmlstructure b:name="trad:tab-del-button" b:behavior="trad-tab-del-button" > <div class="trad-tab-del-button" /> </s:htmlstructure> <s:htmlstructure b:name="trad:tab-edit-button" b:behavior="trad-tab-edit-button" > <div class="trad-tab-edit-button" /> </s:htmlstructure> <!-- Uses inline style with display:none to fix rendering bugs in IE 5.5 / 6.0 --> <s:htmlstructure b:name="trad:contextmenu" b:behavior="trad-contextmenu"> <div class="trad-contextmenu" style="display:none;"> <table cellpadding="0" cellspacing="0" border="0"> <tbody> <s:innercontent /> </tbody> </table> </div> </s:htmlstructure> <s:behavior b:name="trad-contextmenu"> <s:initatt b:focusgroup="true" b:focusitem="true" b:textselect="false" /> <s:event b:on="select"> <s:if b:test="not(@b:constructed = 'true')"> <s:setatt b:constructed="true" /> <s:script><!-- document.body.appendChild(_current); --></s:script> <s:task b:action="trigger" b:event="dynamic-construct" b:target="trad:contextmenurow" /> </s:if> <s:task b:test="not(name(..) = 'trad:contextmenurow')" b:action="position" b:type="place" b:position="at-pointer" b:target="." /> <s:task b:action="show" /> <s:task b:test="not(name(..) = 'trad:contextmenurow')" b:action="focus" /> </s:event> <s:event b:on="command" b:action="deselect" /> <s:event b:on="deselect" b:action="hide" /> <s:event b:on="inactive" b:test="not(parent::trad:contextmenurow)" b:action="deselect" /> </s:behavior> <!-- trad:CONTEXTMENUROW --> <!-- default expandable contextmenurow --> <s:htmlstructure b:name="trad:contextmenurow" b:behavior="trad-contextmenurow"> <tr> <td class="trad-contextmenu-icon"></td> <td class="trad-contextmenu-label-expand" colspan="2"><s:value-of b:select="{@b:label}" /></td> <td class="trad-contextmenu-expand"><s:innercontent /></td> </tr> </s:htmlstructure> <!-- none-expandable row without shortcut --> <s:htmlstructure b:name="trad:contextmenurow2"> <tr> <td class="trad-contextmenu-icon"></td> <td class="trad-contextmenu-label-expand" colspan="2"><s:value-of b:select="{@b:label}" /></td> <td></td> </tr> </s:htmlstructure> <!-- none-expandable row with shortcut --> <s:htmlstructure b:name="trad:contextmenurow3"> <tr> <td class="trad-contextmenu-icon"></td> <td class="trad-contextmenu-label"><s:value-of b:select="{@b:label}" /></td> <td class="trad-contextmenu-shortcut"><s:value-of b:select="{@b:shortcut}" /></td> <td></td> </tr> </s:htmlstructure> <s:behavior b:name="trad-contextmenurow"> <s:initatt b:focusitem="true" /> <s:state b:on="deselect" b:normal="trad-contextmenurow" b:disabled="trad-contextmenurow-disabled" /> <s:event b:on="dynamic-construct" b:test="not(@b:constructed='true')"> <!-- set attribute to make sure this is only executed once --> <s:setatt b:constructed="true" /> <s:choose> <s:when b:test="not(trad:contextmenu) and not(@b:shortcut)"> <s:task b:action="setstruct" b:value="trad:contextmenurow2" /> <s:task b:test="@b:disabled='true'" b:action="set" b:target="@class" b:value="trad-contextmenurow-disabled" /> </s:when> <s:when b:test="not(trad:contextmenu) and @b:shortcut"> <s:task b:action="setstruct" b:value="trad:contextmenurow3" /> <s:task b:test="@b:disabled='true'" b:action="set" b:target="@class" b:value="trad-contextmenurow-disabled" /> </s:when> <s:otherwise/> </s:choose> <s:task b:test="@b:icon" b:action="set" b:target="html()/td[1]/style::background-image" b:value="{concat('url(', @b:icon, ')')}" /> </s:event> <s:event b:on="command" b:test="not(b:contextmenu)" b:bubble="false" b:action="trigger" b:event="command" b:target="ancestor::trad:contextmenu"/> <s:event b:on="mouseenter"> <s:task b:action="addclass" b:value="trad-contextmenurow-hov" /> <s:task b:action="trigger" b:event="keyright" /> </s:event> <s:event b:on="keyright"> <s:if b:test="trad:contextmenu[@b:state='deselected']"> <s:task b:action="select" b:target="trad:contextmenu" /> <s:task b:action="position" b:type="place" b:target="trad:contextmenu" b:destination="." b:position="end-before" /> </s:if> <s:task b:action="select" /> </s:event> <s:event b:on="keyup-keydown"> <s:task b:test="not(trad:contextmenu)" b:action="addclass" b:value="trad-contextmenurow-hov" /> <s:task b:action="select" /> </s:event> <s:event b:on="select" b:action="focus" /> <s:event b:on="mouseleave" b:test="not(trad:contextmenu)" b:action="removeclass" b:value="trad-contextmenurow-hov" /> <s:event b:on="inactive"> <s:task b:action="removeclass" b:value="trad-contextmenurow-hov" /> <s:task b:action="deselect" b:target=". | trad:contextmenu" /> </s:event> <s:event b:on="active" b:action="addclass" b:value="trad-contextmenurow-hov" /> <s:event b:on="keyright"> <s:if b:test="trad:contextmenu[@b:state='deselected']"> <s:task b:action="select" b:target="trad:contextmenu" /> <s:task b:action="position" b:type="place" b:target="trad:contextmenu" b:destination="." b:position="end-before" /> </s:if> <s:task b:action="select" /> </s:event> </s:behavior> <!-- Icon context menu --> <trad:contextmenu id="trad-win-menu" > <trad:contextmenurow b:label="Close" b:on="command" b:action="trigger" b:event="do-close" b:target="id(id('trad-win-menu')/@ActualWin)" /> <trad:contextmenurow b:label="Hide/Show Quote" b:on="command" b:action="trigger" b:event="do-hide-show-quote" b:target="id(id('trad-win-menu')/@ActualWin)" /> <trad:contextmenurow b:label="Hide/Show Components" b:on="command" b:action="trigger" b:event="do-hide-show-list" b:target="id(id('trad-win-menu')/@ActualWin)" /> <!--<trad:contextmenurow b:label="Hide/Show Chart" b:on="command" b:action="trigger" b:event="do-hide-show-chart" b:target="id(id('trad-win-menu')/@ActualWin)" /> --> <trad:contextmenurow b:label="Chart" > <trad:contextmenu id="trad-chart-menu" > <trad:contextmenurow b:label="Intraday" b:on="command" b:action="trigger" b:event="do-show-intraday-chart" b:target="id(id('trad-win-menu')/@ActualWin)" /> <trad:contextmenurow b:label="Interday 1 Month" b:on="command" b:action="trigger" b:event="do-show-1month-chart" b:target="id(id('trad-win-menu')/@ActualWin)" /> <trad:contextmenurow b:label="Interday 3 Months" b:on="command" b:action="trigger" b:event="do-show-3months-chart" b:target="id(id('trad-win-menu')/@ActualWin)" /> <trad:contextmenurow b:label="Interday 12 Months" b:on="command" b:action="trigger" b:event="do-show-12months-chart" b:target="id(id('trad-win-menu')/@ActualWin)" /> <trad:contextmenurow b:label="Hide Chart" b:on="command" b:action="trigger" b:event="do-hide-chart" b:target="id(id('trad-win-menu')/@ActualWin)" /> </trad:contextmenu> </trad:contextmenurow> <trad:contextmenurow b:label="Hide/Show News" b:on="command" b:action="trigger" b:event="do-hide-show-news" b:target="id(id('trad-win-menu')/@ActualWin)" /> <trad:contextmenurow b:label="Hide/Show Analyses" b:on="command" b:action="trigger" b:event="do-hide-show-analyse" b:target="id(id('trad-win-menu')/@ActualWin)" /> </trad:contextmenu> <style type="text/css" b:browser="moz"> /* Using nowrap in IE will cause problems */ .b-windowhead-mid { white-space: nowrap; } </style> <s:behavior b:name="trad-win-drag"> <s:event b:on="drag-enter"> <s:lock b:target="."> <s:task b:action="assign" b:target="$TRAD_Last_Win_Enter" b:select="@id" b:test="parent::trad:column" /> <s:task b:action="move" b:source="id('TradWinDragDest')" b:destination="." b:mode="before" b:test="parent::trad:column and @id != 'TradWinDragDest'" /> </s:lock> </s:event> </s:behavior> <!-- TRAD:WINDOW --> <s:htmlstructure b:name="trad:window" b:behavior="trad-window"> <div class="trad-WindowContainer"> <div class="trad-WindowInner"> <s:innercontent/> </div> </div> </s:htmlstructure> <s:htmlstructure b:name="trad:WindowTitle" b:behavior="trad-WindowTitle"> <div class="trad-WindowTitle"> <s:innercontent/> </div> </s:htmlstructure> <s:htmlstructure b:name="trad:WinIcon" b:behavior="trad-WinIcon"> <div class="trad-WinLeftIcon"> </div> </s:htmlstructure> <s:htmlstructure b:name="trad:WinNewsIcon" b:behavior="trad-WinIcon"> <div class="trad-WinLeftNewsIcon"> </div> </s:htmlstructure> <s:htmlstructure b:name="trad:WinAnalyseIcon" b:behavior="trad-WinIcon"> <div class="trad-WinLeftAnalyseIcon"> </div> </s:htmlstructure> <s:htmlstructure b:name="trad:WinEvolution"> <div class="trad-WinEvolution evolutionStay"> </div> </s:htmlstructure> <s:htmlstructure b:name="trad:WinMenu" b:behavior="trad-WinMenu"> <div class="trad-WinMenu"> </div> </s:htmlstructure> <s:htmlstructure b:name="trad:WinClose" b:behavior="trad-WinClose"> <div class="trad-WinClose" b:behavior="trad-WinClose"> </div> </s:htmlstructure> <s:htmlstructure b:name="trad:WindowContent" b:behavior="trad-WindowContent"> <div class="trad-WindowContent"> <s:innercontent/> </div> </s:htmlstructure> <s:htmlstructure b:name="trad:QuoteData" b:behavior="trad-QuoteData"> <td class="trad-QuoteData"> <s:innercontent /> </td> </s:htmlstructure> <s:htmlstructure b:name="trad:GraphLargePos" b:behavior="trad-GraphPosition"> <td class="trad-GraphData hiddenCell"> <s:innercontent /> </td> </s:htmlstructure> <s:htmlstructure b:name="trad:GraphSmallPos" b:behavior="trad-GraphPosition"> <td class="trad-GraphData hiddenCell"> <s:innercontent /> </td> </s:htmlstructure> <s:htmlstructure b:name="trad:ListData" b:behavior="trad-ListData"> <td class="trad-ListData hiddenCell" colspan="2" > <s:innercontent /> </td> </s:htmlstructure> <s:htmlstructure b:name="trad:NewsData" b:behavior="trad-NewsData"> <td class="trad-NewsData hiddenCell" colspan="2" > <s:innercontent /> </td> </s:htmlstructure> <s:htmlstructure b:name="trad:AnalyseData" b:behavior="trad-AnalyseData"> <td class="trad-AnalyseData hiddenCell" colspan="2" > <s:innercontent /> </td> </s:htmlstructure> <s:htmlstructure b:name="trad:GraphData" b:behavior="trad-GraphData" > <div> <s:innercontent /> </div> </s:htmlstructure> <s:behavior b:name="trad-window" b:behavior="trad-win-drag"> <s:initatt b:draggroup="trad-window" b:dragmode="symbol" b:focusgroup="true" b:focusitem="true" b:maximized="true" trad:showQuote = "1" trad:showChart = "0" trad:showList = "0" trad:showNews = "0" trad:showAnalyse = "0" trad:hasQuote = "1" trad:hasChart = "1" trad:hasList = "0" trad:hasNews = "1" trad:hasAnalyse = "1" trad:chartType = "300" trad:MainType = "100" trad:initDone = "0" trad:serverWin = "0" /> <s:event b:on="construct"> <s:lock b:target="/*" > <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=CreateWindow&amp;NewPos=', @name, ';', @trad:showQuote, ';', @trad:showChart, ';', @trad:showList, ';', @trad:showNews, ';', @trad:showAnalyse, ';', @trad:hasQuote, ';', @trad:hasChart, ';', @trad:hasList, ';', @trad:hasNews, ';', @trad:hasAnalyse, ';', @trad:MainType, ';',count(preceding-sibling::trad:window) + 1, ';', count(../preceding-sibling::trad:column) + 1, ';', count(../../preceding-sibling::div) + 1)}" b:data="{current-time()}" b:destination="id('NewData')" b:test="@trad:serverWin = '0'" /> <s:render b:destination="." b:mode="aslastchild" > <trad:WindowTitle /> <trad:WindowContent /> </s:render> <s:task b:action="settext" b:target="trad:WindowTitle" b:value="{@name}" /> <s:task b:action="set" b:target="@trad:initDone" b:value="1" /> <s:task b:action="set" b:target="@trad:serverWin" b:value="0" /> </s:lock> </s:event> <s:event b:on="drag-start"> <s:task b:action="trigger" b:event="mouseleave" b:target="trad:WindowTitle" /> <s:variable b:name="CurrentIndex" b:select="count(preceding-sibling::trad:window)" /> <s:variable b:name="ActualParent" b:select=".." /> <s:variable b:name="CurrentHeight" b:select="getElementHeight(.)" /> <s:task b:action="set" b:target="./style::width" b:value="{concat(getElementWidth(.), 'px')}" /> <s:task b:action="move" b:source="." b:destination="$bpc_dragSymbol" /> <s:task b:action="set" b:target="$bpc_dragSymbol/style::z-index" b:value="15" /> <s:render b:destination="$ActualParent/trad:window[$CurrentIndex]" b:mode="after" b:test="$CurrentIndex != 0"> <div id="TradWinDragDest" b:behavior="trad-win-drag"> </div> </s:render> <s:render b:destination="$ActualParent" b:mode="aslastchild" b:test="$CurrentIndex = 0"> <div id="TradWinDragDest" b:behavior="trad-win-drag"> </div> </s:render> <s:task b:action="set" b:target="id('TradWinDragDest')/style::height" b:value="{concat($CurrentHeight, 'px')}" /> <s:variable b:name="TRAD_Last_Win_Enter" b:scope="global" b:select="''" /> </s:event> <s:event b:on="drag-drop"> <s:task b:action="set" b:target="trad:WindowTitle/@b:drag" b:value="trad-window" /> <s:task b:action="set" b:target="./style::width" b:value="100%" /> <s:task b:action="trigger" b:event="mouseleave" b:target="trad:WindowTitle" /> <s:task b:action="trigger" b:event="resize" /> <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=MoveWindow&amp;NewPos=', @name, ';', count(preceding-sibling::trad:window) + 1, ';', count(../preceding-sibling::trad:column) + 1, ';', count(../../preceding-sibling::div) + 1)}" b:data="{current-time()}" b:destination="$TRAD_DUMMY_TARGET" /> </s:event> <s:event b:on="close" b:action="trigger" b:event="do-close" /> <!-- "method" for actually closing the window --> <s:event b:on="do-close"> <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=stop&amp;Type=', $TRAD_QUOTE_TYPE, '&amp;Name=', @name)}" b:target="$TRAD_DUMMY_TARGET" b:data="{current-time()}" b:test="@trad:showQuote = '0'"/> <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=stop&amp;Type=', $TRAD_INDEX_LIST_TYPE, '&amp;Name=', @name)}" b:target="$TRAD_DUMMY_TARGET" b:data="{current-time()}" b:test="@trad:showList = '0'"/> <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=stop&amp;Type=', @trad:chartType, '&amp;Name=', @name)}" b:target="$TRAD_DUMMY_TARGET" b:data="{current-time()}" b:test="@trad:showChart = '0'"/> <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=stop&amp;Type=', $TRAD_NEWS_HEADLINE_TYPE, '&amp;Name=', @name)}" b:target="$TRAD_DUMMY_TARGET" b:data="{current-time()}" b:test="@trad:showNews = '0'"/> <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=stop&amp;Type=', $TRAD_ANALYSE_HEADLINE_TYPE, '&amp;Name=', @name)}" b:target="$TRAD_DUMMY_TARGET" b:data="{current-time()}" b:test="@trad:showAnalyse = '0'"/> <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=RemoveWindow&amp;NewPos=', @id)}" b:data="{current-time()}" b:target="$TRAD_DUMMY_TARGET" /> <s:task b:action="remove" b:target="." /> </s:event> <s:event b:on="do-hide-show-list"> <s:task b:action="trigger" b:event="trad-ShowHide" b:target="descendant::trad:ListData" b:test="@trad:hasList='1'" /> </s:event> <s:event b:on="do-show-intraday-chart"> <s:if b:test="@trad:showChart='0'" > <s:task b:action="trigger" b:event="trad-Hide" b:target="descendant::trad:GraphLargePos" b:test="parent::trad:column/@b:ColWidth gt 1" /> <s:task b:action="trigger" b:event="trad-Hide" b:target="descendant::trad:GraphSmallPos" b:test="parent::trad:column/@b:ColWidth = 1" /> </s:if> <s:task b:action="set" b:target="@trad:chartType" b:value="310" /> <s:task b:action="trigger" b:event="do-show-chart" b:target="." /> </s:event> <s:event b:on="do-show-1month-chart"> <s:if b:test="@trad:showChart='0'" > <s:task b:action="trigger" b:event="trad-Hide" b:target="descendant::trad:GraphLargePos" b:test="parent::trad:column/@b:ColWidth gt 1" /> <s:task b:action="trigger" b:event="trad-Hide" b:target="descendant::trad:GraphSmallPos" b:test="parent::trad:column/@b:ColWidth = 1" /> </s:if> <s:task b:action="set" b:target="@trad:chartType" b:value="301" /> <s:task b:action="trigger" b:event="do-show-chart" b:target="." /> </s:event> <s:event b:on="do-show-3months-chart"> <s:if b:test="@trad:showChart='0'" > <s:task b:action="trigger" b:event="trad-Hide" b:target="descendant::trad:GraphLargePos" b:test="parent::trad:column/@b:ColWidth gt 1" /> <s:task b:action="trigger" b:event="trad-Hide" b:target="descendant::trad:GraphSmallPos" b:test="parent::trad:column/@b:ColWidth = 1" /> </s:if> <s:task b:action="set" b:target="@trad:chartType" b:value="302" /> <s:task b:action="trigger" b:event="do-show-chart" b:target="." /> </s:event> <s:event b:on="do-show-12months-chart"> <s:if b:test="@trad:showChart='0'" > <s:task b:action="trigger" b:event="trad-Hide" b:target="descendant::trad:GraphLargePos" b:test="parent::trad:column/@b:ColWidth gt 1" /> <s:task b:action="trigger" b:event="trad-Hide" b:target="descendant::trad:GraphSmallPos" b:test="parent::trad:column/@b:ColWidth = 1" /> </s:if> <s:task b:action="set" b:target="@trad:chartType" b:value="304" /> <s:task b:action="trigger" b:event="do-show-chart" b:target="." /> </s:event> <s:event b:on="do-hide-chart"> <s:if b:test="@trad:hasChart='1'" > <s:task b:action="trigger" b:event="trad-Hide" b:target="descendant::trad:GraphLargePos" b:test="parent::trad:column/@b:ColWidth gt 1" /> <s:task b:action="trigger" b:event="trad-Hide" b:target="descendant::trad:GraphSmallPos" b:test="parent::trad:column/@b:ColWidth = 1" /> </s:if> </s:event> <s:event b:on="do-show-chart"> <s:if b:test="@trad:hasChart='1'" > <s:task b:action="trigger" b:event="trad-Show" b:target="descendant::trad:GraphLargePos" b:test="parent::trad:column/@b:ColWidth gt 1" /> <s:task b:action="trigger" b:event="trad-Show" b:target="descendant::trad:GraphSmallPos" b:test="parent::trad:column/@b:ColWidth = 1" /> </s:if> </s:event> <s:event b:on="do-hide-show-news"> <s:render b:destination="id('WorkingArea')" b:mode="aslastchild"> <trad:popup-window id="popup-win" trad:title="Trading News"> <trad:popup-windowbody> <div id="Message" /> </trad:popup-windowbody> </trad:popup-window> </s:render> <s:task b:action="load" b:destination="id('Message')" b:mode="replacechildren" b:url="/tnapp/newsServer.php?Access=0" b:data="{current-time()}" /> </s:event> <s:event b:on="do-hide-show-quote"> <s:task b:action="trigger" b:event="trad-ShowHide" b:target="descendant::trad:QuoteData" b:test="@trad:hasQuote='1'"/> </s:event> <s:event b:on="do-hide-show-analyse"> <s:render b:destination="id('WorkingArea')" b:mode="aslastchild"> <trad:popup-window id="popup-win" trad:title="Trading News"> <trad:popup-windowbody> <div id="Message" /> </trad:popup-windowbody> </trad:popup-window> </s:render> <s:task b:action="load" b:destination="id('Message')" b:mode="replacechildren" b:url="/tnapp/newsServer.php?Access=0" b:data="{current-time()}" /> </s:event> <s:event b:on="resize"> <s:if b:test="@trad:showChart = '0'"> <s:choose> <s:when b:test="ancestor::trad:column/@b:ColWidth gt 1"> <s:if b:test="exists(descendant::trad:GraphSmallPos/trad:GraphData)" > <s:task b:action="removeclass" b:value="hiddenCell" b:target="descendant::trad:GraphLargePos" /> <s:task b:action="removeclass" b:value="hiddenCell" b:target="trad:WindowContent/html()/table/thead/tr/td[2]" /> <s:task b:action="addclass" b:value="hiddenCell" b:target="descendant::trad:GraphSmallPos" /> <s:task b:action="move" b:source="descendant::trad:GraphData" b:destination="descendant::trad:GraphLargePos" /> </s:if> </s:when> <s:otherwise> <s:if b:test="exists(descendant::trad:GraphLargePos/trad:GraphData)" > <s:task b:action="removeclass" b:value="hiddenCell" b:target="descendant::trad:GraphSmallPos" /> <s:task b:action="addclass" b:value="hiddenCell" b:target="trad:WindowContent/html()/table/thead/tr/td[2]" /> <s:task b:action="addclass" b:value="hiddenCell" b:target="descendant::trad:GraphLargePos" /> <s:task b:action="move" b:source="descendant::trad:GraphData" b:destination="descendant::trad:GraphSmallPos" /> </s:if> </s:otherwise> </s:choose> </s:if> </s:event> </s:behavior> <!-- Behaviors... --> <s:behavior b:name="trad-WindowTitle"> <s:initatt b:textselect="false" b:drag="trad-window" /> <s:event b:on="construct"> <s:choose> <s:when b:test="../@trad:MainType = '400'"> <s:render b:destination="." b:mode="aslastchild"> <trad:WinNewsIcon /> </s:render> </s:when> <s:when b:test="../@trad:MainType = '299'"> <s:render b:destination="." b:mode="aslastchild"> <trad:WinAnalyseIcon /> </s:render> </s:when> <s:otherwise> <s:render b:destination="." b:mode="aslastchild"> <trad:WinIcon /> </s:render> </s:otherwise> </s:choose> <s:render b:destination="." b:mode="aslastchild"> <trad:WinClose /> </s:render> <s:render b:destination="./trad:WinIcon" b:mode="after" b:test="../@trad:hasQuote = '1'" > <trad:WinEvolution /> <trad:WinMenu /> </s:render> </s:event> <s:event b:on="mouseenter"> <s:task b:action="addclass" b:value="menuHover" b:target="trad:WinMenu" /> <s:task b:action="addclass" b:value="closeHover" b:target="trad:WinClose" /> </s:event> <s:event b:on="mouseleave"> <s:task b:action="removeclass" b:value="menuHover" b:target="trad:WinMenu" /> <s:task b:action="removeclass" b:value="menuClick" b:target="trad:WinMenu" /> <s:task b:action="removeclass" b:value="closeHover" b:target="trad:WinClose" /> </s:event> </s:behavior> <s:behavior b:name="trad-WinIcon"> </s:behavior> <s:behavior b:name="trad-WinMenu"> <s:event b:on="click"> <s:task b:action="addclass" b:value="menuClick" /> <s:task b:action="select" b:target="id('trad-win-menu')" /> <s:task b:action="set" b:target="id('trad-win-menu')/@ActualWin" b:value="{ancestor::trad:window[1]/@id}" /> <s:task b:action="position" b:type="place" b:target="id('trad-win-menu')" b:destination="." b:position="at-pointer" /> </s:event> </s:behavior> <s:behavior b:name="trad-WinClose"> <s:event b:on="click"> <s:task b:action="trigger" b:event="do-close" b:target="../.." /> </s:event> </s:behavior> <s:behavior b:name="trad-WindowContent"> <s:event b:on="construct"> <s:render b:destination="." b:mode="aslastchild"> <table class="trad-WindowTable"> <thead> <tr> <td class="trad-WinTableHeaderLeft"> </td> <td class="trad-WinTableHeaderRight hiddenCell"> </td> </tr> </thead> <tbody> <tr> <trad:QuoteData /> <trad:GraphLargePos /> </tr> <tr> <trad:GraphSmallPos /> </tr> <tr> <trad:ListData /> </tr> <tr> <trad:NewsData /> </tr> <tr> <trad:AnalyseData /> </tr> </tbody> </table> </s:render> </s:event> </s:behavior> <s:behavior b:name="trad-QuoteData"> <s:event b:on="construct"> <s:task b:action="trigger" b:event="trad-ShowHide" /> </s:event> <s:event b:on="trad-ShowHide"> <s:choose> <s:when b:test="ancestor::trad:window/@trad:showQuote='1'"> <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=start&amp;Type=',ancestor::trad:window/@trad:MainType,'&amp;Name=', ancestor::trad:window/@name)}" b:data="{current-time()}" b:test="ancestor::trad:window/@trad:serverWin = '0'"/> <s:task b:action="removeclass" b:value="hiddenCell" /> <s:task b:action="removeclass" b:value="hiddenCell" b:target="ancestor::trad:WindowContent/html()/table/thead/tr/td[1]" /> <s:task b:action="set" b:target="ancestor::trad:window/@trad:showQuote" b:value="0" /> <s:render b:destination="." b:mode="aslastchild" b:test="ancestor::trad:window/@trad:serverWin != '0'"> <div id="{concat('quote_table_', ancestor::trad:window/@id)}" class="quote_table"> <img alt="Graphique" src="/tnapp/Styles/Img/loading.gif"/> </div> </s:render> </s:when> <s:otherwise> <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=stop&amp;Type=',ancestor::trad:window/@trad:MainType,'&amp;Name=', ancestor::trad:window/@name)}" b:data="{current-time()}" b:test="ancestor::trad:window/@trad:initDone='1'" /> <s:task b:action="addclass" b:value="hiddenCell" /> <s:task b:action="addclass" b:value="hiddenCell" b:target="ancestor::trad:WindowContent/html()/table/thead/tr/td[1]" /> <s:task b:action="set" b:target="ancestor::trad:window/@trad:showQuote" b:value="1" /> </s:otherwise> </s:choose> </s:event> </s:behavior> <s:behavior b:name="trad-GraphPosition"> <s:event b:on="construct"> <s:if b:test="ancestor::trad:window/@trad:showChart = 1"> <s:task b:action="trigger" b:event="trad-Show" b:test="(ancestor::trad:column/@b:ColWidth gt 1) and (name(.) = 'trad:GraphLargePos')"/> <s:task b:action="trigger" b:event="trad-Show" b:test="(ancestor::trad:column/@b:ColWidth = 1) and (name(.) = 'trad:GraphSmallPos')"/> </s:if> </s:event> <s:event b:on="trad-Show"> <s:render b:destination="." b:mode="aslastchild"> <trad:GraphData /> </s:render> <s:task b:action="removeclass" b:value="hiddenCell" /> <s:task b:action="removeclass" b:value="hiddenCell" b:target="ancestor::trad:WindowContent/html()/table/thead/tr/td[2]" b:test="ancestor::trad:column/@b:ColWidth gt 1" /> <s:task b:action="set" b:target="ancestor::trad:window/@trad:showChart" b:value="0" /> </s:event> <s:event b:on="trad-Hide"> <s:task b:action="remove" b:target="trad:GraphData" /> <s:task b:action="addclass" b:value="hiddenCell" /> <s:task b:action="addclass" b:value="hiddenCell" b:target="ancestor::trad:WindowContent/html()/table/thead/tr/td[2]" b:test="ancestor::trad:column/@b:ColWidth gt 1" /> <s:task b:action="set" b:target="ancestor::trad:window/@trad:showChart" b:value="1" /> </s:event> </s:behavior> <s:behavior b:name="trad-GraphData"> <s:event b:on="construct"> <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=start&amp;Type=',ancestor::trad:window/@trad:chartType,'&amp;Name=', ancestor::trad:window/@name)}" b:data="{current-time()}" b:test="ancestor::trad:window/@trad:serverWin = '0'" /> <s:render b:destination="." b:mode="aslastchild" b:test="ancestor::trad:window/@trad:serverWin != '0'"> <div id="{concat('chart_table_', ancestor::trad:window/@id)}" class="chart_img"> <img alt="Graphique" id="{concat('chart_img_', ancestor::trad:window/@id)}" src="/tnapp/Styles/Img/loading.gif"/> </div> </s:render> </s:event> <s:event b:on="remove"> <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=stop&amp;Type=',ancestor::trad:window/@trad:chartType,'&amp;Name=', ancestor::trad:window/@name)}" b:data="{current-time()}" b:test="ancestor::trad:window/@trad:initDone='1'" /> </s:event> </s:behavior> <s:behavior b:name="trad-ListData"> <s:event b:on="construct"> <s:task b:action="trigger" b:event="trad-ShowHide" /> </s:event> <s:event b:on="trad-ShowHide"> <s:choose> <s:when b:test="ancestor::trad:window/@trad:showList='1'"> <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=start&amp;Type=',$TRAD_INDEX_LIST_TYPE,'&amp;Name=', ancestor::trad:window/@name)}" b:data="{current-time()}" b:test="ancestor::trad:window/@trad:serverWin = '0'" /> <s:task b:action="removeclass" b:value="hiddenCell" /> <s:task b:action="set" b:target="ancestor::trad:window/@trad:showList" b:value="0" /> <s:render b:destination="." b:mode="aslastchild" b:test="ancestor::trad:window/@trad:serverWin != '0'"> <table id="{concat('list_table_', ancestor::trad:window/@id)}" class="list_table"> <thead class="list_table_header" ><tr> <th b:cursor="pointer" b:action="sort">Name</th> <th b:cursor="pointer" b:action="sort">Last</th> <th b:cursor="pointer" b:action="sort">%</th> </tr></thead> <tbody id="{concat('table_body_', ancestor::trad:window/@id)}" b:instrument="{ancestor::trad:window/@id}" class="list_table" b:behavior="trad-inst-list-behavior" > </tbody></table> </s:render> </s:when> <s:otherwise> <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=stop&amp;Type=',$TRAD_INDEX_LIST_TYPE,'&amp;Name=', ancestor::trad:window/@name)}" b:data="{current-time()}" b:test="ancestor::trad:window/@trad:initDone='1'" /> <s:task b:action="addclass" b:value="hiddenCell" /> <s:task b:action="set" b:target="ancestor::trad:window/@trad:showList" b:value="1" /> </s:otherwise> </s:choose> </s:event> </s:behavior> <s:behavior b:name="trad-NewsData"> <s:event b:on="construct"> <s:task b:action="trigger" b:event="trad-ShowHide" /> </s:event> <s:event b:on="trad-ShowHide"> <s:choose> <s:when b:test="ancestor::trad:window/@trad:showNews='1'"> <s:choose> <s:when b:test="ancestor::trad:window/@name=$TRAD_NEWS_DEFAULT_NAME"> <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=start&amp;Type=',$TRAD_NEWS_HEADLINE_TYPE,'&amp;Name=', $TRAD_NEWS_DEFAULT_NAME, '&amp;Param=',$TRAD_NEWS_DEFAULT_PARAM)}" b:data="{current-time()}" b:test="ancestor::trad:window/@trad:serverWin = '0'" /> </s:when> <s:otherwise> <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=start&amp;Type=',$TRAD_NEWS_HEADLINE_TYPE,'&amp;Name=', ancestor::trad:window/@name, '&amp;Param=', ancestor::trad:window/@name)}" b:data="{current-time()}" b:test="ancestor::trad:window/@trad:serverWin = '0'" /> </s:otherwise> </s:choose> <s:render b:destination="." b:mode="aslastchild" b:test="ancestor::trad:window/@trad:serverWin != '0'"> <table id="{concat('news_table_', ancestor::trad:window/@id)}" class="news_table"> <thead class="news_table_header" ><tr> <th b:cursor="pointer" b:action="sort" class="table_date">Date</th> <th b:cursor="pointer" >News Header</th> </tr></thead> <tbody id="{concat('news_body_', ancestor::trad:window/@id)}" b:instrument="{ancestor::trad:window/@id}" class="list_table" b:behavior="trad-inst-news-behavior" > </tbody></table> </s:render> <s:task b:action="removeclass" b:value="hiddenCell" /> <s:task b:action="set" b:target="ancestor::trad:window/@trad:showNews" b:value="0" /> </s:when> <s:otherwise> <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=stop&amp;Type=',$TRAD_NEWS_HEADLINE_TYPE,'&amp;Name=', ancestor::trad:window/@name)}" b:data="{current-time()}" b:test="ancestor::trad:window/@trad:initDone='1'" /> <s:task b:action="addclass" b:value="hiddenCell" /> <s:task b:action="set" b:target="ancestor::trad:window/@trad:showNews" b:value="1" /> </s:otherwise> </s:choose> </s:event> </s:behavior> <s:behavior b:name="trad-AnalyseData"> <s:event b:on="construct"> <s:task b:action="trigger" b:event="trad-ShowHide" /> </s:event> <s:event b:on="trad-ShowHide"> <s:choose> <s:when b:test="ancestor::trad:window/@trad:showAnalyse='1'"> <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=start&amp;Type=',$TRAD_ANALYSE_HEADLINE_TYPE,'&amp;Name=', ancestor::trad:window/@name)}" b:data="{current-time()}" b:test="ancestor::trad:window/@trad:serverWin = '0'" /> <s.variable b:name="TickerCol" b:select="&gt;th b:cursor='pointer' b:action='sort'>Ticker&gt;/th>" /> <s:render b:destination="." b:mode="aslastchild" b:test="ancestor::trad:window/@trad:serverWin != '0' and ancestor::trad:window/@name='ANALYSES'"> <table id="{concat('analyse_table_', ancestor::trad:window/@id)}" class="analyse_table"> <thead class="news_table_header" ><tr> <th b:cursor="pointer" b:action="sort" class="table_date">Date</th><th></th> <th b:cursor="pointer" b:action="sort">Ticker</th> <th b:cursor="pointer" b:action="sort">Description</th> </tr></thead> <tbody id="{concat('analyse_body_', ancestor::trad:window/@id)}" b:instrument="{ancestor::trad:window/@id}" class="list_table" b:behavior="trad-inst-news-behavior" > </tbody></table> </s:render> <s:render b:destination="." b:mode="aslastchild" b:test="ancestor::trad:window/@trad:serverWin != '0' and ancestor::trad:window/@name!='ANALYSES'"> <table id="{concat('analyse_table_', ancestor::trad:window/@id)}" class="analyse_table"> <thead class="news_table_header" ><tr> <th b:cursor="pointer" b:action="sort" class="table_date">Date</th><th></th> <th b:cursor="pointer" b:action="sort">Description</th> </tr></thead> <tbody id="{concat('analyse_body_', ancestor::trad:window/@id)}" b:instrument="{ancestor::trad:window/@id}" class="list_table" b:behavior="trad-inst-news-behavior" > </tbody></table> </s:render> <s:task b:action="removeclass" b:value="hiddenCell" /> <s:task b:action="set" b:target="ancestor::trad:window/@trad:showAnalyse" b:value="0" /> </s:when> <s:otherwise> <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=stop&amp;Type=',$TRAD_ANALYSE_HEADLINE_TYPE,'&amp;Name=', ancestor::trad:window/@name)}" b:data="{current-time()}" b:test="ancestor::trad:window/@trad:initDone='1'" /> <s:task b:action="addclass" b:value="hiddenCell" /> <s:task b:action="set" b:target="ancestor::trad:window/@trad:showAnalyse" b:value="1" /> </s:otherwise> </s:choose> </s:event> </s:behavior> <s:htmlstructure b:name="trad:column" b:behavior="trad-column-behavior"> <div class="trad-column"> <s:innercontent /> </div> </s:htmlstructure> <s:behavior b:name="trad-column-behavior"> <s:initatt b:dragreceive="trad-window" b:ColWidth="1" trad:serverCol = "0" /> <s:event b:on="resize" > <s:task b:action="set" b:target="./style::left" b:value="{concat(sum(preceding-sibling::*/@b:ColWidth) * $TRAD_COL_WIDTH + (count(preceding-sibling::*) + 1) * $TRAD_COL_MARGIN, 'px')}" /> <s:task b:action="set" b:target="./style::width" b:value="{concat(@b:ColWidth * $TRAD_COL_WIDTH, 'px')}" /> <s:for-each b:target="./trad:window" > <s:task b:action="set" b:target="$_target/style::width" b:value="{concat((../@b:ColWidth * $TRAD_COL_WIDTH - 5), 'px')}" /> <s:task b:action="trigger" b:event="resize" b:target="$_target" b:usebehavior="trad-window" /> </s:for-each> <s:task b:action="trigger" b:event="resize" b:target="following-sibling::trad:column[1]" b:test="exists(following-sibling::trad:column)" /> </s:event> <s:event b:on="construct"> <s:render b:destination="." b:mode="asfirstchild"> <trad:column-header> <trad:column-insert /> <trad:column-delete /> <trad:column-enlarge /> <trad:column-reduce /> </trad:column-header> </s:render> <s:task b:action="set" b:target="./style::width" b:value="{concat(@b:ColWidth * $TRAD_COL_WIDTH, 'px')}" /> <s:task b:action="set" b:target="./style::left" b:value="{concat(sum(preceding-sibling::*/@b:ColWidth) * $TRAD_COL_WIDTH + (count(preceding-sibling::*) + 1) * $TRAD_COL_MARGIN, 'px')}" /> <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=CreateCol&amp;NewPos=', count(preceding-sibling::trad:column) + 1, ';', count(../preceding-sibling::div) + 1)}" b:data="{current-time()}" b:destination="$TRAD_DUMMY_TARGET" b:test="@trad:serverCol = '0'"/> </s:event> <s:event b:on="do-column-delete"> <s:for-each b:target="trad:window" > <s:task b:action="trigger" b:event="do-close" b:target="$_target" /> </s:for-each> <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=RemoveCol&amp;NewPos=', count(preceding-sibling::trad:column) + 1, ';', count(../preceding-sibling::div) + 1)}" b:data="{current-time()}" b:destination="$TRAD_DUMMY_TARGET" /> <s:task b:action="set" b:target="@b:ColWidth" b:value="0" /> <s:task b:action="trigger" b:event="resize" b:target="../trad:column[1]" /> <s:task b:action="remove" b:target="." /> </s:event> <s:event b:on="drag-receive"> <s:task b:action="set" b:target="$_dragCurrent/style::width" b:value="{./style::width}" /> <s:task b:action="move" b:source="$_dragCurrent" b:destination="id('TradWinDragDest')" b:mode="replace" /> </s:event> <s:event b:on="drag-enter"> <s:task b:action="move" b:source="id('TradWinDragDest')" b:destination="." b:mode="aslastchild" b:test="not(exists(./*[@id = $TRAD_Last_Win_Enter]))" /> </s:event> <s:event b:on="drag-reenter"> <s:task b:action="move" b:source="id('TradWinDragDest')" b:destination="." b:mode="aslastchild" b:test="exists(./*[@id = $TRAD_Last_Win_Enter and position() = last()] ) and $TRAD_Last_Win_Enter != 'TradWinDragDest'" /> </s:event> </s:behavior> <s:htmlstructure b:name="trad:column-header" b:behavior="trad-column-header"><div class="trad-column-header" ><s:innercontent /></div></s:htmlstructure> <s:htmlstructure b:name="trad:column-enlarge" b:behavior="trad-column-enlarge"><span class="trad-column-button trad-column-enlarge"></span></s:htmlstructure> <s:htmlstructure b:name="trad:column-reduce" b:behavior="trad-column-reduce" ><span class="trad-column-button trad-column-reduce"></span></s:htmlstructure> <s:htmlstructure b:name="trad:column-delete" b:behavior="trad-column-delete" ><span class="trad-column-button trad-column-delete"></span></s:htmlstructure> <s:htmlstructure b:name="trad:column-insert" b:behavior="trad-column-insert" ><span class="trad-column-button trad-column-insert"></span></s:htmlstructure> <s:behavior b:name="trad-column-header"> <s:event b:on="mouseenter" b:action="addclass" b:value="trad-column-header-hov" /> <s:event b:on="mouseleave" b:action="removeclass" b:value="trad-column-header-hov" /> </s:behavior> <s:behavior b:name="trad-column-enlarge"> <s:initatt b:tooltiptext="Enlarge" /> <s:event b:on="mouseenter" b:action="addclass" b:value="trad-column-header-button-hov" /> <s:event b:on="mouseleave" b:action="removeclass" b:value="trad-column-header-button-hov" /> <s:event b:on="click" > <s:if b:test="sum(../../../trad:column/@b:ColWidth) &lt; $TRAD_MAX_COL_COUNT" > <s:if b:test="../../@b:ColWidth &lt; $TRAD_MAX_COL_WIDTH" > <s:task b:action="set" b:target="../../@b:ColWidth" b:value="{../../@b:ColWidth + 1}" /> <s:task b:action="trigger" b:event="resize" b:target="../.." /> <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=ResizeCol&amp;NewPos=', ../../@b:ColWidth, ';', count(../../preceding-sibling::trad:column) + 1, ';', count(../../../preceding-sibling::div) + 1)}" b:data="{current-time()}" b:destination="$TRAD_DUMMY_TARGET" /> </s:if> </s:if> </s:event> </s:behavior> <s:behavior b:name="trad-column-reduce"> <s:initatt b:tooltiptext="Reduce" /> <s:event b:on="mouseenter" b:action="addclass" b:value="trad-column-header-button-hov" /> <s:event b:on="mouseleave" b:action="removeclass" b:value="trad-column-header-button-hov" /> <s:event b:on="click" > <s:if b:test="../../@b:ColWidth > 1" > <s:task b:action="set" b:target="../../@b:ColWidth" b:value="{../../@b:ColWidth - 1}" /> <s:task b:action="trigger" b:event="resize" b:target="../.." /> <s:task b:action="load" b:url="{concat('/tnapp/Query.php?Function=ResizeCol&amp;NewPos=', ../../@b:ColWidth, ';', count(../../preceding-sibling::trad:column) + 1, ';', count(../../../preceding-sibling::div) + 1)}" b:data="{current-time()}" b:destination="$TRAD_DUMMY_TARGET" /> </s:if> </s:event> </s:behavior> <s:behavior b:name="trad-column-delete"> <s:initatt b:tooltiptext="Delete" /> <s:event b:on="mouseenter" b:action="addclass" b:value="trad-column-header-button-hov" /> <s:event b:on="mouseleave" b:action="removeclass" b:value="trad-column-header-button-hov" /> <s:event b:on="click"> <s:if b:test="count(../../../trad:column) > 1" > <s:task b:action="trigger" b:event="do-column-delete" b:target="../.." /> </s:if> </s:event> </s:behavior> <s:behavior b:name="trad-column-insert"> <s:initatt b:tooltiptext="Insert" /> <s:event b:on="mouseenter" b:action="addclass" b:value="trad-column-header-button-hov" /> <s:event b:on="mouseleave" b:action="removeclass" b:value="trad-column-header-button-hov" /> <s:event b:on="click"> <s:if b:test="sum(../../../trad:column/@b:ColWidth) &lt; $TRAD_MAX_COL_COUNT" > <s:task b:action="render" b:destination="../.." b:mode="after" b:render="NewTradColumn" /> <s:task b:action="trigger" b:event="resize" b:target="../.." /> </s:if> </s:event> </s:behavior> <s:render b:name="NewTradColumn"> <trad:column /> </s:render> <!-- The trad:toolbar control is the place holder for: - Tab navigation - News window creation button - Analyse window creation button - Search box - Refresh button --> <s:htmlstructure b:name="trad:toolbar" b:behavior="trad-toolbar"> <div class="ToolBar"> <s:innercontent /> </div> </s:htmlstructure> <!-- New structure for search list --> <s:htmlstructure b:name="trad:search-list" b:behavior="trad-search-list" > <div class="trad-search-list" > <s:innercontent /> </div> </s:htmlstructure> <s:htmlstructure b:name="trad:search-button" b:behavior="trad-search-button" > <span class="trad-search-button" > Search </span> </s:htmlstructure> <s:htmlstructure b:name="trad:news-button" b:behavior="trad-news-button"> <div class="trad-news-button" /> </s:htmlstructure> <s:htmlstructure b:name="trad:analysis-button" b:behavior="trad-analysis-button"> <div class="trad-analysis-button" /> </s:htmlstructure> <s:htmlstructure b:name="trad:refresh-button" b:behavior="trad-refresh-button"> <div class="trad-refresh-button" /> </s:htmlstructure> <s:htmlstructure b:name="trad:tradingnews-logo" b:behavior="trad-tradingnews-logo"> <div class="trad-tradingnews-logo" /> </s:htmlstructure> <s:htmlstructure b:name="trad:reuters-logo" b:behavior="trad-reuters-logo"> <div class="trad-reuters-logo" /> </s:htmlstructure> <s:htmlstructure b:name="trad:disclamer" b:behavior="trad-disclamer"> <div class="trad-disclamer" > Disclamer </div> </s:htmlstructure> <s:behavior b:name="search-box" > <s:event b:on="construct"> <s:variable b:name="searchlistfocus" b:scope="global" b:select="0" /> </s:event> <s:whenactive> <s:keys b:keys="enter" > <s:task b:action="trigger" b:event="command" b:target="../trad:search-button" b:usebeahvior="trad-search-button" /> <s:task b:action="trigger" b:event="hide-search-list" b:usebeahvior="trad-search-list" b:target="../../../trad:search-list" /> </s:keys> </s:whenactive> <s:event b:on="keyup"> <s:task b:action="blur" /> <s:task b:action="focus" /> <s:task b:action="load" b:url="{concat('/tnapp/phpClass/loadSearchList.php?wordTry=',./@value)}" b:destination="id('search-list')" b:data="{current-time()}" b:test="./@value!=''" /> <s:task b:action="trigger" b:event="hide-search-list" b:usebeahvior="trad-search-list" b:target="../../../trad:search-list" b:test="./@value=''" /> </s:event> <s:event b:on="blur"> <s:task b:action="trigger" b:event="hide-search-list" b:usebeahvior="trad-search-list" b:target="../../../trad:search-list" b:test="$searchlistfocus='0'" /> </s:event> </s:behavior> <s:behavior b:name="trad-search-list"> <s:event b:on="receive"> <s:task b:action="msg" b:value="Recieve" /> <s:setstyle b:display="block" /> </s:event> <!-- New event for hidding div search list --> <s:event b:on="hide-search-list"> <s:setstyle b:display="none" /> </s:event> </s:behavior> <s:behavior b:name="trad-toolbar" > <s:event b:on="construct" > <s:render b:destination="." b:mode="aslastchild" > <div class="tool-bar-button"> <!-- <trad:disclamer /> --> <trad:news-button /> <trad:analysis-button /> <input class="trad-search-text" type="text" name="query" id="search-input" b:behavior="search-box" /> <trad:search-button /> <!-- <trad:refresh-button /> --> <trad:reuters-logo /> </div> </s:render> </s:event> </s:behavior> <s:behavior b:name="trad-search-button"> <s:event b:on="command"> <s:task b:action="blur" /> <s:variable b:name="CurrentId" b:select="upper-case(../input/@value)"/> <s:task b:action="trigger" b:event="add-window" /> <s:task b:action="set" b:target="//input[@name='query']/@value" b:value="" /> <s:task b:action="trigger" b:event="hide-search-list" b:usebeahvior="trad-search-list" b:target="../../../trad:search-list" /> </s:event> <s:event b:on="add-window"> <s:if b:test="count(//b:deck/div[@b:state='selected']//trad:window) &lt; $TRAD_MAX_WIN_COUNT" > <s:choose> <s:when b:test="not(exists(//trad:window[@name=$CurrentId]))" > <s:render b:destination="//b:deck/div[@b:state='selected']/trad:column[1]/trad:column-header" b:mode="after" > <trad:window id="{upper-case($CurrentId)}" name="{upper-case($CurrentId)}" trad:MainType= "601" /> </s:render> </s:when> <s:otherwise> <s:task b:action="select" b:target="//trad:window[@name=$CurrentId]" /> </s:otherwise> </s:choose> </s:if> </s:event> </s:behavior> <s:behavior b:name="trad-news-button"> <s:initatt b:tooltiptext="Display News" /> <s:event b:on="mouseenter"> <s:task b:action="addclass" b:value="trad-tool-button-hov" /> </s:event> <s:event b:on="mouseleave"> <s:task b:action="removeclass" b:value="trad-tool-button-hov" /> </s:event> <s:event b:on="command"> <s:variable b:name="CurrentId" b:select="$TRAD_NEWS_DEFAULT_NAME"/> <s:choose> <s:when b:test="not(exists(//trad:window[@name=$CurrentId]))" > <s:render b:destination="//b:deck/div[@b:state='selected']/trad:column[1]/trad:column-header" b:mode="after" > <trad:window id="{upper-case($CurrentId)}" name="{upper-case($CurrentId)}" trad:MainType= "400" trad:hasQuote = "0" trad:hasChart = "0" trad:hasNews = "1" trad:hasAnalyse = "0" trad:showQuote="0" trad:showNews="1" /> </s:render> </s:when> <s:otherwise> <s:task b:action="select" b:target="//trad:window[@name=$CurrentId]" /> </s:otherwise> </s:choose> </s:event> </s:behavior> <s:behavior b:name="trad-analysis-button"> <s:initatt b:tooltiptext="Display Analysis" /> <s:event b:on="mouseenter"> <s:task b:action="addclass" b:value="trad-tool-button-hov" /> </s:event> <s:event b:on="mouseleave"> <s:task b:action="removeclass" b:value="trad-tool-button-hov" /> </s:event> <s:event b:on="command"> <s:variable b:name="CurrentId" b:select="'ANALYSES'"/> <s:choose> <s:when b:test="not(exists(//trad:window[@name=$CurrentId]))" > <s:render b:destination="//b:deck/div[@b:state='selected']/trad:column[1]/trad:column-header" b:mode="after" > <trad:window id="{upper-case($CurrentId)}" name="{upper-case($CurrentId)}" trad:MainType= "299" trad:hasQuote = "0" trad:hasChart = "0" trad:hasNews = "0" trad:hasAnalyse = "1" trad:showQuote="0" trad:showAnalyse="1" /> </s:render> </s:when> <s:otherwise> <s:task b:action="select" b:target="//trad:window[@name=$CurrentId]" /> </s:otherwise> </s:choose> </s:event> </s:behavior> <s:behavior b:name="trad-refresh-button"> </s:behavior> <s:behavior b:name="trad-tradingnews-logo"> </s:behavior> <s:behavior b:name="trad-reuters-logo"> </s:behavior> <s:behavior b:name="trad-disclamer"> <s:event b:on="command"> <s:render b:destination="/*" b:mode="aslastchild"> <trad:popup-window id="popup-win" trad:title="Trading News"> <trad:popup-windowbody> <div id="Disclaimer" > <h1>Legal disclaimer</h1> <h2