Start implementing fit browser lite

This commit is contained in:
DarkPhoenix
2019-07-31 20:22:18 +03:00
parent d571191ec2
commit 592adb36f1
3 changed files with 78 additions and 1 deletions

View File

@@ -1,8 +1,9 @@
# Various command and projected-related items which we want to have first,
# before generic commands
from gui.builtinContextMenus import fitOpenNewTab
from gui.builtinContextMenus import envEffectAdd
from gui.builtinContextMenus import fitAddBrowse
from gui.builtinContextMenus import fitAddCurrentlyOpen
from gui.builtinContextMenus import envEffectAdd
from gui.builtinContextMenus import commandFitAdd
from gui.builtinContextMenus.targetProfile import adder
# Often-used item manipulations

View File

@@ -0,0 +1,64 @@
# noinspection PyPackageRequirements
import wx
import gui.mainFrame
from gui.contextMenu import ContextMenuUnconditional
class AddBrowsedFits(ContextMenuUnconditional):
def __init__(self):
self.mainFrame = gui.mainFrame.MainFrame.getInstance()
def display(self, callingWindow, srcContext):
if srcContext not in ('projected', 'commandView', 'graphFitList', 'graphTgtList'):
return False
return True
def getText(self, callingWindow, itmContext):
return 'Add Fit...'
def activate(self, callingWindow, fullContext, i):
dlg = FitBrowserLiteDialog(self.mainFrame)
if dlg.ShowModal() == wx.ID_OK:
pass
AddBrowsedFits.register()
class FitBrowserLiteDialog(wx.Dialog):
def __init__(self, parent):
from gui.builtinViews.fitListLite import FitListView
wx.Dialog.__init__(self, parent, title='Add Fits', style=wx.DEFAULT_DIALOG_STYLE)
self.SetMinSize((500, 200))
mainSizer = wx.BoxSizer(wx.VERTICAL)
searchSizer = wx.BoxSizer(wx.HORIZONTAL)
searchBox = wx.TextCtrl(self, wx.ID_ANY, style=wx.TE_PROCESS_ENTER)
searchSizer.Add(searchBox, 1, wx.EXPAND | wx.ALL, 5)
mainSizer.Add(searchSizer, 0, wx.EXPAND | wx.ALL, 0)
listSizer = wx.BoxSizer(wx.HORIZONTAL)
fromList = FitListView(self)
listSizer.Add(fromList, 1, wx.EXPAND | wx.ALL, 5)
listButtonSizer = wx.BoxSizer(wx.VERTICAL)
self.addButton = wx.Button(self, wx.ID_ANY, '>>', wx.DefaultPosition, wx.DefaultSize, 0)
self.removeButton = wx.Button(self, wx.ID_ANY, '<<', wx.DefaultPosition, wx.DefaultSize, 0)
listSizer.Add(listButtonSizer, 0, wx.EXPAND | wx.ALL, 5)
toList = FitListView(self)
listSizer.Add(toList, 1, wx.EXPAND | wx.ALL, 5)
mainSizer.Add(listSizer, 1, wx.EXPAND | wx.ALL, 0)
buttonSizer = self.CreateButtonSizer(wx.OK | wx.CANCEL)
if buttonSizer:
mainSizer.Add(buttonSizer, 0, wx.EXPAND | wx.ALL, 5)
self.SetSizer(mainSizer)
self.CenterOnParent()
self.Fit()

View File

@@ -0,0 +1,12 @@
# noinspection PyPackageRequirements
import wx
import gui.display as d
class FitListView(d.Display):
DEFAULT_COLS = ['Base Name']
def __init__(self, parent):
super().__init__(parent, style=wx.BORDER_NONE)