X-Git-Url: http://de.git.xonotic.org/?a=blobdiff_plain;f=radiant%2Fmainframe.cpp;h=c4d2f40dcdb29ae7db3f2991cfb00ffd3c0f443c;hb=2a1cfc426e60b77c7b212d827e2592de01041266;hp=6ae00e3d3fabb8620c15c529be2f4647efa68bfe;hpb=1ede3dc63143af40210a3e9c1c601028359fac11;p=xonotic%2Fnetradiant.git diff --git a/radiant/mainframe.cpp b/radiant/mainframe.cpp index 6ae00e3d..c4d2f40d 100644 --- a/radiant/mainframe.cpp +++ b/radiant/mainframe.cpp @@ -421,8 +421,8 @@ typedef ReferenceCaller Engin void Paths_constructPreferences( PreferencesPage& page ){ page.appendPathEntry( "Engine Path", true, - StringImportCallback( EnginePathImportCaller( g_strEnginePath ) ), - StringExportCallback( StringExportCaller( g_strEnginePath ) ) + {ImportExportCallback::Import_t( EnginePathImportCaller( g_strEnginePath ) ), + ImportExportCallback::Export_t( StringExportCaller( g_strEnginePath ) )} ); } void Paths_constructPage( PreferenceGroup& group ){ @@ -999,24 +999,24 @@ template class BoolFunctionExport { public: -static void apply( const BoolImportCallback& importCallback ){ +static void apply( const ImportExportCallback::Import_t& importCallback ){ importCallback( BoolFunction() ); } }; -typedef FreeCaller::apply> EdgeModeApplyCaller; +typedef FreeCaller::Import_t&), &BoolFunctionExport::apply> EdgeModeApplyCaller; EdgeModeApplyCaller g_edgeMode_button_caller; -BoolExportCallback g_edgeMode_button_callback( g_edgeMode_button_caller ); +ImportExportCallback::Export_t g_edgeMode_button_callback( g_edgeMode_button_caller ); ToggleItem g_edgeMode_button( g_edgeMode_button_callback ); -typedef FreeCaller::apply> VertexModeApplyCaller; +typedef FreeCaller::Import_t&), &BoolFunctionExport::apply> VertexModeApplyCaller; VertexModeApplyCaller g_vertexMode_button_caller; -BoolExportCallback g_vertexMode_button_callback( g_vertexMode_button_caller ); +ImportExportCallback::Export_t g_vertexMode_button_callback( g_vertexMode_button_caller ); ToggleItem g_vertexMode_button( g_vertexMode_button_callback ); -typedef FreeCaller::apply> FaceModeApplyCaller; +typedef FreeCaller::Import_t&), &BoolFunctionExport::apply> FaceModeApplyCaller; FaceModeApplyCaller g_faceMode_button_caller; -BoolExportCallback g_faceMode_button_callback( g_faceMode_button_caller ); +ImportExportCallback::Export_t g_faceMode_button_callback( g_faceMode_button_caller ); ToggleItem g_faceMode_button( g_faceMode_button_callback ); void ComponentModeChanged(){ @@ -1290,44 +1290,44 @@ void Selection_NudgeRight(){ } -void TranslateToolExport( const BoolImportCallback& importCallback ){ +void TranslateToolExport( const ImportExportCallback::Import_t& importCallback ){ importCallback( GlobalSelectionSystem().ManipulatorMode() == SelectionSystem::eTranslate ); } -void RotateToolExport( const BoolImportCallback& importCallback ){ +void RotateToolExport( const ImportExportCallback::Import_t& importCallback ){ importCallback( GlobalSelectionSystem().ManipulatorMode() == SelectionSystem::eRotate ); } -void ScaleToolExport( const BoolImportCallback& importCallback ){ +void ScaleToolExport( const ImportExportCallback::Import_t& importCallback ){ importCallback( GlobalSelectionSystem().ManipulatorMode() == SelectionSystem::eScale ); } -void DragToolExport( const BoolImportCallback& importCallback ){ +void DragToolExport( const ImportExportCallback::Import_t& importCallback ){ importCallback( GlobalSelectionSystem().ManipulatorMode() == SelectionSystem::eDrag ); } -void ClipperToolExport( const BoolImportCallback& importCallback ){ +void ClipperToolExport( const ImportExportCallback::Import_t& importCallback ){ importCallback( GlobalSelectionSystem().ManipulatorMode() == SelectionSystem::eClip ); } -FreeCaller g_translatemode_button_caller; -BoolExportCallback g_translatemode_button_callback( g_translatemode_button_caller ); +FreeCaller::Import_t&), TranslateToolExport> g_translatemode_button_caller; +ImportExportCallback::Export_t g_translatemode_button_callback( g_translatemode_button_caller ); ToggleItem g_translatemode_button( g_translatemode_button_callback ); -FreeCaller g_rotatemode_button_caller; -BoolExportCallback g_rotatemode_button_callback( g_rotatemode_button_caller ); +FreeCaller::Import_t&), RotateToolExport> g_rotatemode_button_caller; +ImportExportCallback::Export_t g_rotatemode_button_callback( g_rotatemode_button_caller ); ToggleItem g_rotatemode_button( g_rotatemode_button_callback ); -FreeCaller g_scalemode_button_caller; -BoolExportCallback g_scalemode_button_callback( g_scalemode_button_caller ); +FreeCaller::Import_t&), ScaleToolExport> g_scalemode_button_caller; +ImportExportCallback::Export_t g_scalemode_button_callback( g_scalemode_button_caller ); ToggleItem g_scalemode_button( g_scalemode_button_callback ); -FreeCaller g_dragmode_button_caller; -BoolExportCallback g_dragmode_button_callback( g_dragmode_button_caller ); +FreeCaller::Import_t&), DragToolExport> g_dragmode_button_caller; +ImportExportCallback::Export_t g_dragmode_button_callback( g_dragmode_button_caller ); ToggleItem g_dragmode_button( g_dragmode_button_callback ); -FreeCaller g_clipper_button_caller; -BoolExportCallback g_clipper_button_callback( g_clipper_button_caller ); +FreeCaller::Import_t&), ClipperToolExport> g_clipper_button_caller; +ImportExportCallback::Export_t g_clipper_button_callback( g_clipper_button_caller ); ToggleItem g_clipper_button( g_clipper_button_callback ); void ToolChanged(){ @@ -1770,10 +1770,10 @@ void ClipperChangeNotify(){ } -LatchedInt g_Layout_viewStyle( 0, "Window Layout" ); -LatchedBool g_Layout_enableDetachableMenus( true, "Detachable Menus" ); -LatchedBool g_Layout_enablePatchToolbar( true, "Patch Toolbar" ); -LatchedBool g_Layout_enablePluginToolbar( true, "Plugin Toolbar" ); +LatchedValue g_Layout_viewStyle( 0, "Window Layout" ); +LatchedValue g_Layout_enableDetachableMenus( true, "Detachable Menus" ); +LatchedValue g_Layout_enablePatchToolbar( true, "Patch Toolbar" ); +LatchedValue g_Layout_enablePluginToolbar( true, "Plugin Toolbar" ); @@ -3126,26 +3126,22 @@ void Layout_constructPreferences( PreferencesPage& page ){ page.appendRadioIcons( "Window Layout", STRING_ARRAY_RANGE( layouts ), - LatchedIntImportCaller( g_Layout_viewStyle ), - IntExportCaller( g_Layout_viewStyle.m_latched ) + mkImportExportCallback( g_Layout_viewStyle ) ); } page.appendCheckBox( "", "Detachable Menus", - LatchedBoolImportCaller( g_Layout_enableDetachableMenus ), - BoolExportCaller( g_Layout_enableDetachableMenus.m_latched ) + mkImportExportCallback( g_Layout_enableDetachableMenus ) ); if ( !string_empty( g_pGameDescription->getKeyValue( "no_patch" ) ) ) { page.appendCheckBox( "", "Patch Toolbar", - LatchedBoolImportCaller( g_Layout_enablePatchToolbar ), - BoolExportCaller( g_Layout_enablePatchToolbar.m_latched ) + mkImportExportCallback( g_Layout_enablePatchToolbar ) ); } page.appendCheckBox( "", "Plugin Toolbar", - LatchedBoolImportCaller( g_Layout_enablePluginToolbar ), - BoolExportCaller( g_Layout_enablePluginToolbar.m_latched ) + mkImportExportCallback( g_Layout_enablePluginToolbar ) ); }