/************************************* * Constructor *************************************/ SHVControlWrapperWin32::SHVControlWrapperWin32(SHVGUIManager* manager, HWND hWnd) : SHVControl(manager,new SHVControlImplementerWrapperWin32()) { SetHandle(hWnd); }
//************************************************************************** // EXPORTED FUNCTIONS //************************************************************************** static void Initialize(JNIEnv *env, jobject obj) { vx_context context = vxCreateContext(); SetHandle(env, obj, ContextClass, handleName, (jlong)context); }
static void Release(JNIEnv *env, jobject obj) { vx_target t = (vx_target)GetHandle(env, obj, TargetClass, handleName); vxReleaseTarget(&t); SetHandle(env, obj, TargetClass, handleName, 0); }
/** * * Extracts details pertaining to a window * * @param WindowObj - Window data * @return void * @exception Nil * @see Nil * @since 1.0 */ void Window::ExtractWindowDetails( const HWND hWnd_i ) { // Set window handle SetHandle( hWnd_i ); // Set thread id of window SetThreadId( ::GetWindowThreadProcessId( GetHandle(), 0 )); // Get class name of window TCHAR szBuffer[MAX_PATH] = { 0 }; ::GetClassName( GetHandle(), szBuffer, MAX_PATH ); GetClassName() = szBuffer; GetClass().cbSize = sizeof( GetClass() ); GetClassInfoEx( AfxGetInstanceHandle(), szBuffer, &GetClass() ); // Get window text if any InternalGetWindowText( GetHandle(), GetTitle().GetBufferSetLength( MAX_PATH ), MAX_PATH ); GetTitle().ReleaseBuffer(); // Get normal style SetStyle( GetWindowLong( GetHandle(), GWL_STYLE )); // Get extended style SetStyleEx( GetWindowLong( GetHandle(), GWL_EXSTYLE )); // Get window id SetId( GetWindowLong( GetHandle(), GWL_ID )); // Get parent window SetParentHandle( RCAST( HWND, GetWindowLong( GetHandle(), GWL_HWNDPARENT ))); // Window state i.e. window is maximized, minimized or restored GetStateAsString( GetState() ); // For style parsing RetrieveWndStyles(); // Window bounds CRect crBounds; GetWindowRect( GetHandle(), &crBounds ); if( crBounds.Width() || crBounds.Height() ) { GetBounds().Format( _T( "L:%d T:%d R:%d B:%d" ), crBounds.left, crBounds.top, crBounds.right, crBounds.bottom ); }// End if // Retrieves unicode support status for windows SetUnicode( IsWindowUnicode( GetHandle() )); // Get window icon DWORD dwResult = 0; Utils::SndMsgTimeOutHelper( GetHandle(), WM_GETICON, ICON_SMALL, 0, dwResult ); // Get window icon SetIcon( RCAST( HICON, dwResult )); // Get enabled status of window SetEnabled( IsWindowEnabled( GetHandle() )); }// End ExtractWindowDetails