Browse Source

Add TextureEditorWidget::getTexCoord and selectTexCoord

master
Krisjanis Rijnieks 9 years ago
parent
commit
5e7bc8a194
  1. 44
      src/Gui/Widgets/TextureEditorWidget.cpp
  2. 4
      src/Gui/Widgets/TextureEditorWidget.h

44
src/Gui/Widgets/TextureEditorWidget.cpp

@ -177,6 +177,38 @@ void TextureEditorWidget::unselectAllJoints(){
} }
} }
void TextureEditorWidget::selectTexCoord(int i){
if(joints.size() <= 0){
return;
}
if(i >= (int)joints.size()){
ofLogError("TextureEditorWidget::selectTexCoord",
"Attempt to select non existent tex coord");
return;
}
unselectAllJoints();
if(i >= 0){
joints[i]->select();
}
}
int TextureEditorWidget::getSelectedTexCoord(){
if(joints.size() <= 0){
return -1;
}
for(unsigned int i = 0; i < joints.size(); ++i){
if(joints[i]->isSelected()){
return i;
}
}
return -1;
}
void TextureEditorWidget::selectNextTexCoord(){ void TextureEditorWidget::selectNextTexCoord(){
if(joints.size() <= 0){ if(joints.size() <= 0){
return; return;
@ -190,13 +222,15 @@ void TextureEditorWidget::selectNextTexCoord(){
next = 0; next = 0;
} }
unselectAllJoints(); unselectAllJoints();
joints[next]->select(); //joints[next]->select();
selectTexCoord(next);
return; return;
} }
} }
// If none found, select 0th // If none found, select 0th
joints[0]->select(); //joints[0]->select();
selectTexCoord(0);
} }
void TextureEditorWidget::selectPrevTexCoord(){ void TextureEditorWidget::selectPrevTexCoord(){
@ -214,13 +248,15 @@ void TextureEditorWidget::selectPrevTexCoord(){
prev = i - 1; prev = i - 1;
} }
unselectAllJoints(); unselectAllJoints();
joints[prev]->select(); //joints[prev]->select();
selectTexCoord(prev);
return; return;
} }
} }
// Select last if none selected // Select last if none selected
joints[joints.size() - 1]->select(); //joints[joints.size() - 1]->select();
selectTexCoord(joints.size() - 1);
} }
void TextureEditorWidget::moveTexCoords(ofVec2f by){ void TextureEditorWidget::moveTexCoords(ofVec2f by){

4
src/Gui/Widgets/TextureEditorWidget.h

@ -32,8 +32,12 @@ class TextureEditorWidget : public GuiBaseWidget {
void createJoints(); void createJoints();
void clearJoints(); void clearJoints();
void unselectAllJoints(); void unselectAllJoints();
void selectTexCoord(int i);
int getSelectedTexCoord();
void selectNextTexCoord(); void selectNextTexCoord();
void selectPrevTexCoord(); void selectPrevTexCoord();
void moveTexCoords(ofVec2f by); void moveTexCoords(ofVec2f by);
void stopDragJoints(); void stopDragJoints();
void moveSelection(ofVec2f by); void moveSelection(ofVec2f by);

Loading…
Cancel
Save