Class Calculator_Canvas

    • Field Detail

      • On_Colour

        private static final Color On_Colour

        The Indicator images for active indicators.

      • Off_Colour

        private static final Color Off_Colour

        The Indicator images for inactivel indicators. Blank images are needed so the widget sized are correctly calculated. The set*Size did not do the trick

      • TAG

        private static final String TAG

        class logger tag.

      • logger

        private static final Logger logger

        class logger instance

      • owner

        @Nullable
        private final net.sourceforge.uiq3.ui.IFrame owner
      • Alpha_Text

        private final short[][] Alpha_Text
        Text to be displayed on the calculator display.
      • Indicators

        private final boolean[] Indicators
        Indicators:
        1. Inv
        2. Hyp
        3. K
        4. Hlt
        5. Run
        6. Wrt
        7. Pcl
        8. Deg
        9. Rad
        10. Gra
        11. Keyboard_Alpha
          See Also:
          ICalculatorCanvas.setIndicators(boolean[])
        • Bottom_Button_Panel

          JPanel Bottom_Button_Panel
        • Button_AC

          net.sourceforge.uiq3.fx602p.Calculator_Button_3 Button_AC
        • Button_BST

          net.sourceforge.uiq3.fx602p.Calculator_Button_3 Button_BST
        • Button_C

          net.sourceforge.uiq3.fx602p.Calculator_Button_3 Button_C
        • Button_Divide

          net.sourceforge.uiq3.fx602p.Calculator_Button_3 Button_Divide
        • Button_Dot

          net.sourceforge.uiq3.fx602p.Calculator_Button_5 Button_Dot
        • Button_EXE

          net.sourceforge.uiq3.fx602p.Calculator_Button_3 Button_EXE
        • Button_EXP

          net.sourceforge.uiq3.fx602p.Calculator_Button_5 Button_EXP
        • Button_Equal

          net.sourceforge.uiq3.fx602p.Calculator_Button_3 Button_Equal
        • Button_FST

          net.sourceforge.uiq3.fx602p.Calculator_Button_3 Button_FST
        • Button_GOTO

          net.sourceforge.uiq3.fx602p.Calculator_Button_3 Button_GOTO
        • Button_GSB

          net.sourceforge.uiq3.fx602p.Calculator_Button_3 Button_GSB
        • Button_HLT

          net.sourceforge.uiq3.fx602p.Calculator_Button_3 Button_HLT
        • Button_INV

          net.sourceforge.uiq3.fx602p.Calculator_Button_3 Button_INV
        • Button_LBL

          net.sourceforge.uiq3.fx602p.Calculator_Button_3 Button_LBL
        • Button_MODE

          net.sourceforge.uiq3.fx602p.Calculator_Button_3 Button_MODE
        • Button_MR

          net.sourceforge.uiq3.fx602p.Calculator_Button_3 Button_MR
        • Button_M_Minus

          net.sourceforge.uiq3.fx602p.Calculator_Button_3 Button_M_Minus
        • Button_M_Plus

          net.sourceforge.uiq3.fx602p.Calculator_Button_3 Button_M_Plus
        • Button_Min

          net.sourceforge.uiq3.fx602p.Calculator_Button_3 Button_Min
        • Button_Minus

          net.sourceforge.uiq3.fx602p.Calculator_Button_3 Button_Minus
        • Button_Multiply

          net.sourceforge.uiq3.fx602p.Calculator_Button_3 Button_Multiply
        • Button_Num_0

          net.sourceforge.uiq3.fx602p.Calculator_Button_5 Button_Num_0
        • Button_Num_1

          net.sourceforge.uiq3.fx602p.Calculator_Button_5 Button_Num_1
        • Button_Num_2

          net.sourceforge.uiq3.fx602p.Calculator_Button_5 Button_Num_2
        • Button_Num_3

          net.sourceforge.uiq3.fx602p.Calculator_Button_5 Button_Num_3
        • Button_Num_4

          net.sourceforge.uiq3.fx602p.Calculator_Button_5 Button_Num_4
        • Button_Num_5

          net.sourceforge.uiq3.fx602p.Calculator_Button_5 Button_Num_5
        • Button_Num_6

          net.sourceforge.uiq3.fx602p.Calculator_Button_5 Button_Num_6
        • Button_Num_7

          net.sourceforge.uiq3.fx602p.Calculator_Button_5 Button_Num_7
        • Button_Num_8

          net.sourceforge.uiq3.fx602p.Calculator_Button_5 Button_Num_8
        • Button_Num_9

          net.sourceforge.uiq3.fx602p.Calculator_Button_5 Button_Num_9
        • Button_P0

          net.sourceforge.uiq3.fx602p.Calculator_Button_3 Button_P0
        • Button_P1

          net.sourceforge.uiq3.fx602p.Calculator_Button_3 Button_P1
        • Button_P2

          net.sourceforge.uiq3.fx602p.Calculator_Button_3 Button_P2
        • Button_P3

          net.sourceforge.uiq3.fx602p.Calculator_Button_3 Button_P3
        • Button_P4

          net.sourceforge.uiq3.fx602p.Calculator_Button_3 Button_P4
        • Button_P_Close

          net.sourceforge.uiq3.fx602p.Calculator_Button_3 Button_P_Close
        • Button_P_Open

          net.sourceforge.uiq3.fx602p.Calculator_Button_3 Button_P_Open
        • Button_Plus

          net.sourceforge.uiq3.fx602p.Calculator_Button_3 Button_Plus
        • Button_Plus_Minus

          net.sourceforge.uiq3.fx602p.Calculator_Button_3 Button_Plus_Minus
        • Button_X_M

          net.sourceforge.uiq3.fx602p.Calculator_Button_3 Button_X_M
        • Button_Xd

          net.sourceforge.uiq3.fx602p.Calculator_Button_3 Button_Xd
        • Button_cos

          net.sourceforge.uiq3.fx602p.Calculator_Button_3 Button_cos
        • Button_degree

          net.sourceforge.uiq3.fx602p.Calculator_Button_3 Button_degree
        • Button_eng

          net.sourceforge.uiq3.fx602p.Calculator_Button_3 Button_eng
        • Button_hyp

          net.sourceforge.uiq3.fx602p.Calculator_Button_3 Button_hyp
        • Button_ln

          net.sourceforge.uiq3.fx602p.Calculator_Button_3 Button_ln
        • Button_log

          net.sourceforge.uiq3.fx602p.Calculator_Button_3 Button_log
        • Button_sin

          net.sourceforge.uiq3.fx602p.Calculator_Button_3 Button_sin
        • Button_tan

          net.sourceforge.uiq3.fx602p.Calculator_Button_3 Button_tan
        • Character_0_0_Image

          JLabel Character_0_0_Image
        • Character_0_10_Image

          JLabel Character_0_10_Image
        • Character_0_11_Image

          JLabel Character_0_11_Image
        • Character_0_12_Image

          JLabel Character_0_12_Image
        • Character_0_13_Image

          JLabel Character_0_13_Image
        • Character_0_1_Image

          JLabel Character_0_1_Image
        • Character_0_2_Image

          JLabel Character_0_2_Image
        • Character_0_3_Image

          JLabel Character_0_3_Image
        • Character_0_4_Image

          JLabel Character_0_4_Image
        • Character_0_5_Image

          JLabel Character_0_5_Image
        • Character_0_6_Image

          JLabel Character_0_6_Image
        • Character_0_7_Image

          JLabel Character_0_7_Image
        • Character_0_8_Image

          JLabel Character_0_8_Image
        • Character_0_9_Image

          JLabel Character_0_9_Image
        • Character_Panel

          JPanel Character_Panel
        • Display_Panel

          JPanel Display_Panel
        • Indicator_0_Image

          JLabel Indicator_0_Image
        • Indicator_10_Image

          JLabel Indicator_10_Image
        • Indicator_1_Image

          JLabel Indicator_1_Image
        • Indicator_2_Image

          JLabel Indicator_2_Image
        • Indicator_3_Image

          JLabel Indicator_3_Image
        • Indicator_4_Image

          JLabel Indicator_4_Image
        • Indicator_5_Image

          JLabel Indicator_5_Image
        • Indicator_6_Image

          JLabel Indicator_6_Image
        • Indicator_7_Image

          JLabel Indicator_7_Image
        • Indicator_8_Image

          JLabel Indicator_8_Image
        • Indicator_9_Image

          JLabel Indicator_9_Image
        • Middle_Button_Panel

          JPanel Middle_Button_Panel
        • Top_Button_Panel

          JPanel Top_Button_Panel
      • Constructor Detail

        • Calculator_Canvas

          public Calculator_Canvas()
          Creates new form Calculator_Canvas
        • Calculator_Canvas

          public Calculator_Canvas​(@Nullable
                                   net.sourceforge.uiq3.ui.IFrame owner)
          Creates new form Calculator_Canvas
      • Method Detail

        • initPre

          private void initPre()
        • initPost

          private void initPost()

          I had used lazy loading before but frequently there were load interrupted errors with images only loaded partially.

        • calculateMinimumSize

          private void calculateMinimumSize()
        • setIndicatorFonts

          private void setIndicatorFonts()
        • displayException

          public void displayException​(@NotNull
                                       @NotNull Throwable Exception)

          display additional information on the error. this is device and setup dependent.

          Parameters:
          Exception - Exception to display
        • getCharacter

          private Icon getCharacter​(short Alpha_Code)

          get the characters image to display.

        • setIndicator

          private void setIndicator​(JLabel Indicator_Panel,
                                    int Indicator_Nr,
                                    boolean Active)

          set the indicator image. if none is to set then set at least the size.

        • setIndicators

          public void setIndicators​(boolean @NotNull [] Indicators)
          Set the indicators
          1. Inv
          2. Hyp
          3. K
          4. Hlt
          5. Run
          6. Wrt
          7. Pcl
          8. Deg
          9. Rad
          10. Gra
          11. Keyboard_Alpha
            Parameters:
            Indicators - indicators to be shown
            See Also:
            ICalculatorCanvas.setIndicators(boolean[])
          • getIndicators

            @TestOnly
            public boolean @NotNull [] getIndicators()
          • setOnOff

            public void setOnOff​(boolean on)

            set the calculators on of status.

            Parameters:
            on - calculator is switched on
          • setDisplayText

            public void setDisplayText​(int Row,
                                       short @NotNull [] Text)
            Set text to be displayed (calculator alpha codes).
            Parameters:
            Row - row to display
            Text - to be displayed
            See Also:
            ICalculatorCanvas.setDisplayText(int, short[])
          • initComponents

            private void initComponents()
          • getDisplayText

            @TestOnly
            public short @NotNull [] getDisplayText​(int Row)
            Get text currently displayed (as one java string).
            Parameters:
            Row - Display row to set
            Returns:
            text currently displayed
          • getJavaText

            @TestOnly
            @NotNull
            public @NotNull String getJavaText​(int Row)
          • toString

            @TestOnly
            @NotNull
            public @NotNull String toString()
            Overrides:
            toString in class net.sourceforge.uiq3.calculator.Canvas