]> git.xonotic.org Git - xonotic/netradiant.git/blobdiff - radiant/selection.cpp
Merge commit 'c845c5cd8f427d39665d6a8b1f6eeff401370d80' into garux-merge
[xonotic/netradiant.git] / radiant / selection.cpp
index e4364c10851e7a323b9423e6d3d358e53901fcfe..e8d16c95be6f031f7fb22d5144f4f545b5b21a9e 100644 (file)
@@ -20,6 +20,7 @@
  */
 
 #include "selection.h"
+#include "globaldefs.h"
 
 #include "debugging/debugging.h"
 
@@ -156,7 +157,7 @@ inline float angle_between( const Vector3& a, const Vector3& b ){
 }
 
 
-#if defined( _DEBUG )
+#if GDEF_DEBUG
 class test_quat
 {
 public:
@@ -206,6 +207,7 @@ void transform_local2object( Matrix4& object, const Matrix4& local, const Matrix
 class Rotatable
 {
 public:
+virtual ~Rotatable() = default;
 virtual void rotate( const Quaternion& rotation ) = 0;
 };
 
@@ -270,6 +272,7 @@ void translation_local2object( Vector3& object, const Vector3& local, const Matr
 class Translatable
 {
 public:
+virtual ~Translatable() = default;
 virtual void translate( const Vector3& translation ) = 0;
 };
 
@@ -331,6 +334,7 @@ const Matrix4& ssGetPivot2World();
 class Scalable
 {
 public:
+virtual ~Scalable() = default;
 virtual void scale( const Vector3& scaling ) = 0;
 };
 
@@ -504,7 +508,7 @@ void add_one(){
 }
 };
 
-#if defined( _DEBUG )
+#if GDEF_DEBUG
 #define DEBUG_SELECTION
 #endif
 
@@ -1760,7 +1764,7 @@ void insert( const Plane3& plane ){
 bool contains( const Plane3& plane ) const {
        return PlaneSet_contains( m_selectedPlanes, plane );
 }
-typedef MemberCaller1<SelectedPlaneSet, const Plane3&, &SelectedPlaneSet::insert> InsertCaller;
+typedef MemberCaller<SelectedPlaneSet, void(const Plane3&), &SelectedPlaneSet::insert> InsertCaller;
 };
 
 
@@ -2019,7 +2023,7 @@ void TestQuadStrip( const VertexPointer& vertices, const IndexPointer& indices,
 class SelectionCounter
 {
 public:
-typedef const Selectable& first_argument_type;
+using func = void(const Selectable &);
 
 SelectionCounter( const SelectionChangeCallback& onchanged )
        : m_count( 0 ), m_onchanged( onchanged ){
@@ -2648,11 +2652,11 @@ void pivotChanged() const {
        m_pivotChanged = true;
        SceneChangeNotify();
 }
-typedef ConstMemberCaller<RadiantSelectionSystem, &RadiantSelectionSystem::pivotChanged> PivotChangedCaller;
+typedef ConstMemberCaller<RadiantSelectionSystem, void(), &RadiantSelectionSystem::pivotChanged> PivotChangedCaller;
 void pivotChangedSelection( const Selectable& selectable ){
        pivotChanged();
 }
-typedef MemberCaller1<RadiantSelectionSystem, const Selectable&, &RadiantSelectionSystem::pivotChangedSelection> PivotChangedSelectionCaller;
+typedef MemberCaller<RadiantSelectionSystem, void(const Selectable&), &RadiantSelectionSystem::pivotChangedSelection> PivotChangedSelectionCaller;
 
 void SetMode( EMode mode ){
        if ( m_mode != mode ) {
@@ -2688,11 +2692,11 @@ EManipulatorMode ManipulatorMode() const {
 
 SelectionChangeCallback getObserver( EMode mode ){
        if ( mode == ePrimitive ) {
-               return makeCallback1( m_count_primitive );
+               return makeCallback( m_count_primitive );
        }
        else
        {
-               return makeCallback1( m_count_component );
+               return makeCallback( m_count_component );
        }
 }
 std::size_t countSelected() const {
@@ -2765,7 +2769,7 @@ void addSelectionChangeCallback( const SelectionChangeHandler& handler ){
 void selectionChanged( const Selectable& selectable ){
        m_selectionChanged_callbacks( selectable );
 }
-typedef MemberCaller1<RadiantSelectionSystem, const Selectable&, &RadiantSelectionSystem::selectionChanged> SelectionChangedCaller;
+typedef MemberCaller<RadiantSelectionSystem, void(const Selectable&), &RadiantSelectionSystem::selectionChanged> SelectionChangedCaller;
 
 
 void startMove(){
@@ -3746,7 +3750,7 @@ void SelectionSystem_constructPage( PreferenceGroup& group ){
        SelectionSystem_constructPreferences( page );
 }
 void SelectionSystem_registerPreferencesPage(){
-       PreferencesDialog_addSettingsPage( FreeCaller1<PreferenceGroup&, SelectionSystem_constructPage>() );
+       PreferencesDialog_addSettingsPage( FreeCaller<void(PreferenceGroup&), SelectionSystem_constructPage>() );
 }
 
 
@@ -3762,11 +3766,11 @@ void SelectionSystem_Construct(){
 
        g_RadiantSelectionSystem = new RadiantSelectionSystem;
 
-       SelectionSystem_boundsChanged = GlobalSceneGraph().addBoundsChangedCallback( FreeCaller<SelectionSystem_OnBoundsChanged>() );
+       SelectionSystem_boundsChanged = GlobalSceneGraph().addBoundsChangedCallback( FreeCaller<void(), SelectionSystem_OnBoundsChanged>() );
 
        GlobalShaderCache().attachRenderable( getSelectionSystem() );
 
-       GlobalPreferenceSystem().registerPreference( "PreferPointEntsIn2D", BoolImportStringCaller( getSelectionSystem().m_bPreferPointEntsIn2D ), BoolExportStringCaller( getSelectionSystem().m_bPreferPointEntsIn2D ) );
+       GlobalPreferenceSystem().registerPreference( "PreferPointEntsIn2D", make_property_string( getSelectionSystem().m_bPreferPointEntsIn2D ) );
        SelectionSystem_registerPreferencesPage();
 }
 
@@ -3809,7 +3813,7 @@ inline WindowVector window_constrained( WindowVector window, std::size_t x, std:
        return WindowVector( window_constrained( window.x(), x, width ), window_constrained( window.y(), y, height ) );
 }
 
-typedef Callback1<DeviceVector> MouseEventCallback;
+typedef Callback<void(DeviceVector)> MouseEventCallback;
 
 Single<MouseEventCallback> g_mouseMovedCallback;
 Single<MouseEventCallback> g_mouseUpCallback;
@@ -3957,7 +3961,7 @@ void mouseMoved( DeviceVector position ){
                                                                                ( m_state & c_modifier_face ) != c_modifierNone );
        }
 }
-typedef MemberCaller1<Selector_, DeviceVector, &Selector_::mouseMoved> MouseMovedCaller;
+typedef MemberCaller<Selector_, void(DeviceVector), &Selector_::mouseMoved> MouseMovedCaller;
 
 void mouseUp( DeviceVector position ){
        if( m_mouse2 ){
@@ -3970,7 +3974,7 @@ void mouseUp( DeviceVector position ){
        g_mouseMovedCallback.clear();
        g_mouseUpCallback.clear();
 }
-typedef MemberCaller1<Selector_, DeviceVector, &Selector_::mouseUp> MouseUpCaller;
+typedef MemberCaller<Selector_, void(DeviceVector), &Selector_::mouseUp> MouseUpCaller;
 };
 
 
@@ -3987,14 +3991,14 @@ bool mouseDown( DeviceVector position ){
 void mouseMoved( DeviceVector position ){
        getSelectionSystem().MoveSelected( *m_view, &position[0] );
 }
-typedef MemberCaller1<Manipulator_, DeviceVector, &Manipulator_::mouseMoved> MouseMovedCaller;
+typedef MemberCaller<Manipulator_, void(DeviceVector), &Manipulator_::mouseMoved> MouseMovedCaller;
 
 void mouseUp( DeviceVector position ){
        getSelectionSystem().endMove();
        g_mouseMovedCallback.clear();
        g_mouseUpCallback.clear();
 }
-typedef MemberCaller1<Manipulator_, DeviceVector, &Manipulator_::mouseUp> MouseUpCaller;
+typedef MemberCaller<Manipulator_, void(DeviceVector), &Manipulator_::mouseUp> MouseUpCaller;
 };
 
 void Scene_copyClosestTexture( SelectionTest& test );