Minor tweaks and first events added to characters view

Signed-off-by: TheJackiMonster <thejackimonster@gmail.com>
This commit is contained in:
TheJackiMonster 2021-05-17 00:20:48 +02:00
parent f3d39337c2
commit 5eab1afc47
No known key found for this signature in database
GPG key ID: D850A5F772E880F9
7 changed files with 145 additions and 53 deletions

View file

@ -15,5 +15,89 @@ class CharactersView:
self.widget = builder.get_object("characters_view")
self.colorButton = builder.get_object("color")
self.importanceCombo = builder.get_object("importance")
self.allowPOVCheck = builder.get_object("allow_POV")
self.colorButton.connect("color-set", self.colorSet)
self.importanceCombo.connect("changed", self.importanceChanged)
self.allowPOVCheck.connect("toggled", self.allowPOVToggled)
self.detailsStore = builder.get_object("details_store")
self.detailsSelection = builder.get_object("details_selection")
self.addDetailsButton = builder.get_object("add_details")
self.removeDetailsButton = builder.get_object("remove_details")
self.detailsNameRenderer = builder.get_object("details_name")
self.detailsValueRenderer = builder.get_object("details_value")
self.addDetailsButton.connect("clicked", self.addDetailsClicked)
self.removeDetailsButton.connect("clicked", self.removeDetailsClicked)
self.detailsNameRenderer.connect("edited", self.detailsNameEdited)
self.detailsValueRenderer.connect("edited", self.detailsValueEdited)
self.nameBuffer = builder.get_object("name")
self.motivationBuffer = builder.get_object("motivation")
self.goalBuffer = builder.get_object("goal")
self.conflictBuffer = builder.get_object("conflict")
self.epiphanyBuffer = builder.get_object("epiphany")
self.oneSentenceBuffer = builder.get_object("one_sentence_summary")
self.oneParagraphBuffer = builder.get_object("one_paragraph_summary")
self.summaryBuffer = builder.get_object("summary")
self.notesBuffer = builder.get_object("notes")
def colorSet(self, button: Gtk.ColorButton):
color = button.get_rgba()
print("{} {} {} {}".format(color.red, color.green, color.blue, color.alpha))
def importanceChanged(self, combo: Gtk.ComboBox):
tree_iter = combo.get_active_iter()
if tree_iter is None:
return
model = combo.get_model()
name = model[tree_iter][0]
print("blub " + name)
def allowPOVToggled(self, button: Gtk.ToggleButton):
state = button.get_active()
print("OK: {}".format(state))
def addDetailsClicked(self, button: Gtk.Button):
tree_iter = self.detailsStore.append()
if tree_iter is None:
return
self.detailsStore.set_value(tree_iter, 0, "Description")
self.detailsStore.set_value(tree_iter, 1, "Value")
def removeDetailsClicked(self, button: Gtk.Button):
model, tree_iter = self.detailsSelection.get_selected()
if (model is None) or (tree_iter is None):
return
model.remove(tree_iter)
def detailsNameEdited(self, renderer: Gtk.CellRendererText, path: str, text: str):
model, tree_iter = self.detailsSelection.get_selected()
if (model is None) or (tree_iter is None):
return
model.set_value(tree_iter, 0, text)
def detailsValueEdited(self, renderer: Gtk.CellRendererText, path: str, text: str):
model, tree_iter = self.detailsSelection.get_selected()
if (model is None) or (tree_iter is None):
return
model.set_value(tree_iter, 1, text)
def show(self):
self.widget.show_all()

View file

@ -48,7 +48,7 @@ class SummaryView:
def show(self):
self.widget.show_all()
def summaryStackChanged(self, combo):
def summaryStackChanged(self, combo: Gtk.ComboBox):
tree_iter = combo.get_active_iter()
if tree_iter is None:

View file

