void CXTPFlowGraphImage::SetBitmap(HBITMAP hBitmap) { SAFE_DELETE(m_pImage); m_pImage = new Gdiplus::Bitmap(hBitmap, 0); ImageChanged(); }
void Viewer::Rotate(Filter::RotationAngle r) { m_viewPort.Rotate(r); UpdateImageInformation(); ImageChanged(); m_viewPort.ImageUpdated(); }
void CXTPFlowGraphImage::SetIcon(HICON hIcon) { SAFE_DELETE(m_pImage); m_pImage = new Gdiplus::Bitmap(hIcon); ImageChanged(); }
void CXTPFlowGraphImage::LoadFromFile(LPCTSTR lpszFileName) { SAFE_DELETE(m_pImage); m_pImage = new Gdiplus::Bitmap(XTP_CT2CW(lpszFileName)); ImageChanged(); }
void JXImageMenuData::SetImage ( const JIndex index, JXImage* image, const JBoolean menuOwnsImage ) { assert( image != NULL ); IconData itemData = itsIconData->GetElement(index); if (itemData.image == NULL || (itemData.image->GetBounds()) != image->GetBounds()) { itsNeedGeomRecalcFlag = kJTrue; } if (itemData.ownsImage) { delete itemData.image; } itemData.image = image; itemData.ownsImage = menuOwnsImage; itsIconData->SetElement(index, itemData); Broadcast(ImageChanged(index)); }
void JXTextMenuData::SetImageID ( const JIndex index, JIndex imageID ) { if (imageID == 0) { ClearImageID(index); return; } TextItemData itemData = itsTextItemData->GetElement(index); if (itemData.imageID == 0) { itsNeedGeomRecalcFlag = kJTrue; } itemData.imageID = imageID; itsTextItemData->SetElement(index, itemData); Broadcast(ImageChanged(index)); }
void CXTPFlowGraphImage::LoadFromResource(HINSTANCE hInstance, LPCTSTR lpszResourceName, LPCTSTR lpszResourceType) { SAFE_DELETE(m_pImage); CXTPFlowGraphResourceStream st(hInstance, lpszResourceName, lpszResourceType); if (st.m_pStream != NULL) { m_pImage = new Gdiplus::Bitmap(st.m_pStream, FALSE); } ImageChanged(); }
void Viewer::ViewportMode(ScreenMode newMode) { if (m_screenMode == newMode) { return; } m_screenMode = newMode; if (newMode == Viewer::SM_Fullscreen) { m_userInitiatedMove = false; wxDisplay mon(DisplayFromPointFallback(PositionScreen())); m_statusBar->Show(false); m_previousWindowStyle = GetWindowStyle(); SetWindowStyleFlag(wxBORDER_NONE); m_previousWindowRegion = wxToRect(GetRect()); auto monRegion = wxToRect(mon.GetClientArea()); SetSize(monRegion.Left(), monRegion.Top(), monRegion.Width(), monRegion.Height()); m_viewPort.ActiveCursorMode(ViewPort::CursorHideAutomatic); Raise(); m_userInitiatedMove = true; } else { m_userInitiatedMove = false; SetWindowStyleFlag(m_previousWindowStyle); m_statusBar->Show(m_cfg.View.ShowStatusBar); SetSize(m_previousWindowRegion.Left(), m_previousWindowRegion.Top(), m_previousWindowRegion.Width(), m_previousWindowRegion.Height()); m_viewPort.ActiveCursorMode(ViewPort::CursorShow); m_userInitiatedMove = true; } // Make sure that the settings and adjust dialogs are on top (if running) InitDialogs(); if (m_settings->IsVisible()) { ShowSettings(); } if (m_adjust->IsVisible()) { ShowAdjust(); } ImageChanged(); UpdateImageInformation(); }
void Viewer::SettingsChanged() { Reg::Save(cg_SettingsLocation, m_cfg); m_cacher.WrapAround(m_cfg.View.BrowseWrapAround); m_keys.SetBindings(m_cfg.Keyboard); m_statusBar->Show(m_cfg.View.ShowStatusBar && ViewportMode() != SM_Fullscreen); UpdateViewportConfig(); UpdateMemoryLimits(); m_viewPort.Refresh(); AlwaysOnTop(m_cfg.View.AlwaysOnTop); ImageChanged(); }
void Viewer::ActiveImage(Img::Image::Ptr pImage) { if (m_viewPort.Image() == pImage) { return; } m_viewPort.Image(pImage); if (m_cfg.View.ResetZoom) { ZoomMode(m_cfg.View.DefaultZoomMode); UpdateImageInformation(); } else { ImageChanged(); } }
void Viewer::ZoomMode(App::ZoomMode mode) { m_viewPort.ZoomMode(mode); switch (mode) { case App::ZoomFitImage: m_contextMenu.FitImage(); break; case App::ZoomFullSize: case App::ZoomFree: m_contextMenu.Zoomed(true); break; } ImageChanged(); UpdateImageInformation(); }
void Viewer::OnImageLoadEvent(wxCommandEvent &e) { std::unique_lock<std::mutex> l(m_mutexNotification); if (m_cacheNotifications.empty()) { DO_THROW(Err::CriticalError, "Notification queue is empty."); } CacheNotification notification = m_cacheNotifications.front(); m_cacheNotifications.pop_front(); l.unlock(); if (notification.message == Img::MessageReceiver::LoadErrorCritical) { /*m_exceptionDescription = notification.desc; m_exceptionOcurred = true; PostMessage(Handle(), WM_CLOSE, 0, 0);*/ } if (notification.image == m_viewPort.Image().get()) { switch (notification.message) { case Img::MessageReceiver::LoadDone: m_viewPort.ImageUpdated(); UpdateImageInformation(); m_viewPort.Refresh(); break; case Img::MessageReceiver::LoadAllocated: m_viewPort.ImageUpdated(); ImageChanged(); break; case Img::MessageReceiver::LoadHeader: UpdateImageInformation(); break; case Img::MessageReceiver::LoadErrorImage: UpdateImageInformation(); break; } if (m_attemptToShow && notification.message >= Img::MessageReceiver::LoadAllocated) { Show(true); } } }
void Viewer::ZoomOut() { m_viewPort.ZoomOut(); m_contextMenu.Zoomed(std::fabs(m_viewPort.ZoomLevel() - 1.0) < std::numeric_limits<float>::epsilon()); ImageChanged(); UpdateImageInformation(); }
void CXTPFlowGraphImage::LoadFromResource(HINSTANCE hInstance, UINT nResourceName) { SAFE_DELETE(m_pImage); m_pImage = new Gdiplus::Bitmap(hInstance, MAKEINTRESOURCEW(nResourceName)); ImageChanged(); }