summaryrefslogtreecommitdiff
path: root/python/interaction.py
diff options
context:
space:
mode:
authorJosh Ferrell <josh@vector35.com>2025-11-19 12:40:29 -0500
committerJosh Ferrell <josh@vector35.com>2025-11-19 15:05:16 -0500
commitdae5a014ccbfe5a99379163b49e426eeb0b9e766 (patch)
tree7e6d66c5dec8620f7299ed3e0e6c756875e871b1 /python/interaction.py
parentd4a7ed9b8fce07ce7206d4ab48b0b333ae69d47a (diff)
Improve python api type hints
Diffstat (limited to 'python/interaction.py')
-rw-r--r--python/interaction.py76
1 files changed, 38 insertions, 38 deletions
diff --git a/python/interaction.py b/python/interaction.py
index 27648e12..d94fdb87 100644
--- a/python/interaction.py
+++ b/python/interaction.py
@@ -381,12 +381,12 @@ class SaveFileNameField:
"""
``SaveFileNameField`` prompts the user to specify a file name to save. Result is stored in self.result as a string.
"""
- def __init__(self, prompt, ext="", default_name="", default=None):
+ def __init__(self, prompt: str, ext: str = "", default_name: str = "", default: Optional[str] = None):
self._prompt = prompt
self._ext = ext
self._default_name = default_name
self._default = default
- self._result = None
+ self._result: Optional[str] = None
def _fill_core_struct(self, value):
value.type = FormInputFieldType.SaveFileNameFormField
@@ -408,7 +408,7 @@ class SaveFileNameField:
return self._prompt
@prompt.setter
- def prompt(self, value):
+ def prompt(self, value: str):
self._prompt = value
@property
@@ -416,7 +416,7 @@ class SaveFileNameField:
return self._ext
@ext.setter
- def ext(self, value):
+ def ext(self, value: str):
self._ext = value
@property
@@ -424,7 +424,7 @@ class SaveFileNameField:
return self._default_name
@default_name.setter
- def default_name(self, value):
+ def default_name(self, value: str):
self._default_name = value
@property
@@ -432,7 +432,7 @@ class SaveFileNameField:
return self._result
@result.setter
- def result(self, value):
+ def result(self, value: Optional[str]):
self._result = value
@@ -441,7 +441,7 @@ class DirectoryNameField:
``DirectoryNameField`` prompts the user to specify a directory name to open. Result is stored in self.result as
a string.
"""
- def __init__(self, prompt, default_name="", default=None):
+ def __init__(self, prompt: str, default_name: str = "", default: Optional[str] = None):
self._prompt = prompt
self._default_name = default_name
self._default = default
@@ -466,7 +466,7 @@ class DirectoryNameField:
return self._prompt
@prompt.setter
- def prompt(self, value):
+ def prompt(self, value: str):
self._prompt = value
@property
@@ -474,7 +474,7 @@ class DirectoryNameField:
return self._default_name
@default_name.setter
- def default_name(self, value):
+ def default_name(self, value: str):
self._default_name = value
@property
@@ -482,7 +482,7 @@ class DirectoryNameField:
return self._result
@result.setter
- def result(self, value):
+ def result(self, value: Optional[str]):
self._result = value
@@ -494,7 +494,7 @@ class CheckboxField:
:param str prompt: Prompt to be presented to the user
:param bool default: Default state of the checkbox (False == unchecked, True == checked)
"""
- def __init__(self, prompt, default):
+ def __init__(self, prompt: str, default: Optional[bool]):
self._prompt = prompt
self._result = None
self._default = default
@@ -516,7 +516,7 @@ class CheckboxField:
return self._prompt
@prompt.setter
- def prompt(self, value):
+ def prompt(self, value: str):
self._prompt = value
@property
@@ -524,7 +524,7 @@ class CheckboxField:
return self._result
@result.setter
- def result(self, value):
+ def result(self, value: bool):
self._result = value
@property
@@ -532,7 +532,7 @@ class CheckboxField:
return self._default
@default.setter
- def default(self, value):
+ def default(self, value: Optional[bool]):
self._default = value
@@ -882,7 +882,7 @@ class InteractionHandler:
class PlainTextReport:
- def __init__(self, title, contents, view=None):
+ def __init__(self, title: str, contents: str, view: Optional['binaryview.BinaryView'] = None):
self._view = view
self._title = title
self._contents = contents
@@ -898,7 +898,7 @@ class PlainTextReport:
return self._view
@view.setter
- def view(self, value):
+ def view(self, value: Optional['binaryview.BinaryView']):
self._view = value
@property
@@ -906,7 +906,7 @@ class PlainTextReport:
return self._title
@title.setter
- def title(self, value):
+ def title(self, value: str):
self._title = value
@property
@@ -914,12 +914,12 @@ class PlainTextReport:
return self._contents
@contents.setter
- def contents(self, value):
+ def contents(self, value: str):
self._contents = value
class MarkdownReport:
- def __init__(self, title, contents, plaintext="", view=None):
+ def __init__(self, title: str, contents: str, plaintext: str = "", view: Optional['binaryview.BinaryView'] = None):
self._view = view
self._title = title
self._contents = contents
@@ -936,7 +936,7 @@ class MarkdownReport:
return self._view
@view.setter
- def view(self, value):
+ def view(self, value: Optional['binaryview.BinaryView']):
self._view = value
@property
@@ -944,7 +944,7 @@ class MarkdownReport:
return self._title
@title.setter
- def title(self, value):
+ def title(self, value: str):
self._title = value
@property
@@ -952,7 +952,7 @@ class MarkdownReport:
return self._contents
@contents.setter
- def contents(self, value):
+ def contents(self, value: str):
self._contents = value
@property
@@ -960,12 +960,12 @@ class MarkdownReport:
return self._plaintext
@plaintext.setter
- def plaintext(self, value):
+ def plaintext(self, value: str):
self._plaintext = value
class HTMLReport:
- def __init__(self, title, contents, plaintext="", view=None):
+ def __init__(self, title: str, contents: str, plaintext: str = "", view: Optional['binaryview.BinaryView'] = None):
self._view = view
self._title = title
self._contents = contents
@@ -982,7 +982,7 @@ class HTMLReport:
return self._view
@view.setter
- def view(self, value):
+ def view(self, value: Optional['binaryview.BinaryView']):
self._view = value
@property
@@ -990,7 +990,7 @@ class HTMLReport:
return self._title
@title.setter
- def title(self, value):
+ def title(self, value: str):
self._title = value
@property
@@ -998,7 +998,7 @@ class HTMLReport:
return self._contents
@contents.setter
- def contents(self, value):
+ def contents(self, value: str):
self._contents = value
@property
@@ -1006,12 +1006,12 @@ class HTMLReport:
return self._plaintext
@plaintext.setter
- def plaintext(self, value):
+ def plaintext(self, value: str):
self._plaintext = value
class FlowGraphReport:
- def __init__(self, title, graph, view=None):
+ def __init__(self, title: str, graph: 'flowgraph.FlowGraph', view: Optional['binaryview.BinaryView'] = None):
self._view = view
self._title = title
self._graph = graph
@@ -1024,7 +1024,7 @@ class FlowGraphReport:
return self._view
@view.setter
- def view(self, value):
+ def view(self, value: Optional['binaryview.BinaryView']):
self._view = value
@property
@@ -1032,7 +1032,7 @@ class FlowGraphReport:
return self._title
@title.setter
- def title(self, value):
+ def title(self, value: str):
self._title = value
@property
@@ -1040,7 +1040,7 @@ class FlowGraphReport:
return self._graph
@graph.setter
- def graph(self, value):
+ def graph(self, value: 'flowgraph.FlowGraph'):
self._graph = value
@@ -1056,22 +1056,22 @@ class ReportCollection:
def _report_from_index(self, i):
report_type = core.BNGetReportType(self.handle, i)
- title = core.BNGetReportTitle(self.handle, i)
+ title: str = core.BNGetReportTitle(self.handle, i) # type: ignore
view = core.BNGetReportView(self.handle, i)
if view:
view = binaryview.BinaryView(handle=view)
else:
view = None
if report_type == ReportType.PlainTextReportType:
- contents = core.BNGetReportContents(self.handle, i)
+ contents: str = core.BNGetReportContents(self.handle, i) # type: ignore
return PlainTextReport(title, contents, view)
elif report_type == ReportType.MarkdownReportType:
- contents = core.BNGetReportContents(self.handle, i)
- plaintext = core.BNGetReportPlainText(self.handle, i)
+ contents: str = core.BNGetReportContents(self.handle, i) # type: ignore
+ plaintext: str = core.BNGetReportPlainText(self.handle, i) # type: ignore
return MarkdownReport(title, contents, plaintext, view)
elif report_type == ReportType.HTMLReportType:
- contents = core.BNGetReportContents(self.handle, i)
- plaintext = core.BNGetReportPlainText(self.handle, i)
+ contents: str = core.BNGetReportContents(self.handle, i) # type: ignore
+ plaintext: str = core.BNGetReportPlainText(self.handle, i) # type: ignore
return HTMLReport(title, contents, plaintext, view)
elif report_type == ReportType.FlowGraphReportType:
graph = flowgraph.CoreFlowGraph(core.BNGetReportFlowGraph(self.handle, i))