Esempio n. 1
0
        private void processExponent(int ln)
        {
            if (_mode == _Exponent)
            {
                _stackInput._DataEntry.Remove(ln - 5, 5);
                _mode = _Decimal;
                return;
            }
            if (_mode == _Whole && ln > 12)
            {
                return;                     // long integer
            }
            if (_mode == _Whole && ln <= 1) // only sign present
            {
                _stackInput._DataEntry.Append(_RN_StandardUnity);
                _mode = _Exponent;
                return;
            }
            if (_mode == _Whole && ln == 2 && _stackInput._DataEntry[1] == '0') // integer zero
            {
                _stackInput._DataEntry.Remove(1, 1);
                _stackInput._DataEntry.Append(_RN_StandardUnity);
                _mode = _Exponent;
                return;
            }
            string tmp = toTrimmedString();

            _uv.fromString(tmp);
            if (_uv.isEmpty() || (_uv.isInt() && _uv.toInt() == 0))
            {
                _stackInput._DataEntry = new StringBuilder();
                _stackInput._DataEntry.Append(' ');
                _stackInput._DataEntry.Append(_RN_StandardUnity);
                _mode = _Exponent;
                return;
            }
            if (_mode == _Whole) // going from integer to exponent
            {
                _stackInput._DataEntry.Append(_RN_StandardUnity.Substring(1));
                _mode = _Exponent;
                return;
            }

            if (UniversalValue._endsWith_P(tmp, ".")) // ends with decimal point
            {
                _stackInput._DataEntry.Append(_RN_StandardUnity.Substring(2));
                _mode = _Exponent;
                return;
            }

            _stackInput._DataEntry.Append(_RN_StandardUnity.Substring(3));
            _mode = _Exponent;
        }
Esempio n. 2
0
        public void stepIn()
        {
            string filename = _sd.getItemFromListing();

            if (!_sd.stepIn(filename))
            {
                return;
            }
            if (UniversalValue._endsWith_P(filename, ".DAT"))
            {
                loadData(filename);
            }
            else
            {
                loadProgram(filename);
            }
        }
        protected override void completeEntry(string value)
        {
            RPN_Functions _rpnf   = _parent.getFunctions();
            string        tmpName = _rpnf.formFileName(value);

            if (!UniversalValue._endsWith_P(value, _Ext))
            {
                tmpName += _Ext;
            }
            if (_rpnf.fileExists(tmpName))
            {
                _mode = _Overwrite;
                updateDisplay(toString());
                return;
            }
            _rpnf.saveData(tmpName);
            _parent.getFunctions().requestNextReceiver(_return_to);
            return;
        }