001/** 002 */ 003package org.nasdanika.html.model.bootstrap.impl; 004 005import org.eclipse.emf.common.notify.NotificationChain; 006 007import org.eclipse.emf.ecore.EClass; 008import org.eclipse.emf.ecore.InternalEObject; 009 010import org.nasdanika.html.model.bootstrap.BootstrapPackage; 011import org.nasdanika.html.model.bootstrap.Table; 012import org.nasdanika.html.model.bootstrap.TableConfiguration; 013import org.nasdanika.html.model.bootstrap.TableHeader; 014import org.nasdanika.html.model.bootstrap.TableSection; 015 016/** 017 * <!-- begin-user-doc --> 018 * An implementation of the model object '<em><b>Table</b></em>'. 019 * <!-- end-user-doc --> 020 * <p> 021 * The following features are implemented: 022 * </p> 023 * <ul> 024 * <li>{@link org.nasdanika.html.model.bootstrap.impl.TableImpl#isDark <em>Dark</em>}</li> 025 * <li>{@link org.nasdanika.html.model.bootstrap.impl.TableImpl#isStriped <em>Striped</em>}</li> 026 * <li>{@link org.nasdanika.html.model.bootstrap.impl.TableImpl#isBordered <em>Bordered</em>}</li> 027 * <li>{@link org.nasdanika.html.model.bootstrap.impl.TableImpl#isBorderless <em>Borderless</em>}</li> 028 * <li>{@link org.nasdanika.html.model.bootstrap.impl.TableImpl#isHover <em>Hover</em>}</li> 029 * <li>{@link org.nasdanika.html.model.bootstrap.impl.TableImpl#isSmall <em>Small</em>}</li> 030 * <li>{@link org.nasdanika.html.model.bootstrap.impl.TableImpl#getHeader <em>Header</em>}</li> 031 * <li>{@link org.nasdanika.html.model.bootstrap.impl.TableImpl#getBody <em>Body</em>}</li> 032 * <li>{@link org.nasdanika.html.model.bootstrap.impl.TableImpl#getFooter <em>Footer</em>}</li> 033 * </ul> 034 * 035 * @generated 036 */ 037public class TableImpl extends TableRowContainerImpl implements Table { 038 /** 039 * The default value of the '{@link #isDark() <em>Dark</em>}' attribute. 040 * <!-- begin-user-doc --> 041 * <!-- end-user-doc --> 042 * @see #isDark() 043 * @generated 044 * @ordered 045 */ 046 protected static final boolean DARK_EDEFAULT = false; 047 048 /** 049 * The default value of the '{@link #isStriped() <em>Striped</em>}' attribute. 050 * <!-- begin-user-doc --> 051 * <!-- end-user-doc --> 052 * @see #isStriped() 053 * @generated 054 * @ordered 055 */ 056 protected static final boolean STRIPED_EDEFAULT = false; 057 058 /** 059 * The default value of the '{@link #isBordered() <em>Bordered</em>}' attribute. 060 * <!-- begin-user-doc --> 061 * <!-- end-user-doc --> 062 * @see #isBordered() 063 * @generated 064 * @ordered 065 */ 066 protected static final boolean BORDERED_EDEFAULT = false; 067 068 /** 069 * The default value of the '{@link #isBorderless() <em>Borderless</em>}' attribute. 070 * <!-- begin-user-doc --> 071 * <!-- end-user-doc --> 072 * @see #isBorderless() 073 * @generated 074 * @ordered 075 */ 076 protected static final boolean BORDERLESS_EDEFAULT = false; 077 078 /** 079 * The default value of the '{@link #isHover() <em>Hover</em>}' attribute. 080 * <!-- begin-user-doc --> 081 * <!-- end-user-doc --> 082 * @see #isHover() 083 * @generated 084 * @ordered 085 */ 086 protected static final boolean HOVER_EDEFAULT = false; 087 088 /** 089 * The default value of the '{@link #isSmall() <em>Small</em>}' attribute. 090 * <!-- begin-user-doc --> 091 * <!-- end-user-doc --> 092 * @see #isSmall() 093 * @generated 094 * @ordered 095 */ 096 protected static final boolean SMALL_EDEFAULT = false; 097 098 /** 099 * <!-- begin-user-doc --> 100 * <!-- end-user-doc --> 101 * @generated 102 */ 103 protected TableImpl() { 104 super(); 105 } 106 107 /** 108 * <!-- begin-user-doc --> 109 * <!-- end-user-doc --> 110 * @generated 111 */ 112 @Override 113 protected EClass eStaticClass() { 114 return BootstrapPackage.Literals.TABLE; 115 } 116 117 /** 118 * <!-- begin-user-doc --> 119 * <!-- end-user-doc --> 120 * @generated 121 */ 122 @Override 123 public boolean isDark() { 124 return (Boolean)eDynamicGet(BootstrapPackage.TABLE__DARK, BootstrapPackage.Literals.TABLE_CONFIGURATION__DARK, true, true); 125 } 126 127 /** 128 * <!-- begin-user-doc --> 129 * <!-- end-user-doc --> 130 * @generated 131 */ 132 @Override 133 public void setDark(boolean newDark) { 134 eDynamicSet(BootstrapPackage.TABLE__DARK, BootstrapPackage.Literals.TABLE_CONFIGURATION__DARK, newDark); 135 } 136 137 /** 138 * <!-- begin-user-doc --> 139 * <!-- end-user-doc --> 140 * @generated 141 */ 142 @Override 143 public boolean isStriped() { 144 return (Boolean)eDynamicGet(BootstrapPackage.TABLE__STRIPED, BootstrapPackage.Literals.TABLE_CONFIGURATION__STRIPED, true, true); 145 } 146 147 /** 148 * <!-- begin-user-doc --> 149 * <!-- end-user-doc --> 150 * @generated 151 */ 152 @Override 153 public void setStriped(boolean newStriped) { 154 eDynamicSet(BootstrapPackage.TABLE__STRIPED, BootstrapPackage.Literals.TABLE_CONFIGURATION__STRIPED, newStriped); 155 } 156 157 /** 158 * <!-- begin-user-doc --> 159 * <!-- end-user-doc --> 160 * @generated 161 */ 162 @Override 163 public boolean isBordered() { 164 return (Boolean)eDynamicGet(BootstrapPackage.TABLE__BORDERED, BootstrapPackage.Literals.TABLE_CONFIGURATION__BORDERED, true, true); 165 } 166 167 /** 168 * <!-- begin-user-doc --> 169 * <!-- end-user-doc --> 170 * @generated 171 */ 172 @Override 173 public void setBordered(boolean newBordered) { 174 eDynamicSet(BootstrapPackage.TABLE__BORDERED, BootstrapPackage.Literals.TABLE_CONFIGURATION__BORDERED, newBordered); 175 } 176 177 /** 178 * <!-- begin-user-doc --> 179 * <!-- end-user-doc --> 180 * @generated 181 */ 182 @Override 183 public boolean isBorderless() { 184 return (Boolean)eDynamicGet(BootstrapPackage.TABLE__BORDERLESS, BootstrapPackage.Literals.TABLE_CONFIGURATION__BORDERLESS, true, true); 185 } 186 187 /** 188 * <!-- begin-user-doc --> 189 * <!-- end-user-doc --> 190 * @generated 191 */ 192 @Override 193 public void setBorderless(boolean newBorderless) { 194 eDynamicSet(BootstrapPackage.TABLE__BORDERLESS, BootstrapPackage.Literals.TABLE_CONFIGURATION__BORDERLESS, newBorderless); 195 } 196 197 /** 198 * <!-- begin-user-doc --> 199 * <!-- end-user-doc --> 200 * @generated 201 */ 202 @Override 203 public boolean isHover() { 204 return (Boolean)eDynamicGet(BootstrapPackage.TABLE__HOVER, BootstrapPackage.Literals.TABLE_CONFIGURATION__HOVER, true, true); 205 } 206 207 /** 208 * <!-- begin-user-doc --> 209 * <!-- end-user-doc --> 210 * @generated 211 */ 212 @Override 213 public void setHover(boolean newHover) { 214 eDynamicSet(BootstrapPackage.TABLE__HOVER, BootstrapPackage.Literals.TABLE_CONFIGURATION__HOVER, newHover); 215 } 216 217 /** 218 * <!-- begin-user-doc --> 219 * <!-- end-user-doc --> 220 * @generated 221 */ 222 @Override 223 public boolean isSmall() { 224 return (Boolean)eDynamicGet(BootstrapPackage.TABLE__SMALL, BootstrapPackage.Literals.TABLE_CONFIGURATION__SMALL, true, true); 225 } 226 227 /** 228 * <!-- begin-user-doc --> 229 * <!-- end-user-doc --> 230 * @generated 231 */ 232 @Override 233 public void setSmall(boolean newSmall) { 234 eDynamicSet(BootstrapPackage.TABLE__SMALL, BootstrapPackage.Literals.TABLE_CONFIGURATION__SMALL, newSmall); 235 } 236 237 /** 238 * <!-- begin-user-doc --> 239 * <!-- end-user-doc --> 240 * @generated 241 */ 242 @Override 243 public TableHeader getHeader() { 244 return (TableHeader)eDynamicGet(BootstrapPackage.TABLE__HEADER, BootstrapPackage.Literals.TABLE__HEADER, true, true); 245 } 246 247 /** 248 * <!-- begin-user-doc --> 249 * <!-- end-user-doc --> 250 * @generated 251 */ 252 public NotificationChain basicSetHeader(TableHeader newHeader, NotificationChain msgs) { 253 msgs = eDynamicInverseAdd((InternalEObject)newHeader, BootstrapPackage.TABLE__HEADER, msgs); 254 return msgs; 255 } 256 257 /** 258 * <!-- begin-user-doc --> 259 * <!-- end-user-doc --> 260 * @generated 261 */ 262 @Override 263 public void setHeader(TableHeader newHeader) { 264 eDynamicSet(BootstrapPackage.TABLE__HEADER, BootstrapPackage.Literals.TABLE__HEADER, newHeader); 265 } 266 267 /** 268 * <!-- begin-user-doc --> 269 * <!-- end-user-doc --> 270 * @generated 271 */ 272 @Override 273 public TableSection getBody() { 274 return (TableSection)eDynamicGet(BootstrapPackage.TABLE__BODY, BootstrapPackage.Literals.TABLE__BODY, true, true); 275 } 276 277 /** 278 * <!-- begin-user-doc --> 279 * <!-- end-user-doc --> 280 * @generated 281 */ 282 public NotificationChain basicSetBody(TableSection newBody, NotificationChain msgs) { 283 msgs = eDynamicInverseAdd((InternalEObject)newBody, BootstrapPackage.TABLE__BODY, msgs); 284 return msgs; 285 } 286 287 /** 288 * <!-- begin-user-doc --> 289 * <!-- end-user-doc --> 290 * @generated 291 */ 292 @Override 293 public void setBody(TableSection newBody) { 294 eDynamicSet(BootstrapPackage.TABLE__BODY, BootstrapPackage.Literals.TABLE__BODY, newBody); 295 } 296 297 /** 298 * <!-- begin-user-doc --> 299 * <!-- end-user-doc --> 300 * @generated 301 */ 302 @Override 303 public TableSection getFooter() { 304 return (TableSection)eDynamicGet(BootstrapPackage.TABLE__FOOTER, BootstrapPackage.Literals.TABLE__FOOTER, true, true); 305 } 306 307 /** 308 * <!-- begin-user-doc --> 309 * <!-- end-user-doc --> 310 * @generated 311 */ 312 public NotificationChain basicSetFooter(TableSection newFooter, NotificationChain msgs) { 313 msgs = eDynamicInverseAdd((InternalEObject)newFooter, BootstrapPackage.TABLE__FOOTER, msgs); 314 return msgs; 315 } 316 317 /** 318 * <!-- begin-user-doc --> 319 * <!-- end-user-doc --> 320 * @generated 321 */ 322 @Override 323 public void setFooter(TableSection newFooter) { 324 eDynamicSet(BootstrapPackage.TABLE__FOOTER, BootstrapPackage.Literals.TABLE__FOOTER, newFooter); 325 } 326 327 /** 328 * <!-- begin-user-doc --> 329 * <!-- end-user-doc --> 330 * @generated 331 */ 332 @Override 333 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { 334 switch (featureID) { 335 case BootstrapPackage.TABLE__HEADER: 336 return basicSetHeader(null, msgs); 337 case BootstrapPackage.TABLE__BODY: 338 return basicSetBody(null, msgs); 339 case BootstrapPackage.TABLE__FOOTER: 340 return basicSetFooter(null, msgs); 341 } 342 return super.eInverseRemove(otherEnd, featureID, msgs); 343 } 344 345 /** 346 * <!-- begin-user-doc --> 347 * <!-- end-user-doc --> 348 * @generated 349 */ 350 @Override 351 public Object eGet(int featureID, boolean resolve, boolean coreType) { 352 switch (featureID) { 353 case BootstrapPackage.TABLE__DARK: 354 return isDark(); 355 case BootstrapPackage.TABLE__STRIPED: 356 return isStriped(); 357 case BootstrapPackage.TABLE__BORDERED: 358 return isBordered(); 359 case BootstrapPackage.TABLE__BORDERLESS: 360 return isBorderless(); 361 case BootstrapPackage.TABLE__HOVER: 362 return isHover(); 363 case BootstrapPackage.TABLE__SMALL: 364 return isSmall(); 365 case BootstrapPackage.TABLE__HEADER: 366 return getHeader(); 367 case BootstrapPackage.TABLE__BODY: 368 return getBody(); 369 case BootstrapPackage.TABLE__FOOTER: 370 return getFooter(); 371 } 372 return super.eGet(featureID, resolve, coreType); 373 } 374 375 /** 376 * <!-- begin-user-doc --> 377 * <!-- end-user-doc --> 378 * @generated 379 */ 380 @Override 381 public void eSet(int featureID, Object newValue) { 382 switch (featureID) { 383 case BootstrapPackage.TABLE__DARK: 384 setDark((Boolean)newValue); 385 return; 386 case BootstrapPackage.TABLE__STRIPED: 387 setStriped((Boolean)newValue); 388 return; 389 case BootstrapPackage.TABLE__BORDERED: 390 setBordered((Boolean)newValue); 391 return; 392 case BootstrapPackage.TABLE__BORDERLESS: 393 setBorderless((Boolean)newValue); 394 return; 395 case BootstrapPackage.TABLE__HOVER: 396 setHover((Boolean)newValue); 397 return; 398 case BootstrapPackage.TABLE__SMALL: 399 setSmall((Boolean)newValue); 400 return; 401 case BootstrapPackage.TABLE__HEADER: 402 setHeader((TableHeader)newValue); 403 return; 404 case BootstrapPackage.TABLE__BODY: 405 setBody((TableSection)newValue); 406 return; 407 case BootstrapPackage.TABLE__FOOTER: 408 setFooter((TableSection)newValue); 409 return; 410 } 411 super.eSet(featureID, newValue); 412 } 413 414 /** 415 * <!-- begin-user-doc --> 416 * <!-- end-user-doc --> 417 * @generated 418 */ 419 @Override 420 public void eUnset(int featureID) { 421 switch (featureID) { 422 case BootstrapPackage.TABLE__DARK: 423 setDark(DARK_EDEFAULT); 424 return; 425 case BootstrapPackage.TABLE__STRIPED: 426 setStriped(STRIPED_EDEFAULT); 427 return; 428 case BootstrapPackage.TABLE__BORDERED: 429 setBordered(BORDERED_EDEFAULT); 430 return; 431 case BootstrapPackage.TABLE__BORDERLESS: 432 setBorderless(BORDERLESS_EDEFAULT); 433 return; 434 case BootstrapPackage.TABLE__HOVER: 435 setHover(HOVER_EDEFAULT); 436 return; 437 case BootstrapPackage.TABLE__SMALL: 438 setSmall(SMALL_EDEFAULT); 439 return; 440 case BootstrapPackage.TABLE__HEADER: 441 setHeader((TableHeader)null); 442 return; 443 case BootstrapPackage.TABLE__BODY: 444 setBody((TableSection)null); 445 return; 446 case BootstrapPackage.TABLE__FOOTER: 447 setFooter((TableSection)null); 448 return; 449 } 450 super.eUnset(featureID); 451 } 452 453 /** 454 * <!-- begin-user-doc --> 455 * <!-- end-user-doc --> 456 * @generated 457 */ 458 @Override 459 public boolean eIsSet(int featureID) { 460 switch (featureID) { 461 case BootstrapPackage.TABLE__DARK: 462 return isDark() != DARK_EDEFAULT; 463 case BootstrapPackage.TABLE__STRIPED: 464 return isStriped() != STRIPED_EDEFAULT; 465 case BootstrapPackage.TABLE__BORDERED: 466 return isBordered() != BORDERED_EDEFAULT; 467 case BootstrapPackage.TABLE__BORDERLESS: 468 return isBorderless() != BORDERLESS_EDEFAULT; 469 case BootstrapPackage.TABLE__HOVER: 470 return isHover() != HOVER_EDEFAULT; 471 case BootstrapPackage.TABLE__SMALL: 472 return isSmall() != SMALL_EDEFAULT; 473 case BootstrapPackage.TABLE__HEADER: 474 return getHeader() != null; 475 case BootstrapPackage.TABLE__BODY: 476 return getBody() != null; 477 case BootstrapPackage.TABLE__FOOTER: 478 return getFooter() != null; 479 } 480 return super.eIsSet(featureID); 481 } 482 483 /** 484 * <!-- begin-user-doc --> 485 * <!-- end-user-doc --> 486 * @generated 487 */ 488 @Override 489 public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) { 490 if (baseClass == TableConfiguration.class) { 491 switch (derivedFeatureID) { 492 case BootstrapPackage.TABLE__DARK: return BootstrapPackage.TABLE_CONFIGURATION__DARK; 493 case BootstrapPackage.TABLE__STRIPED: return BootstrapPackage.TABLE_CONFIGURATION__STRIPED; 494 case BootstrapPackage.TABLE__BORDERED: return BootstrapPackage.TABLE_CONFIGURATION__BORDERED; 495 case BootstrapPackage.TABLE__BORDERLESS: return BootstrapPackage.TABLE_CONFIGURATION__BORDERLESS; 496 case BootstrapPackage.TABLE__HOVER: return BootstrapPackage.TABLE_CONFIGURATION__HOVER; 497 case BootstrapPackage.TABLE__SMALL: return BootstrapPackage.TABLE_CONFIGURATION__SMALL; 498 default: return -1; 499 } 500 } 501 return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass); 502 } 503 504 /** 505 * <!-- begin-user-doc --> 506 * <!-- end-user-doc --> 507 * @generated 508 */ 509 @Override 510 public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) { 511 if (baseClass == TableConfiguration.class) { 512 switch (baseFeatureID) { 513 case BootstrapPackage.TABLE_CONFIGURATION__DARK: return BootstrapPackage.TABLE__DARK; 514 case BootstrapPackage.TABLE_CONFIGURATION__STRIPED: return BootstrapPackage.TABLE__STRIPED; 515 case BootstrapPackage.TABLE_CONFIGURATION__BORDERED: return BootstrapPackage.TABLE__BORDERED; 516 case BootstrapPackage.TABLE_CONFIGURATION__BORDERLESS: return BootstrapPackage.TABLE__BORDERLESS; 517 case BootstrapPackage.TABLE_CONFIGURATION__HOVER: return BootstrapPackage.TABLE__HOVER; 518 case BootstrapPackage.TABLE_CONFIGURATION__SMALL: return BootstrapPackage.TABLE__SMALL; 519 default: return -1; 520 } 521 } 522 return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass); 523 } 524 525} //TableImpl