/** * Set the field that owns this listener. * @owner The field that this listener is being added to (if null, this listener is being removed). */ public void setOwner(ListenerOwner owner) { super.setOwner(owner); if (this.getOwner() != null) { if (m_fldTarget.getRecord() != this.getOwner().getRecord()) m_fldTarget.getRecord().addListener(new FileRemoveBOnCloseHandler(this)); // Not same file, if target file closes, remove this listener! } } /**
/** * Set this cloned listener to the same state at this listener. * @param field The field this new listener will be added to. * @param The new listener to sync to this. * @param Has the init method been called? * @return True if I called init. */ public boolean syncClonedListener(BaseField field, FieldListener listener, boolean bInitCalled) { if (!bInitCalled) { BaseField fldTarget = this.getSyncedListenersField(m_fldTarget, listener); ((InitOnChangeHandler)listener).init(null, fldTarget); } return super.syncClonedListener(field, listener, true); } /**
/** * Set the object that owns this listener. * @owner The object that this listener is being added to (if null, this listener is being removed). */ public void setOwner(ListenerOwner owner) { super.setOwner(owner); if (this.getOwner() != null) { Record recCustSaleDetail = this.getOwner().getRecord(); recCustSaleDetail.getField(BookingDetail.COST_STATUS_ID).addListener(new InitOnChangeHandler(this.getOwner())); recCustSaleDetail.getField(BookingDetail.INVENTORY_STATUS_ID).addListener(new InitOnChangeHandler(this.getOwner())); recCustSaleDetail.getField(BookingDetail.INFO_STATUS_ID).addListener(new InitOnChangeHandler(this.getOwner())); recCustSaleDetail.getField(BookingDetail.PRODUCT_STATUS_ID).addListener(new InitOnChangeHandler(this.getOwner())); } } /**
this.getField(BookingDetail.INFO_MESSAGE_TRANSPORT_ID).addListener(listener = new InitOnChangeHandler(this.getField(BookingDetail.INFO_REQUEST_KEY))); listener.setRespondsToMode(DBConstants.READ_MOVE, false); listener.setRespondsToMode(DBConstants.INIT_MOVE, false); this.getField(BookingDetail.INFO_MESSAGE_TRANSPORT_ID).addListener(new CopyDataHandler(this.getField(BookingDetail.INFO_STATUS_REQUEST), boolRequestRequiredFlag, null)); this.getField(BookingDetail.INVENTORY_MESSAGE_TRANSPORT_ID).addListener(listener = new InitOnChangeHandler(this.getField(BookingDetail.INVENTORY_REQUEST_KEY))); listener.setRespondsToMode(DBConstants.READ_MOVE, false); listener.setRespondsToMode(DBConstants.INIT_MOVE, false); this.getField(BookingDetail.INVENTORY_MESSAGE_TRANSPORT_ID).addListener(new CopyDataHandler(this.getField(BookingDetail.INVENTORY_STATUS_REQUEST), boolRequestRequiredFlag, null)); this.getField(BookingDetail.COST_MESSAGE_TRANSPORT_ID).addListener(listener = new InitOnChangeHandler(this.getField(BookingDetail.COST_REQUEST_KEY))); listener.setRespondsToMode(DBConstants.READ_MOVE, false); listener.setRespondsToMode(DBConstants.INIT_MOVE, false); this.getField(BookingDetail.COST_MESSAGE_TRANSPORT_ID).addListener(new CopyDataHandler(this.getField(BookingDetail.COST_STATUS_REQUEST), boolRequestRequiredFlag, null)); this.getField(BookingDetail.PRODUCT_MESSAGE_TRANSPORT_ID).addListener(listener = new InitOnChangeHandler(this.getField(BookingDetail.PRODUCT_REQUEST_KEY))); listener.setRespondsToMode(DBConstants.READ_MOVE, false); listener.setRespondsToMode(DBConstants.INIT_MOVE, false); this.getField(BookingDetail.PRODUCT_MESSAGE_TRANSPORT_ID).addListener(new CopyDataHandler(this.getField(BookingDetail.PRODUCT_STATUS_REQUEST), boolRequestRequiredFlag, null));
/** * Constructor. * @param fldTarget Field to initialize on change (to the owner's field). */ public InitOnChangeHandler(BaseField fldTarget) { this(); this.init(null, fldTarget); } /**
/** * Set the object that owns this listener. * @owner The object that this listener is being added to (if null, this listener is being removed). */ public void setOwner(ListenerOwner owner) { super.setOwner(owner); if (this.getOwner() != null) { Record recCustSaleDetail = this.getOwner().getRecord(); recCustSaleDetail.getField(BookingDetail.COST_STATUS_ID).addListener(new InitOnChangeHandler(this.getOwner())); recCustSaleDetail.getField(BookingDetail.INVENTORY_STATUS_ID).addListener(new InitOnChangeHandler(this.getOwner())); recCustSaleDetail.getField(BookingDetail.INFO_STATUS_ID).addListener(new InitOnChangeHandler(this.getOwner())); recCustSaleDetail.getField(BookingDetail.PRODUCT_STATUS_ID).addListener(new InitOnChangeHandler(this.getOwner())); } } /**
this.getField(BookingDetail.INFO_MESSAGE_TRANSPORT_ID).addListener(listener = new InitOnChangeHandler(this.getField(BookingDetail.INFO_REQUEST_KEY))); listener.setRespondsToMode(DBConstants.READ_MOVE, false); listener.setRespondsToMode(DBConstants.INIT_MOVE, false); this.getField(BookingDetail.INFO_MESSAGE_TRANSPORT_ID).addListener(new CopyDataHandler(this.getField(BookingDetail.INFO_STATUS_REQUEST), boolRequestRequiredFlag, null)); this.getField(BookingDetail.INVENTORY_MESSAGE_TRANSPORT_ID).addListener(listener = new InitOnChangeHandler(this.getField(BookingDetail.INVENTORY_REQUEST_KEY))); listener.setRespondsToMode(DBConstants.READ_MOVE, false); listener.setRespondsToMode(DBConstants.INIT_MOVE, false); this.getField(BookingDetail.INVENTORY_MESSAGE_TRANSPORT_ID).addListener(new CopyDataHandler(this.getField(BookingDetail.INVENTORY_STATUS_REQUEST), boolRequestRequiredFlag, null)); this.getField(BookingDetail.COST_MESSAGE_TRANSPORT_ID).addListener(listener = new InitOnChangeHandler(this.getField(BookingDetail.COST_REQUEST_KEY))); listener.setRespondsToMode(DBConstants.READ_MOVE, false); listener.setRespondsToMode(DBConstants.INIT_MOVE, false); this.getField(BookingDetail.COST_MESSAGE_TRANSPORT_ID).addListener(new CopyDataHandler(this.getField(BookingDetail.COST_STATUS_REQUEST), boolRequestRequiredFlag, null)); this.getField(BookingDetail.PRODUCT_MESSAGE_TRANSPORT_ID).addListener(listener = new InitOnChangeHandler(this.getField(BookingDetail.PRODUCT_REQUEST_KEY))); listener.setRespondsToMode(DBConstants.READ_MOVE, false); listener.setRespondsToMode(DBConstants.INIT_MOVE, false); this.getField(BookingDetail.PRODUCT_MESSAGE_TRANSPORT_ID).addListener(new CopyDataHandler(this.getField(BookingDetail.PRODUCT_STATUS_REQUEST), boolRequestRequiredFlag, null));
/** * Constructor. * @param fldTarget Field to initialize on change (to the owner's field). */ public InitOnChangeHandler(BaseField fldTarget) { this(); this.init(null, fldTarget); } /**
recBookingDetail.getField(BookingDetail.PROPERTIES).addListener(listener = new InitOnChangeHandler(recBookingDetail.getField(iFieldSeq + BookingDetail.MESSAGE_KEY_OFFSET))); listener.setRespondsToMode(DBConstants.READ_MOVE, false); // Usually, you only want to move a string on screen change listener.setRespondsToMode(DBConstants.INIT_MOVE, false); // Usually, you only want to move a string on screen change
/** * Set this cloned listener to the same state at this listener. * @param field The field this new listener will be added to. * @param The new listener to sync to this. * @param Has the init method been called? * @return True if I called init. */ public boolean syncClonedListener(BaseField field, FieldListener listener, boolean bInitCalled) { if (!bInitCalled) { BaseField fldTarget = this.getSyncedListenersField(m_fldTarget, listener); ((InitOnChangeHandler)listener).init(null, fldTarget); } return super.syncClonedListener(field, listener, true); } /**
/** * Constructor. * @param fldTarget Field to initialize on change (to the owner's field). */ public InitOnChangeHandler(BaseField fldTarget) { this(); this.init(null, fldTarget); } /**
/** * Set the field that owns this listener. * @owner The field that this listener is being added to (if null, this listener is being removed). */ public void setOwner(ListenerOwner owner) { super.setOwner(owner); if (this.getOwner() != null) { if (m_fldTarget.getRecord() != this.getOwner().getRecord()) m_fldTarget.getRecord().addListener(new FileRemoveBOnCloseHandler(this)); // Not same file, if target file closes, remove this listener! } } /**
/** * Add all the screen listeners. */ public void addListeners() { super.addListeners(); TrxStatus recTrxStatus = (TrxStatus)this.getRecord(TrxStatus.TRX_STATUS_FILE); int iTrxStatusID = recTrxStatus.getTrxStatusID(TransactionType.ACCTREC, CreditCard.CREDIT_CARD_FILE, CreditCard.SUBMITTED); String strTrxClass = Integer.toString(iTrxStatusID); this.getMainRecord().getField(CreditCard.PAID).addListener(new MoveOnChangeHandler(this.getMainRecord().getField(CreditCard.DATE_SUBMITTED), this.getScreenRecord().getField(McoScreenRecord.TODAY))); this.getMainRecord().getField(CreditCard.PAID).addListener(new CopyStringHandler(this.getMainRecord().getField(CreditCard.TRX_STATUS_ID), strTrxClass, null)); this.getMainRecord().getField(CreditCard.PAID).addListener(new InitOnChangeHandler(this.getScreenRecord().getField(McoScreenRecord.FLAG))); // Wierd, but since this is a screen field, it would be set the first time and never change again this.getMainRecord().setKeyArea(CreditCard.TRX_STATUS_ID_KEY); recTrxStatus.getTrxStatusID(TransactionType.ACCTREC, CreditCard.CREDIT_CARD_FILE, CreditCard.ENTERED); this.getMainRecord().addListener(new SubFileFilter(recTrxStatus)); this.getMainRecord().addListener(new SyncArTrxStatusHandler(null)); } /**
/** * Set this cloned listener to the same state at this listener. * @param field The field this new listener will be added to. * @param The new listener to sync to this. * @param Has the init method been called? * @return True if I called init. */ public boolean syncClonedListener(BaseField field, FieldListener listener, boolean bInitCalled) { if (!bInitCalled) { BaseField fldTarget = this.getSyncedListenersField(m_fldTarget, listener); ((InitOnChangeHandler)listener).init(null, fldTarget); } return super.syncClonedListener(field, listener, true); } /**
/** * Set the field that owns this listener. * @owner The field that this listener is being added to (if null, this listener is being removed). */ public void setOwner(ListenerOwner owner) { super.setOwner(owner); if (this.getOwner() != null) { if (m_fldTarget.getRecord() != this.getOwner().getRecord()) m_fldTarget.getRecord().addListener(new FileRemoveBOnCloseHandler(this)); // Not same file, if target file closes, remove this listener! } } /**
/** * Add all the screen listeners. */ public void addListeners() { super.addListeners(); TrxStatus recTrxStatus = (TrxStatus)this.getRecord(TrxStatus.TRX_STATUS_FILE); int iTrxStatusID = recTrxStatus.getTrxStatusID(TransactionType.ACCTREC, CreditCard.CREDIT_CARD_FILE, CreditCard.APPROVED); String strTrxClass = Integer.toString(iTrxStatusID); this.getMainRecord().getField(CreditCard.PAID).addListener(new MoveOnChangeHandler(this.getMainRecord().getField(CreditCard.DATE_APPROVED), this.getScreenRecord().getField(McoScreenRecord.TODAY))); this.getMainRecord().getField(CreditCard.PAID).addListener(new CopyStringHandler(this.getMainRecord().getField(CreditCard.TRX_STATUS_ID), strTrxClass, null)); this.getMainRecord().getField(CreditCard.PAID).addListener(new InitOnChangeHandler(this.getScreenRecord().getField(McoScreenRecord.FLAG))); // Wierd, but since this is a screen field, it would be set the first time and never change again this.getMainRecord().setKeyArea(CreditCard.TRX_STATUS_ID_KEY); recTrxStatus.getTrxStatusID(TransactionType.ACCTREC, CreditCard.CREDIT_CARD_FILE, CreditCard.SUBMITTED); this.getMainRecord().addListener(new SubFileFilter(recTrxStatus)); this.getMainRecord().addListener(new SyncArTrxStatusHandler(null)); } /**
m_recProfile.addListener(new MoveOnValidHandler(this.getContactTypeField(), PROFILE_CONTACT_TYPE_ID)); this.getContactTypeField().addListener(listener = new InitOnChangeHandler(this)); listener.setRespondsToMode(DBConstants.INIT_MOVE, false); listener.setRespondsToMode(DBConstants.READ_MOVE, false);
FieldListener behInitOnChange = new InitOnChangeHandler(screenQuery.getField(TourHeaderScreenRecord.DESCRIPTION)); screenQuery.getField(TourHeaderScreenRecord.KEY_ORDER).addListener(behInitOnChange); recTour.addListener(new FileRemoveBOnCloseHandler(behInitOnChange));
FieldListener behInitOnChange = new InitOnChangeHandler(screenQuery.getField(TourHeaderScreenRecord.DESCRIPTION)); screenQuery.getField(TourHeaderScreenRecord.KEY_ORDER).addListener(behInitOnChange); recTour.addListener(new FileRemoveBOnCloseHandler(behInitOnChange));
listener.setRespondsToMode(DBConstants.READ_MOVE, true); listener.setRespondsToMode(DBConstants.INIT_MOVE, true); this.getMainRecord().getField(ApTrx.VENDOR_ID).addListener(listener = new InitOnChangeHandler(this.getScreenRecord().getField(InvoiceScreenRecord.LAST_INVOICE_NO))); listener.setRespondsToMode(DBConstants.READ_MOVE, false); listener.setRespondsToMode(DBConstants.INIT_MOVE, false); this.getMainRecord().getField(ApTrx.VENDOR_ID).addListener(listener = new InitOnChangeHandler(this.getScreenRecord().getField(InvoiceScreenRecord.LAST_INVOICE_DATE))); listener.setRespondsToMode(DBConstants.READ_MOVE, false); listener.setRespondsToMode(DBConstants.INIT_MOVE, false); listener.setRespondsToMode(DBConstants.INIT_MOVE, true); this.getMainRecord().getField(ApTrx.VENDOR_ID).addListener(listener = new InitOnChangeHandler(this.getMainRecord().getField(ApTrx.INVOICE_NO))); listener.setRespondsToMode(DBConstants.READ_MOVE, false); listener.setRespondsToMode(DBConstants.INIT_MOVE, false); this.getMainRecord().getField(ApTrx.VENDOR_ID).addListener(listener = new InitOnChangeHandler(this.getMainRecord().getField(ApTrx.INVOICE_DATE))); listener.setRespondsToMode(DBConstants.READ_MOVE, false); listener.setRespondsToMode(DBConstants.INIT_MOVE, false);