aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/PPC/Tango.PPC.Common/Notifications/NotificationItem.cs
blob: f5e319fa0104f1d1117b82828658f0ae512ab80f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Timers;
using System.Windows.Media;
using Tango.Core;

namespace Tango.PPC.Common.Notifications
{
    /// <summary>
    /// Represents a base notification item.
    /// </summary>
    /// <seealso cref="Tango.Core.ExtendedObject" />
    public abstract class NotificationItem : ExtendedObject, IDisposable
    {
        /// <summary>
        /// Gets or sets the condition.
        /// </summary>
        internal Func<bool> Condition { get; set; }

        /// <summary>
        /// Gets or sets a value indicating whether [automatic check].
        /// </summary>
        internal bool AutoCheck { get; set; }

        /// <summary>
        /// Gets or sets the automatic check interval.
        /// </summary>
        internal TimeSpan AutoCheckInterval { get; set; }

        /// <summary>
        /// Gets or sets the remove action.
        /// </summary>
        internal Action RemoveAction { get; set; }

        /// <summary>
        /// Gets or sets the check timer.
        /// </summary>
        internal Timer Timer { get; set; }

        private String _message;
        /// <summary>
        /// Gets or sets the notification message.
        /// </summary>
        public String Message
        {
            get { return _message; }
            set { _message = value; RaisePropertyChangedAuto(); }
        }

        /// <summary>
        /// Gets or sets the type of the view associated with this notification item.
        /// </summary>
        public abstract Type ViewType { get; }

