/* * InvokeColSelHook - invoke column hook with specified data */ vi_rc InvokeColSelHook( int sc, int ec ) { int j, i; char wordbuff[MAX_STR]; char data[MAX_STR + 32]; int lne; #ifndef __WIN__ int x1; int has_bord; #endif #ifndef __WIN__ has_bord = WindowAuxInfo( CurrentWindow, WIND_INFO_HAS_BORDER ); x1 = WindowAuxInfo( CurrentWindow, WIND_INFO_X1 ); if( LastEvent != VI_KEY( MOUSEEVENT ) ) { lne = WindowAuxInfo( CurrentWindow, WIND_INFO_Y1 ) + CurrentPos.line - LeftTopPos.line; if( has_bord ) { ++lne; } } else { lne = MouseRow; } #else if( LastEvent != VI_KEY( FAKEMOUSE ) ) { lne = (CurrentPos.line - LeftTopPos.line) * FontHeight( WIN_FONT( &EditWindow ) ); } else { lne = MouseY; } #endif j = 0; if( ec - sc >= MAX_STR ) { ec = sc + MAX_STR - 2; } for( i = sc - 1; i <= ec - 1; i++ ) { wordbuff[j++] = CurrentLine->data[i]; } wordbuff[j] = 0; #ifndef __WIN__ sc = x1 + VirtualColumnOnCurrentLine( sc ) - LeftTopPos.column; ec = x1 + VirtualColumnOnCurrentLine( ec ) - LeftTopPos.column; if( !has_bord ) { sc--; ec--; } #else sc = MyTextExtent( CurrentWindow, WIN_STYLE( &EditWindow ), &CurrentLine->data[0], sc ); ec = MyTextExtent( CurrentWindow, WIN_STYLE( &EditWindow ), &CurrentLine->data[0], ec ); #endif MySprintf( data, "\"%s\" %d %d %d %d", wordbuff, lne, sc, ec, ec - sc + 1 ); return( SourceHookData( SRC_HOOK_MOUSE_CHARSEL, data ) ); } /* InvokeColSelHook */
static void msgString( int line_no, char *str ) { int height; RECT rect; HDC hdc; if( !AllowDisplay || BAD_ID( MessageWindow ) ) { return; } GetClientRect( MessageWindow, &rect ); height = FontHeight( WIN_FONT( &MessageBar ) ); rect.top += (line_no - 1) * height; rect.bottom = rect.top + height; hdc = TextGetDC( MessageWindow, WIN_STYLE( &MessageBar ) ); FillRect( hdc, &rect, ColorBrush( WIN_BACKCOLOR( &MessageBar ) ) ); TextReleaseDC( MessageWindow, hdc ); WriteString( MessageWindow, 0, rect.top, WIN_STYLE( &MessageBar ), str ); }
WINDOW_TABLE(MMI_PEEK_MAIL_SAVED_WIN_TAB) = { WIN_ID(MMI_PEEK_MAIL_SAVED_WIN_ID), WIN_FUNC((uint32)HandlePeekMailSavedWinMsg), WIN_TITLE(TXT_PEEKMAIL_SAVED_TITLE), CREATE_LISTBOX_CTRL(GUILIST_TEXTLIST_E, MMI_PEEK_MAIL_SAVED_CTRL_ID), WIN_SOFTKEY(TXT_PEEKMAIL_MENU, TXT_PEEKMAIL_VIEW, TXT_PEEKMAIL_BACK), END_WIN }; // Saved Menu (left softkey) WINDOW_TABLE( MMI_PEEK_MAIL_SAVED_MENU_TAB ) = { WIN_ID(MMI_PEEK_MAIL_SAVED_MENU_WIN_ID), WIN_FUNC((uint32)HandlePeekMailSavedMenuWinMsg), WIN_STYLE( WS_HAS_TRANSPARENT), CREATE_POPMENU_CTRL(MENU_PEEKMAIL_SAVED_MENU, MMI_PEEK_MAIL_SAVED_MENU_CTRL_ID), WIN_SOFTKEY(STXT_OK,TXT_NULL,STXT_RETURN), END_WIN }; MMIPEEKMAIL_WINDOW_ID_E g_win_id_save = MMI_PEEK_MAIL_SAVED_WIN_ID; /**--------------------------------------------------------------------------* ** FUNCTION DEFINITION * **--------------------------------------------------------------------------*/ /*****************************************************************************/ // Description : open hello peek windows // Global resource dependence : // Author: Song,Han