Ignore:
Timestamp:
02/16/13 10:31:37 (11 years ago)
Author:
István Váradi <ivaradi@…>
Branch:
default
hg-Phase:
(<MercurialRepository 3 'hg:/home/ivaradi/xplane/hg/xplra' '/'>, 'public')
Message:

Added scrolling the message if needed

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/plugin/src/xplra/MessageWindow.cc

    r50 r51  
    7979    maxMessageLength(0),
    8080    showForced(false),
     81    showTime(0.0),
    8182    hideTime(0.0),
    8283    clickedX(-1),
     
    146147    float d = getNewMessage(displayedMessage);
    147148    if (d>0.0) {
     149        showTime = now;
    148150        hideTime = now + d;
    149151    }
     
    156158        XPLMDrawTranslucentDarkBox(left, top, right, bottom);
    157159        if (hideTime!=0.0) {
    158 
    159             string dm(displayedMessage, 0, maxMessageLength);
     160            size_t offset = 0;
     161            if  (displayedMessage.size()>maxMessageLength &&
     162                 now > (showTime + scrollTimeout) )
     163            {
     164                offset = (now - showTime - scrollTimeout) /
     165                    scrollInterval;
     166                offset = min(offset,
     167                             displayedMessage.size() - maxMessageLength);
     168            }
     169
     170            string dm(displayedMessage, offset, maxMessageLength);
    160171
    161172            XPLMDrawString(colour,
Note: See TracChangeset for help on using the changeset viewer.