Beispiel #1
0
        public BinaryFileDeviceEditor()
        {
            InitializeComponent();

            mReadOnlyGap = mRecordUpDown.Top;
            mEditorListWithButtonsHeight = mWordEditorList.Height;
            mRecordLabelFormatString     = mRecordLabel.Text;
            mCalculateRecordCount        = null;
            RecordName    = "record";
            mShowReadOnly = true;
            mLastLoadTime = DateTime.Now;
            SetDeviceRecordCount(1);
            mIODelayTimer.Interval = DeviceSettings.DeviceReloadInterval;

            mInitialized = false;
        }
Beispiel #2
0
        void Initialize(long recordCount, long wordsPerRecord, OpenStreamCallback openStream, CalculateBytePositionCallback calculateBytePosition, ReadWordsCallback readWords, WriteWordsCallback writeWords, CalculateRecordCountCallback calculateRecordCount)
        {
            if (mInitialized)
            {
                throw new InvalidOperationException("FileDeviceEditor has already been initialized");
            }

            mDeviceWordsPerRecord  = wordsPerRecord;
            mOpenStream            = openStream;
            mCalculateBytePosition = calculateBytePosition;
            mReadWords             = readWords;
            mWriteWords            = writeWords;
            mCalculateRecordCount  = calculateRecordCount;

            mRecordUpDown.Minimum   = 0;
            mRecordTrackBar.Minimum = 0;
            SetDeviceRecordCount(recordCount);

            mFirstWordTextBox.ClearZero = false;
            mFirstWordTextBox.MinValue  = 0L;
            mFirstWordTextBox.MaxValue  = mDeviceWordsPerRecord - 1;

            mRecordReadWords = new IFullWord[mDeviceWordsPerRecord];
            mRecordEditWords = new IFullWord[mDeviceWordsPerRecord];
            for (int i = 0; i < mDeviceWordsPerRecord; i++)
            {
                mRecordEditWords[i] = new FullWord();
            }

            mWordEditorList.MaxIndex     = (int)mDeviceWordsPerRecord - 1;
            mWordEditorList.CreateEditor = CreateWordEditor;
            mWordEditorList.LoadEditor   = LoadWordEditor;

            mChangesPending = false;

            mLoadRecordRetryCount = 0;

            ProcessSupportsAppending();
            ProcessVisibility();
        }
Beispiel #3
0
 public void Initialize(CalculateRecordCountCallback calculateRecordCount, long wordsPerRecord, OpenStreamCallback openStream, CalculateBytePositionCallback calculateBytePosition, ReadWordsCallback readWords, WriteWordsCallback writeWords)
 {
     Initialize(1, wordsPerRecord, openStream, calculateBytePosition, readWords, writeWords, calculateRecordCount);
 }