Насколько я знаю, единственный способ контролировать, какой объект Graphics передается, - включить опцию отладочной графики.Это делается путем вызова JComponent.setDebugGraphicsOptions(int)
, который заменит исходный объект Graphics на экземпляр javax.swing.DebugGraphics
.
. Экземпляр DebugGraphics
жестко задан в методе getGraphics
класса JComponent
поэтому я не вижу здесь способа использовать вашу собственную реализацию (кроме использования инструментария JVM для перезаписи кода, как это делают фиктивные библиотеки).