        /// <summary>
        /// Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
        /// </summary>
        public void Dispose()
        {
            if (RemoveAction != null)
            {
                RemoveAction();
            }
        }
    }
}
pan>{ class SynchronizeDBResponse; class SynchronizeDBResponseDefaultTypeInternal; extern SynchronizeDBResponseDefaultTypeInternal _SynchronizeDBResponse_default_instance_; } // namespace Synchronization } // namespace PMR } // namespace Tango namespace Tango { namespace PMR { namespace Synchronization { namespace protobuf_SynchronizeDBResponse_2eproto { // Internal implementation detail -- do not call these. struct TableStruct { static const ::google::protobuf::internal::ParseTableField entries[]; static const ::google::protobuf::internal::AuxillaryParseTableField aux[]; static const ::google::protobuf::internal::ParseTable schema[]; static const ::google::protobuf::uint32 offsets[]; static const ::google::protobuf::internal::FieldMetadata field_metadata[]; static const ::google::protobuf::internal::SerializationTable serialization_table[]; static void InitDefaultsImpl(); }; void AddDescriptors(); void InitDefaults(); } // namespace protobuf_SynchronizeDBResponse_2eproto // =================================================================== class SynchronizeDBResponse : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:Tango.PMR.Synchronization.SynchronizeDBResponse) */ { public: SynchronizeDBResponse(); virtual ~SynchronizeDBResponse(); SynchronizeDBResponse(const SynchronizeDBResponse& from); inline SynchronizeDBResponse& operator=(const SynchronizeDBResponse& from) { CopyFrom(from); return *this; } #if LANG_CXX11 SynchronizeDBResponse(SynchronizeDBResponse&& from) noexcept : SynchronizeDBResponse() { *this = ::std::move(from); } inline SynchronizeDBResponse& operator=(SynchronizeDBResponse&& from) noexcept { if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) { if (this != &from) InternalSwap(&from); } else { CopyFrom(from); } return *this; } #endif static const ::google::protobuf::Descriptor* descriptor(); static const SynchronizeDBResponse& default_instance(); static inline const SynchronizeDBResponse* internal_default_instance() { return reinterpret_cast<const SynchronizeDBResponse*>( &_SynchronizeDBResponse_default_instance_); } static PROTOBUF_CONSTEXPR int const kIndexInFileMessages = 0; void Swap(SynchronizeDBResponse* other); friend void swap(SynchronizeDBResponse& a, SynchronizeDBResponse& b) { a.Swap(&b); } // implements Message ---------------------------------------------- inline SynchronizeDBResponse* New() const PROTOBUF_FINAL { return New(NULL); } SynchronizeDBResponse* New(::google::protobuf::Arena* arena) const PROTOBUF_FINAL; void CopyFrom(const ::google::protobuf::Message& from) PROTOBUF_FINAL; void MergeFrom(const ::google::protobuf::Message& from) PROTOBUF_FINAL; void CopyFrom(const SynchronizeDBResponse& from); void MergeFrom(const SynchronizeDBResponse& from); void Clear() PROTOBUF_FINAL; bool IsInitialized() const PROTOBUF_FINAL; size_t ByteSizeLong() const PROTOBUF_FINAL; bool MergePartialFromCodedStream( ::google::protobuf::io::CodedInputStream* input) PROTOBUF_FINAL; void SerializeWithCachedSizes( ::google::protobuf::io::CodedOutputStream* output) const PROTOBUF_FINAL; ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray( bool deterministic, ::google::protobuf::uint8* target) const PROTOBUF_FINAL; int GetCachedSize() const PROTOBUF_FINAL { return _cached_size_; } private: void SharedCtor(); void SharedDtor(); void SetCachedSize(int size) const PROTOBUF_FINAL; void InternalSwap(SynchronizeDBResponse* other); private: inline ::google::protobuf::Arena* GetArenaNoVirtual() const { return NULL; } inline void* MaybeArenaPtr() const { return NULL; } public: ::google::protobuf::Metadata GetMetadata() const PROTOBUF_FINAL; // nested types ---------------------------------------------------- // accessors ------------------------------------------------------- // bytes RemoteDB = 1; void clear_remotedb(); static const int kRemoteDBFieldNumber = 1; const ::std::string& remotedb() const; void set_remotedb(const ::std::string& value); #if LANG_CXX11 void set_remotedb(::std::string&& value); #endif void set_remotedb(const char* value); void set_remotedb(const void* value, size_t size); ::std::string* mutable_remotedb(); ::std::string* release_remotedb(); void set_allocated_remotedb(::std::string* remotedb); // @@protoc_insertion_point(class_scope:Tango.PMR.Synchronization.SynchronizeDBResponse) private: ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_; ::google::protobuf::internal::ArenaStringPtr remotedb_; mutable int _cached_size_; friend struct protobuf_SynchronizeDBResponse_2eproto::TableStruct; }; // =================================================================== // =================================================================== #if !PROTOBUF_INLINE_NOT_IN_HEADERS #ifdef __GNUC__ #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wstrict-aliasing" #endif // __GNUC__ // SynchronizeDBResponse // bytes RemoteDB = 1; inline void SynchronizeDBResponse::clear_remotedb() { remotedb_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); } inline const ::std::string& SynchronizeDBResponse::remotedb() const { // @@protoc_insertion_point(field_get:Tango.PMR.Synchronization.SynchronizeDBResponse.RemoteDB) return remotedb_.GetNoArena(); } inline void SynchronizeDBResponse::set_remotedb(const ::std::string& value) { remotedb_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value); // @@protoc_insertion_point(field_set:Tango.PMR.Synchronization.SynchronizeDBResponse.RemoteDB) } #if LANG_CXX11 inline void SynchronizeDBResponse::set_remotedb(::std::string&& value) { remotedb_.SetNoArena( &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value)); // @@protoc_insertion_point(field_set_rvalue:Tango.PMR.Synchronization.SynchronizeDBResponse.RemoteDB) } #endif inline void SynchronizeDBResponse::set_remotedb(const char* value) { GOOGLE_DCHECK(value != NULL); remotedb_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value)); // @@protoc_insertion_point(field_set_char:Tango.PMR.Synchronization.SynchronizeDBResponse.RemoteDB) } inline void SynchronizeDBResponse::set_remotedb(const void* value, size_t size) { remotedb_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(reinterpret_cast<const char*>(value), size)); // @@protoc_insertion_point(field_set_pointer:Tango.PMR.Synchronization.SynchronizeDBResponse.RemoteDB) } inline ::std::string* SynchronizeDBResponse::mutable_remotedb() { // @@protoc_insertion_point(field_mutable:Tango.PMR.Synchronization.SynchronizeDBResponse.RemoteDB) return remotedb_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); } inline ::std::string* SynchronizeDBResponse::release_remotedb() { // @@protoc_insertion_point(field_release:Tango.PMR.Synchronization.SynchronizeDBResponse.RemoteDB) return remotedb_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); } inline void SynchronizeDBResponse::set_allocated_remotedb(::std::string* remotedb) { if (remotedb != NULL) { } else { } remotedb_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), remotedb); // @@protoc_insertion_point(field_set_allocated:Tango.PMR.Synchronization.SynchronizeDBResponse.RemoteDB) } #ifdef __GNUC__ #pragma GCC diagnostic pop #endif // __GNUC__ #endif // !PROTOBUF_INLINE_NOT_IN_HEADERS // @@protoc_insertion_point(namespace_scope) } // namespace Synchronization } // namespace PMR } // namespace Tango // @@protoc_insertion_point(global_scope) #endif // PROTOBUF_SynchronizeDBResponse_2eproto__INCLUDED