mirror of
https://github.com/olivierkes/manuskript.git
synced 2024-09-30 01:07:24 +13:00
Added pretty label for template goal
Signed-off-by: TheJackiMonster <thejackimonster@gmail.com>
This commit is contained in:
parent
0d2066d207
commit
2aa65fc815
4 changed files with 56 additions and 11 deletions
|
@ -16,9 +16,12 @@ class Goal:
|
||||||
self.value = max(value, 0)
|
self.value = max(value, 0)
|
||||||
self.kind = kind
|
self.kind = kind
|
||||||
|
|
||||||
|
def prettyString(self):
|
||||||
|
return str(self.value) + " " + self.kind.name.lower()
|
||||||
|
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
if self.kind != GoalKind.WORDS:
|
if self.kind != GoalKind.WORDS:
|
||||||
return str(self.value) + " " + self.kind.name.lower()
|
return self.prettyString()
|
||||||
else:
|
else:
|
||||||
return str(self.value)
|
return str(self.value)
|
||||||
|
|
||||||
|
|
|
@ -61,6 +61,16 @@ class Template:
|
||||||
|
|
||||||
self.goal = Goal(value)
|
self.goal = Goal(value)
|
||||||
|
|
||||||
|
def getGoalString(self):
|
||||||
|
if self.goal is None:
|
||||||
|
return "?"
|
||||||
|
|
||||||
|
value = self.goal.value
|
||||||
|
for level in self.levels:
|
||||||
|
value = value * level.size
|
||||||
|
|
||||||
|
return Goal(value, self.goal.kind).prettyString()
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def getDefaultTemplates(cls):
|
def getDefaultTemplates(cls):
|
||||||
templates = list()
|
templates = list()
|
||||||
|
|
|
@ -33,6 +33,7 @@ class StartupWindow(AbstractDialog):
|
||||||
self.templateSelections = list()
|
self.templateSelections = list()
|
||||||
self.templateLevelsListbox = None
|
self.templateLevelsListbox = None
|
||||||
|
|
||||||
|
self.goalLabel = None
|
||||||
self.addLevelButton = None
|
self.addLevelButton = None
|
||||||
self.addGoalButton = None
|
self.addGoalButton = None
|
||||||
|
|
||||||
|
@ -89,6 +90,7 @@ class StartupWindow(AbstractDialog):
|
||||||
|
|
||||||
self.templateLevelsListbox = builder.get_object("template_levels_listbox")
|
self.templateLevelsListbox = builder.get_object("template_levels_listbox")
|
||||||
|
|
||||||
|
self.goalLabel = builder.get_object("goal_label")
|
||||||
self.addLevelButton = builder.get_object("add_level_button")
|
self.addLevelButton = builder.get_object("add_level_button")
|
||||||
self.addGoalButton = builder.get_object("add_goal_button")
|
self.addGoalButton = builder.get_object("add_goal_button")
|
||||||
|
|
||||||
|
@ -107,18 +109,20 @@ class StartupWindow(AbstractDialog):
|
||||||
|
|
||||||
for level in self.template.levels:
|
for level in self.template.levels:
|
||||||
entry = TemplateEntry(self)
|
entry = TemplateEntry(self)
|
||||||
entry.bindTemplate(template, level)
|
entry.bindTemplate(self.template, level)
|
||||||
|
|
||||||
self.templateLevelsListbox.add(entry.widget)
|
self.templateLevelsListbox.add(entry.widget)
|
||||||
entry.show()
|
entry.show()
|
||||||
|
|
||||||
if template.goal is not None:
|
if self.template.goal is not None:
|
||||||
entry = TemplateEntry(self)
|
entry = TemplateEntry(self)
|
||||||
entry.bindTemplate(template)
|
entry.bindTemplate(self.template)
|
||||||
|
|
||||||
self.templateLevelsListbox.add(entry.widget)
|
self.templateLevelsListbox.add(entry.widget)
|
||||||
entry.show()
|
entry.show()
|
||||||
|
|
||||||
|
self.goalLabel.set_text(self.template.getGoalString())
|
||||||
|
|
||||||
def templateSelectionChanged(self, selection: Gtk.TreeSelection):
|
def templateSelectionChanged(self, selection: Gtk.TreeSelection):
|
||||||
model, tree_iter = selection.get_selected()
|
model, tree_iter = selection.get_selected()
|
||||||
|
|
||||||
|
|
|
@ -336,12 +336,40 @@
|
||||||
<property name="can-focus">False</property>
|
<property name="can-focus">False</property>
|
||||||
<property name="spacing">4</property>
|
<property name="spacing">4</property>
|
||||||
<child>
|
<child>
|
||||||
<object class="GtkLabel">
|
<object class="GtkBox">
|
||||||
<property name="visible">True</property>
|
<property name="visible">True</property>
|
||||||
<property name="can-focus">False</property>
|
<property name="can-focus">False</property>
|
||||||
<property name="label" translatable="yes">Total: ? words (~? pages)</property>
|
<property name="border-width">2</property>
|
||||||
<property name="ellipsize">end</property>
|
<property name="spacing">4</property>
|
||||||
<property name="xalign">0</property>
|
<child>
|
||||||
|
<object class="GtkLabel">
|
||||||
|
<property name="visible">True</property>
|
||||||
|
<property name="can-focus">False</property>
|
||||||
|
<property name="label" translatable="yes">Total:</property>
|
||||||
|
<property name="ellipsize">end</property>
|
||||||
|
<property name="xalign">0</property>
|
||||||
|
<attributes>
|
||||||
|
<attribute name="weight" value="bold"/>
|
||||||
|
</attributes>
|
||||||
|
</object>
|
||||||
|
<packing>
|
||||||
|
<property name="expand">False</property>
|
||||||
|
<property name="fill">True</property>
|
||||||
|
<property name="position">0</property>
|
||||||
|
</packing>
|
||||||
|
</child>
|
||||||
|
<child>
|
||||||
|
<object class="GtkLabel" id="goal_label">
|
||||||
|
<property name="visible">True</property>
|
||||||
|
<property name="can-focus">False</property>
|
||||||
|
<property name="xalign">0</property>
|
||||||
|
</object>
|
||||||
|
<packing>
|
||||||
|
<property name="expand">True</property>
|
||||||
|
<property name="fill">True</property>
|
||||||
|
<property name="position">1</property>
|
||||||
|
</packing>
|
||||||
|
</child>
|
||||||
</object>
|
</object>
|
||||||
<packing>
|
<packing>
|
||||||
<property name="expand">True</property>
|
<property name="expand">True</property>
|
||||||
|
@ -431,7 +459,7 @@
|
||||||
<object class="GtkBox">
|
<object class="GtkBox">
|
||||||
<property name="visible">True</property>
|
<property name="visible">True</property>
|
||||||
<property name="can-focus">False</property>
|
<property name="can-focus">False</property>
|
||||||
<property name="spacing">6</property>
|
<property name="spacing">4</property>
|
||||||
<child>
|
<child>
|
||||||
<object class="GtkImage">
|
<object class="GtkImage">
|
||||||
<property name="visible">True</property>
|
<property name="visible">True</property>
|
||||||
|
@ -477,7 +505,7 @@
|
||||||
<object class="GtkBox">
|
<object class="GtkBox">
|
||||||
<property name="visible">True</property>
|
<property name="visible">True</property>
|
||||||
<property name="can-focus">False</property>
|
<property name="can-focus">False</property>
|
||||||
<property name="spacing">6</property>
|
<property name="spacing">4</property>
|
||||||
<child>
|
<child>
|
||||||
<object class="GtkImage">
|
<object class="GtkImage">
|
||||||
<property name="visible">True</property>
|
<property name="visible">True</property>
|
||||||
|
@ -520,7 +548,7 @@
|
||||||
<object class="GtkBox">
|
<object class="GtkBox">
|
||||||
<property name="visible">True</property>
|
<property name="visible">True</property>
|
||||||
<property name="can-focus">False</property>
|
<property name="can-focus">False</property>
|
||||||
<property name="spacing">6</property>
|
<property name="spacing">4</property>
|
||||||
<child>
|
<child>
|
||||||
<object class="GtkImage">
|
<object class="GtkImage">
|
||||||
<property name="visible">True</property>
|
<property name="visible">True</property>
|
||||||
|
|
Loading…
Reference in a new issue