@ -25,6 +25,17 @@ along with Manuskript. If not, see <http://www.gnu.org/licenses/>.
<!-- interface-name Manuskript -->
<!-- interface-description Manuskript is an open-source tool for writers. -->
<!-- interface-copyright 2015-2021 Olivier Keshavjee et al. -->
<object class="GtkTextBuffer" id="conflict"/>
<object class="GtkListStore" id="details_store">
<columns>
<!-- column-name name -->
<column type="gchararray"/>
<!-- column-name value -->
<column type="gchararray"/>
</columns>
</object>
<object class="GtkTextBuffer" id="epiphany"/>
<object class="GtkTextBuffer" id="goal"/>
<object class="GtkListStore" id="importance_store">
<columns>
<!-- column-name name -->
@ -42,24 +53,12 @@ along with Manuskript. If not, see <http://www.gnu.org/licenses/>.
</row>
</data>
</object>
<object class="GtkListStore" id="info_store">
<columns>
<!-- column-name name -->
<column type="gchararray"/>
<!-- column-name value -->
<column type="gchararray"/>
</columns>
<data>
<row>
<col id="0" translatable="yes">Test</col>
<col id="1" translatable="yes">Hallo Welt</col>
</row>
<row>
<col id="0" translatable="yes">Blub</col>
<col id="1" translatable="yes">43</col>
</row>
</data>
</object>
<object class="GtkTextBuffer" id="motivation"/>
<object class="GtkEntryBuffer" id="name"/>
<object class="GtkTextBuffer" id="notes"/>
<object class="GtkTextBuffer" id="one_paragraph_summary"/>
<object class="GtkTextBuffer" id="one_sentence_summary"/>
<object class="GtkTextBuffer" id="summary"/>
<object class="GtkScrolledWindow" id="characters_view">
<property name="visible">True</property>
<property name="can-focus">True</property>
@ -111,12 +110,11 @@ along with Manuskript. If not, see <http://www.gnu.org/licenses/>.
</child>
<child>
<object class="GtkListBox">
<property name="height-request">80</property>
<property name="visible">True</property>
<property name="can-focus">False</property>
</object>
<packing>
<property name="expand">True</property>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">1</property>
</packing>
@ -135,12 +133,11 @@ along with Manuskript. If not, see <http://www.gnu.org/licenses/>.
</child>
<child>
<object class="GtkListBox">
<property name="height-request">80</property>
<property name="visible">True</property>
<property name="can-focus">False</property>
</object>
<packing>
<property name="expand">True</property>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">3</property>
</packing>
@ -159,7 +156,6 @@ along with Manuskript. If not, see <http://www.gnu.org/licenses/>.
</child>
<child>
<object class="GtkListBox">
<property name="height-request">80</property>
<property name="visible">True</property>
<property name="can-focus">False</property>
</object>
@ -269,7 +265,7 @@ along with Manuskript. If not, see <http://www.gnu.org/licenses/>.
<property name="row-spacing">8</property>
<property name="column-spacing">8</property>
<child>
<object class="GtkLabel" id="label16">
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="valign">start</property>
@ -284,7 +280,7 @@ summary</property>
</packing>
</child>
<child>
<object class="GtkLabel" id="label15">
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="valign">start</property>
@ -299,7 +295,7 @@ summary</property>
</packing>
</child>
<child>
<object class="GtkLabel" id="label14">
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="valign">start</property>
@ -313,7 +309,7 @@ summary</property>
</packing>
</child>
<child>
<object class="GtkLabel" id="label13">
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="valign">start</property>
@ -327,7 +323,7 @@ summary</property>
</packing>
</child>
<child>
<object class="GtkLabel" id="label12">
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="valign">start</property>
@ -353,6 +349,7 @@ summary</property>
<property name="height-request">100</property>
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="buffer">one_paragraph_summary</property>
</object>
</child>
<child type="label_item">
@ -377,6 +374,7 @@ summary</property>
<property name="height-request">100</property>
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="buffer">one_sentence_summary</property>
</object>
</child>
<child type="label_item">
@ -401,6 +399,7 @@ summary</property>
<property name="height-request">100</property>
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="buffer">epiphany</property>
</object>
</child>
<child type="label_item">
@ -425,6 +424,7 @@ summary</property>
<property name="height-request">100</property>
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="buffer">conflict</property>
</object>
</child>
<child type="label_item">
@ -449,6 +449,7 @@ summary</property>
<property name="height-request">100</property>
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="buffer">goal</property>
</object>
</child>
<child type="label_item">
@ -473,6 +474,7 @@ summary</property>
<property name="height-request">100</property>
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="buffer">motivation</property>
</object>
</child>
<child type="label_item">
@ -485,7 +487,7 @@ summary</property>
</packing>
</child>
<child>
<object class="GtkLabel" id="label11">
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="valign">start</property>
@ -499,7 +501,7 @@ summary</property>
</packing>
</child>
<child>
<object class="GtkLabel" id="label10">
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="label" translatable="yes">Importance</property>
@ -516,7 +518,7 @@ summary</property>
<property name="can-focus">False</property>
<property name="spacing">4</property>
<child>
<object class="GtkComboBox">
<object class="GtkComboBox" id="importance">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="model">importance_store</property>
@ -535,7 +537,7 @@ summary</property>
</packing>
</child>
<child>
<object class="GtkCheckButton">
<object class="GtkCheckButton" id="allow_POV">
<property name="label" translatable="yes">Allow POV</property>
<property name="visible">True</property>
<property name="can-focus">True</property>
@ -556,7 +558,7 @@ summary</property>
</packing>
</child>
<child>
<object class="GtkLabel" id="label9">
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="label" translatable="yes">Name</property>
@ -576,6 +578,7 @@ summary</property>
<object class="GtkEntry">
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="buffer">name</property>
</object>
<packing>
<property name="expand">True</property>
@ -584,7 +587,7 @@ summary</property>
</packing>
</child>
<child>
<object class="GtkColorButton">
<object class="GtkColorButton" id="color">
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="receives-default">True</property>
@ -628,6 +631,7 @@ summary</property>
<object class="GtkTextView">
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="buffer">summary</property>
</object>
</child>
<child type="label_item">
@ -663,6 +667,7 @@ summary</property>
<object class="GtkTextView">
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="buffer">notes</property>
</object>
</child>
<child type="label_item">
@ -713,17 +718,19 @@ summary</property>
<object class="GtkTreeView">
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="model">info_store</property>
<property name="model">details_store</property>
<property name="search-column">0</property>
<property name="enable-grid-lines">both</property>
<child internal-child="selection">
<object class="GtkTreeSelection"/>
<object class="GtkTreeSelection" id="details_selection"/>
</child>
<child>
<object class="GtkTreeViewColumn">
<property name="title" translatable="yes">Name</property>
<child>
<object class="GtkCellRendererText"/>
<object class="GtkCellRendererText" id="details_name">
<property name="editable">True</property>
</object>
<attributes>
<attribute name="text">0</attribute>
</attributes>
@ -734,7 +741,9 @@ summary</property>
<object class="GtkTreeViewColumn">
<property name="title" translatable="yes">Value</property>
<child>
<object class="GtkCellRendererText"/>
<object class="GtkCellRendererText" id="details_value">
<property name="editable">True</property>
</object>
<attributes>
<attribute name="text">1</attribute>
</attributes>
@ -763,7 +772,7 @@ summary</property>
<property name="can-focus">False</property>
<property name="spacing">4</property>
<child>
<object class="GtkButton">
<object class="GtkButton" id="add_details">
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="receives-default">True</property>
@ -782,7 +791,7 @@ summary</property>
</packing>
</child>
<child>
<object class="GtkButton">
<object class="GtkButton" id="remove_details">
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="receives-default">True</property>
@ -804,6 +813,7 @@ summary</property>
<object class="GtkEntry">
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="placeholder-text" translatable="yes">Filter</property>
</object>
<packing>
<property name="expand">True</property>

