Mercurial > kinput2.yaz
comparison lib/AuxPanel.c @ 15:89750191b165
imported patch 18_patch-AuxPanel.c.diff
author | Yoshiki Yazawa <yaz@honeyplanet.jp> |
---|---|
date | Mon, 08 Mar 2010 20:38:16 +0900 |
parents | 92745d501b9a |
children |
comparison
equal
deleted
inserted
replaced
14:5a32b68b627d | 15:89750191b165 |
---|---|
460 static void | 460 static void |
461 allocDisplaySegments(cpw, n) | 461 allocDisplaySegments(cpw, n) |
462 AuxPanelWidget cpw; | 462 AuxPanelWidget cpw; |
463 Cardinal n; | 463 Cardinal n; |
464 { | 464 { |
465 if (cpw->cpanel.dispauxsegmentsize > n) return; | 465 |
466 if (cpw->cpanel.dispauxsegmentsize >= n) return; | |
467 /* $BI=<($7$?$$%;%0%a%s%H?t$,8=:_$NI=<(%;%0%a%s%H%5%$%:$HF1$8$J$i2?$b$7$J$$(B */ | |
468 | |
466 n = ((n + 3) / 4) * 4 ; | 469 n = ((n + 3) / 4) * 4 ; |
467 if (cpw->cpanel.dispauxsegments == NULL) { | 470 if (cpw->cpanel.dispauxsegments == NULL) { |
468 cpw->cpanel.dispauxsegments = | 471 cpw->cpanel.dispauxsegments = |
469 (DisplaySegment *)XtCalloc(n, sizeof(DisplaySegment)); | 472 (DisplaySegment *)XtCalloc(n, sizeof(DisplaySegment)); |
470 } else { | 473 } else { |
588 { | 591 { |
589 AuxPanelWidget cpw = (AuxPanelWidget)w; | 592 AuxPanelWidget cpw = (AuxPanelWidget)w; |
590 Cardinal i; | 593 Cardinal i; |
591 DisplaySegment *dseg; | 594 DisplaySegment *dseg; |
592 | 595 |
593 cpw->cpanel.numauxsegments = nseg; | 596 ICString *to; |
597 | |
594 allocDisplaySegments(cpw, nseg); | 598 allocDisplaySegments(cpw, nseg); |
595 for (i = 0, dseg = cpw->cpanel.dispauxsegments ; i < nseg ; i++, dseg++) { | 599 dseg = cpw->cpanel.dispauxsegments; |
596 /* $BA4=q$-49$($K$J$C$F$7$^$&!#(BICCompareSegment $B$,;H$($k$J$i(B | 600 for (i = 0; i < nseg ; i++) { |
597 $B;H$$$?$$$N$@$,!#(B */ | |
598 copyString(segments +i, &dseg->seg); | 601 copyString(segments +i, &dseg->seg); |
599 dseg->redrawpos = 0; | 602 dseg->redrawpos = 0; |
600 dseg->width = 0; | 603 dseg->width = 0; |
604 dseg++; | |
601 } | 605 } |
606 /* $B%;%0%a%s%H?t$,8:$k>l9g!"M>J,$K$J$C$?5l%;%0%a%s%HNN0h$N3+J|(B */ | |
607 /* $B7k6I(B buffer.c: free(buf) $B$G3+J|$5$l$k$+$i$[$C$H$$$F$b$$$$(B? */ | |
608 for (i = nseg; i < cpw->cpanel.numauxsegments; i++) { | |
609 to = &dseg->seg; | |
610 if (to->data != NULL) { | |
611 XtFree(to->data); | |
612 to->data = NULL; | |
613 } | |
614 dseg->redrawpos = 0; | |
615 dseg->width = 0; | |
616 dseg++; | |
617 } | |
618 cpw->cpanel.numauxsegments = nseg; | |
619 | |
620 /* | |
621 (1) allocDisplaySegments$B$O(B | |
622 cpw->cpanel.numauxsegments$B$r5l%;%0%a%s%H?t$@$H;W$C$F$k$+$i(B | |
623 cpw->cpanel.numauxsegments = nseg $B$rKAF,$G$d$C$A$c$&$H$^$:$$$N$G$O(B? | |
624 cpw->cpanel.numauxsegments = nseg $B$O:G8e$K$9$k!#(B | |
625 (2) for$B%k!<%W$O!"5l%;%0%a%s%H?t$h$j?7%;%0%a%s%H?t$,8:$k>l9g(B | |
626 XtFree$B$7$J$$$^$^$NI=<(%;%0%a%s%HNN0h$,=P$F$/$k!#(B | |
627 copyString$B$O%;%0%a%s%H?t$,8:$k>l9g$KIT0B(B | |
628 allocDisplaySegments$B$GBP1~$9$Y$-(B? (allocDisplaySegments$B$G(BXtFree$B$9$k(B?) | |
629 copyString$B$GBP1~$9$Y$-(B? | |
630 $B$3$3$GBP1~$9$Y$-(B? | |
631 (3) allocDisplaySegments$B$G(B | |
632 $BJQ99$5$l$k$N$O(B | |
633 cpw->cpanel.dispauxsegmentsize | |
634 cpw->cpanel.dispauxsegments XtRealloc$B$NJV$jCM(B | |
635 $BJQ99$5$l$J$$$1$I;H$o$l$k$N$O(B | |
636 cpw->cpanel.numauxsegments | |
637 $B$3$l$O$J$K(B? include/AuxPanelP.h$B$GDj5A$7$F$k$@$1$G%3%a%s%H$J$7(B | |
638 */ | |
639 | |
602 Layout(cpw, False, False); | 640 Layout(cpw, False, False); |
603 if (XtIsRealized(w)) XClearWindow(XtDisplay(w), XtWindow(w)); | 641 if (XtIsRealized(w)) XClearWindow(XtDisplay(w), XtWindow(w)); |
604 UpdateAuxDisplay(cpw); | 642 UpdateAuxDisplay(cpw); |
605 return; | 643 return; |
606 } | 644 } |