Exemplo n.º 1
0
void DoUnloadCamera() {
	if ( !GetCurrentCam() ) {
		return;
	}

	if ( !GetCurrentCam()->HasBeenSaved() ) {
		char buf[PATH_MAX + 64];
		sprintf( buf, "Do you want to save the changes for camera '%s'?", GetCurrentCam()->GetCam()->getName() );
		if ( g_FuncTable.m_pfnMessageBox( (GtkWidget *)g_pRadiantWnd, buf, "Warning", MB_YESNO, NULL ) == IDYES ) {
			DoSaveCamera();
		}
	}
	else if ( GetCurrentCam()->HasBeenSaved() == 2 ) {
		char buf[PATH_MAX + 64];
		sprintf( buf, "Do you want to save the changes made to camera file '%s'?", GetCurrentCam()->GetFileName() );
		if ( g_FuncTable.m_pfnMessageBox( (GtkWidget *)g_pRadiantWnd, buf, "Warning", MB_YESNO, NULL ) == IDYES ) {
			DoSaveCamera();
		}
	}

	if ( g_pCurrentEditCam ) {
		DoStopEdit();
		g_pCurrentEditCam = NULL;
	}

	FreeCam( GetCurrentCam() );
	SetCurrentCam( NULL );
	RefreshCamListCombo();
}
Exemplo n.º 2
0
static gint ci_close( GtkWidget *widget, gpointer data )
{
  gtk_widget_hide( g_pCameraInspectorWnd );

  // exit edit mode
  DoStopEdit();

  return TRUE;
}
Exemplo n.º 3
0
void DoStartEdit( CCamera *cam ) {
  if( g_pCurrentEditCam ) {
    DoStopEdit();
    g_pCurrentEditCam = NULL;
  }

  if( cam ) {
    g_bEditOn = true;

    if( !Listener )
      Listener = new CListener;

    cam->GetCam()->startEdit( g_iActiveTarget < 0 ? true : false );

    g_pCurrentEditCam = cam;

    g_FuncTable.m_pfnSysUpdateWindows( W_XY_OVERLAY | W_CAMERA );
  }
}