View file

@ -28,6 +28,8 @@ along with Manuskript. If not, see <http://www.gnu.org/licenses/>.
<!-- interface-copyright 2015-2021 Olivier Keshavjee et al. -->
<object class="HdyApplicationWindow" id="main_window">
<property name="can-focus">False</property>
<property name="default-width">1600</property>
<property name="default-height">900</property>
<child>
<object class="GtkBox">
<property name="visible">True</property>
@ -678,7 +680,6 @@ along with Manuskript. If not, see <http://www.gnu.org/licenses/>.
<object class="GtkPaned">
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="position">100</property>
<property name="wide-handle">True</property>
<child>
<object class="GtkBox">
@ -699,7 +700,6 @@ along with Manuskript. If not, see <http://www.gnu.org/licenses/>.
<object class="GtkPaned">
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="position">300</property>
<property name="wide-handle">True</property>
<child>
<object class="GtkStack" id="main_stack">

View file

@ -109,7 +109,7 @@ along with Manuskript. If not, see <http://www.gnu.org/licenses/>.
</child>
</object>
<packing>
<property name="expand">True</property>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">1</property>
</packing>
@ -137,7 +137,7 @@ along with Manuskript. If not, see <http://www.gnu.org/licenses/>.
</child>
</object>
<packing>
<property name="expand">True</property>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">3</property>
</packing>
@ -172,8 +172,8 @@ along with Manuskript. If not, see <http://www.gnu.org/licenses/>.
</child>
</object>
<packing>
<property name="resize">False</property>
<property name="shrink">True</property>
<property name="resize">True</property>
<property name="shrink">False</property>
</packing>
</child>
<child>
@ -537,7 +537,7 @@ along with Manuskript. If not, see <http://www.gnu.org/licenses/>.
</object>
<packing>
<property name="resize">True</property>
<property name="shrink">True</property>
<property name="shrink">False</property>
</packing>
</child>
</object>

View file

@ -110,12 +110,11 @@ along with Manuskript. If not, see <http://www.gnu.org/licenses/>.
</child>
<child>
<object class="GtkListBox">
<property name="height-request">80</property>
<property name="visible">True</property>
<property name="can-focus">False</property>
</object>
<packing>
<property name="expand">True</property>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">1</property>
</packing>
@ -134,12 +133,11 @@ along with Manuskript. If not, see <http://www.gnu.org/licenses/>.
</child>
<child>
<object class="GtkListBox">
<property name="height-request">80</property>
<property name="visible">True</property>
<property name="can-focus">False</property>
</object>
<packing>
<property name="expand">True</property>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">3</property>
</packing>
@ -158,7 +156,6 @@ along with Manuskript. If not, see <http://www.gnu.org/licenses/>.
</child>
<child>
<object class="GtkListBox">
<property name="height-request">80</property>
<property name="visible">True</property>
<property name="can-focus">False</property>
</object>

View file

@ -49,6 +49,7 @@ along with Manuskript. If not, see <http://www.gnu.org/licenses/>.
<object class="GtkPaned">
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="wide-handle">True</property>
<child>
<object class="GtkBox">
<property name="visible">True</property>