660 " |
660 " |
661 |
661 |
662 <resource: #canvas> |
662 <resource: #canvas> |
663 |
663 |
664 ^ |
664 ^ |
665 #(#FullSpec |
665 #(FullSpec |
666 #name: #changeHLSDialogSpec |
666 name: changeHLSDialogSpec |
667 #window: |
667 window: |
668 #(#WindowSpec |
668 (WindowSpec |
669 #label: 'HLS Edit Dialog' |
669 label: 'HLS Edit Dialog' |
670 #name: 'HLS Edit Dialog' |
670 name: 'HLS Edit Dialog' |
671 #min: #(#Point 10 10) |
671 min: (Point 10 10) |
672 #max: #(#Point 800 478) |
672 bounds: (Rectangle 14 46 326 229) |
673 #bounds: #(#Rectangle 16 46 328 229) |
|
674 ) |
673 ) |
675 #component: |
674 component: |
676 #(#SpecCollection |
675 (SpecCollection |
677 #collection: #( |
676 collection: ( |
678 #(#LabelSpec |
677 (LabelSpec |
679 #label: 'Hue-Shift:' |
678 label: 'Hue-Shift:' |
680 #name: 'HueLabel' |
679 name: 'HueLabel' |
681 #layout: #(#LayoutFrame 20 0 21 0 120 0 43 0) |
680 layout: (LayoutFrame 20 0 21 0 120 0 43 0) |
682 #translateLabel: true |
681 translateLabel: true |
683 #adjust: #right |
682 adjust: right |
684 ) |
683 ) |
685 #(#InputFieldSpec |
684 (InputFieldSpec |
686 #name: 'HueShiftEntryField' |
685 name: 'HueShiftEntryField' |
687 #layout: #(#LayoutFrame 123 0 21 0 166 0 43 0) |
686 layout: (LayoutFrame 123 0 21 0 166 0 43 0) |
688 #tabable: true |
687 tabable: true |
689 #model: #hueShiftAmount |
688 model: hueShiftAmount |
690 #type: #numberInRange |
689 type: numberInRange |
691 #minValue: 0 |
690 minValue: 0 |
692 #maxValue: 360 |
691 maxValue: 360 |
693 #acceptChannel: #acceptChannel |
692 acceptChannel: acceptChannel |
694 #acceptOnPointerLeave: false |
693 acceptOnPointerLeave: false |
695 ) |
694 ) |
696 #(#ThumbWheelSpec |
695 (ThumbWheelSpec |
697 #name: 'HueWheel' |
696 name: 'HueWheel' |
698 #layout: #(#LayoutFrame 180 0 22 0 297 0 42 0) |
697 layout: (LayoutFrame 180 0 22 0 297 0 42 0) |
699 #model: #hueShiftAmount |
698 model: hueShiftAmount |
700 #orientation: #horizontal |
699 orientation: horizontal |
701 #step: 1 |
700 step: 1 |
702 #endlessRotation: true |
701 endlessRotation: true |
703 ) |
702 ) |
704 #(#LabelSpec |
703 (LabelSpec |
705 #label: 'Light Factor:' |
704 label: 'Light Factor:' |
706 #name: 'LightLabel' |
705 name: 'LightLabel' |
707 #layout: #(#LayoutFrame 18 0 50 0 120 0 72 0) |
706 layout: (LayoutFrame 18 0 50 0 120 0 72 0) |
708 #translateLabel: true |
707 translateLabel: true |
709 #adjust: #right |
708 adjust: right |
710 ) |
709 ) |
711 #(#InputFieldSpec |
710 (InputFieldSpec |
712 #name: 'LightEntryField' |
711 name: 'LightEntryField' |
713 #layout: #(#LayoutFrame 123 0 50 0 166 0 72 0) |
712 layout: (LayoutFrame 123 0 50 0 166 0 72 0) |
714 #tabable: true |
713 tabable: true |
715 #model: #lightAmount |
714 model: lightAmount |
716 #type: #numberInRange |
715 type: numberInRange |
717 #minValue: 0 |
716 minValue: 0 |
718 #maxValue: 1000 |
717 maxValue: 1000 |
719 #acceptChannel: #acceptChannel |
718 acceptChannel: acceptChannel |
720 #acceptOnPointerLeave: false |
719 acceptOnPointerLeave: false |
721 ) |
720 ) |
722 #(#ThumbWheelSpec |
721 (ThumbWheelSpec |
723 #name: 'LightWheel' |
722 name: 'LightWheel' |
724 #layout: #(#LayoutFrame 180 0 51 0 297 0 71 0) |
723 layout: (LayoutFrame 180 0 51 0 297 0 71 0) |
725 #model: #lightAmount |
724 model: lightAmount |
726 #orientation: #horizontal |
725 orientation: horizontal |
727 #stop: 1000 |
726 stop: 1000 |
728 #step: 1 |
727 step: 1 |
729 ) |
728 ) |
730 #(#LabelSpec |
729 (LabelSpec |
731 #label: 'Saturation Factor:' |
730 label: 'Saturation Factor:' |
732 #name: 'SaturationLabel' |
731 name: 'SaturationLabel' |
733 #layout: #(#LayoutFrame 9 0 79 0 120 0 101 0) |
732 layout: (LayoutFrame 9 0 79 0 120 0 101 0) |
734 #translateLabel: true |
733 translateLabel: true |
735 #adjust: #right |
734 adjust: right |
736 ) |
735 ) |
737 #(#InputFieldSpec |
736 (InputFieldSpec |
738 #name: 'SaturationEntryField' |
737 name: 'SaturationEntryField' |
739 #layout: #(#LayoutFrame 123 0 79 0 166 0 101 0) |
738 layout: (LayoutFrame 123 0 79 0 166 0 101 0) |
740 #tabable: true |
739 tabable: true |
741 #model: #saturationAmount |
740 model: saturationAmount |
742 #type: #numberInRange |
741 type: numberInRange |
743 #minValue: 0 |
742 minValue: 0 |
744 #maxValue: 1000 |
743 maxValue: 1000 |
745 #acceptChannel: #acceptChannel |
744 acceptChannel: acceptChannel |
746 #acceptOnPointerLeave: false |
745 acceptOnPointerLeave: false |
747 ) |
746 ) |
748 #(#ThumbWheelSpec |
747 (ThumbWheelSpec |
749 #name: 'SaturationWheel' |
748 name: 'SaturationWheel' |
750 #layout: #(#LayoutFrame 180 0 80 0 297 0 100 0) |
749 layout: (LayoutFrame 180 0 80 0 297 0 100 0) |
751 #model: #saturationAmount |
750 model: saturationAmount |
752 #orientation: #horizontal |
751 orientation: horizontal |
753 #stop: 1000 |
752 stop: 1000 |
754 #step: 1 |
753 step: 1 |
755 ) |
754 ) |
756 #(#LabelSpec |
755 (LabelSpec |
757 #name: 'HueColorLabel' |
756 name: 'HueColorLabel' |
758 #layout: #(#LayoutFrame 10 0.0 109 0 -10 1.0 148 0) |
757 layout: (LayoutFrame 10 0.0 109 0 -10 1.0 148 0) |
759 #translateLabel: true |
758 translateLabel: true |
760 #backgroundChannel: #hlsColor |
759 backgroundChannel: hlsColor |
761 ) |
760 ) |
762 #(#HorizontalPanelViewSpec |
761 (HorizontalPanelViewSpec |
763 #name: 'HorizontalPanel1' |
762 name: 'HorizontalPanel1' |
764 #layout: #(#LayoutFrame 0 0.0 -30 1 0 1.0 0 1) |
763 layout: (LayoutFrame 0 0.0 -30 1 0 1.0 0 1) |
765 #horizontalLayout: #fitSpace |
764 horizontalLayout: fitSpace |
766 #verticalLayout: #center |
765 verticalLayout: center |
767 #horizontalSpace: 3 |
766 horizontalSpace: 3 |
768 #verticalSpace: 3 |
767 verticalSpace: 3 |
769 #reverseOrderIfOKAtLeft: true |
768 reverseOrderIfOKAtLeft: true |
770 #component: |
769 component: |
771 #(#SpecCollection |
770 (SpecCollection |
772 #collection: #( |
771 collection: ( |
773 #(#ActionButtonSpec |
772 (ActionButtonSpec |
774 #label: 'Cancel' |
773 label: 'Cancel' |
775 #name: 'Button1' |
774 name: 'Button1' |
776 #translateLabel: true |
775 translateLabel: true |
777 #tabable: true |
776 tabable: true |
778 #model: #cancel |
777 model: cancel |
779 #extent: #(#Point 151 22) |
778 extent: (Point 151 22) |
780 ) |
779 ) |
781 #(#ActionButtonSpec |
780 (ActionButtonSpec |
782 #label: 'OK' |
781 label: 'OK' |
783 #name: 'Button2' |
782 name: 'Button2' |
784 #translateLabel: true |
783 translateLabel: true |
785 #tabable: true |
784 tabable: true |
786 #model: #accept |
785 model: accept |
787 #extent: #(#Point 152 22) |
786 extent: (Point 152 22) |
788 ) |
787 ) |
789 ) |
788 ) |
790 |
789 |
791 ) |
790 ) |
792 ) |
791 ) |
794 |
793 |
795 ) |
794 ) |
796 ) |
795 ) |
797 ! |
796 ! |
798 |
797 |
799 dialogSpecForNewImage |
798 cropDialogSpec |
800 "This resource specification was automatically generated |
799 "This resource specification was automatically generated |
801 by the UIPainter of ST/X." |
800 by the UIPainter of ST/X." |
802 |
801 |
803 "Do not manually edit this!! If it is corrupted, |
802 "Do not manually edit this!! If it is corrupted, |
804 the UIPainter may not be able to read the specification." |
803 the UIPainter may not be able to read the specification." |
805 |
804 |
806 " |
805 " |
807 UIPainter new openOnClass:ImageEditor andSelector:#dialogSpecForNewImage |
806 UIPainter new openOnClass:ImageEditor andSelector:#cropDialogSpec |
808 ImageEditor new openInterface:#dialogSpecForNewImage |
807 ImageEditor new openInterface:#cropDialogSpec |
809 " |
808 " |
810 |
809 |
811 <resource: #canvas> |
810 <resource: #canvas> |
812 |
811 |
813 ^ |
|
814 |
|
815 #(#FullSpec |
|
816 #window: |
|
817 #(#WindowSpec |
|
818 #name: 'New Image' |
|
819 #layout: #(#LayoutFrame 81 0 288 0 381 0 406 0) |
|
820 #label: 'New Image' |
|
821 #min: #(#Point 10 10) |
|
822 #max: #(#Point 1152 900) |
|
823 #bounds: #(#Rectangle 81 288 382 407) |
|
824 #usePreferredExtent: false |
|
825 ) |
|
826 #component: |
|
827 #(#SpecCollection |
|
828 #collection: |
|
829 #( |
|
830 #(#ViewSpec |
|
831 #name: 'View' |
|
832 #layout: #(#LayoutFrame 0 0.0 0 0.0 0 1.0 -35 1.0) |
|
833 #component: |
|
834 #(#SpecCollection |
|
835 #collection: |
|
836 #( |
|
837 #(#FramedBoxSpec |
|
838 #name: 'framedBox1' |
|
839 #layout: #(#LayoutFrame 1 0.0 7 0.0 0 0.4 76 0) |
|
840 #component: |
|
841 #(#SpecCollection |
|
842 #collection: |
|
843 #( |
|
844 #(#ComboBoxSpec |
|
845 #name: 'defaultSizesComboBox' |
|
846 #layout: #(#LayoutFrame 0 0.0 10 0.0 0 1 35 0.0) |
|
847 #model: #selectionOfSize |
|
848 #type: #string |
|
849 #comboList: #listOfDefaultSizes |
|
850 ) |
|
851 ) |
|
852 ) |
|
853 #label: 'Size' |
|
854 #labelPosition: #topLeft |
|
855 #style: #(#FontDescription #helvetica #medium #roman 12) |
|
856 ) |
|
857 #(#FramedBoxSpec |
|
858 #name: 'framedBox2' |
|
859 #layout: #(#LayoutFrame 0 0.4 7 0.0 -1 1.0 76 0) |
|
860 #component: |
|
861 #(#SpecCollection |
|
862 #collection: |
|
863 #( |
|
864 #(#ComboListSpec |
|
865 #name: 'colorMapComboBox' |
|
866 #layout: #(#LayoutFrame 0 0.0 10 0.0 0 1 35 0.0) |
|
867 #model: #selectionOfColorMap |
|
868 #comboList: #listOfColorMaps |
|
869 #useIndex: false |
|
870 ) |
|
871 ) |
|
872 ) |
|
873 #label: 'Color Map' |
|
874 #labelPosition: #topLeft |
|
875 #style: #(#FontDescription #helvetica #medium #roman 12) |
|
876 ) |
|
877 ) |
|
878 ) |
|
879 #level: 1 |
|
880 ) |
|
881 #(#UISubSpecification |
|
882 #name: 'windowSpecForCommitWithoutChannels' |
|
883 #layout: #(#LayoutFrame 2 0.0 -26 1 -2 1.0 -2 1.0) |
|
884 #minorKey: #windowSpecForCommitWithoutChannels |
|
885 ) |
|
886 ) |
|
887 ) |
|
888 ) |
|
889 ! |
|
890 |
|
891 gropDialogSpec |
|
892 "This resource specification was automatically generated |
|
893 by the UIPainter of ST/X." |
|
894 |
|
895 "Do not manually edit this!! If it is corrupted, |
|
896 the UIPainter may not be able to read the specification." |
|
897 |
|
898 " |
|
899 UIPainter new openOnClass:ImageEditor andSelector:#gropDialogSpec |
|
900 ImageEditor new openInterface:#gropDialogSpec |
|
901 " |
|
902 |
|
903 <resource: #canvas> |
|
904 |
|
905 ^ |
812 ^ |
906 #(#FullSpec |
813 #(FullSpec |
907 #name: #gropDialogSpec |
814 name: cropDialogSpec |
908 #window: |
815 window: |
909 #(#WindowSpec |
816 (WindowSpec |
910 #label: 'Crop Border(s)' |
817 label: 'Crop Border(s)' |
911 #name: 'Crop Border(s)' |
818 name: 'Crop Border(s)' |
912 #min: #(#Point 10 10) |
819 min: (Point 10 10) |
913 #max: #(#Point 800 478) |
820 bounds: (Rectangle 14 46 259 229) |
914 #bounds: #(#Rectangle 16 52 261 235) |
|
915 ) |
821 ) |
916 #component: |
822 component: |
917 #(#SpecCollection |
823 (SpecCollection |
918 #collection: #( |
824 collection: ( |
919 #(#LabelSpec |
825 (LabelSpec |
920 #label: 'Left:' |
826 label: 'Left:' |
921 #name: 'GropLeftLabel' |
827 name: 'GropLeftLabel' |
922 #layout: #(#LayoutFrame 14 0 21 0 90 0 43 0) |
828 layout: (LayoutFrame 14 0 21 0 90 0 43 0) |
923 #translateLabel: true |
829 translateLabel: true |
924 #adjust: #right |
830 adjust: right |
925 ) |
831 ) |
926 #(#InputFieldSpec |
832 (InputFieldSpec |
927 #name: 'GropLeftEntryField' |
833 name: 'GropLeftEntryField' |
928 #layout: #(#LayoutFrame 95 0 21 0 132 0 43 0) |
834 layout: (LayoutFrame 95 0 21 0 132 0 43 0) |
929 #tabable: true |
835 tabable: true |
930 #model: #left |
836 model: left |
931 #type: #number |
837 type: number |
932 #acceptChannel: #acceptChannel |
838 acceptChannel: acceptChannel |
933 #acceptOnPointerLeave: false |
839 acceptOnPointerLeave: false |
934 ) |
840 ) |
935 #(#ActionButtonSpec |
841 (ActionButtonSpec |
936 #label: 'Now' |
842 label: 'Now' |
937 #name: 'GropLeftNowButton' |
843 name: 'GropLeftNowButton' |
938 #layout: #(#LayoutFrame 148 0 21 0 221 0 43 0) |
844 layout: (LayoutFrame 148 0 21 0 221 0 43 0) |
939 #translateLabel: true |
845 translateLabel: true |
940 #tabable: true |
846 tabable: true |
941 #model: #gropLeftNow |
847 model: gropLeftNow |
942 #autoRepeat: true |
848 autoRepeat: true |
943 ) |
849 ) |
944 #(#LabelSpec |
850 (LabelSpec |
945 #label: 'Right:' |
851 label: 'Right:' |
946 #name: 'GropRightLabel' |
852 name: 'GropRightLabel' |
947 #layout: #(#LayoutFrame 14 0 51 0 90 0 73 0) |
853 layout: (LayoutFrame 14 0 51 0 90 0 73 0) |
948 #translateLabel: true |
854 translateLabel: true |
949 #adjust: #right |
855 adjust: right |
950 ) |
856 ) |
951 #(#InputFieldSpec |
857 (InputFieldSpec |
952 #name: 'GropRightEntryField' |
858 name: 'GropRightEntryField' |
953 #layout: #(#LayoutFrame 95 0 51 0 132 0 73 0) |
859 layout: (LayoutFrame 95 0 51 0 132 0 73 0) |
954 #tabable: true |
860 tabable: true |
955 #model: #right |
861 model: right |
956 #type: #number |
862 type: number |
957 #acceptChannel: #acceptChannel |
863 acceptChannel: acceptChannel |
958 #acceptOnPointerLeave: false |
864 acceptOnPointerLeave: false |
959 ) |
865 ) |
960 #(#ActionButtonSpec |
866 (ActionButtonSpec |
961 #label: 'Now' |
867 label: 'Now' |
962 #name: 'GropRightButton' |
868 name: 'GropRightButton' |
963 #layout: #(#LayoutFrame 148 0 51 0 221 0 73 0) |
869 layout: (LayoutFrame 148 0 51 0 221 0 73 0) |
964 #translateLabel: true |
870 translateLabel: true |
965 #tabable: true |
871 tabable: true |
966 #model: #gropRightNow |
872 model: gropRightNow |
967 #autoRepeat: true |
873 autoRepeat: true |
968 ) |
874 ) |
969 #(#LabelSpec |
875 (LabelSpec |
970 #label: 'Top:' |
876 label: 'Top:' |
971 #name: 'GropTopLabel' |
877 name: 'GropTopLabel' |
972 #layout: #(#LayoutFrame 14 0 81 0 90 0 103 0) |
878 layout: (LayoutFrame 14 0 81 0 90 0 103 0) |
973 #translateLabel: true |
879 translateLabel: true |
974 #adjust: #right |
880 adjust: right |
975 ) |
881 ) |
976 #(#InputFieldSpec |
882 (InputFieldSpec |
977 #name: 'GropTopEntryField' |
883 name: 'GropTopEntryField' |
978 #layout: #(#LayoutFrame 95 0 81 0 132 0 103 0) |
884 layout: (LayoutFrame 95 0 81 0 132 0 103 0) |
979 #tabable: true |
885 tabable: true |
980 #model: #top |
886 model: top |
981 #type: #number |
887 type: number |
982 #acceptChannel: #acceptChannel |
888 acceptChannel: acceptChannel |
983 #acceptOnPointerLeave: false |
889 acceptOnPointerLeave: false |
984 ) |
890 ) |
985 #(#ActionButtonSpec |
891 (ActionButtonSpec |
986 #label: 'Now' |
892 label: 'Now' |
987 #name: 'GropTopButton' |
893 name: 'GropTopButton' |
988 #layout: #(#LayoutFrame 148 0 81 0 221 0 103 0) |
894 layout: (LayoutFrame 148 0 81 0 221 0 103 0) |
989 #translateLabel: true |
895 translateLabel: true |
990 #tabable: true |
896 tabable: true |
991 #model: #gropTopNow |
897 model: gropTopNow |
992 #autoRepeat: true |
898 autoRepeat: true |
993 ) |
899 ) |
994 #(#LabelSpec |
900 (LabelSpec |
995 #label: 'Bottom:' |
901 label: 'Bottom:' |
996 #name: 'GropBottomLabel' |
902 name: 'GropBottomLabel' |
997 #layout: #(#LayoutFrame 14 0 111 0 90 0 133 0) |
903 layout: (LayoutFrame 14 0 111 0 90 0 133 0) |
998 #translateLabel: true |
904 translateLabel: true |
999 #adjust: #right |
905 adjust: right |
1000 ) |
906 ) |
1001 #(#InputFieldSpec |
907 (InputFieldSpec |
1002 #name: 'GropBottomEntryField' |
908 name: 'GropBottomEntryField' |
1003 #layout: #(#LayoutFrame 95 0 111 0 132 0 133 0) |
909 layout: (LayoutFrame 95 0 111 0 132 0 133 0) |
1004 #tabable: true |
910 tabable: true |
1005 #model: #bottom |
911 model: bottom |
1006 #type: #number |
912 type: number |
1007 #acceptChannel: #acceptChannel |
913 acceptChannel: acceptChannel |
1008 #acceptOnPointerLeave: false |
914 acceptOnPointerLeave: false |
1009 ) |
915 ) |
1010 #(#ActionButtonSpec |
916 (ActionButtonSpec |
1011 #label: 'Now' |
917 label: 'Now' |
1012 #name: 'GropBottomButton' |
918 name: 'GropBottomButton' |
1013 #layout: #(#LayoutFrame 148 0 111 0 221 0 133 0) |
919 layout: (LayoutFrame 148 0 111 0 221 0 133 0) |
1014 #translateLabel: true |
920 translateLabel: true |
1015 #tabable: true |
921 tabable: true |
1016 #model: #gropBottomNow |
922 model: gropBottomNow |
1017 #autoRepeat: true |
923 autoRepeat: true |
1018 ) |
924 ) |
1019 #(#HorizontalPanelViewSpec |
925 (HorizontalPanelViewSpec |
1020 #name: 'HorizontalPanel1' |
926 name: 'HorizontalPanel1' |
1021 #layout: #(#LayoutFrame 0 0.0 -30 1 0 1.0 0 1) |
927 layout: (LayoutFrame 0 0.0 -30 1 0 1.0 0 1) |
1022 #horizontalLayout: #fitSpace |
928 horizontalLayout: fitSpace |
1023 #verticalLayout: #center |
929 verticalLayout: center |
1024 #horizontalSpace: 3 |
930 horizontalSpace: 3 |
1025 #verticalSpace: 3 |
931 verticalSpace: 3 |
1026 #reverseOrderIfOKAtLeft: true |
932 reverseOrderIfOKAtLeft: true |
1027 #component: |
933 component: |
1028 #(#SpecCollection |
934 (SpecCollection |
1029 #collection: #( |
935 collection: ( |
1030 #(#ActionButtonSpec |
936 (ActionButtonSpec |
1031 #label: 'Cancel' |
937 label: 'Cancel' |
1032 #name: 'Button1' |
938 name: 'Button1' |
1033 #translateLabel: true |
939 translateLabel: true |
1034 #tabable: true |
940 tabable: true |
1035 #model: #cancel |
941 model: cancel |
1036 #extent: #(#Point 77 22) |
942 extent: (Point 77 22) |
1037 ) |
943 ) |
1038 #(#ActionButtonSpec |
944 (ActionButtonSpec |
1039 #label: 'Apply' |
945 label: 'Apply' |
1040 #name: 'Button3' |
946 name: 'Button3' |
1041 #translateLabel: true |
947 translateLabel: true |
1042 #tabable: true |
948 tabable: true |
1043 #model: #applyAction |
949 model: applyAction |
1044 #extent: #(#Point 78 22) |
950 extent: (Point 78 22) |
1045 ) |
951 ) |
1046 #(#ActionButtonSpec |
952 (ActionButtonSpec |
1047 #label: 'OK' |
953 label: 'OK' |
1048 #name: 'Button2' |
954 name: 'Button2' |
1049 #translateLabel: true |
955 translateLabel: true |
1050 #tabable: true |
956 tabable: true |
1051 #model: #accept |
957 model: accept |
1052 #extent: #(#Point 78 22) |
958 extent: (Point 78 22) |
1053 ) |
959 ) |
1054 ) |
960 ) |
1055 |
961 |
1056 ) |
962 ) |
1057 ) |
963 ) |
1059 |
965 |
1060 ) |
966 ) |
1061 ) |
967 ) |
1062 ! |
968 ! |
1063 |
969 |
1064 shiftDialogSpec |
970 dialogSpecForNewImage |
1065 "This resource specification was automatically generated |
971 "This resource specification was automatically generated |
1066 by the UIPainter of ST/X." |
972 by the UIPainter of ST/X." |
1067 |
973 |
1068 "Do not manually edit this!! If it is corrupted, |
974 "Do not manually edit this!! If it is corrupted, |
1069 the UIPainter may not be able to read the specification." |
975 the UIPainter may not be able to read the specification." |
1070 |
976 |
1071 " |
977 " |
1072 UIPainter new openOnClass:ImageEditor andSelector:#shiftDialogSpec |
978 UIPainter new openOnClass:ImageEditor andSelector:#dialogSpecForNewImage |
1073 ImageEditor new openInterface:#shiftDialogSpec |
979 ImageEditor new openInterface:#dialogSpecForNewImage |
1074 " |
980 " |
1075 |
981 |
1076 <resource: #canvas> |
982 <resource: #canvas> |
1077 |
983 |
1078 ^ |
984 ^ |
1079 #(#FullSpec |
985 #(FullSpec |
1080 #name: #shiftDialogSpec |
986 name: dialogSpecForNewImage |
1081 #window: |
987 window: |
1082 #(#WindowSpec |
988 (WindowSpec |
1083 #label: 'Shift' |
989 label: 'New Image' |
1084 #name: 'Shift' |
990 name: 'New Image' |
1085 #min: #(#Point 10 10) |
991 min: (Point 10 10) |
1086 #max: #(#Point 800 478) |
992 bounds: (Rectangle 14 46 315 165) |
1087 #bounds: #(#Rectangle 16 46 261 229) |
|
1088 ) |
993 ) |
1089 #component: |
994 component: |
1090 #(#SpecCollection |
995 (SpecCollection |
1091 #collection: #( |
996 collection: ( |
1092 #(#LabelSpec |
997 (ViewSpec |
1093 #label: 'Amount:' |
998 name: 'View' |
1094 #name: 'AmountLabel' |
999 layout: (LayoutFrame 0 0.0 0 0.0 0 1.0 -35 1.0) |
1095 #layout: #(#LayoutFrame 14 0 21 0 90 0 43 0) |
1000 level: 1 |
1096 #translateLabel: true |
1001 component: |
1097 #adjust: #right |
1002 (SpecCollection |
1098 ) |
1003 collection: ( |
1099 #(#InputFieldSpec |
1004 (FramedBoxSpec |
1100 #name: 'AmountEntryField' |
1005 label: 'Size' |
1101 #layout: #(#LayoutFrame 95 0 21 0 139 0 43 0) |
1006 name: 'framedBox1' |
1102 #tabable: true |
1007 layout: (LayoutFrame 1 0.0 7 0.0 0 0.4 76 0) |
1103 #model: #shiftAmount |
1008 labelPosition: topLeft |
1104 #type: #number |
1009 style: (FontDescription helvetica medium roman 12) |
1105 #acceptChannel: #acceptChannel |
1010 component: |
1106 #acceptOnPointerLeave: false |
1011 (SpecCollection |
1107 ) |
1012 collection: ( |
1108 #(#HorizontalPanelViewSpec |
1013 (ComboBoxSpec |
1109 #name: 'HorizontalPanel1' |
1014 name: 'defaultSizesComboBox' |
1110 #layout: #(#LayoutFrame 0 0.0 -30 1 0 1.0 0 1) |
1015 layout: (LayoutFrame 0 0.0 10 0.0 0 1 35 0.0) |
1111 #horizontalLayout: #fitSpace |
1016 model: selectionOfSize |
1112 #verticalLayout: #center |
1017 type: string |
1113 #horizontalSpace: 3 |
1018 acceptOnPointerLeave: false |
1114 #verticalSpace: 3 |
1019 comboList: listOfDefaultSizes |
1115 #reverseOrderIfOKAtLeft: true |
1020 isFilenameBox: false |
1116 #component: |
1021 ) |
1117 #(#SpecCollection |
1022 ) |
1118 #collection: #( |
1023 |
1119 #(#ActionButtonSpec |
1024 ) |
1120 #label: 'Cancel' |
|
1121 #name: 'Button1' |
|
1122 #translateLabel: true |
|
1123 #tabable: true |
|
1124 #model: #cancel |
|
1125 #extent: #(#Point 118 22) |
|
1126 ) |
1025 ) |
1127 #(#ActionButtonSpec |
1026 (FramedBoxSpec |
1128 #label: 'OK' |
1027 label: 'Color Map' |
1129 #name: 'Button2' |
1028 name: 'framedBox2' |
1130 #translateLabel: true |
1029 layout: (LayoutFrame 0 0.4 7 0.0 -1 1.0 76 0) |
1131 #tabable: true |
1030 labelPosition: topLeft |
1132 #model: #accept |
1031 style: (FontDescription helvetica medium roman 12) |
1133 #extent: #(#Point 118 22) |
1032 component: |
|
1033 (SpecCollection |
|
1034 collection: ( |
|
1035 (ComboListSpec |
|
1036 name: 'colorMapComboBox' |
|
1037 layout: (LayoutFrame 0 0.0 10 0.0 0 1 35 0.0) |
|
1038 model: selectionOfColorMap |
|
1039 comboList: listOfColorMaps |
|
1040 useIndex: false |
|
1041 ) |
|
1042 ) |
|
1043 |
|
1044 ) |
1134 ) |
1045 ) |
1135 ) |
1046 ) |
1136 |
1047 |
1137 ) |
1048 ) |
1138 ) |
1049 ) |
1139 #(#ArrowButtonSpec |
1050 (UISubSpecification |
1140 #name: 'upArrowButton' |
1051 name: 'windowSpecForCommitWithoutChannels' |
1141 #layout: #(#LayoutFrame 105 0 63 0 127 0 85 0) |
1052 layout: (LayoutFrame 2 0.0 -26 1 -2 1.0 -2 1.0) |
1142 #model: #shiftUpNow |
1053 minorKey: windowSpecForCommitWithoutChannels |
1143 #isTriggerOnDown: true |
|
1144 #autoRepeat: true |
|
1145 #actionValue: '' |
|
1146 #direction: #up |
|
1147 ) |
|
1148 #(#ArrowButtonSpec |
|
1149 #name: 'leftArrowButton' |
|
1150 #layout: #(#LayoutFrame 84 0 86 0 106 0 108 0) |
|
1151 #model: #shiftLeftNow |
|
1152 #isTriggerOnDown: true |
|
1153 #autoRepeat: true |
|
1154 #actionValue: '' |
|
1155 #direction: #left |
|
1156 ) |
|
1157 #(#ArrowButtonSpec |
|
1158 #name: 'rightArrowButton' |
|
1159 #layout: #(#LayoutFrame 126 0 86 0 148 0 108 0) |
|
1160 #model: #shiftRightNow |
|
1161 #isTriggerOnDown: true |
|
1162 #autoRepeat: true |
|
1163 #actionValue: '' |
|
1164 #direction: #right |
|
1165 ) |
|
1166 #(#ArrowButtonSpec |
|
1167 #name: 'downArrowButton' |
|
1168 #layout: #(#LayoutFrame 105 0 107 0 127 0 129 0) |
|
1169 #model: #shiftDownNow |
|
1170 #isTriggerOnDown: true |
|
1171 #autoRepeat: true |
|
1172 #actionValue: '' |
|
1173 #direction: #down |
|
1174 ) |
|
1175 #(#CheckBoxSpec |
|
1176 #label: 'Wrap' |
|
1177 #name: 'CheckBox1' |
|
1178 #layout: #(#LayoutFrame 153 0 22 0 289 0 44 0) |
|
1179 #model: #wrap |
|
1180 #translateLabel: true |
|
1181 ) |
1054 ) |
1182 ) |
1055 ) |
1183 |
1056 |
1184 ) |
1057 ) |
1185 ) |
1058 ) |
1186 ! |
1059 ! |
1187 |
1060 |
1188 ungropDialogSpec |
1061 shiftDialogSpec |
1189 "This resource specification was automatically generated |
1062 "This resource specification was automatically generated |
1190 by the UIPainter of ST/X." |
1063 by the UIPainter of ST/X." |
1191 |
1064 |
1192 "Do not manually edit this!! If it is corrupted, |
1065 "Do not manually edit this!! If it is corrupted, |
1193 the UIPainter may not be able to read the specification." |
1066 the UIPainter may not be able to read the specification." |
1194 |
1067 |
1195 " |
1068 " |
1196 UIPainter new openOnClass:ImageEditor andSelector:#ungropDialogSpec |
1069 UIPainter new openOnClass:ImageEditor andSelector:#shiftDialogSpec |
1197 ImageEditor new openInterface:#ungropDialogSpec |
1070 ImageEditor new openInterface:#shiftDialogSpec |
1198 " |
1071 " |
1199 |
1072 |
1200 <resource: #canvas> |
1073 <resource: #canvas> |
1201 |
1074 |
1202 ^ |
1075 ^ |
1203 #(#FullSpec |
1076 #(FullSpec |
1204 #name: #ungropDialogSpec |
1077 name: shiftDialogSpec |
1205 #window: |
1078 window: |
1206 #(#WindowSpec |
1079 (WindowSpec |
1207 #label: 'Add Border(s)' |
1080 label: 'Shift' |
1208 #name: 'Add Borders' |
1081 name: 'Shift' |
1209 #min: #(#Point 10 10) |
1082 min: (Point 10 10) |
1210 #max: #(#Point 800 478) |
1083 bounds: (Rectangle 14 46 259 229) |
1211 #bounds: #(#Rectangle 16 46 261 229) |
|
1212 ) |
1084 ) |
1213 #component: |
1085 component: |
1214 #(#SpecCollection |
1086 (SpecCollection |
1215 #collection: #( |
1087 collection: ( |
1216 #(#LabelSpec |
1088 (LabelSpec |
1217 #label: 'Left:' |
1089 label: 'Amount:' |
1218 #name: 'Label1' |
1090 name: 'AmountLabel' |
1219 #layout: #(#LayoutFrame 14 0 21 0 90 0 43 0) |
1091 layout: (LayoutFrame 14 0 21 0 90 0 43 0) |
1220 #translateLabel: true |
1092 translateLabel: true |
1221 #adjust: #right |
1093 adjust: right |
1222 ) |
1094 ) |
1223 #(#InputFieldSpec |
1095 (InputFieldSpec |
1224 #name: 'EntryField1' |
1096 name: 'AmountEntryField' |
1225 #layout: #(#LayoutFrame 95 0 21 0 132 0 43 0) |
1097 layout: (LayoutFrame 95 0 21 0 139 0 43 0) |
1226 #model: #left |
1098 tabable: true |
1227 #type: #number |
1099 model: shiftAmount |
1228 #acceptOnPointerLeave: false |
1100 type: number |
1229 ) |
1101 acceptChannel: acceptChannel |
1230 #(#LabelSpec |
1102 acceptOnPointerLeave: false |
1231 #label: 'Right:' |
1103 ) |
1232 #name: 'Label2' |
1104 (HorizontalPanelViewSpec |
1233 #layout: #(#LayoutFrame 14 0 51 0 90 0 73 0) |
1105 name: 'HorizontalPanel1' |
1234 #translateLabel: true |
1106 layout: (LayoutFrame 0 0.0 -30 1 0 1.0 0 1) |
1235 #adjust: #right |
1107 horizontalLayout: fitSpace |
1236 ) |
1108 verticalLayout: center |
1237 #(#InputFieldSpec |
1109 horizontalSpace: 3 |
1238 #name: 'EntryField2' |
1110 verticalSpace: 3 |
1239 #layout: #(#LayoutFrame 95 0 51 0 132 0 73 0) |
1111 reverseOrderIfOKAtLeft: true |
1240 #model: #right |
1112 component: |
1241 #type: #number |
1113 (SpecCollection |
1242 #acceptOnPointerLeave: false |
1114 collection: ( |
1243 ) |
1115 (ActionButtonSpec |
1244 #(#LabelSpec |
1116 label: 'Cancel' |
1245 #label: 'Top:' |
1117 name: 'Button1' |
1246 #name: 'Label3' |
1118 translateLabel: true |
1247 #layout: #(#LayoutFrame 14 0 81 0 90 0 103 0) |
1119 tabable: true |
1248 #translateLabel: true |
1120 model: cancel |
1249 #adjust: #right |
1121 extent: (Point 118 22) |
1250 ) |
|
1251 #(#InputFieldSpec |
|
1252 #name: 'EntryField3' |
|
1253 #layout: #(#LayoutFrame 95 0 81 0 132 0 103 0) |
|
1254 #model: #top |
|
1255 #type: #number |
|
1256 #acceptOnPointerLeave: false |
|
1257 ) |
|
1258 #(#LabelSpec |
|
1259 #label: 'Bottom:' |
|
1260 #name: 'Label4' |
|
1261 #layout: #(#LayoutFrame 14 0 111 0 90 0 133 0) |
|
1262 #translateLabel: true |
|
1263 #adjust: #right |
|
1264 ) |
|
1265 #(#InputFieldSpec |
|
1266 #name: 'EntryField4' |
|
1267 #layout: #(#LayoutFrame 95 0 111 0 132 0 133 0) |
|
1268 #model: #bottom |
|
1269 #type: #number |
|
1270 #acceptOnPointerLeave: false |
|
1271 ) |
|
1272 #(#HorizontalPanelViewSpec |
|
1273 #name: 'HorizontalPanel1' |
|
1274 #layout: #(#LayoutFrame 0 0.0 -30 1 0 1.0 0 1) |
|
1275 #horizontalLayout: #fitSpace |
|
1276 #verticalLayout: #center |
|
1277 #horizontalSpace: 3 |
|
1278 #verticalSpace: 3 |
|
1279 #reverseOrderIfOKAtLeft: true |
|
1280 #component: |
|
1281 #(#SpecCollection |
|
1282 #collection: #( |
|
1283 #(#ActionButtonSpec |
|
1284 #label: 'Cancel' |
|
1285 #name: 'Button1' |
|
1286 #translateLabel: true |
|
1287 #model: #cancel |
|
1288 #extent: #(#Point 118 22) |
|
1289 ) |
1122 ) |
1290 #(#ActionButtonSpec |
1123 (ActionButtonSpec |
1291 #label: 'OK' |
1124 label: 'OK' |
1292 #name: 'Button2' |
1125 name: 'Button2' |
1293 #translateLabel: true |
1126 translateLabel: true |
1294 #model: #accept |
1127 tabable: true |
1295 #extent: #(#Point 118 22) |
1128 model: accept |
|
1129 extent: (Point 118 22) |
1296 ) |
1130 ) |
1297 ) |
1131 ) |
1298 |
1132 |
1299 ) |
1133 ) |
1300 ) |
1134 ) |
|
1135 (ArrowButtonSpec |
|
1136 name: 'upArrowButton' |
|
1137 layout: (LayoutFrame 105 0 63 0 127 0 85 0) |
|
1138 model: shiftUpNow |
|
1139 isTriggerOnDown: true |
|
1140 autoRepeat: true |
|
1141 actionValue: '' |
|
1142 direction: up |
|
1143 ) |
|
1144 (ArrowButtonSpec |
|
1145 name: 'leftArrowButton' |
|
1146 layout: (LayoutFrame 84 0 86 0 106 0 108 0) |
|
1147 model: shiftLeftNow |
|
1148 isTriggerOnDown: true |
|
1149 autoRepeat: true |
|
1150 actionValue: '' |
|
1151 direction: left |
|
1152 ) |
|
1153 (ArrowButtonSpec |
|
1154 name: 'rightArrowButton' |
|
1155 layout: (LayoutFrame 126 0 86 0 148 0 108 0) |
|
1156 model: shiftRightNow |
|
1157 isTriggerOnDown: true |
|
1158 autoRepeat: true |
|
1159 actionValue: '' |
|
1160 direction: right |
|
1161 ) |
|
1162 (ArrowButtonSpec |
|
1163 name: 'downArrowButton' |
|
1164 layout: (LayoutFrame 105 0 107 0 127 0 129 0) |
|
1165 model: shiftDownNow |
|
1166 isTriggerOnDown: true |
|
1167 autoRepeat: true |
|
1168 actionValue: '' |
|
1169 direction: down |
|
1170 ) |
|
1171 (CheckBoxSpec |
|
1172 label: 'Wrap' |
|
1173 name: 'CheckBox1' |
|
1174 layout: (LayoutFrame 153 0 22 0 289 0 44 0) |
|
1175 model: wrap |
|
1176 translateLabel: true |
|
1177 ) |
1301 ) |
1178 ) |
1302 |
1179 |
1303 ) |
1180 ) |
1304 ) |
1181 ) |
|
1182 ! |
|
1183 |
|
1184 uncropDialogSpec |
|
1185 <resource: #canvas> |
|
1186 "This resource specification was automatically generated |
|
1187 by the UIPainter of ST/X." |
|
1188 "Do not manually edit this!! If it is corrupted, |
|
1189 the UIPainter may not be able to read the specification." |
|
1190 " |
|
1191 UIPainter new openOnClass:ImageEditor andSelector:#ungropDialogSpec |
|
1192 ImageEditor new openInterface:#ungropDialogSpec |
|
1193 " |
|
1194 |
|
1195 ^ #(#FullSpec #name: #ungropDialogSpec #window: #(#WindowSpec #label: 'Add Border(s)' #name: 'Add Borders' #min: #(#Point 10 10) #max: #(#Point 800 478) #bounds: #(#Rectangle 16 46 261 229)) #component: #(#SpecCollection #collection: #(#(#LabelSpec #label: 'Left:' #name: 'Label1' #layout: #(#LayoutFrame 14 0 21 0 90 0 43 0) #translateLabel: true #adjust: #right) #(#InputFieldSpec #name: 'EntryField1' #layout: #(#LayoutFrame 95 0 21 0 132 0 43 0) #model: #left #type: #number #acceptOnPointerLeave: false) #(#LabelSpec #label: 'Right:' #name: 'Label2' #layout: #(#LayoutFrame 14 0 51 0 90 0 73 0) #translateLabel: true #adjust: #right) #(#InputFieldSpec #name: 'EntryField2' #layout: #(#LayoutFrame 95 0 51 0 132 0 73 0) #model: #right #type: #number #acceptOnPointerLeave: false) #(#LabelSpec #label: 'Top:' #name: 'Label3' #layout: #(#LayoutFrame 14 0 81 0 90 0 103 0) #translateLabel: true #adjust: #right) #(#InputFieldSpec #name: 'EntryField3' #layout: #(#LayoutFrame 95 0 81 0 132 0 103 0) #model: #top #type: #number #acceptOnPointerLeave: false) #(#LabelSpec #label: 'Bottom:' #name: 'Label4' #layout: #(#LayoutFrame 14 0 111 0 90 0 133 0) #translateLabel: true #adjust: #right) #(#InputFieldSpec #name: 'EntryField4' #layout: #(#LayoutFrame 95 0 111 0 132 0 133 0) #model: #bottom #type: #number #acceptOnPointerLeave: false) #(#HorizontalPanelViewSpec #name: 'HorizontalPanel1' #layout: #(#LayoutFrame 0 0.0 -30 1 0 1.0 0 1) #horizontalLayout: #fitSpace #verticalLayout: #center #horizontalSpace: 3 #verticalSpace: 3 #reverseOrderIfOKAtLeft: true #component: #(#SpecCollection #collection: #(#(#ActionButtonSpec #label: 'Cancel' #name: 'Button1' #translateLabel: true #model: #cancel #extent: #(#Point 118 22)) #(#ActionButtonSpec #label: 'OK' #name: 'Button2' #translateLabel: true #model: #accept #extent: #(#Point 118 22)))))))) |
1305 ! |
1196 ! |
1306 |
1197 |
1307 windowSpec |
1198 windowSpec |
1308 "This resource specification was automatically generated |
1199 "This resource specification was automatically generated |
1309 by the UIPainter of ST/X." |
1200 by the UIPainter of ST/X." |