Skip to content

Commit c8eebbc

Browse files
committed
Semantic Tab compo
1 parent bb33501 commit c8eebbc

File tree

14 files changed

+149
-25
lines changed

14 files changed

+149
-25
lines changed

Ajax/semantic/components/Tab.php

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
<?php
2+
3+
namespace Ajax\semantic\components;
4+
5+
use Ajax\common\components\SimpleExtComponent;
6+
use Ajax\JsUtils;
7+
8+
class Tab extends SimpleExtComponent {
9+
10+
public function __construct(JsUtils $js) {
11+
parent::__construct($js);
12+
$this->uiName="tab";
13+
}
14+
15+
//TODO other events implementation
16+
}

Ajax/semantic/html/base/traits/AttachedTrait.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,11 +8,11 @@
88
trait AttachedTrait {
99

1010
/**
11-
*
11+
* @param HtmlSemDoubleElement $toElement
1212
* @param string $side
1313
* @return \Ajax\semantic\html\base\HtmlSemDoubleElement
1414
*/
15-
public function setAttachment(HtmlSemDoubleElement $toElement, $value=Side::BOTH) {
15+
public function setAttachment($toElement, $value=Side::BOTH) {
1616
if (isset($toElement)) {
1717
$toElement->addToPropertyCtrl("class", "attached", array ("attached" ));
1818
}

Ajax/semantic/html/base/traits/BaseTrait.php

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -115,6 +115,14 @@ public function setFluid() {
115115
return $this->addToProperty("class", "fluid");
116116
}
117117

118+
/**
119+
* show it is currently the active user selection
120+
* @return \Ajax\semantic\html\base\HtmlSemDoubleElement
121+
*/
122+
public function setActive($value=true){
123+
return $this->addToProperty("class", "active");
124+
}
125+
118126
/**
119127
* can be formatted to appear on dark backgrounds
120128
*/

Ajax/semantic/html/collections/menus/HtmlMenu.php

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
use Ajax\semantic\html\elements\html5\HtmlLink;
1616
use Ajax\semantic\html\elements\HtmlInput;
1717
use Ajax\semantic\html\elements\HtmlButton;
18+
use Ajax\semantic\html\base\traits\AttachedTrait;
1819

1920
/**
2021
* Semantic Menu component
@@ -23,6 +24,7 @@
2324
* @version 1.001
2425
*/
2526
class HtmlMenu extends HtmlSemCollection {
27+
use AttachedTrait;
2628
private $_itemHeader;
2729

2830
public function __construct($identifier, $items=array()) {
@@ -130,7 +132,7 @@ public function addDropdownAsItem($value, $items=NULL) {
130132
* @see \Ajax\common\html\html5\HtmlCollection::createItem()
131133
*/
132134
protected function createItem($value) {
133-
$itemO=new HtmlLink("item-" . \sizeof($this->content), "", $value);
135+
$itemO=new HtmlLink($this->identifier."item" . \sizeof($this->content), "", $value);
134136
return $itemO->setClass("item");
135137
}
136138

Ajax/semantic/html/content/HtmlAbsractItem.php

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -52,10 +52,13 @@ public function getPart($partName="header"){
5252
return $this->getElementByPropertyValue("class", $partName, $content);
5353
}
5454

55-
public function setActive(){
56-
$this->setTagName("div");
57-
$this->removeProperty("href");
58-
return $this->addToPropertyCtrl("class", "active", array("active"));
55+
public function setActive($value=true){
56+
if($value){
57+
$this->setTagName("div");
58+
$this->removeProperty("href");
59+
$this->addToPropertyCtrl("class", "active", array("active"));
60+
}
61+
return $this;
5962
}
6063

6164
public function asLink($href=NULL,$part=NULL){

Ajax/semantic/html/content/HtmlMenuItem.php

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ protected function initContent($content){
3333
$this->setContent($content);
3434
}
3535
}
36+
3637
/* public function addIcon($icon, $before=true) {
3738
$content=$this->content;
3839
$this->content=new HtmlSemDoubleElement("content-" . $this->identifier, "div", "content");

Ajax/semantic/html/content/HtmlStepItem.php

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,8 +37,12 @@ protected function initContent($content){
3737
}
3838
}
3939

40-
public function setActive(){
41-
return $this->setStatus(StepStatus::ACTIVE);
40+
public function setActive($value=true){
41+
if($value)
42+
$this->setStatus(StepStatus::ACTIVE);
43+
else
44+
$this->setStatus(StepStatus::NONE);
45+
return $this;
4246
}
4347

4448
public function setCompleted(){

Ajax/semantic/html/elements/HtmlButton.php

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -128,14 +128,6 @@ public function fromArray($array) {
128128
return $array;
129129
}
130130

131-
/**
132-
* show it is currently the active user selection
133-
* @return \Ajax\semantic\html\elements\HtmlButton
134-
*/
135-
public function setActive() {
136-
return $this->addToProperty("class", "active");
137-
}
138-
139131
/**
140132
* hint towards a positive consequence
141133
* @return \Ajax\semantic\html\elements\HtmlButton

Ajax/semantic/html/modules/HtmlAccordion.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@ public function setStyled(){
7272
return $this->addToProperty("class", "styled");
7373
}
7474

75-
public function setActive($index){
75+
public function activate($index){
7676
$this->getItem($index)->setActive(true);
7777
return $this;
7878
}

Ajax/semantic/html/modules/HtmlModal.php

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -123,9 +123,6 @@ public function setBasic(){
123123
return $this->addToProperty("class", "basic");
124124
}
125125

126-
public function setActive(){
127-
return $this->addToProperty("class", "active");
128-
}
129126

130127
public function setTransition($value){
131128
$this->_paramParts[]=["'setting'","'transition'","'".$value."'"];

0 commit comments

Comments
 (0)