Print Network with FlowDirection of RightToLeft

Hello Walter,
We are using Heberw as our language which has FlowDirection of RightToLeft. the Diagram control works great with RightToLeft, but the default print code use FlowDireciton of LeftToRight.
Is there easy way to change the FlowDirection of the print control to be RightToLeft?

Thank you,

You’re talking about the PrintDialog, yes?

You could replace the standard Diagram.CommandHandler with one that overrides CommandHandler.Print. Here’s what you could adapt:

public override void Print() {
  Diagram diagram = this.Diagram;
  if (diagram == null) return;
  try {
    PrintManager mgr = diagram.PrintManager;
    if (mgr == null) return;
    PrintDialog dlg = new PrintDialog();
    . . . customize this PrintDialog . . .
    if (dlg.ShowDialog() == true) mgr.Print(dlg);
  } catch (Exception ex) {
    . . .

I need to change the FlowDirection of the print control, not change the settings of the print dialog.


Which print control are you talking about, if it isn’t the PrintDialog?

<span =“Apple-style-span” style="font-family: Times; line-height: normal; font-size: medium; ">

I’ve looked with Reflector inside the PrintManager and follow it into the internal paginator which divid the DiagramPanel into pages. This paginator use Canvas element inside GetPage method to represent the visual element - I think this Canvas FlowDirection property should be copy from the Diagram control (or the DiagramPanel for that matter).

Is that reasonable?

Yes. I was interpreting you too literally regarding a print Control.

I’ll contact you separately with a new DLL after I get a chance to build and test it.