>>873
こんな感じでどうでしょうか。

インターフェースを担うクラス「LineInterface」から
実際に線を描画するクラス「DrawLine」に向けて
新たに以下のような3番目のクラス「Information」を作成し、このインスタンスを投げようかと思います。
クラス「Information」には2点の位置座標、色、線の太さ、半直線か直線か線分かの情報が格納されています。

Class Information
{
public:
  double x1, y1, x2, y2;
  int color;
  int lineWidth;
  bool leftExtendFlag, rightExtendFlag;


};

線を描画するのに必要な情報は全てこのクラスに格納・隠蔽します。
ユーザーから線に関する新たな情報を受け付けたら