Skip to content

Commit

Permalink
Merge branch 'master' into release
Browse files Browse the repository at this point in the history
  • Loading branch information
yamahubuki committed Mar 23, 2021
2 parents c81d72c + 16f3837 commit 0844040
Show file tree
Hide file tree
Showing 13 changed files with 66 additions and 18 deletions.
11 changes: 11 additions & 0 deletions AppBase.py
Original file line number Diff line number Diff line change
Expand Up @@ -100,6 +100,7 @@ def LoadSettings(self):
#初回起動
self.config.read_dict(DefaultSettings.initialValues)
self.config.write()
self.hLogHandler.setLevel(self.config.getint("general","log_level",20,0,50))

def InitTranslation(self):
"""翻訳を初期化する。"""
Expand Down Expand Up @@ -132,3 +133,13 @@ def SetTimeZone(self):
hours=bias//60
minutes=bias%60
self.timezone=datetime.timezone(datetime.timedelta(hours=hours,minutes=minutes))

def getAppPath(self):
"""アプリの絶対パスを返す
"""
if self.frozen:
# exeファイルで実行されている
return sys.executable
else:
# pyファイルで実行されている
return os.path.join(os.path.dirname(__file__), os.path.basename(sys.argv[0]))
2 changes: 2 additions & 0 deletions DefaultSettings.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,8 @@ def get():
"locale": "ja-JP",
"update" : True,
"auto_reload" : False,
"log_level":"20",

}
config["view"]={
"font": "bold 'MS ゴシック' 22 windows-932",
Expand Down
16 changes: 11 additions & 5 deletions app.py
Original file line number Diff line number Diff line change
Expand Up @@ -28,11 +28,8 @@ def OnInit(self):
def initialize(self):
self.initUpdater()
# プロキシの設定を適用
if self.config.getboolean("network", "auto_proxy"):
self.proxyEnviron = proxyUtil.virtualProxyEnviron()
self.proxyEnviron.set_environ()
else:
self.proxyEnviron = None
self.proxyEnviron = proxyUtil.virtualProxyEnviron()
self.setProxyEnviron()
# アップデートを実行
if self.config.getboolean("general", "update"):
globalVars.update.update(True)
Expand All @@ -43,6 +40,12 @@ def initialize(self):
if self.config.getboolean("general","auto_reload",True):
wx.CallAfter(self.autoReload)

def setProxyEnviron(self):
if self.config.getboolean("proxy", "usemanualsetting", False) == True:
self.proxyEnviron.set_environ(self.config["proxy"]["server"], self.config.getint("proxy", "port", 8080, 0, 65535))
else:
self.proxyEnviron.set_environ()

def autoReload(self):
self.log.info("start: auto_reload")
self.hMainView.events.reload()
Expand All @@ -62,6 +65,9 @@ def OnExit(self):

self._releaseMutex()

# アップデート
globalVars.update.runUpdate()

#戻り値は無視される
return 0

Expand Down
6 changes: 3 additions & 3 deletions constants.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,8 @@
APP_FULL_NAME = "windows Native Peing Connector"#アプリケーションの完全な名前
APP_NAME="NPC"#アプリケーションの名前
APP_ICON = None
APP_VERSION="1.0.0"
APP_LAST_RELEASE_DATE="2021-03-14"
APP_VERSION="1.0.1"
APP_LAST_RELEASE_DATE="2021-03-24"
APP_COPYRIGHT_YEAR="2021"
APP_LICENSE="Apache License 2.0"
APP_DEVELOPERS="yamahubuki, ACT Laboratory"
Expand Down Expand Up @@ -38,7 +38,7 @@
FULL_CHECKED=wx.CHK_CHECKED

#build関連定数
BASE_PACKAGE_URL = None
BASE_PACKAGE_URL = "https://github.com/actlaboratory/NPC/releases/download/1.0.0/NPC-1.0.0.zip"
PACKAGE_CONTAIN_ITEMS = ()#パッケージに含めたいファイルやfolderがあれば指定
NEED_HOOKS = ()#pyinstallerのhookを追加したい場合は指定
STARTUP_FILE = "npc.py"#起動用ファイルを指定
Expand Down
8 changes: 7 additions & 1 deletion keymapHandlerBase.py
Original file line number Diff line number Diff line change
Expand Up @@ -339,10 +339,12 @@ def addDict(self,dict,sections=None):
continue

self.log.debug("read section %s" % identifier)
self.entries[identifier]=[]
for elem in read.items(identifier):
if elem[1]!="": #空白のものは無視する
self.add(identifier,elem[0],elem[1])


def addFile(self, filename,sections=None):
"""
指定されたファイルからキーマップを読もうと試みる。
Expand Down Expand Up @@ -429,7 +431,11 @@ def GetTable(self, identifier):
アクセラレーターテーブルを取得する。
identifier で、どのビューでのテーブルを取得するかを指定する。
"""
return wx.AcceleratorTable(self.entries[identifier.upper()])
if identifier.upper() in self.entries:
return wx.AcceleratorTable(self.entries[identifier.upper()])
else:
return wx.AcceleratorTable([])


def GetEntries(self,identifier):
"""
Expand Down
2 changes: 1 addition & 1 deletion peing.py
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ def getAnswers(userId, page):
def postQuestion(userId, message):
with requests.Session() as s:
# CSRFトークンとクッキーの取得のために一度アクセスしておく。
page = s.get("http://peing.net/%s" % (userId),timeout=5)
page = s.get("https://peing.net/%s" % (userId),timeout=5)
# htmlを解析
soup = BeautifulSoup(page.content, "lxml")
tmp = soup.find("meta", {"name": "csrf-token"})
Expand Down
9 changes: 9 additions & 0 deletions public/history.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
windows Native Peing Connector(NPC) 更新履歴

2021/03/24 Version 1.0.1
1. プロキシサーバーの設定が正しく反映されなかった問題を修正しました。
2. 特定の環境で、プログラムが起動できない問題を修正しました。
3. アップデータが正しく動作しない問題を修正しました。

2021/03/14 Version 1.0.0
初回リリース
9 changes: 7 additions & 2 deletions public/readme.txt
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
windows Native Peing Connector -NPC-

バージョン:  ver.1.0.0
リリース:   2021-03-14
バージョン:  ver.1.0.1
リリース:   2021-03-24
開発・配布元: ACT Laboratory (https://actlab.org/)
主要開発者:  吹雪
  ソフト種別:  オープンソースソフトウェア (GitHubリポジトリ:https://github.com/actlaboratory/NPC/)
Expand Down Expand Up @@ -164,6 +164,11 @@ NPCの動作全般に関する設定を行います。
NPCを起動した際、自動的にビューの更新を行うか否かを設定します。
規定でチェックされています。

4.5.1.1.2 ログ記録レベル
NPCの動作のログの詳細度を設定します。CRITICALやERRORに設定すると、ほとんど記録されません。ログファイルの容量を減らすことができます。
逆に、DEBUGに設定すると、詳細な動作の記録を得ることができます。ここでの設定は、NPCの再起動後から有効になります。
万一不具合が発生した場合には、DEBUGレベルで動作を記録し、状況と併せてお送りいただけると、問題の迅速な特定と解決につながります。

4.5.1.2 表示/言語
画面表示に関する設定です。
また、NPCの表示言語を変更することもできます。
Expand Down
2 changes: 1 addition & 1 deletion requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -6,5 +6,5 @@ pyperclip
requests
bs4
lxml
https://github.com/actlaboratory/proxyutil/archive/0.2.3.zip
https://github.com/actlaboratory/proxyutil/archive/0.2.4.zip
https://github.com/actlaboratory/diff_archiver/archive/v1.0.1.zip
2 changes: 1 addition & 1 deletion tools/build.py
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,7 @@ def runcmd(cmd):
if os.path.isdir(item):
shutil.copytree(item, os.path.join(package_path, item))
if os.path.isfile(item):
shutil.copyfile(item, os.path.join(package_name, os.path.basename(item)))
shutil.copyfile(item, os.path.join(package_path, os.path.basename(item)))
for elem in glob.glob("public\\*"):
if os.path.isfile(elem):
shutil.copyfile(elem, os.path.join(package_path, os.path.basename(elem)))
Expand Down
2 changes: 1 addition & 1 deletion version.json
Original file line number Diff line number Diff line change
@@ -1 +1 @@
{"version": "1.0.0", "release_date": "2021-03-14"}
{"version": "1.0.1", "release_date": "2021-03-24"}
4 changes: 2 additions & 2 deletions views/ViewCreatorBase.py
Original file line number Diff line number Diff line change
Expand Up @@ -528,7 +528,7 @@ def _addDescriptionText(self,text,textLayout,sizerFlag=0, proportion=0,margin=0)
self._setFace(hStaticText)
sizer=self.BoxSizer(panel,orient=textLayout)
Add(sizer,hStaticText, 0, wx.ALIGN_CENTER_VERTICAL)
Add(self.sizer,panel, proportion, sizerFlag,margin)
Add(self.sizer,panel, proportion, sizerFlag|wx.ALIGN_CENTER_VERTICAL,margin)
return hStaticText,sizer,panel
elif isinstance(self.sizer,(wx.GridSizer,wx.FlexGridSizer,wx.GridBagSizer)) and textLayout==None:
hStaticText=wx.StaticText(self.parent,wx.ID_ANY,label=text,name=text,size=(0,0))
Expand All @@ -542,7 +542,7 @@ def _addDescriptionText(self,text,textLayout,sizerFlag=0, proportion=0,margin=0)
else:
hStaticText=wx.StaticText(self.parent,wx.ID_ANY,label=text,name=text,size=(0,0))
self._setFace(hStaticText)
Add(self.sizer,hStaticText,0,sizerFlag&(wx.ALIGN_LEFT|wx.ALIGN_RIGHT|wx.ALIGN_CENTER_VERTICAL|wx.ALIGN_BOTTOM|wx.EXPAND))
Add(self.sizer,hStaticText,0,(sizerFlag|wx.ALIGN_CENTER_VERTICAL)&(wx.ALIGN_LEFT|wx.ALIGN_RIGHT|wx.ALIGN_CENTER_VERTICAL|wx.ALIGN_BOTTOM|wx.EXPAND))
return hStaticText,self.sizer,self.parent

def _setFace(self,target,mode=NORMAL):
Expand Down
11 changes: 10 additions & 1 deletion views/settingsDialog.py
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,14 @@ class Dialog(BaseDialog):
# "NVDA": "NVDA",
# "JAWS": "JAWS for Windows"
#}
logLevelSelection = {
"50":"CRITICAL",
"40":"ERROR",
"30":"WARNING",
"20":"INFO",
"10":"DEBUG",
"0":"NOTSET"
}
colorModeSelection = {
"white": _("標準"),
"dark": _("ダーク")
Expand Down Expand Up @@ -63,6 +71,7 @@ def InstallControls(self):
creator=views.ViewCreator.ViewCreator(self.viewMode,self.tab,None,views.ViewCreator.GridBagSizer,label=_("一般"),style=wx.ALL,margin=20)
self.autoreload = creator.checkbox(_("起動時に最新の情報を取得する"))
creator.GetSizer().SetItemSpan(self.autoreload.GetParent(),2)
self.logLevel,dummy = creator.combobox(_("ログ記録レベル"),list(self.logLevelSelection.values()))
#self.reader, static = creator.combobox(_("出力先(&O)"), list(self.readerSelection.values()))

# view
Expand All @@ -87,7 +96,7 @@ def load(self):
# general
self._setValue(self.autoreload,"general","auto_reload",configType.BOOL)
#self._setValue(self.reader,"speech","reader",configType.DIC,self.readerSelection)

self._setValue(self.logLevel,"general","log_level",configType.DIC,self.logLevelSelection)
# view
self._setValue(self.language,"general","language",configType.DIC,self.languageSelection)
self._setValue(self.colormode,"view","colormode",configType.DIC,self.colorModeSelection)
Expand Down

0 comments on commit 0844040

Please sign in to comment.