mirror of
https://github.com/qgis/QGIS.git
synced 2025-04-14 00:07:35 -04:00
Added a Python script for generating unique context ids for creating context sensitive help.
The script requires Python 2.5. See comments at the head of the script for more information. git-svn-id: http://svn.osgeo.org/qgis/trunk@12156 c8812cc2-4d05-0410-92ff-de0c093fc19c
This commit is contained in:
parent
e3b5681c82
commit
01ea042598
48
scripts/context_help_id.py
Executable file
48
scripts/context_help_id.py
Executable file
@ -0,0 +1,48 @@
|
||||
#!/usr/bin/python
|
||||
"""
|
||||
/***************************************************************************
|
||||
contxt_help_id.py
|
||||
-------------------
|
||||
begin : 2009-11-16
|
||||
copyright : (C) 2009 by Gary E.Sherman
|
||||
email : gsherman at mrcc.com
|
||||
***************************************************************************/
|
||||
|
||||
/***************************************************************************
|
||||
* *
|
||||
* This program is free software; you can redistribute it and/or modify *
|
||||
* it under the terms of the GNU General Public License as published by *
|
||||
* the Free Software Foundation; either version 2 of the License, or *
|
||||
* (at your option) any later version. *
|
||||
* *
|
||||
***************************************************************************/
|
||||
|
||||
This script generates a unique context id based for use in the QGIS
|
||||
context sensitive help system. It uses the SHA1 hash for the class name
|
||||
and converts the first 12 characters to a unique integer.
|
||||
|
||||
To create a context id, pass the name of the QGIS class on the command line.
|
||||
Example:
|
||||
./context_help_id.py QgsAbout
|
||||
|
||||
This script requires Python 2.5 or higher (hashlib was introduced at 2.5).
|
||||
|
||||
NOTE: Due to a change in the way context ids are generated, ids
|
||||
generated by the old method (Java hashCode function) will be different than
|
||||
the id generated by the new method for the same class.
|
||||
"""
|
||||
import hashlib
|
||||
import sys
|
||||
# check to see if a class name was specified and if so, craete the context id
|
||||
if len(sys.argv) > 1:
|
||||
hash = hashlib.sha1()
|
||||
# set the hash to the name passed on the command line
|
||||
hash.update(sys.argv[1])
|
||||
# generate the context id by converting the first 12 characters of the hash
|
||||
# to decimal
|
||||
context_id = int(hash.hexdigest()[:12],16)
|
||||
# print the result
|
||||
print context_id
|
||||
else:
|
||||
# if no class name was specified, give a bit of help
|
||||
print "To generate a context sensitive help id, specify the QGIS class name on the command line"
|
Loading…
x
Reference in New Issue
Block a user