Exemplo n.º 1
0
ChoiceBookWrapper::ChoiceBookWrapper()
    : NotebookBaseWrapper(ID_WXCHOICEBOOK)
{
    RegisterEvent(wxT("wxEVT_COMMAND_CHOICEBOOK_PAGE_CHANGED"), wxT("wxChoicebookEvent"),
                  _("The page selection was changed"));
    RegisterEvent(wxT("wxEVT_COMMAND_CHOICEBOOK_PAGE_CHANGING"), wxT("wxChoicebookEvent"),
                  _("The page selection is about to be changed. This event can be vetoed"));

    SetPropertyString(_("Common Settings"), "wxChoicebook");
    m_namePattern = wxT("m_choicebook");
    SetName(GenerateName());
}
Exemplo n.º 2
0
Keyboard::Keyboard()
  : ManMachineInterface()
  , modifier_bits(0)
  , modifier_only_bits(0)
{
  //Disable repeated events when a key is kept down
  SDL_EnableKeyRepeat(0,0);
  SetDefaultConfig();

  // Registring SDL event
  RegisterEvent(SDL_KEYDOWN);
  RegisterEvent(SDL_KEYUP);
}
Exemplo n.º 3
0
ToolBookWrapper::ToolBookWrapper()
    : NotebookBaseWrapper(ID_WXTOOLBOOK)
{
    SetPropertyString(_("Common Settings"), "wxToolbook");
#if wxVERSION_NUMBER > 2900
    PREPEND_STYLE_TRUE(wxTBK_BUTTONBAR);
    PREPEND_STYLE_FALSE(wxTBK_HORZ_LAYOUT);
#endif

    RegisterEvent(wxT("wxEVT_COMMAND_TOOLBOOK_PAGE_CHANGED"), wxT("wxToolbookEvent"),
                  _("The page selection was changed"));
    RegisterEvent(wxT("wxEVT_COMMAND_TOOLBOOK_PAGE_CHANGING"), wxT("wxToolbookEvent"),
                  _("The page selection is about to be changed. This event can be vetoed"));
    m_namePattern = wxT("m_toolbook");
    SetName(GenerateName());
}
Exemplo n.º 4
0
HyperLinkCtrlWrapper::HyperLinkCtrlWrapper()
    : wxcWidget(ID_WXHYPERLINK)
{
    PREPEND_STYLE_FALSE(wxHL_ALIGN_LEFT);
    PREPEND_STYLE_FALSE(wxHL_ALIGN_RIGHT);
    PREPEND_STYLE_FALSE(wxHL_ALIGN_CENTRE);
    PREPEND_STYLE_FALSE(wxHL_CONTEXTMENU);
    PREPEND_STYLE_TRUE(wxHL_DEFAULT_STYLE);

    RegisterEvent(wxT("wxEVT_COMMAND_HYPERLINK"), wxT("wxHyperlinkEvent"),
                  _("The hyperlink was (left) clicked. If this event is not handled in user's code (or it's skipped; "
                    "see wxEvent::Skip)\nthen a call to wxLaunchDefaultBrowser is done with the hyperlink's URL."));

    SetPropertyString(_("Common Settings"), "wxHyperLinkCtrl");
    AddProperty(new StringProperty(PROP_LABEL, wxT("codelite IDE"), _("The label of the hyperlink")));
    AddProperty(
        new StringProperty(PROP_URL, wxT("http://www.codelite.org"), _("The URL associated with the given label")));
    AddProperty(
        new ColorProperty(PROP_NORMAL_COLOR, wxT("#0000FF"),
                          _("Sets the colour used to print the label when the link has never been clicked "
                            "before\n(i.e. the link has not been visited) and the mouse is not over the control.")));
    AddProperty(new ColorProperty(PROP_VISITED_COLOR, wxT("#FF0000"),
                                  _("Sets the colour used to print the label when the mouse is not over the control "
                                    "and the link has already been clicked before\n(i.e. the link has been visited)")));
    AddProperty(new ColorProperty(
        PROP_HOVER_COLOR, wxT("#0000FF"),
        _("Sets the colour used to print the label of the hyperlink when the mouse is over the control")));

    m_namePattern = wxT("m_hyperLink");
    SetName(GenerateName());
}
Exemplo n.º 5
0
ConnectionDispatcherTask::ConnectionDispatcherTask(int num_handlers,
                                                   int listen_fd)
    : NotifiableTask(MASTER_THREAD_ID), next_handler_(0) {
  RegisterEvent(
      listen_fd, EV_READ | EV_PERSIST,
      METHOD_AS_CALLBACK(ConnectionDispatcherTask, DispatchConnection), this);
  RegisterSignalEvent(SIGHUP, METHOD_AS_CALLBACK(NotifiableTask, ExitLoop),
                      this);

  // TODO(tianyu) Figure out what this initialization logic is doing and
  // potentially rewrite
  // register thread to epoch manager.
  if (concurrency::EpochManagerFactory::GetEpochType() ==
      EpochType::DECENTRALIZED_EPOCH) {
    for (size_t task_id = 0; task_id < (size_t)num_handlers; task_id++) {
      concurrency::EpochManagerFactory::GetInstance().RegisterThread(task_id);
    }
  }

  // create worker threads.
  for (int task_id = 0; task_id < num_handlers; task_id++) {
    auto handler = std::make_shared<ConnectionHandlerTask>(task_id);
    handlers_.push_back(handler);
    thread_pool.SubmitDedicatedTask([=] { handler->EventLoop(); });
  }
}
Exemplo n.º 6
0
TaskBarIconWrapper::TaskBarIconWrapper()
    : wxcWidget(ID_WXTASKBARICON)
{
    m_styles.Clear();
    AddText(PROP_TOOLTIP, _("Set the wxTaskBarIcon tooltip"));
    wxArrayString types;
    types.Add("wxTBI_DEFAULT_TYPE");
    types.Add("wxTBI_DOCK");
    types.Add("wxTBI_CUSTOM_STATUSITEM");

    SetPropertyString(_("Common Settings"), "wxTaskBarIcon");
    AddProperty(
        new ChoiceProperty(PROP_TASKBAR_ICONTYPE, types, 0, _("The iconType is only applicable on wxOSX_Cocoa")));
    AddProperty(new BitmapPickerProperty(PROP_BITMAP_PATH, "", _("Set the wxTaskBarIcon icon")));

    RegisterEvent("wxEVT_TASKBAR_MOVE", "wxTaskBarIconEvent", _("Process a wxEVT_TASKBAR_MOVE event"));
    RegisterEvent("wxEVT_TASKBAR_LEFT_DOWN", "wxTaskBarIconEvent", _("Process a wxEVT_TASKBAR_LEFT_DOWN event"));
    RegisterEvent("wxEVT_TASKBAR_LEFT_UP", "wxTaskBarIconEvent", _("Process a wxEVT_TASKBAR_LEFT_UP event"));
    RegisterEvent("wxEVT_TASKBAR_RIGHT_DOWN", "wxTaskBarIconEvent", _("Process a wxEVT_TASKBAR_RIGHT_DOWN event"));
    RegisterEvent("wxEVT_TASKBAR_RIGHT_UP", "wxTaskBarIconEvent", _("Process a wxEVT_TASKBAR_RIGHT_UP event"));
    RegisterEvent("wxEVT_TASKBAR_LEFT_DCLICK", "wxTaskBarIconEvent", _("Process a wxEVT_TASKBAR_LEFT_DCLICK event"));
    RegisterEvent("wxEVT_TASKBAR_RIGHT_DCLICK", "wxTaskBarIconEvent", _("Process a wxEVT_TASKBAR_RIGHT_DCLICK event"));

    m_namePattern = "m_taskBarIcon";
    SetName(GenerateName());
}
Exemplo n.º 7
0
void Init()
{
	downcount = maxSliceLength;
	slicelength = maxSliceLength;
	globalTimer = 0;
	idledCycles = 0;
	
	ev_lost = RegisterEvent("_lost_event", &EmptyTimedCallback);
}
Exemplo n.º 8
0
ActivityrIndicatorWrapper::ActivityrIndicatorWrapper()
    : wxcWidget(ID_WXACTIVITYINDICATOR)
{
    RegisterEvent(wxT("wxEVT_COMMAND_BUTTON_CLICKED"), wxT("wxCommandEvent"),
                  _("Process a wxEVT_COMMAND_BUTTON_CLICKED event, when the button is clicked."),
                  wxT("wxCommandEventHandler"));
    m_namePattern = wxT("m_activityCtrl");
    SetPropertyString(_("Common Settings"), "wxActivityIndicator");
    SetName(GenerateName());
}
Exemplo n.º 9
0
void Init()
{
	lastOCFactor = SConfig::GetInstance().m_OCEnable ? SConfig::GetInstance().m_OCFactor : 1.0f;
	PowerPC::ppcState.downcount = CyclesToDowncount(maxSliceLength);
	slicelength = maxSliceLength;
	globalTimer = 0;
	idledCycles = 0;

	ev_lost = RegisterEvent("_lost_event", &EmptyTimedCallback);
}
Exemplo n.º 10
0
EventID CEventManager::RegisterEvent(string szEventName, IComponent* pcListener,
									 void(*pfCallback)(IEvent*, IComponent*))
{
	// Convert string to int
	EventID nEventID = CIDGen::GetInstance()->GetID(szEventName);

	// Register the Listener
	RegisterEvent(nEventID, pcListener, pfCallback);

	return nEventID;
}
Exemplo n.º 11
0
void Init()
{
	s_lastOCFactor = SConfig::GetInstance().m_OCEnable ? SConfig::GetInstance().m_OCFactor : 1.0f;
	g_lastOCFactor_inverted = 1.0f / s_lastOCFactor;
	PowerPC::ppcState.downcount = CyclesToDowncount(maxslicelength);
	g_slicelength = maxslicelength;
	g_globalTimer = 0;
	idledCycles = 0;
	globalTimerIsSane = true;

	ev_lost = RegisterEvent("_lost_event", &EmptyTimedCallback);
}
Exemplo n.º 12
0
void Init() {
    downcount = MAX_SLICE_LENGTH;
    slice_length = MAX_SLICE_LENGTH;
    global_timer = 0;
    idled_cycles = 0;

    // The time between CoreTiming being intialized and the first call to Advance() is considered
    // the slice boundary between slice -1 and slice 0. Dispatcher loops must call Advance() before
    // executing the first cycle of each slice to prepare the slice length and downcount for
    // that slice.
    is_global_timer_sane = true;

    event_fifo_id = 0;
    ev_lost = RegisterEvent("_lost_event", &EmptyTimedCallback);
}
Exemplo n.º 13
0
ColourPickerWrapper::ColourPickerWrapper()
    : wxcWidget(ID_WXCOLORPICKER)
{

    PREPEND_STYLE(wxCLRP_DEFAULT_STYLE, true);
    PREPEND_STYLE(wxCLRP_USE_TEXTCTRL, false);
    PREPEND_STYLE(wxCLRP_SHOW_LABEL, false);

    SetPropertyString(_("Common Settings"), "wxColourPickerCtrl");
    AddProperty(new ColorProperty(PROP_VALUE, wxT("<Default>"), _("Colour")));
    RegisterEvent(wxT("wxEVT_COMMAND_COLOURPICKER_CHANGED"), wxT("wxColourPickerEvent"),
                  _("The user changed the colour selected in the control either using the button or using text "
                    "control\n(see wxCLRP_USE_TEXTCTRL; note that in this case the event is fired only if the user's "
                    "input is valid, i.e. recognizable)."));

    m_namePattern = wxT("m_colourPicker");
    SetName(GenerateName());
}
Exemplo n.º 14
0
void Init()
{
    s_last_OC_factor = SConfig::GetInstance().m_OCEnable ? SConfig::GetInstance().m_OCFactor : 1.0f;
    g_last_OC_factor_inverted = 1.0f / s_last_OC_factor;
    PowerPC::ppcState.downcount = CyclesToDowncount(MAX_SLICE_LENGTH);
    g_slice_length = MAX_SLICE_LENGTH;
    g_global_timer = 0;
    s_idled_cycles = 0;

    // The time between CoreTiming being intialized and the first call to Advance() is considered
    // the slice boundary between slice -1 and slice 0. Dispatcher loops must call Advance() before
    // executing the first PPC cycle of each slice to prepare the slice length and downcount for
    // that slice.
    s_is_global_timer_sane = true;

    s_event_fifo_id = 0;
    s_ev_lost = RegisterEvent("_lost_event", &EmptyTimedCallback);
}
Exemplo n.º 15
0
RibbonPanelWrapper::RibbonPanelWrapper()
    : wxcWidget(ID_WXRIBBONPANEL)
{
    PREPEND_STYLE_TRUE(wxRIBBON_PANEL_DEFAULT_STYLE);
    PREPEND_STYLE_FALSE(wxRIBBON_PANEL_NO_AUTO_MINIMISE);
    PREPEND_STYLE_FALSE(wxRIBBON_PANEL_EXT_BUTTON);
    PREPEND_STYLE_FALSE(wxRIBBON_PANEL_MINIMISE_BUTTON);
    PREPEND_STYLE_FALSE(wxRIBBON_PANEL_STRETCH);
    PREPEND_STYLE_FALSE(wxRIBBON_PANEL_FLEXIBLE);

    SetPropertyString(_("Common Settings"), "wxRibbonPanel");
    AddProperty(new StringProperty(PROP_LABEL, _("My Label"), _("The Label")));
    AddProperty(new BitmapPickerProperty(
        PROP_BITMAP_PATH, "", _("Icon to be used in place of the panel's children when the panel is minimised")));

    RegisterEvent("wxEVT_COMMAND_RIBBONPANEL_EXTBUTTON_ACTIVATED", "wxRibbonPanelEvent",
                  _("Triggered when the user activate the panel extension button"));
    m_namePattern = "m_ribbonPanel";

    SetName(GenerateName());
}
Exemplo n.º 16
0
	virtual void ProcessEvent( EFlowEvent event, SActivationInfo *pActInfo )
	{
		CFlowEntityNodeBase::ProcessEvent(event,pActInfo);
		switch (event)
		{
		case eFE_Activate:
			{
				if (IsPortActive(pActInfo, eIP_Attach))
				{
					AttachObject(pActInfo);
				}
				if (IsPortActive(pActInfo, eIP_Detach))
				{
					DetachObject(pActInfo);
				}

				if (IsPortActive(pActInfo, eIP_Hide))
				{
					HideAttachment(pActInfo);
				}
				else if (IsPortActive(pActInfo, eIP_UnHide))
				{
					UnHideAttachment(pActInfo);
				}

				if (IsPortActive(pActInfo, eIP_RotationOffset) || IsPortActive(pActInfo, eIP_TranslationOffset))
				{
					UpdateOffset(pActInfo);
				}
				break;
			}
		case eFE_Initialize:
			if (gEnv->IsEditor() && m_entityId) 
			{
				UnregisterEvent(m_event);
				RegisterEvent(m_event);
				m_pNewAttachment = NULL;
			}
		}
	}
