/usr/share/SuperCollider/SCClassLibrary/QtCollider/QSlider2D.sc is in supercollider-common 1:3.6.3~repack-5.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 | QSlider2D : QAbstractStepValue {
  *qtClass { ^'QcSlider2D' }
  *new { arg parent, bounds;
    var me = super.new( parent, bounds );
    me.connectMethod( 'randomize()', \randomize );
    ^me;
  }
  pixelStepX {
    // FIXME for now we are using step instead
    ^this.step;
  }
  pixelStepY {
    // FIXME for now we are using step instead
    ^this.step;
  }
  x {
    ^this.getProperty( \xValue );
  }
  x_ { arg aFloat;
    this.setProperty( \xValue, aFloat );
  }
  activex_ { arg aFloat;
    this.x_(aFloat);
    this.doAction;
  }
  y {
    ^this.getProperty( \yValue );
  }
  y_ { arg aFloat;
    this.setProperty( \yValue, aFloat );
  }
  activey_ { arg aFloat;
    this.y_(aFloat);
    this.doAction;
  }
  setXY { arg x, y;
    this.x_(x);
    this.y_(y);
  }
  setXYActive { arg x, y;
    this.setXY(x,y);
    this.doAction;
  }
  incrementX { arg factor=1.0; this.invokeMethod( \incrementX, factor.asFloat ); }
  decrementX { arg factor=1.0; this.invokeMethod( \decrementX, factor.asFloat ); }
  incrementY { arg factor=1.0; this.invokeMethod( \incrementY, factor.asFloat ); }
  decrementY { arg factor=1.0; this.invokeMethod( \decrementY, factor.asFloat ); }
  randomize {
    this.setXYActive( 1.0.rand, 1.0.rand );
  }
  knobColor { ^this.getProperty(\knobColor) }
  knobColor_ { arg color; this.setProperty(\knobColor, color) }
  background { ^this.getProperty(\grooveColor) }
  background_ { arg color; this.setProperty(\grooveColor, color) }
  defaultGetDrag { ^Point(this.x,this.y); }
  defaultCanReceiveDrag { ^(QView.currentDrag.class === Point); }
  defaultReceiveDrag {
    var pt = QView.currentDrag;
    this.setXYActive( pt.x, pt.y );
  }
}
 |