மாடலிங் மொழி கோர்¶
முக்கிய மாடலிங் மொழி வேறு எந்த மொழிக்கும் அடிப்படையாகும்.
Base வகுப்பு அனைத்து gaphor டொமைன் வகுப்புகளுக்கும் மூலக்கூறாகச் செயல்படுகிறது. Diagram மற்றும் Presentation ஆகியவை ஒரு வரைபடத்தில் நீங்கள் காணும் அனைத்திற்கும் அடிப்படையாக அமைகின்றன.
GAPHOR இல் உள்ள அனைத்து தரவு மாதிரிகள் உண்மையான GAPHOR மாதிரி கோப்புகளிலிருந்து உருவாக்கப்படுகின்றன. கஃபரின் உள் மாதிரியின் நல்ல வரைபடங்களை உங்களுக்கு வழங்க இது எங்களை அனுமதிக்கிறது.
விளக்கக்காட்சி வகுப்புகளுடன் முக்கிய மாதிரி¶
Base வகுப்பு¶
Base வகுப்பு நிகழ்வு அறிவிப்பை வழங்குகிறது மற்றும் மாதிரி களஞ்சியத்துடன் ஒருங்கிணைக்கிறது (உள்நாட்டில் ElementFactory என அழைக்கப்படுகிறது). ஒரு மாதிரியில் உள்ள அனைத்து வகுப்புகளும் இந்த வகுப்பிலிருந்து பெறப்பட வேண்டும். ஒரு மாதிரி ஒரு உறுப்புக்கான அடிப்படை வகுப்பைக் காட்டவில்லை என்றால், அது Base இலிருந்து பெறப்படும். இரு திசை உறவுகளும் சாத்தியமாகும், அதே போல் பெறப்பட்ட உறவுகளும் சாத்தியமாகும்.
மாதிரியை களஞ்சியத்துடனும் நிகழ்வு கையாளும் வழிமுறைகளுடனும் இணைக்க RepositoryProtocol, மற்றும் EventWatcherProtocol நெறிமுறைகள் முக்கியமானவை.
வகுப்பு Base என்பது காஃபரின் தரவு மாதிரியின் மையமாகும்.
- class gaphor.core.modeling.Base(id: str | None = None, model: RepositoryProtocol | None = None)[source]¶
அனைத்து மாதிரி தரவு வகுப்புகளுக்கான அடிப்படை வகுப்பு.
- property model: RepositoryProtocol¶
மாடல் அமைக்கப்படாதபோது, சொந்த மாதிரி
TypeErrorஐ எழுப்புகிறது.
- unlink() None[source]¶
உறுப்பை இணைக்கவும்.
அனைத்து கூறுகளின் குறிப்புகளும் அழிக்கப்படுகின்றன. கலப்பு சங்கங்களுக்கு, தொடர்புடைய கூறுகளும் இணைக்கப்படவில்லை.
மறுநிகழ்வு சிக்கல்களைத் தவிர்ப்பதற்காக இந்த உறுப்பின் பண்புகளை அவிழ்த்துவிடும்போது அன்லிங்க் பூட்டு பெறப்படுகிறது.
நிகழ்வு கையாளுதல்¶
- handle(event: object) None[source]¶
உள்வரும் நிகழ்வுகளை பிரச்சாரம் செய்யுங்கள்.
உறுப்பு உருவாக்கப்பட்டிருந்தால் மட்டுமே இது செயல்படும்
ElementFactory
- watcher(default_handler: Callable[[ElementUpdated], None] | None = None) EventWatcherProtocol[source]¶
இந்த உறுப்புக்கு புதிய கண்காணிப்பாளரை உருவாக்கவும்.
selfஉடன் தொடர்புடைய ஒரு சொத்து மாற்றப்பட்டால் சமிக்ஞை செய்ய பார்வையாளர்கள் வசதியான வழியை வழங்குகிறார்கள்.ஒரு பார்வையாளரைப் பயன்படுத்த, உறுப்பு ஒழுங்காக கம்பி மூலம் உருவாக்கப்பட வேண்டும்
ElementFactory`.இந்த எடுத்துக்காட்டு முற்றிலும் விளக்கமானது:
>>> element = Base() >>> watcher = element.watcher(default_handler=print) >>> watcher.watch("note") # Watch for changed on element.note
ஏற்றுதல் மற்றும் சேமித்தல்¶
- load(name: str, value: str | bool | int | Base | collection[Base]) None[source]¶
பெயரில் மதிப்பு ஏற்றுகிறது.
எல்லா கூறுகளும் ஏற்றப்பட்ட பிறகு, போச்ட் லோட் () என்று அழைக்கப்பட வேண்டும் என்பதை உறுதிப்படுத்திக் கொள்ளுங்கள்.
OCL- பாணி முறைகள்¶
Presentation வகுப்பு¶
- class gaphor.core.modeling.Presentation(diagram: Diagram, id: Id | None = None)[source]¶
ஒரு சிறப்பு வகை
Baseஇது ஒருDiagramஇல் காட்டப்படலாம்.விளக்கக்காட்சி நிகழ்வுகள் வரைபடங்களுக்கு மட்டுமே சொந்தமாக இருக்க முடியும்.
Presentationஇன் துணை வகைகள்gaphas.item.Itemநெறிமுறை.- request_update() None[source]¶
புதுப்பிப்புக்கு இந்த விளக்கக்காட்சி பொருளைக் குறிக்கவும்.
புதுப்பிப்புகள் வரைபடங்களால் திட்டமிடப்படுகின்றன.
- watch(path: str, handler: Callable[[ElementUpdated], None] | None = None) Self[source]¶
selfஉடன் தொடங்கும் உறுப்புகளின் ஒரு குறிப்பிட்ட பாதையைப் பாருங்கள்.கையாளுதல் விருப்பமானது மற்றும் இயல்புநிலை ஒரு எளிய
request_update.கட்டமைப்பாளரில் கடிகாரங்கள் அமைக்கப்பட வேண்டும், எனவே அவை ஒரு சாட்டில் பதிவு செய்யப்பட்டு பதிவு செய்யப்படாது.
self.watch("subject.name")
இந்த இடைமுகம் சரளமாக உள்ளது:
selfதருகிறது.
- change_parent(new_parent: Presentation | None) None[source]¶
பெற்றோரை மாற்றி, உருப்படியின் மேட்ரிக்சைப் புதுப்பிக்கவும், எனவே உருப்படி பார்வைக்கு ஒரே இடத்தில் இருக்கும்.
Diagram வகுப்பு¶
- class gaphor.core.modeling.Diagram(id: str | None = None, model: RepositoryProtocol | None = None)[source]¶
வரைபடங்களில் இருக்கலாம்
Presentationகூறுகள்.வரைபடங்கள் சொந்தமாக இருக்க வேண்டும் என்றால், மாடலிங் மொழி (எ.கா. யுஎம்எல்)
Diagramதுணைப்பிரிவு செய்து உரிமையாளர் உறவுகள் மற்றும் விதிகளைச் சேர்க்க வேண்டும்.- create(type_: type[P], parent: Presentation | None = None, subject: Base | None = None) P[source]¶
வரைபடத்தில் புதிய வரைபட உருப்படியை உருவாக்கவும்.
இது ஒரு தனித்துவமான ஐடியுடன் உருவாக்கப்பட்டது, மேலும் இது வரைபடத்தின் ரூட் உருப்படியுடன் இணைக்கப்பட்டுள்ளது. வகை அளவுரு உருவாக்க வேண்டிய உறுப்பு வகுப்பு. புதிய உறுப்பு ஒரு விருப்ப பெற்றோர் மற்றும் பொருள் ஆகியவற்றைக் கொண்டுள்ளது.
- lookup(id: str) Presentation | None[source]¶
ஐடி மூலம் விளக்கக்காட்சி உருப்படியைக் கண்டறியவும்.
இந்த வரைபடத்தில் ஒரு விளக்கக்காட்சியை வழங்குகிறது அல்லது
Noneதிரும்புகிறது.
- select(expression: Callable[[Presentation], bool]) Iterator[Presentation][source]¶
- select(expression: type[P]) Iterator[P]
- select(expression: None) Iterator[Presentation]
வெளிப்பாட்டுடன் பொருந்தக்கூடிய அனைத்து கேன்வாச் உருப்படிகளின் மறுசீரமைப்பாளரைத் தரவும்.
- request_update(item: Item) None[source]¶
புதுப்பிக்க ஒரு உருப்படியை திட்டமிடுங்கள்.
இந்த கட்டத்தில் எந்த புதுப்பிப்பும் செய்யப்படவில்லை, இது புதுப்பிக்கப்பட்ட உருப்படிகளின் தொகுப்பில் மட்டுமே சேர்க்கப்பட்டுள்ளது.
இந்த முறை
gaphas.model.Modelநெறிமுறையின் ஒரு பகுதியாகும்.
- update(dirty_items: Collection[Presentation] = ()) None[source]¶
வரைபடத்தைப் புதுப்பிக்கவும்.
புதுப்பிப்பைக் கோரிய அனைத்து உருப்படிகளும்
request_update()இப்போது புதுப்பிப்புகள். ஒரு உருப்படிக்குupdate(context: UpdateContext)முறை இருந்தால், அது செயல்படுத்தப்படுகிறது. தடைகள் தீர்க்கப்படுகின்றன.
நெறிமுறைகள்¶
- class gaphor.core.modeling.base.RepositoryProtocol(*args, **kwargs)[source]¶
-
- select(self, expression: Callable[[Base], bool]) Iterator[Base]¶
expressionநிறைவேற்றும் களஞ்சியத்திலிருந்து கூறுகளைத் தேர்ந்தெடுக்கவும்.
- select(self, type_: type[T]) Iterator[T]
type_வகையின் களஞ்சியத்திலிருந்து அனைத்து கூறுகளையும் தேர்ந்தெடுக்கவும்.
- class gaphor.core.modeling.base.EventWatcherProtocol(*args, **kwargs)[source]¶