void Date::PostChangedSignals() { AEvtInfo event; event.sourceObject = event.targetObject = m_oiSelf; event.when = 0; event.modifiers = 0L; event.variation = 0; event.what = AEVENT_OBJECTCHANGED; event.details = 0; event.how = AEvtGetObjectChangedPriority(AEVT_KILLALLQUEUES | AEVT_KILLWHAT | AEVT_KILLSOURCE); AEvtPost(&event); //Post ObjectChanged... event.what = AEVENT_SIGNAL; event.details = DT_SignalChanged; event.how = (AEVT_KILLDUPLICATES | AEVT_ATTAIL | AEVT_KILLWHAT | AEVT_KILLSOURCE | AEVT_KILLDETAILS); AEvtPost(&event); //Posts the changed signal //Clear the has changed bit SetHasChanged(FALSE); }
BOOL Date::MaybePostChangedStuff(LONG how) //defaults = AEVT_ATMARK|AEVT_KILLDUPLICATES { BOOL rVal=FALSE; if (HasChanged()) { AEvtPostStandard(m_oiSelf, AEVENT_OBJECTCHANGED, 0, AEvtGetObjectChangedPriority(how) ); AEvtPostSignalAtTail(m_oiSelf, DT_SignalChanged); SetHasChanged(FALSE); rVal = TRUE; } return rVal; }
BOOL Date::LocalSetDateValue(long julian, BOOL bPostSignals)//Returns TRUE if the value changed { BOOL rVal = FALSE; // const long maxJulian = (long)((30000*146097+1)/4) - 578041L; const long maxJulian = 11383592L; const long minJulian = -578041L; // check the julian date is in the range of 19th century if (julian <= maxJulian && julian >= minJulian) { if (m_date != julian) { m_date = julian; SetHasChanged(TRUE); FormatDate(); rVal = TRUE; if (bPostSignals) PostChangedSignals(); } } return rVal; }
TypeUiHtmlTextView::TypeUiHtmlTextView( TypeController& controller, TypeDocument& document, QString id, QString name, QString tab_name, QWidget* parent, TypeSaveCallback save_callback, TypeSaveCallback save_as_callback, TypeUpdateCallback update_callback, TypeUiSyntaxHighlighter* syntax_higlighter ): TypeUiTextEditor( id, name, tab_name, parent, save_callback, save_as_callback, update_callback, syntax_higlighter ), m_Controller( &controller ), m_Document( &document ), m_ActiveRecord( 0 ), m_ActiveBlock( 0 ) { // // Active record is shared by many widgets through SetActiveRecord: qDebug() << "Creating Html Text Widget.."; connect( &controller, TypeController::SetActiveRecord, this, TypeUiHtmlTextView::ActivateRecord ); connect( ui->TextEdit, QTextEdit::cursorPositionChanged, this, TypeUiHtmlTextView::OnCursorPositionChanged ); connect( ui->TextEdit, QWidget::customContextMenuRequested, this, TypeUiHtmlTextView::OnCustomContextMenuRequested ); ui->TextEdit->setReadOnly( true ); ui->TextEdit->setContextMenuPolicy( Qt::CustomContextMenu ); UpdateText(); SetHasChanged( false ); OnActionUpdate(); qDebug() << "Html Text Widget created"; }