Exemplo n.º 17
0
void CBulletManager::UpdateWorkload()
{
	m_Lock.Enter		()	;
	u32 delta_time		=	Device.dwTimeDelta + m_dwTimeRemainder;
	u32 step_num		=	delta_time/m_dwStepTime;
	m_dwTimeRemainder	=	delta_time%m_dwStepTime;
	
	rq_storage.r_clear			();
	rq_spatial.clear_not_free	();

	for(int k=m_Bullets.size()-1; k>=0; k--){
		SBullet& bullet = m_Bullets[k];
		//для пули пущенной на этом же кадре считаем только 1 шаг
		//(хотя по теории вообще ничего считать на надо)
		//который пропустим на следующем кадре, 
		//это делается для того чтоб при скачках FPS не промазать
		//с 2х метров
		u32 cur_step_num = step_num;

		u32 frames_pass = Device.dwFrame - bullet.frame_num;
		if(frames_pass == 0)						cur_step_num = 1;
		else if (frames_pass == 1 && step_num>0)	cur_step_num -= 1;

		// calculate bullet
		for(u32 i=0; i<cur_step_num; i++){
			if(!CalcBullet(rq_storage,rq_spatial,&bullet, m_dwStepTime)){
				collide::rq_result res;
				RegisterEvent(EVENT_REMOVE, FALSE, &bullet, Fvector().set(0, 0, 0), res, (u16)k);
//				if (bullet.flags.allow_sendhit && GameID() != GAME_SINGLE)
//					Game().m_WeaponUsageStatistic->OnBullet_Remove(&bullet);
//				m_Bullets[k] = m_Bullets.back();
//				m_Bullets.pop_back();
				break;
			}
		}
	}
	m_Lock.Leave		();
}
Exemplo n.º 18
0
void Widget::registerEvents()
{
    Component::registerEvents();

    RegisterEvent(Events::Awake, this, &Widget::onAwake);
}
Exemplo n.º 19
0
TopLevelWinWrapper::TopLevelWinWrapper(int type)
    : wxcWidget(type)
    , m_auiDropDownMenuHelperRegistered(false)
{
    PREPEND_STYLE(wxSTAY_ON_TOP, false);
    PREPEND_STYLE(wxCLOSE_BOX, false);
    PREPEND_STYLE(wxSYSTEM_MENU, false);
    PREPEND_STYLE(wxMINIMIZE_BOX, false);
    PREPEND_STYLE(wxMAXIMIZE_BOX, false);
    PREPEND_STYLE(wxRESIZE_BORDER, false);
    PREPEND_STYLE(wxCAPTION, false);

    if(type == ID_WXFRAME || type == ID_WXDIALOG) {
        // a real top level windows
        // add support for wxTopLevelWindow events
        RegisterEvent(wxT("wxEVT_MAXIMIZE"), wxT("wxMaximizeEvent"), wxT("Process a wxEVT_MAXIMIZE event"));
        RegisterEvent(wxT("wxEVT_MOVE"), wxT("wxMoveEvent"),
                      wxT("Process a wxEVT_MOVE event, which is generated when a window is moved"));
        RegisterEvent(wxT("wxEVT_MOVE_START"), wxT("wxMoveEvent"),
                      wxT("Process a wxEVT_MOVE_START event, which is generated when the "
                          "user starts to move or size a window. Windows only"));
        RegisterEvent(wxT("wxEVT_MOVE_END"), wxT("wxMoveEvent"),
                      wxT("Process a wxEVT_MOVE_END event, which is generated when "
                          "the user stops moving or sizing a window. Windows only"));
        RegisterEvent(wxT("wxEVT_SHOW"), wxT("wxShowEvent"), wxT("Process a wxEVT_SHOW event"));
    }

    // Default size for top level windows
    DoSetPropertyStringValue(PROP_SIZE, wxT("500,300"));
    if(IsWxTopLevelWindow()) {
        // Add a persistency object support
        AddBool(PROP_PERSISTENT,
                _("When enabled, the generated code will add support for wxPersistenceManager (i.e. the Window will "
                  "remember its size, position and any child wxBookCtrlBase control will remember its selection)"),
                true);
    }

    wxArrayString arr;
    arr.Add(wxT(""));
    arr.Add(wxT("wxBOTH"));
    arr.Add(wxT("wxVERTICAL"));
    arr.Add(wxT("wxHORIZONTAL"));

    AddProperty(new StringProperty(PROP_TITLE, "", _("The title, if any")));
    AddProperty(
        new VirtualFolderProperty(PROP_VIRTUAL_FOLDER, "", _("CodeLite's virtual folder for the generated files")));
    AddProperty(new ChoiceProperty(PROP_CENTRE_ON_SCREEN, arr, 1,
                                   _("Centre on parent. This may be in both dimensions (the default); only "
                                     "vertically or horizontally; or not at all.")));

    AddProperty(new CategoryProperty(_("Inherited C++ Class Properties")));
    AddProperty(new StringProperty(PROP_INHERITED_CLASS, "",
                                   _("Inherited class name\nFill this field to generate a class that inherits from the "
                                     "base class,\nwhere you should place all your application logic.\ne.g. for a "
                                     "generated class 'FooDialogBase', you might enter 'FooDialog' here.")));
    AddProperty(new StringProperty(PROP_FILE, "",
                                   _("The name for the inherited class's files (without any file "
                                     "extension).\nwxCrafter will generate a $(FILE).cpp and $(FILE).h\ne.g. "
                                     "for an inherited class 'FooDialog', you might enter 'foodialog' here.")));
    AddProperty(new StringProperty(PROP_CLASS_DECORATOR, "",
                                   _("MSW Only\nC++ macro decorator - allows exporting this class from a DLL")));

    if(m_properties.Contains(PROP_NAME)) {
        m_properties.Item(PROP_NAME)->SetTooltip(_("The generated C++ class name"));
    }

    DelProperty(PROP_WINDOW_ID);
}
Exemplo n.º 20
0
bool EngineApp::InitInstance( SDL_Window* window, int screenWidth, int screenHeight )
   {
   /*auto test = std::vector< Vec2 >( { Vec2( 1.0f, 1.0f ), Vec2( 5.0f, 5.0f ), Vec2( 4.0f, 4.0f ), Vec2( 1.0f, -3.0f ) } );*/
   //auto test = std::vector< Vec2 >( { Vec2( 0.0f, 2.0f ), Vec2( 1.0f, 4.0f ), Vec2( 2.0f, 0.0f ), Vec2( 3.0f, 1.0f ), Vec2( 4.0f, 3.0f ) } );
   //Triangulation( test );
   // Check for existing instance of the same window
	// Not sure if this feature is working normally.... 
   #ifndef _DEBUG
	// Note - it can be really useful to debug network code to have
	// more than one instance of the game up at one time - so
	// feel free to comment these lines in or out as you wish!
   if (!IsOnlyInstance( VGetGameTitle() ) )
      {
      return false;
      }
   #endif
   
   //--------------------------------- 
   // Check system requirements
   //--------------------------------- 
   bool resourceCheck = false;
	while (!resourceCheck)
	   {
		const DWORDLONG physicalRAM = 512 * MEGABYTE;
		const DWORDLONG virtualRAM = 1024 * MEGABYTE;
		const DWORDLONG diskSpace = 10 * MEGABYTE;
		if ( !CheckStorage(diskSpace) )
         {
			return false;
         }
		const DWORD minCpuSpeed = 1300;			// 1.3Ghz
		DWORD thisCPU = ReadCPUSpeed();
		if ( thisCPU < minCpuSpeed )
		   {
			ENG_ERROR("GetCPUSpeed reports CPU is too slow for this game.");
			return false;
		   }

		resourceCheck = true;
	   }
   //--------------------------------- 
   // Check system requirements
   //--------------------------------- 

	//--------------------------------- 
   //  Initialize ResCache, all assets are within a zip file
   //--------------------------------- 
   IResourceFile *pFile = NULL;
   if( m_EngineOptions.GetIsUsingDevDirectory() )
      {
      pFile = ENG_NEW DevResourceFile( DevResourceFile::Editor );
      }
   else
      {
      pFile = ENG_NEW ResourceZipFile( L"Assets.zip" );
      }
   m_pResCache = ENG_NEW ResourceCache( 50, pFile );

	if ( !m_pResCache->Init() )
	   {
      ENG_ERROR("Failed to initialize resource cache!  Are your paths set up correctly?");
		return false;
	   }

 //  extern shared_ptr<IResourceLoader> CreateWAVResourceLoader();
   m_pResCache->RegisterLoader< XmlResourceLoader >();
   m_pResCache->RegisterLoader< MeshResourceLoader >();
   m_pResCache->RegisterLoader< TextureResourceLoader >();
   m_pResCache->RegisterLoader< ScriptResourceLoader >();

   if( !LoadStrings("English") )
	   {
      ENG_ERROR("Failed to load strings");
		return false;
	   }
   //--------------------------------- 
   //  Initialize ResCache
   //--------------------------------- 

   //--------------------------------- 
   //  Initialize Lua scripting
   //---------------------------------

   // Rez up the Lua State manager now, and run the initial script - discussed in Chapter 5, page 144.
   if( !LuaStateManager::GetSingleton().VInit() )
      {
      ENG_ERROR( "Failed to initialize Lua" );
      return false;
      }

   ScriptExports::Register();
   
   Resource resource( m_EngineOptions.GetPreInitScriptFile() );
   shared_ptr<ResHandle> pResourceHandle = m_pResCache->GetHandle( resource );  
   ENG_ASSERT( pResourceHandle );

   RegisterScriptClass< AnimationClipNode, IAnimationNode >();
   RegisterScriptClass< AnimationLerpNode, IAnimationNode >();
   RegisterScriptClass< AnimationState >();

   //--------------------------------- 
   //  Initialize Lua scripting
   //---------------------------------

   //--------------------------------- 
   //  Initialize EventManager
   //--------------------------------- 

   // Set as global EventManager
   m_pEventManager = ENG_NEW EventManager( "Engine Event Manager", true );
	if ( !m_pEventManager )
	   {
		ENG_ERROR( "Failed to create EventManager." );
		return false;
	   }
   
   //--------------------------------- 
   //  Initialize EventManager
   //--------------------------------- 


   //--------------------------------- 
   // Initiate window & SDL, glew
   //--------------------------------- 
   if ( SDL_Init(SDL_INIT_EVERYTHING) != 0 )
      {
      ENG_ERROR( SDL_GetError() );
      return false;
      }

   CHAR charTitle[100];
   if(  GenericToAnsiCch( charTitle, VGetGameTitle(),  strlen( charTitle ) ) != S_OK )
      {
      ENG_ERROR( "Game title translation failed" );
      }
   if( !window )
      {
      m_pWindow = SDL_CreateWindow( charTitle, SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED, screenWidth,screenHeight, SDL_WINDOW_OPENGL );
      if ( !m_pWindow ) 
         {
         ENG_ERROR( SDL_GetError() );
         return false;
         }
      }
   else
      {
      m_pWindow = window;
      }

   // Only if execute under editor can engine allow file drop 
   if( m_EngineOptions.GetEngineEnvironment() == Environment_Editor )
      {
      SDL_EventState( SDL_DROPFILE, SDL_ENABLE );
      }

   if( m_EngineOptions.GetShowMouseCursor() )
      {
      SDL_ShowCursor( SDL_ENABLE );
      }
   else
      {
      SDL_ShowCursor( SDL_DISABLE );
      }
   
   SDL_WarpMouseInWindow( g_pApp->GetWindow(), g_pApp->GetScreenSize().GetX() / 2, g_pApp->GetScreenSize().GetY() / 2 );
   // setup opengl rendering context
   SDL_GLContext glContext = SDL_GL_CreateContext( m_pWindow );
   if( !glContext )
      {
      ENG_ERROR( SDL_GetError() );
      }
   
   // Needed for core profile
   glewExperimental = true; 

   GLenum error = glewInit();

   if( error != GLEW_OK )
      {
      ENG_ERROR( reinterpret_cast<const char *>( gluErrorString( error ) ) );
      }
   // set two buffer for rendering
   SDL_GL_SetAttribute( SDL_GL_DOUBLEBUFFER, 1 );

   m_ShutDownEventType = RegisterEvent( 1 );
   //--------------------------------- 
   // Initiate window & SDL, glew
   //--------------------------------- 

   //--------------------------------- 
   // SDL_Image
   //--------------------------------- 
   int initFlags= IMG_INIT_JPG | IMG_INIT_PNG | IMG_INIT_TIF;
   int initted = IMG_Init( initFlags );

   if( ( initted & initFlags ) != initFlags ) 
      {
      ENG_ERROR( IMG_GetError() );
      }
   //--------------------------------- 
   // SDL_Image
   //--------------------------------- 

   //--------------------------------- 
   // Set Renderer
   //--------------------------------- 
    if( GetRendererImpl() == Renderer_OpenGL )
      {
      m_pRenderer = shared_ptr<IRenderer>( ENG_NEW OpenGLRenderer() );
      }
   else
      {
      ENG_ERROR( "Not supported renderer type" );
      }
   m_pRenderer->VSetBackgroundColor( g_Black );
   // Enable depth test
	glEnable( GL_DEPTH_TEST );
	// Accept fragment if it closer to the camera than the former one
	glDepthFunc( GL_LESS ); 
   // Cull triangles which normal is not towards the camera
   glEnable( GL_CULL_FACE );
   m_pRenderer->VOnRestore();
   //--------------------------------- 
   // Set Renderer
   //--------------------------------- 


   // Start global timer
   GetGlobalTimer()->Reset();

   // initialize the directory location you can store save game files
	_tcscpy_s( m_saveGameDirectory, GetSaveGameDirectory( GetHwnd(), VGetGameAppDirectory() ) );
   //--------------------------------- 
   // Create game & view
   //--------------------------------- 
   m_pEngineLogic = VCreateLogic();
   if (!m_pEngineLogic)
      {
      return false;
      }
   //--------------------------------- 
   // Create game & view
   //--------------------------------- 
   m_bIsRunning = true;

   return true;
   }
