SC optional tabs
This commit is contained in:
parent
44e51ac4ce
commit
3d83fe6557
|
@ -1,5 +1,8 @@
|
|||
package ctbrec.ui.sites.stripchat;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import ctbrec.Config;
|
||||
import ctbrec.sites.stripchat.Stripchat;
|
||||
import ctbrec.ui.DesktopIntegration;
|
||||
|
@ -113,6 +116,58 @@ public class StripchatConfigUI extends AbstractConfigUI {
|
|||
GridPane.setColumnSpan(password, 2);
|
||||
layout.add(password, 1, row++);
|
||||
|
||||
Label tabsLabel = new Label("Tabs");
|
||||
layout.add(tabsLabel, 0, row);
|
||||
List<String> tabs = getEnabledTabs();
|
||||
|
||||
GridPane checkboxGrid = new GridPane();
|
||||
checkboxGrid.setHgap(10);
|
||||
checkboxGrid.setVgap(5);
|
||||
checkboxGrid.setPadding(new Insets(0, 0, 0, 7));
|
||||
|
||||
CheckBox girls = new CheckBox("Girls");
|
||||
girls.setSelected(tabs.contains("girls"));
|
||||
girls.setOnAction(e -> toggleTab("girls", girls.isSelected()));
|
||||
checkboxGrid.add(girls, 0, 0);
|
||||
|
||||
CheckBox girlsNew = new CheckBox("Girls New");
|
||||
girlsNew.setSelected(tabs.contains("autoTagNew"));
|
||||
girlsNew.setOnAction(e -> toggleTab("autoTagNew", girlsNew.isSelected()));
|
||||
checkboxGrid.add(girlsNew, 1, 0);
|
||||
|
||||
CheckBox girlsHD = new CheckBox("Girls HD");
|
||||
girlsHD.setSelected(tabs.contains("autoTagHd"));
|
||||
girlsHD.setOnAction(e -> toggleTab("autoTagHd", girlsHD.isSelected()));
|
||||
checkboxGrid.add(girlsHD, 2, 0);
|
||||
|
||||
CheckBox mobile = new CheckBox("Mobile");
|
||||
mobile.setSelected(tabs.contains("mobile"));
|
||||
mobile.setOnAction(e -> toggleTab("mobile", mobile.isSelected()));
|
||||
checkboxGrid.add(mobile, 3, 0);
|
||||
|
||||
CheckBox pvt = new CheckBox("Private");
|
||||
pvt.setSelected(tabs.contains("autoTagSpy"));
|
||||
pvt.setOnAction(e -> toggleTab("autoTagSpy", pvt.isSelected()));
|
||||
checkboxGrid.add(pvt, 0, 1);
|
||||
|
||||
CheckBox couples = new CheckBox("Couples");
|
||||
couples.setSelected(tabs.contains("couples"));
|
||||
couples.setOnAction(e -> toggleTab("couples", couples.isSelected()));
|
||||
checkboxGrid.add(couples, 1, 1);
|
||||
|
||||
CheckBox boys = new CheckBox("Boys");
|
||||
boys.setSelected(tabs.contains("men"));
|
||||
boys.setOnAction(e -> toggleTab("men", boys.isSelected()));
|
||||
checkboxGrid.add(boys, 2, 1);
|
||||
|
||||
CheckBox trans = new CheckBox("Trans");
|
||||
trans.setSelected(tabs.contains("trans"));
|
||||
trans.setOnAction(e -> toggleTab("trans", trans.isSelected()));
|
||||
checkboxGrid.add(trans, 3, 1);
|
||||
|
||||
layout.add(checkboxGrid, 1, row, 4, 2);
|
||||
row += 2;
|
||||
|
||||
var createAccount = new Button("Create new Account");
|
||||
createAccount.setOnAction(e -> DesktopIntegration.open(stripchat.getAffiliateLink()));
|
||||
layout.add(createAccount, 1, row++);
|
||||
|
@ -142,4 +197,18 @@ public class StripchatConfigUI extends AbstractConfigUI {
|
|||
return layout;
|
||||
}
|
||||
|
||||
private void toggleTab(String tab, boolean selected) {
|
||||
var settings = Config.getInstance().getSettings();
|
||||
if (selected) {
|
||||
settings.stripchatTabs.add(tab);
|
||||
} else {
|
||||
settings.stripchatTabs.remove(tab);
|
||||
}
|
||||
save();
|
||||
}
|
||||
|
||||
private List<String> getEnabledTabs() {
|
||||
return new ArrayList<>(Config.getInstance().getSettings().stripchatTabs);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
package ctbrec.ui.sites.stripchat;
|
||||
|
||||
import ctbrec.Config;
|
||||
import ctbrec.sites.stripchat.Stripchat;
|
||||
import ctbrec.ui.sites.AbstractTabProvider;
|
||||
import ctbrec.ui.tabs.ThumbOverviewTab;
|
||||
|
@ -8,7 +9,10 @@ import javafx.scene.control.Tab;
|
|||
|
||||
import java.text.MessageFormat;
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
// import java.util.Objects;
|
||||
|
||||
public class StripchatTabProvider extends AbstractTabProvider {
|
||||
|
||||
|
@ -26,15 +30,29 @@ public class StripchatTabProvider extends AbstractTabProvider {
|
|||
@Override
|
||||
protected List<Tab> getSiteTabs(Scene scene) {
|
||||
List<Tab> tabs = new ArrayList<>();
|
||||
tabs.add(createTab("Girls", MessageFormat.format(urlTemplate, "girls")));
|
||||
tabs.add(createTab("Girls New", MessageFormat.format(urlFilterTemplate, "autoTagNew")));
|
||||
tabs.add(createTab("Girls HD", MessageFormat.format(urlFilterTemplate, "autoTagHd")));
|
||||
|
||||
Map<String, String> tabMap = new HashMap<>();
|
||||
tabMap.put("girls", "Girls");
|
||||
tabMap.put("autoTagNew", "Girls New");
|
||||
tabMap.put("autoTagHd", "Girls HD");
|
||||
// tabMap.put("autoTagVr", "Girls VR");
|
||||
tabMap.put("mobile", "Mobile");
|
||||
tabMap.put("autoTagSpy", "Private");
|
||||
tabMap.put("couples", "Couples");
|
||||
tabMap.put("men", "Boys");
|
||||
tabMap.put("trans", "Trans");
|
||||
List<String> enabledTabs = getEnabledTabs();
|
||||
for (String tab : enabledTabs) {
|
||||
String title = tabMap.getOrDefault(tab, tab);
|
||||
if (tab.contains("auto")) {
|
||||
tabs.add(createTab(title, MessageFormat.format(urlFilterTemplate, tab)));
|
||||
} else {
|
||||
tabs.add(createTab(title, MessageFormat.format(urlTemplate, tab)));
|
||||
}
|
||||
|
||||
}
|
||||
tabs.add(createTab("Girls VR", MessageFormat.format(urlFilterTemplate, "autoTagVr")));
|
||||
tabs.add(createTab("Mobile", MessageFormat.format(urlFilterTemplate, "mobile")));
|
||||
tabs.add(createTab("Private", MessageFormat.format(urlFilterTemplate, "autoTagSpy")));
|
||||
tabs.add(createTab("Couples", MessageFormat.format(urlTemplate, "couples")));
|
||||
tabs.add(createTab("Boys", MessageFormat.format(urlTemplate, "men")));
|
||||
tabs.add(createTab("Trans", MessageFormat.format(urlTemplate, "trans")));
|
||||
|
||||
followedTab.setRecorder(recorder);
|
||||
followedTab.setScene(scene);
|
||||
followedTab.setImageAspectRatio(9.0 / 16.0);
|
||||
|
@ -55,4 +73,8 @@ public class StripchatTabProvider extends AbstractTabProvider {
|
|||
return tab;
|
||||
}
|
||||
|
||||
private List<String> getEnabledTabs() {
|
||||
return new ArrayList<>(Config.getInstance().getSettings().stripchatTabs);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue