Changeset 057a60864ad4…
Parent da95be84feda…
by
Changes to 2 files · Browse files at 057a60864ad4 Showing diff from parent da95be84feda Diff from another changeset...
@@ -8,7 +8,7 @@ import os
import re
-from mercurial import util, error, merge, commands, extensions
+from mercurial import util, error, merge, commands, extensions, match
from tortoisehg.hgqt import qtlib, htmlui, visdiff
from tortoisehg.util import hglib, shlib
from tortoisehg.hgqt.i18n import _
@@ -271,10 +271,38 @@
def add(parent, ui, repo, files):
if 'kbfiles' in repo.extensions():
+ bfiles = []
+ minsize = int(ui.config('kilnbfiles', 'size', default=10))
+ patterns = ui.config('kilnbfiles', 'patterns', default=())
+ if patterns:
+ patterns = patterns.split(' ')
+ matcher = match.match(repo.root, '', list(patterns))
+ else:
+ matcher = None
+ if minsize == 0 or minsize >= 10:
+ for wfile in files:
+ if not matcher or not matcher(wfile):
+ filesize = os.path.getsize(repo.wjoin(wfile))
+ if filesize >= 10*1024*1024 and filesize < minsize*1024*1024:
+ bfiles.append(wfile)
+ if bfiles:
+ ret = qtlib.BfilesPrompt(parent, files).run()
+ if ret == 0:
+ # add as bfiles
+ for bfile in bfiles:
+ files.remove(bfile)
+ elif ret == 1:
+ # add as normal files
+ bfiles = []
+ elif ret == 2:
+ return False
for name, module in extensions.extensions():
if name == 'kbfiles':
override_add = module.bfsetup.override_add
- override_add(commands.add, ui, repo, *files)
+ if files:
+ override_add(commands.add, ui, repo, *files)
+ if bfiles:
+ override_add(commands.add, ui, repo, *bfiles, bf=1)
return True
commands.add(ui, repo, *files)
return True
|
Loading...