Exemplo n.º 21
0
GenericDirCtrlWrapper::GenericDirCtrlWrapper()
    : wxcWidget(ID_WXGENERICDIRCTRL)
{
    SetPropertyString(_("Common Settings"), "wxGenericDirCtrl");
    AddProperty(new StringProperty(PROP_DEFAULT_FOLDER, wxT(""), _("Sets the default path")));
    AddProperty(new StringProperty(PROP_FILTER, wxT(""),
                                   _("Sets the filter string. The syntax is similar to the one used in wxFileDialog")));
    AddProperty(new StringProperty(PROP_DEFAULT_FILTER, wxT(""), _("Sets the current filter index (zero-based).")));
    AddProperty(new BoolProperty(PROP_SHOW_HIDDEN, false, _("Show hidden files")));

    PREPEND_STYLE_FALSE(wxDIRCTRL_DIR_ONLY);
    PREPEND_STYLE_TRUE(wxDIRCTRL_3D_INTERNAL);
    PREPEND_STYLE_FALSE(wxDIRCTRL_SELECT_FIRST);
    PREPEND_STYLE_FALSE(wxDIRCTRL_SHOW_FILTERS);
    PREPEND_STYLE_FALSE(wxDIRCTRL_EDIT_LABELS);

    RegisterEvent(wxT("wxEVT_COMMAND_TREE_BEGIN_DRAG"), wxT("wxTreeEvent"),
                  wxT("The user has started dragging an item with the left mouse button.\nThe event handler must call "
                      "wxTreeEvent::Allow() for the drag operation to continue."));
    RegisterEvent(wxT("wxEVT_COMMAND_TREE_BEGIN_RDRAG"), wxT("wxTreeEvent"),
                  wxT("The user has started dragging an item with the right mouse button.\nThe event handler must call "
                      "wxTreeEvent::Allow() for the drag operation to continue."));
    RegisterEvent(wxT("wxEVT_COMMAND_TREE_END_DRAG"), wxT("wxTreeEvent"),
                  wxT("The user has released the mouse after dragging an item."));
    RegisterEvent(wxT("wxEVT_COMMAND_TREE_BEGIN_LABEL_EDIT"), wxT("wxTreeEvent"),
                  wxT("Begin editing a label. This can be prevented by calling Veto()."));
    RegisterEvent(wxT("wxEVT_COMMAND_TREE_END_LABEL_EDIT"), wxT("wxTreeEvent"),
                  wxT("The user has finished editing a label. This can be prevented by calling Veto()."));
    RegisterEvent(wxT("wxEVT_COMMAND_TREE_DELETE_ITEM"), wxT("wxTreeEvent"), wxT("A tree item has been deleted."));
    RegisterEvent(wxT("wxEVT_COMMAND_TREE_ITEM_EXPANDED"), wxT("wxTreeEvent"), wxT("The item has been expanded."));
    RegisterEvent(wxT("wxEVT_COMMAND_TREE_ITEM_EXPANDING"), wxT("wxTreeEvent"),
                  wxT("The item is being expanded. This can be prevented by calling Veto()."));
    RegisterEvent(wxT("wxEVT_COMMAND_TREE_ITEM_COLLAPSED"), wxT("wxTreeEvent"), wxT("The item has been collapsed."));
    RegisterEvent(wxT("wxEVT_COMMAND_TREE_ITEM_COLLAPSING"), wxT("wxTreeEvent"),
                  wxT("The item is being collapsed. This can be prevented by calling Veto()."));
    RegisterEvent(wxT("wxEVT_COMMAND_TREE_SEL_CHANGED"), wxT("wxTreeEvent"), wxT("Selection has changed."));
    RegisterEvent(wxT("wxEVT_COMMAND_TREE_SEL_CHANGING"), wxT("wxTreeEvent"),
                  wxT("Selection is changing. This can be prevented by calling Veto()."));
    RegisterEvent(wxT("wxEVT_COMMAND_TREE_KEY_DOWN"), wxT("wxTreeEvent"), wxT("A key has been pressed."));
    RegisterEvent(wxT("wxEVT_COMMAND_TREE_ITEM_ACTIVATED"), wxT("wxTreeEvent"),
                  wxT("An item has been activated (e.g. double clicked)."));
    RegisterEvent(wxT("wxEVT_COMMAND_TREE_ITEM_RIGHT_CLICK"), wxT("wxTreeEvent"),
                  wxT("The user has clicked the item with the right mouse button."));
    RegisterEvent(wxT("wxEVT_COMMAND_TREE_ITEM_MIDDLE_CLICK"), wxT("wxTreeEvent"),
                  wxT("The user has clicked the item with the middle mouse button."));
    RegisterEvent(wxT("wxEVT_COMMAND_TREE_STATE_IMAGE_CLICK"), wxT("wxTreeEvent"),
                  wxT("The state image has been clicked. Windows only."));
    RegisterEvent(wxT("wxEVT_COMMAND_TREE_ITEM_GETTOOLTIP"), wxT("wxTreeEvent"),
                  wxT("The opportunity to set the item tooltip is being given to the application\n (call "
                      "wxTreeEvent::SetToolTip). Windows only."));
    RegisterEvent(wxT("wxEVT_COMMAND_TREE_ITEM_MENU"), wxT("wxTreeEvent"),
                  wxT("The context menu for the selected item has been requested,\neither by a right click or by using "
                      "the menu key."));

    m_namePattern = wxT("m_genericDirCtrl");
    SetName(GenerateName());
}
//------------------------------------------------------------------------
void CReplayActor::PostInit(IGameObject *pGameObject)
{
	RegisterEvent( ENTITY_EVENT_PREPHYSICSUPDATE, IComponent::EComponentFlags_Enable );

	GetGameObject()->EnableUpdateSlot(this, 0);
}
Exemplo n.º 23
0
ListCtrlWrapper::ListCtrlWrapper()
    : wxcWidget(ID_WXLISTCTRL)
{
    SetPropertyString(_("Common Settings"), "wxListCtrl");

    PREPEND_STYLE(wxLC_LIST, false);
    PREPEND_STYLE(wxLC_REPORT, true);
    PREPEND_STYLE(wxLC_VIRTUAL, false);
    PREPEND_STYLE(wxLC_ICON, false);
    PREPEND_STYLE(wxLC_SMALL_ICON, false);
    PREPEND_STYLE(wxLC_ALIGN_TOP, false);
    PREPEND_STYLE(wxLC_ALIGN_LEFT, false);
    PREPEND_STYLE(wxLC_EDIT_LABELS, false);
    PREPEND_STYLE(wxLC_NO_HEADER, false);
    PREPEND_STYLE(wxLC_SINGLE_SEL, false);
    PREPEND_STYLE(wxLC_SORT_ASCENDING, false);
    PREPEND_STYLE(wxLC_SORT_DESCENDING, false);
    PREPEND_STYLE(wxLC_HRULES, false);
    PREPEND_STYLE(wxLC_VRULES, false);

    RegisterEvent(wxT("wxEVT_COMMAND_LIST_ITEM_SELECTED"), wxT("wxListEvent"), wxT("The item has been selected"));
    RegisterEvent(wxT("wxEVT_COMMAND_LIST_ITEM_DESELECTED"), wxT("wxListEvent"), wxT("The item has been deselected"));
    RegisterEvent(wxT("wxEVT_COMMAND_LIST_ITEM_RIGHT_CLICK"), wxT("wxListEvent"),
                  wxT("The right mouse button has been clicked on an item"));
    RegisterEvent(wxT("wxEVT_COMMAND_LIST_ITEM_MIDDLE_CLICK"), wxT("wxListEvent"),
                  wxT("The middle mouse button has been clicked on an item"));
    RegisterEvent(wxT("wxEVT_COMMAND_LIST_ITEM_ACTIVATED"), wxT("wxListEvent"),
                  wxT("The item has been activated (ENTER or double click)"));
    RegisterEvent(wxT("wxEVT_COMMAND_LIST_ITEM_FOCUSED"), wxT("wxListEvent"),
                  wxT("The currently focused item has changed"));
    RegisterEvent(wxT("wxEVT_COMMAND_LIST_KEY_DOWN"), wxT("wxListEvent"), wxT("A key has been pressed"));

    RegisterEvent(wxT("wxEVT_COMMAND_LIST_COL_CLICK"), wxT("wxListEvent"),
                  wxT("A column (m_col) has been left-clicked"));
    RegisterEvent(wxT("wxEVT_COMMAND_LIST_COL_RIGHT_CLICK"), wxT("wxListEvent"),
                  wxT("A column (m_col) has been right-clicked"));
    RegisterEvent(wxT("wxEVT_COMMAND_LIST_COL_BEGIN_DRAG"), wxT("wxListEvent"),
                  wxT("The user started resizing a column - can be vetoed"));
    RegisterEvent(wxT("wxEVT_COMMAND_LIST_COL_DRAGGING"), wxT("wxListEvent"),
                  wxT("The divider between columns is being dragged"));
    RegisterEvent(wxT("wxEVT_COMMAND_LIST_COL_END_DRAG"), wxT("wxListEvent"),
                  wxT("A column has been resized by the user"));

    RegisterEvent(wxT("wxEVT_COMMAND_LIST_BEGIN_DRAG"), wxT("wxListEvent"),
                  wxT("Begin dragging with the left mouse button"));
    RegisterEvent(wxT("wxEVT_COMMAND_LIST_BEGIN_RDRAG"), wxT("wxListEvent"),
                  wxT("Begin dragging with the right mouse button."));
    RegisterEvent(wxT("wxEVT_COMMAND_LIST_BEGIN_LABEL_EDIT"), wxT("wxListEvent"),
                  wxT("Begin editing a label. This can be prevented by calling Veto()"));
    RegisterEvent(wxT("wxEVT_COMMAND_LIST_END_LABEL_EDIT"), wxT("wxListEvent"),
                  wxT("Finish editing a label. This can be prevented by calling Veto()"));
    RegisterEvent(wxT("wxEVT_COMMAND_LIST_DELETE_ITEM"), wxT("wxListEvent"), wxT("Delete an item"));
    RegisterEvent(wxT("wxEVT_COMMAND_LIST_DELETE_ALL_ITEMS"), wxT("wxListEvent"), wxT("Delete all items"));
    RegisterEvent(wxT("wxEVT_COMMAND_LIST_INSERT_ITEM"), wxT("wxListEvent"), wxT("An item has been inserted"));

    m_namePattern = wxT("m_listCtrl");
    SetName(GenerateName());
}
Exemplo n.º 24
0
AuiManagerWrapper::AuiManagerWrapper()
    : wxcWidget(ID_WXAUIMANAGER)
{
    m_sizerFlags.Clear();
    m_properties.DeleteValues();

    // wxAUI_DOCKART_PANE_BORDER_SIZE
    // wxAUI_DOCKART_BACKGROUND_COLOUR
    // wxAUI_DOCKART_SASH_COLOUR
    // wxAUI_DOCKART_ACTIVE_CAPTION_COLOUR
    // wxAUI_DOCKART_ACTIVE_CAPTION_GRADIENT_COLOUR
    // wxAUI_DOCKART_INACTIVE_CAPTION_COLOUR
    // wxAUI_DOCKART_INACTIVE_CAPTION_GRADIENT_COLOUR
    // wxAUI_DOCKART_ACTIVE_CAPTION_TEXT_COLOUR
    // wxAUI_DOCKART_INACTIVE_CAPTION_TEXT_COLOUR
    // wxAUI_DOCKART_BORDER_COLOUR
    // wxAUI_DOCKART_GRIPPER_COLOUR
    // wxAUI_DOCKART_GRADIENT_TYPE

    SetPropertyString(_("Common Settings"), "wxAuiManager");
    AddProperty(new CategoryProperty("General"));
    AddProperty(new StringProperty(PROP_NAME, "", _("wxAuiManager member name")));
    AddProperty(new ColorProperty(PROP_BG, "<Default>", _("Background Colour")));
    AddProperty(new IntProperty(PROP_AUI_PANE_BORDER_SIZE, -1, _("Pane border size")));

    AddProperty(new CategoryProperty("Sash"));
    AddProperty(new ColorProperty(PROP_AUI_SASH_COLOUR, "<Default>", _("Sash colour")));
    AddProperty(new IntProperty(PROP_AUI_SASH_SIZE, -1, _("Set the wxAUI sash size")));

    AddProperty(new CategoryProperty("Caption"));
    wxArrayString gradientTypes;
    gradientTypes.Add("wxAUI_GRADIENT_NONE");
    gradientTypes.Add("wxAUI_GRADIENT_VERTICAL");
    gradientTypes.Add("wxAUI_GRADIENT_HORIZONTAL");
    AddProperty(new ChoiceProperty(PROP_AUI_GRADIENT_TYPE, gradientTypes, 0, _("Gradient type")));

    AddProperty(new ColorProperty(PROP_AUI_CAPTION_COLOUR, "<Default>", _("Active caption colour")));
    AddProperty(new ColorProperty(PROP_AUI_CAPTION_COLOUR_GRADIENT, "<Default>", _("Active caption gradient colour")));
    AddProperty(new ColorProperty(PROP_AUI_INACTIVE_CAPTION_COLOUR, "<Default>", _("Inactive caption colour")));
    AddProperty(new ColorProperty(PROP_AUI_INACTIVE_CAPTION_COLOUR_GRADIENT, "<Default>",
                                  _("Inactive caption gradient colour")));
    AddProperty(new ColorProperty(PROP_AUI_ACTIVE_CAPTION_TEXT_COLOUR, "<Default>", _("Active caption text colour")));
    AddProperty(
        new ColorProperty(PROP_AUI_INACTIVE_CAPTION_TEXT_COLOUR, "<Default>", _("Inactive caption text colour")));

    m_styles.Clear();

    PREPEND_STYLE(wxAUI_MGR_ALLOW_FLOATING, true);
    PREPEND_STYLE(wxAUI_MGR_ALLOW_ACTIVE_PANE, true);
    PREPEND_STYLE(wxAUI_MGR_TRANSPARENT_DRAG, true);
    PREPEND_STYLE(wxAUI_MGR_TRANSPARENT_DRAG, true);
    PREPEND_STYLE(wxAUI_MGR_TRANSPARENT_HINT, true);
    PREPEND_STYLE(wxAUI_MGR_VENETIAN_BLINDS_HINT, false);
    PREPEND_STYLE(wxAUI_MGR_RECTANGLE_HINT, false);
    PREPEND_STYLE(wxAUI_MGR_HINT_FADE, false);
    PREPEND_STYLE(wxAUI_MGR_NO_VENETIAN_BLINDS_FADE, false);
    PREPEND_STYLE(wxAUI_MGR_LIVE_RESIZE, true);

    RegisterEvent("wxEVT_AUI_PANE_BUTTON", "wxAuiManagerEvent",
                  _("Triggered when any button is pressed for any docked panes"));
    RegisterEvent("wxEVT_AUI_PANE_CLOSE", "wxAuiManagerEvent",
                  _("Triggered when a docked or floating pane is closed."));
    RegisterEvent("wxEVT_AUI_PANE_MAXIMIZE", "wxAuiManagerEvent", _("Triggered when a pane is maximized."));
    RegisterEvent("wxEVT_AUI_PANE_RESTORE", "wxAuiManagerEvent", _("Triggered when a pane is restored."));
    RegisterEvent("wxEVT_AUI_PANE_ACTIVATED", "wxAuiManagerEvent",
                  _("Triggered when a pane is made 'active'. This event is new since wxWidgets 2.9.4."));
    RegisterEvent("wxEVT_AUI_RENDER", "wxAuiManagerEvent",
                  _("This event can be caught to override the default renderer in order "
                    "to custom draw your wxAuiManager window (not recommended)."));

    m_namePattern = "m_auimgr";
    SetName(GenerateName());
}
Exemplo n.º 25
0
DataViewListCtrlWrapper::DataViewListCtrlWrapper()
    : wxcWidget(ID_WXDATAVIEWLISTCTRL)
{
    PREPEND_STYLE(wxDV_SINGLE, true);
    PREPEND_STYLE(wxDV_MULTIPLE, false);
    PREPEND_STYLE(wxDV_ROW_LINES, true);
    PREPEND_STYLE(wxDV_HORIZ_RULES, false);
    PREPEND_STYLE(wxDV_VERT_RULES, false);
    PREPEND_STYLE(wxDV_VARIABLE_LINE_HEIGHT, false);
    PREPEND_STYLE(wxDV_NO_HEADER, false);

    RegisterEvent("wxEVT_COMMAND_DATAVIEW_SELECTION_CHANGED", "wxDataViewEvent",
                  _("Process a wxEVT_COMMAND_DATAVIEW_SELECTION_CHANGED event"));
    RegisterEvent("wxEVT_COMMAND_DATAVIEW_ITEM_ACTIVATED", "wxDataViewEvent",
                  _("Process a wxEVT_COMMAND_DATAVIEW_ITEM_ACTIVATED event.\nThis event is triggered by double "
                    "clicking an item or pressing some special key (usually \"Enter\") when it is focused"));
    RegisterEvent("wxEVT_COMMAND_DATAVIEW_ITEM_START_EDITING", "wxDataViewEvent",
                  _("Process a wxEVT_COMMAND_DATAVIEW_ITEM_START_EDITING event.\nThis event can be vetoed in order to "
                    "prevent editing on an item by item basis"));
    RegisterEvent("wxEVT_COMMAND_DATAVIEW_ITEM_EDITING_STARTED", "wxDataViewEvent",
                  _("Process a wxEVT_COMMAND_DATAVIEW_ITEM_EDITING_STARTED event"));
    RegisterEvent("wxEVT_COMMAND_DATAVIEW_ITEM_EDITING_DONE", "wxDataViewEvent",
                  _("Process a wxEVT_COMMAND_DATAVIEW_ITEM_EDITING_DONE event"));
    RegisterEvent("wxEVT_COMMAND_DATAVIEW_ITEM_COLLAPSING", "wxDataViewEvent",
                  _("Process a wxEVT_COMMAND_DATAVIEW_ITEM_COLLAPSING event"));
    RegisterEvent("wxEVT_COMMAND_DATAVIEW_ITEM_COLLAPSED", "wxDataViewEvent",
                  _("Process a wxEVT_COMMAND_DATAVIEW_ITEM_COLLAPSED event"));
    RegisterEvent("wxEVT_COMMAND_DATAVIEW_ITEM_EXPANDING", "wxDataViewEvent",
                  _("Process a wxEVT_COMMAND_DATAVIEW_ITEM_EXPANDING event"));
    RegisterEvent("wxEVT_COMMAND_DATAVIEW_ITEM_EXPANDED", "wxDataViewEvent",
                  _("Process a wxEVT_COMMAND_DATAVIEW_ITEM_EXPANDED event"));
    RegisterEvent("wxEVT_COMMAND_DATAVIEW_ITEM_VALUE_CHANGED", "wxDataViewEvent",
                  _("Process a wxEVT_COMMAND_DATAVIEW_ITEM_VALUE_CHANGED event"));
    RegisterEvent("wxEVT_COMMAND_DATAVIEW_ITEM_CONTEXT_MENU", "wxDataViewEvent",
                  _("Process a wxEVT_COMMAND_DATAVIEW_ITEM_CONTEXT_MENU event generated when the user right clicks "
                    "inside the control.\nNotice that this menu is generated even if the click didn't occur on any "
                    "valid item, in this case wxDataViewEvent::GetItem() simply returns an invalid item."));
    RegisterEvent("wxEVT_COMMAND_DATAVIEW_COLUMN_HEADER_CLICK", "wxDataViewEvent",
                  _("Process a wxEVT_COMMAND_DATAVIEW_COLUMN_HEADER_CLICK event"));
    RegisterEvent("wxEVT_COMMAND_DATAVIEW_COLUMN_HEADER_RIGHT_CLICK", "wxDataViewEvent",
                  _("Process a wxEVT_COMMAND_DATAVIEW_COLUMN_HEADER_RIGHT_CLICK event"));
    RegisterEvent("wxEVT_COMMAND_DATAVIEW_COLUMN_SORTED", "wxDataViewEvent",
                  _("Process a wxEVT_COMMAND_DATAVIEW_COLUMN_SORTED event"));
    RegisterEvent("wxEVT_COMMAND_DATAVIEW_COLUMN_REORDERED", "wxDataViewEvent",
                  _("Process a wxEVT_COMMAND_DATAVIEW_COLUMN_REORDERED event"));
    RegisterEvent("wxEVT_COMMAND_DATAVIEW_ITEM_BEGIN_DRAG", "wxDataViewEvent",
                  _("Process a wxEVT_COMMAND_DATAVIEW_ITEM_BEGIN_DRAG event"));
    RegisterEvent("wxEVT_COMMAND_DATAVIEW_ITEM_DROP_POSSIBLE", "wxDataViewEvent",
                  _("Process a wxEVT_COMMAND_DATAVIEW_ITEM_DROP_POSSIBLE event"));
    RegisterEvent("wxEVT_COMMAND_DATAVIEW_ITEM_DROP", "wxDataViewEvent",
                  _("Process a wxEVT_COMMAND_DATAVIEW_ITEM_DROP event"));

    SetPropertyString(_("Common Settings"), "wxDataViewListCtrl");
    m_namePattern = "m_dvListCtrl";
    DelProperty(_("Control Specific Settings"));
    SetName(GenerateName());
}