Searching 3771 files for "TODO" (case sensitive) /orange/pylintrc: 129 130 # List of note tags to take in consideration, separated by a comma. 131: notes=FIXME,XXX,TODO 132 133 /orange/Orange/OrangeCanvas/orngCanvas.pyw: 106 self.menuItemShowWidgetToolbar) 107 108: # TODO: Move other actions currently defined elsewhere 109 110 self.setStatusBar(MyStatusBar(self)) ... 852 anyDone = False 853 for r in Orange.misc.addons.available_repositories: 854: #TODO: # Should show some progress (and enable cancellation) 855 try: 856 if r.refreshdata(force=True): /orange/Orange/OrangeCanvas/orngDlgs.py: 374 outType = self.outWidget.instance.getOutputType(outName) 375 inType = self.inWidget.instance.getInputType(inName) 376: if not issubclass(outType, inType) and not issubclass(inType, outType): return 0 #TODO check this with signalManager.canConnect 377 378 inSignal = None ... 901 import Orange.misc.addons 902 try: 903: repo = Orange.misc.addons.OrangeAddOnRepository(dlg.name, dlg.url) #TODO: This can take some time - inform the user! 904 self.repositories.append(repo) 905 except Exception, e: ... 921 repo.name, repo.url = dlg.name, dlg.url 922 if oldurl != repo.url: 923: repo.refreshdata(force=True) #TODO: This can take some time - inform the user! 924 except Exception, e: 925 repo.name, repo.url = oldname, oldurl ... 949 def reloadRepos(self): 950 # Reload add-on list for all repositories. 951: # TODO: This can take some time - show some progress to user! 952 for repo in self.repositories: 953 try: ... 1243 selectedRepository = self.getRepoFromItem(self.tree.currentItem()) 1244 selectedAddOnId = self.getAddOnIdFromItem(self.tree.currentItem()) 1245: #TODO: Save the next repository selection too, in case the current one was deleted 1246 1247 # Clear the tree /orange/Orange/OrangeCanvas/orngSignalManager.py: 304 305 def canConnect(self, widgetFrom, widgetTo, dynamic=True): 306: # TODO: This should be retrieved from orngRegistry.WidgetDescription 307 outsignals = [OutputSignal(*tt) for tt in widgetFrom.outputs] 308 insignals = [InputSignal(*tt) for tt in widgetTo.inputs] /orange/Orange/OrangeCanvas/orngView.py: 333 # we must check if we have really connected some output to input 334 if start and end and start != end: 335: if self.doc.signalManager.signalProcessingInProgress: # TODO: Remove this check when signal manager handles out of sync signals 336 QMessageBox.information( self, "Orange Canvas", "Unable to connect widgets while signal processing is in progress. Please wait.") 337 else: /orange/Orange/OrangeWidgets/OWBaseWidget.py: 994 995 """ 996: ## TODO: make this thread safe 997 998 async.connect(async, SIGNAL("finished(PyQt_PyObject, QString)"), self.asyncFinished) /orange/Orange/OrangeWidgets/OWContexts.py: 275 276 if not flags & self.List: 277: # TODO: is setattr supposed to check that we do not assign values that are optional and do not exist? 278 # is context cloning's filter enough to get rid of such attributes? 279 setattr(widget, name, value[0]) ... 374 potentiallyFilled += len(selected) 375 for i in selected: 376: # TODO: shouldn't we check the attribute type here, too? or should we change self.saveLow for these field types then? 377 if (not flags & self.ExcludeOrdinaryAttributes and value[i] in attributes 378 or flags & self.IncludeMetaAttributes and value[i] in metas): /orange/Orange/OrangeWidgets/OWGUI.py: 895 896 if source != self: 897: setattr(source.widget, source.ogLabels, [item for item in allSourceItems if item not in selectedItems]) # TODO: optimize this code. use the fact that the selectedItemIndices is a sorted list 898 setattr(self.widget, self.ogLabels, allDestItems[:index] + selectedItems + allDestItems[index:]) 899 setattr(source.widget, source.ogValue, []) # clear selection in the source widget ... 1995 if have_ratio: 1996 # The text is raised 3 pixels above the bar. 1997: text_rect = rect.adjusted(4, 1, -4, -4) # TODO: Style dependent margins? 1998 else: 1999 text_rect = rect.adjusted(4, 4, -4, -4) .... 2006 qApp.style().drawPrimitive(QStyle.PE_PanelItemViewItem, option, painter) 2007 2008: # TODO: Check ForegroundRole. 2009 if option.state & QStyle.State_Selected: 2010 color = option.palette.highlightedText().color() .... 2161 space = style.pixelMetric(pm_spacing, option, button) 2162 width = style.pixelMetric(pm_indicator_width, option, button) 2163: style_correction = {"macintosh (aqua)": -2, "macintosh(aqua)": -2, "plastique": 1, "cde": 1, "motif": 1} #TODO: add other styles (Maybe load corrections from .cfg file?) 2164 return space + width + style_correction.get(str(qApp.style().objectName()).lower(), 0) 2165 /orange/Orange/OrangeWidgets/Classify/OWNomogram.py: 118 self.CICheck, self.CILabel = OWGUI.checkWithSpin(layoutBox, self, 'Confidence intervals (%):', min=1, max=99, step = 1, checked='confidence_check', value='confidence_percent', checkCallback=self.showNomogram, spinCallback = self.showNomogram) 119 120: self.histogramCheck, self.histogramLabel = OWGUI.checkWithSpin(layoutBox, self, 'Show histogram, size', min=1, max=30, checked='histogram', value='histogram_size', step = 1, tooltip='-(TODO)-', checkCallback=self.showNomogram, spinCallback = self.showNomogram) 121 122 OWGUI.separator(layoutBox) /orange/Orange/OrangeWidgets/Data/OWDataDomain.py: 129 return vars, item_data 130 else: 131: #TODO: get vars from orange.Variable.getExisting 132 return None, None 133 /orange/Orange/OrangeWidgets/Data/OWEditDomain.py: 346 347 class ContinuousVariableEditor(VariableEditor): 348: #TODO: enable editing of number_of_decimals, scientific format ... 349 pass 350 ... 639 640 # Assumes getmetas().items() order has not changed. 641: # TODO: store metaids in set_data method 642 for (mid, _), new in zip(self.input_domain.getmetas().items(), 643 new_metas): /orange/Orange/OrangeWidgets/Data/OWPythonScript.py: 347 b = w.addAction(action) 348 b.setPopupMode(QToolButton.InstantPopup) 349: ## TODO: set the space for the indicator 350 351 w.layout().setSpacing(1) /orange/Orange/OrangeWidgets/Data/OWRank.py: 512 except Exception, ex: 513 self.warning(measure_index, "Error evaluating %r: %r" % (meas, str(ex))) 514: # TODO: store exception message (for widget info or item tooltip) 515 if meas == "Log Odds Ratio" and s is not None: 516 if s == -999999: /orange/Orange/OrangeWidgets/Prototypes/OWCorrelations.py: 399 vars = [self.cont_vars[i], self.cont_vars[j]] 400 else: 401: # TODO: Clear graph 402 vars = None 403 self.selected_vars = vars /orange/Orange/OrangeWidgets/Prototypes/OWModelMap.py: 513 self.set_graph(self.graph) 514 self.set_items_distance_matrix(self.graph_matrix) 515: # TODO clickedAttLstBox -> setLabelText(["attributes"] 516 517 for i, ex in enumerate(self.graph.items()): /orange/Orange/OrangeWidgets/Unsupervised/OWModelMapQt.py: 525 self.set_graph(self.graph, ModelCurve) 526 self.set_items_distance_matrix(self.graph_matrix) 527: # TODO clickedAttLstBox -> setLabelText(["attributes"] 528 529 nodes = self.networkCanvas.networkCurve.nodes() /orange/Orange/OrangeWidgets/Unsupervised/OWNxAnalysis.py: 97 ("number_weakly_connected_components", False, "Number of weakly connected components", GRAPHLEVEL, nx.number_weakly_connected_components), 98 ("number_attracting_components", False, "Number of attracting components", GRAPHLEVEL, nx.number_attracting_components), 99: # TODO: input parameters 100 #("max_flow", False, "Maximum flow", GRAPHLEVEL, nx.max_flow), 101 #("min_cut", False, "Minimum cut", GRAPHLEVEL, nx.min_cut), /orange/Orange/OrangeWidgets/Unsupervised/OWNxExplorer.py: 1526 1527 def setAutoSendAttributes(self): 1528: print 'TODO setAutoSendAttributes' 1529 #if self.autoSendAttributes: 1530 # self.networkCanvas.callbackSelectVertex = self.sendAttSelectionList /orange/Orange/OrangeWidgets/Unsupervised/OWNxExplorerQwt.py: 370 371 def setAutoSendAttributes(self): 372: print 'TODO setAutoSendAttributes' 373 #if self.autoSendAttributes: 374 # self.networkCanvas.callbackSelectVertex = self.sendAttSelectionList /orange/Orange/OrangeWidgets/Visualize/OWMultiCorrespondenceAnalysis.py: 166 for attr, labels in groups: 167 labels = list(labels) 168: advance = len(labels) # TODO add shape for each attribute and colors for each value 169 self.graph.addCurve(attr.name, brushColor=colors[attr], 170 penColor=colors[attr], size=self.pointSize, /orange/Orange/OrangeWidgets/Visualize Qt/OWLinProj3DPlot.py: 273 274 def getSelectionsAsExampleTables(self, attrList, useAnchorData=1, addProjectedPositions=0): 275: return (None, None) # TODO: this is disabled for now 276 277 if not self.have_data: /orange/Orange/OrangeWidgets/Visualize Qt/OWNxCanvas3D.py: 14 15 class Node3D(orangeqt.Node3D): 16: # TODO: __slot__ 17 def __init__(self, index, x=None, y=None, z=None): 18 orangeqt.Node3D.__init__(self, index, 0, Qt.blue, 5) .. 426 427 def set_graph(self, graph, curve=None, items=None, links=None): 428: # TODO: clear previous nodes and edges? 429 430 if graph is None: ... 520 def fragviz_callback(self, a, b, mds, mds_refresh, components, progress_callback): 521 """Refresh the UI when running MDS on network components.""" 522: # TODO 523 if not self.mdsStep % mds_refresh: 524 rotationOnly = False /orange/Orange/OrangeWidgets/Visualize Qt/OWScatterPlot3D.py: 58 def nicenum(x, round): 59 if x <= 0.: 60: return x # TODO: what to do in such cases? 61 expv = floor(log10(x)) 62 f = x / pow(10., expv) .. 81 range = nicenum(max_value-min_value, False) 82 d = nicenum(range / float(num_ticks-1), True) 83: if d <= 0.: # TODO 84 return numpy.arange(min_value, max_value, (max_value-min_value)/num_ticks), 1 85 plot_min = floor(min_value / d) * d .. 278 glMultMatrixd(numpy.array(self.model.data(), dtype=float)) 279 280: # TODO: line stipple with shaders? 281 self.qglColor(self._theme.axis_values_color) 282 glEnable(GL_LINE_STIPPLE) ... 456 cam_in_space = self.camera * self.camera_distance 457 458: # TODO: the code below is horrible and should be simplified 459 planes = [self.axis_plane_xy, self.axis_plane_yz, 460 self.axis_plane_xy_back, self.axis_plane_yz_right] ... 814 return 815 816: selected = None#selected = self.plot.get_selected_indices() # TODO: crash 817 if selected == None or len(selected) != len(self.data): 818 return /orange/Orange/OrangeWidgets/plot/owaxis.py: 166 else: 167 title_pos = title_pos - (v.p2() - v.p1())*offset 168: ## TODO: Move it according to self.label_pos 169 self.title_item.setVisible(self.show_title) 170 self.title_item.setRotation(-self.graph_line.angle()) /orange/Orange/OrangeWidgets/plot/owopenglrenderer.py: 84 glBufferData(GL_ARRAY_BUFFER, data, usage) 85 86: vertex_size = sum(attribute[0]*4 for attribute in format_description) # TODO: sizeof(type) 87 self._num_vertices = len(data) / (vertex_size / 4) 88 current_size = 0 .. 102 103 def __del__(self): 104: # TODO 105 pass 106 /orange/Orange/OrangeWidgets/plot/owplot.py: 883 884 def removeAllSelections(self): 885: ## TODO 886 pass 887 ... 932 self.title_item = QGraphicsTextItem(self.mainTitle, scene=self.scene()) 933 title_size = self.title_item.boundingRect().size() 934: ## TODO: Check if the title is too big 935 self.title_item.setPos( graph_rect.width()/2 - title_size.width()/2, self.title_margin/2 - title_size.height()/2 ) 936 graph_rect.setTop(graph_rect.top() + self.title_margin) ... 1112 1113 def update_filled_symbols(self): 1114: ## TODO: Implement this in Curve.cpp 1115 pass 1116 .... 1445 r |= QRectF(axis.data_line.p1(), axis.data_line.p2()) 1446 ## We leave a 5% margin on each side so the graph doesn't look overcrowded 1447: ## TODO: Perhaps change this from a fixed percentage to always round to a round number 1448 dx = r.width()/20.0 1449 dy = r.height()/20.0 /orange/Orange/OrangeWidgets/plot/owplot3d.py: 108 glDisable(GL_DEPTH_TEST) 109 glDisable(GL_BLEND) 110: offset = QPointF(0, 15) # TODO 111 112 for category in self.items: ... 353 glDepthFunc(GL_LESS) 354 glEnable(GL_DEPTH_TEST) 355: glEnable(GL_LINE_SMOOTH) # TODO 356 glDisable(GL_CULL_FACE) 357 glEnable(GL_MULTISAMPLE) 358 359: # TODO: check hardware for OpenGL 3.x+ support 360 361 self.renderer = OWOpenGLRenderer() ... 655 label = example[self.label_index] 656 x, y, z = self.map_to_plot(QVector3D(x, y, z)) 657: # TODO 658 #if isinstance(label, str): 659 #self.renderText(x,y,z, label, font=self._theme.labels_font) ... 820 self.generating_program.setUniformValue('num_colors', len(colors)) 821 self.generating_program.setUniformValue('num_symbols_used', num_symbols_used) 822: # TODO: colors is list of QColor 823 glUniform3fv(glGetUniformLocation(self.generating_program.programId(), 'colors'), 824 len(colors), numpy.array(colors, 'f').ravel()) ... 1247 1248 if __name__ == "__main__": 1249: # TODO 1250 pass 1251 /orange/Orange/classification/rules.py: 724 725 # compute extreme distributions 726: # TODO: why evd and evd_this???? 727 if self.rule_finder.evaluator.optimismReduction > 0 and not self.evd: 728 self.evd_this = self.evd_creator.computeEVD(examples, weight_id, target_class=0, progress=progress) /orange/Orange/classification/tree.py: 1394 1395 """ 1396: TODO C++ aliases 1397 1398 SplitConstructor.discrete/continuous_split_constructor -> SplitConstructor.discrete /orange/Orange/classification/svm/__init__.py: 443 return classifier 444 445: #TODO: Unified way to get attr weights for linear SVMs. 446 447 def get_linear_svm_weights(classifier, sum=True): /orange/Orange/clustering/consensus.py: 52 addones(c, cluster) 53 54: #TODO what to do if two samples did not appear at all? 55 #numpy prints a warning and sets "nan" 56 print appear /orange/Orange/clustering/mixture.py: 227 diff = self.data - means[j] 228 diff = numpy.asmatrix(diff) 229: for i in range(len(self.data)): # TODO: speed up 230 cov += self.probs[i, j] * diff[i].T * diff[i] 231 ... 369 means = mixture.means[:, axis] 370 371: covariances = [cov[axis,:][:, axis] for cov in mixture.covariances] # TODO: Need the whole marginal distribution. 372 373 gmm = GMModel(weights, means, covariances) /orange/Orange/data/io.py: 596 file = as_open_file(file, "rb") 597 snifer = csv.Sniffer() 598: sample = file.read(5 * 2 ** 20) # max 5MB sample TODO: What if this is not enough. Try with a bigger sample 599 dialect = snifer.sniff(sample) 600 ... 712 # Process undefined variables now that we can deduce their type 713 for ind, var_def in undefined_vars: 714: values = var_def.values - set(["?", ""]) # TODO: Other unknown strings? 715 values = sorted(values) 716 if isinstance(var_def, _disc_placeholder): ... 835 [("m", v) for v in metas]: 836 837: labels = ["{0}={1}".format(*t) for t in var.attributes.items()] # TODO escape spaces 838 var_attr_cells.append(" ".join([spec] if spec else [] + labels)) 839 ... 988 989 """ 990: prefix, filename = prefixed_name.split(":", 1) #TODO: windows drive letters. 991 paths = search_paths(prefix) 992 if paths: /orange/Orange/ensemble/boosting.py: 136 votes[int(c(instance))] += e 137 index = Orange.misc.selection.select_best_index(votes) 138: # TODO 139 value = Orange.data.Value(self.class_var, index) 140 if result_type == orange.GetValue: /orange/Orange/ensemble/forest.py: 392 Return a number of instances which are classified correctly. 393 """ 394: #TODO How to accomodate regression? 395 return sum(1 for el in oob if el.getclass() == classifier(el)) 396 ... 407 ex[attr] = oob[perm[index]][attr] 408 return ex 409: #TODO How to accomodate regression? 410 return sum(1 for i in range(len(oob)) if oob[i].getclass() == classifier(shuffle_ex(i))) 411 /orange/Orange/feature/scoring.py: 88 """ 89 import numpy 90: from orngContingency import Entropy #TODO: Move to new hierarchy 91 if attr in data.domain: # if we receive attr as string we have to convert to variable 92 attr = data.domain[attr] /orange/Orange/misc/addons.py: 873 add-on's directory. 874 """ 875: #TODO This might be redefined in orngConfiguration. 876 return os.path.join(self.directory, "doc") 877 ... 1527 if refresh: 1528 for r in available_repositories: 1529: #TODO: # Should show some progress (and enable cancellation) 1530 try: 1531 r.refreshdata(force=False) /orange/Orange/misc/environ.py: 256 257 # Create the directories if missing 258: # TODO: This are not needed if using orange without the GUI 259 260 _directories_to_create = ["application_dir", "orange_settings_dir", /orange/Orange/misc/testing.py: 462 s = pickle.dumps(self.measure) 463 measure = pickle.loads(s) 464: # TODO: make sure measure computes the same scores as measure 465 466 /orange/Orange/multitarget/tree.py: 85 # Types of classes allowed 86 self.handles_discrete = True 87: ## TODO: for discrete classes with >2 values entropy should be used 88 ## instead of variance 89 self.handles_continuous = True /orange/Orange/network/network.py: 164 return G 165 166: ### TODO: OVERRIDE METHODS THAT CHANGE GRAPH STRUCTURE, add warning prints 167 168 def items_vars(self): ... 206 G.set_items(items) 207 return G 208: # TODO: _links 209 210 __doc__ += _get_doc(nx.Graph.__doc__) /orange/Orange/orng/orngProjectionPursuit.py: 44 self.dim = dim 45 if type(data) == orange.ExampleTable: 46: self.dataNP = data.toNumpy()[0] # TODO: check if conversion of discrete values works ok 47 else: 48 self.dataNP = data /orange/Orange/projection/linear.py: 1: #TODO: eliminate create_pls_projection (transform into a class) 2: #TODO: Projector as a preprocessor 3 4 import Orange . 310 if not attr_indices: return 311 312: if self.implementation == FAST_IMPLEMENTATION and not hasattr(self, '_use_3D'): # TODO 313 return self.optimize_fast_separation(steps, single_step, distances) 314 /orange/Orange/projection/mds.py: 157 ravg = numpy.sum(d, axis=1)/(self.n+0.0) # row sum 158 tavg = numpy.sum(cavg)/(self.n+0.0) # total sum 159: # TODO: optimize 160 for i in xrange(self.n): 161 for j in xrange(self.k): /orange/Orange/regression/earth.py: 140 (default: 0.001). 141 :type thresh: float 142: :param min_span: TODO. 143 :param new_var_penalty: Penalty for introducing a new variable 144 in the model during the forward pass (default: 0). ... 982 if attr is not None and data is not None: 983 self.__init__(**kwargs) 984: # TODO: Should raise a warning, about caching 985 return self.__call__(attr, data, weight_id) 986 elif not attr and not data: ... 1050 if attr is not None and data is not None: 1051 self.__init__(**kwargs) 1052: # TODO: Should raise a warning, about caching 1053 return self.__call__(attr, data, weight_id) 1054 elif not attr and not data: .... 1158 # 1159 # bx_used = bx[:, best_set] 1160: # subsets, rss_per_subset = subsets_selection_xtx(bx_used, y) # TODO: Use leaps like library 1161 # gcv_per_subset = [gcv(rss, bx.shape[0], i + self.penalty * (i - 1) / 2.0) \ 1162 # for i, rss in enumerate(rss_per_subset, 1)] /orange/Orange/regression/linear.py: 261 else: 262 cov = pinv(dot(dot(X.T, W), X) + self.ridge_lambda * numpy.eye(m)) 263: # TODO: find inferential properties of the estimators 264 compute_stats = False 265 D = dot(dot(cov, X.T), W) /orange/Orange/testing/unit/tests/test_bayes.py: 1 from Orange.misc import testing 2 3: # TODO: test different prob estimators 4 @testing.datasets_driven(datasets=testing.CLASSIFICATION_DATASETS) 5 class TestNaiveBayes(testing.LearnerTestCase): /orange/Orange/testing/unit/tests/test_io.py: 20 def test_io_on(self, name): 21 table = Orange.data.Table(name) 22: for ext in ["tab", "svm", "arff"]: # TODO: add R, and C50 23 filename = name + "." + ext 24 try: /orange/Orange/testing/unit/tests/test_measures.py: 20 21 22: # TODO: Relevance, Cost 23 24 @datasets_driven(datasets=testing.CLASSIFICATION_DATASETS, /orange/Orange/testing/unit/tests/test_tree.py: 8 from Orange.regression import tree as rtree 9 from Orange.feature import scoring 10: # TODO: test different split_constructors, descenders, measures, stop criteria... 11 12 @datasets_driven(datasets=testing.CLASSIFICATION_DATASETS) /orange/build/lib.linux-i686-2.6/Orange/OrangeCanvas/orngCanvas.pyw: 106 self.menuItemShowWidgetToolbar) 107 108: # TODO: Move other actions currently defined elsewhere 109 110 self.setStatusBar(MyStatusBar(self)) ... 852 anyDone = False 853 for r in Orange.misc.addons.available_repositories: 854: #TODO: # Should show some progress (and enable cancellation) 855 try: 856 if r.refreshdata(force=True): /orange/build/lib.linux-i686-2.6/Orange/OrangeCanvas/orngDlgs.py: 374 outType = self.outWidget.instance.getOutputType(outName) 375 inType = self.inWidget.instance.getInputType(inName) 376: if not issubclass(outType, inType) and not issubclass(inType, outType): return 0 #TODO check this with signalManager.canConnect 377 378 inSignal = None ... 901 import Orange.misc.addons 902 try: 903: repo = Orange.misc.addons.OrangeAddOnRepository(dlg.name, dlg.url) #TODO: This can take some time - inform the user! 904 self.repositories.append(repo) 905 except Exception, e: ... 921 repo.name, repo.url = dlg.name, dlg.url 922 if oldurl != repo.url: 923: repo.refreshdata(force=True) #TODO: This can take some time - inform the user! 924 except Exception, e: 925 repo.name, repo.url = oldname, oldurl ... 949 def reloadRepos(self): 950 # Reload add-on list for all repositories. 951: # TODO: This can take some time - show some progress to user! 952 for repo in self.repositories: 953 try: ... 1243 selectedRepository = self.getRepoFromItem(self.tree.currentItem()) 1244 selectedAddOnId = self.getAddOnIdFromItem(self.tree.currentItem()) 1245: #TODO: Save the next repository selection too, in case the current one was deleted 1246 1247 # Clear the tree /orange/build/lib.linux-i686-2.6/Orange/OrangeCanvas/orngSignalManager.py: 304 305 def canConnect(self, widgetFrom, widgetTo, dynamic=True): 306: # TODO: This should be retrieved from orngRegistry.WidgetDescription 307 outsignals = [OutputSignal(*tt) for tt in widgetFrom.outputs] 308 insignals = [InputSignal(*tt) for tt in widgetTo.inputs] /orange/build/lib.linux-i686-2.6/Orange/OrangeCanvas/orngView.py: 333 # we must check if we have really connected some output to input 334 if start and end and start != end: 335: if self.doc.signalManager.signalProcessingInProgress: # TODO: Remove this check when signal manager handles out of sync signals 336 QMessageBox.information( self, "Orange Canvas", "Unable to connect widgets while signal processing is in progress. Please wait.") 337 else: /orange/build/lib.linux-i686-2.6/Orange/OrangeWidgets/OWBaseWidget.py: 994 995 """ 996: ## TODO: make this thread safe 997 998 async.connect(async, SIGNAL("finished(PyQt_PyObject, QString)"), self.asyncFinished) /orange/build/lib.linux-i686-2.6/Orange/OrangeWidgets/OWContexts.py: 275 276 if not flags & self.List: 277: # TODO: is setattr supposed to check that we do not assign values that are optional and do not exist? 278 # is context cloning's filter enough to get rid of such attributes? 279 setattr(widget, name, value[0]) ... 374 potentiallyFilled += len(selected) 375 for i in selected: 376: # TODO: shouldn't we check the attribute type here, too? or should we change self.saveLow for these field types then? 377 if (not flags & self.ExcludeOrdinaryAttributes and value[i] in attributes 378 or flags & self.IncludeMetaAttributes and value[i] in metas): /orange/build/lib.linux-i686-2.6/Orange/OrangeWidgets/OWGUI.py: 895 896 if source != self: 897: setattr(source.widget, source.ogLabels, [item for item in allSourceItems if item not in selectedItems]) # TODO: optimize this code. use the fact that the selectedItemIndices is a sorted list 898 setattr(self.widget, self.ogLabels, allDestItems[:index] + selectedItems + allDestItems[index:]) 899 setattr(source.widget, source.ogValue, []) # clear selection in the source widget ... 1995 if have_ratio: 1996 # The text is raised 3 pixels above the bar. 1997: text_rect = rect.adjusted(4, 1, -4, -4) # TODO: Style dependent margins? 1998 else: 1999 text_rect = rect.adjusted(4, 4, -4, -4) .... 2006 qApp.style().drawPrimitive(QStyle.PE_PanelItemViewItem, option, painter) 2007 2008: # TODO: Check ForegroundRole. 2009 if option.state & QStyle.State_Selected: 2010 color = option.palette.highlightedText().color() .... 2161 space = style.pixelMetric(pm_spacing, option, button) 2162 width = style.pixelMetric(pm_indicator_width, option, button) 2163: style_correction = {"macintosh (aqua)": -2, "macintosh(aqua)": -2, "plastique": 1, "cde": 1, "motif": 1} #TODO: add other styles (Maybe load corrections from .cfg file?) 2164 return space + width + style_correction.get(str(qApp.style().objectName()).lower(), 0) 2165 /orange/build/lib.linux-i686-2.6/Orange/OrangeWidgets/Classify/OWNomogram.py: 118 self.CICheck, self.CILabel = OWGUI.checkWithSpin(layoutBox, self, 'Confidence intervals (%):', min=1, max=99, step = 1, checked='confidence_check', value='confidence_percent', checkCallback=self.showNomogram, spinCallback = self.showNomogram) 119 120: self.histogramCheck, self.histogramLabel = OWGUI.checkWithSpin(layoutBox, self, 'Show histogram, size', min=1, max=30, checked='histogram', value='histogram_size', step = 1, tooltip='-(TODO)-', checkCallback=self.showNomogram, spinCallback = self.showNomogram) 121 122 OWGUI.separator(layoutBox) /orange/build/lib.linux-i686-2.6/Orange/OrangeWidgets/Data/OWDataDomain.py: 129 return vars, item_data 130 else: 131: #TODO: get vars from orange.Variable.getExisting 132 return None, None 133 /orange/build/lib.linux-i686-2.6/Orange/OrangeWidgets/Data/OWEditDomain.py: 346 347 class ContinuousVariableEditor(VariableEditor): 348: #TODO: enable editing of number_of_decimals, scientific format ... 349 pass 350 ... 639 640 # Assumes getmetas().items() order has not changed. 641: # TODO: store metaids in set_data method 642 for (mid, _), new in zip(self.input_domain.getmetas().items(), 643 new_metas): /orange/build/lib.linux-i686-2.6/Orange/OrangeWidgets/Data/OWPythonScript.py: 347 b = w.addAction(action) 348 b.setPopupMode(QToolButton.InstantPopup) 349: ## TODO: set the space for the indicator 350 351 w.layout().setSpacing(1) /orange/build/lib.linux-i686-2.6/Orange/OrangeWidgets/Data/OWRank.py: 512 except Exception, ex: 513 self.warning(measure_index, "Error evaluating %r: %r" % (meas, str(ex))) 514: # TODO: store exception message (for widget info or item tooltip) 515 if meas == "Log Odds Ratio" and s is not None: 516 if s == -999999: /orange/build/lib.linux-i686-2.6/Orange/OrangeWidgets/Prototypes/OWCorrelations.py: 399 vars = [self.cont_vars[i], self.cont_vars[j]] 400 else: 401: # TODO: Clear graph 402 vars = None 403 self.selected_vars = vars /orange/build/lib.linux-i686-2.6/Orange/OrangeWidgets/Prototypes/OWModelMap.py: 513 self.set_graph(self.graph) 514 self.set_items_distance_matrix(self.graph_matrix) 515: # TODO clickedAttLstBox -> setLabelText(["attributes"] 516 517 for i, ex in enumerate(self.graph.items()): /orange/build/lib.linux-i686-2.6/Orange/OrangeWidgets/Unsupervised/OWModelMapQt.py: 525 self.set_graph(self.graph, ModelCurve) 526 self.set_items_distance_matrix(self.graph_matrix) 527: # TODO clickedAttLstBox -> setLabelText(["attributes"] 528 529 nodes = self.networkCanvas.networkCurve.nodes() /orange/build/lib.linux-i686-2.6/Orange/OrangeWidgets/Unsupervised/OWNxAnalysis.py: 97 ("number_weakly_connected_components", False, "Number of weakly connected components", GRAPHLEVEL, nx.number_weakly_connected_components), 98 ("number_attracting_components", False, "Number of attracting components", GRAPHLEVEL, nx.number_attracting_components), 99: # TODO: input parameters 100 #("max_flow", False, "Maximum flow", GRAPHLEVEL, nx.max_flow), 101 #("min_cut", False, "Minimum cut", GRAPHLEVEL, nx.min_cut), /orange/build/lib.linux-i686-2.6/Orange/OrangeWidgets/Unsupervised/OWNxExplorer.py: 1526 1527 def setAutoSendAttributes(self): 1528: print 'TODO setAutoSendAttributes' 1529 #if self.autoSendAttributes: 1530 # self.networkCanvas.callbackSelectVertex = self.sendAttSelectionList /orange/build/lib.linux-i686-2.6/Orange/OrangeWidgets/Unsupervised/OWNxExplorerQwt.py: 370 371 def setAutoSendAttributes(self): 372: print 'TODO setAutoSendAttributes' 373 #if self.autoSendAttributes: 374 # self.networkCanvas.callbackSelectVertex = self.sendAttSelectionList /orange/build/lib.linux-i686-2.6/Orange/OrangeWidgets/Visualize/OWMultiCorrespondenceAnalysis.py: 166 for attr, labels in groups: 167 labels = list(labels) 168: advance = len(labels) # TODO add shape for each attribute and colors for each value 169 self.graph.addCurve(attr.name, brushColor=colors[attr], 170 penColor=colors[attr], size=self.pointSize, /orange/build/lib.linux-i686-2.6/Orange/OrangeWidgets/Visualize Qt/OWLinProj3DPlot.py: 273 274 def getSelectionsAsExampleTables(self, attrList, useAnchorData=1, addProjectedPositions=0): 275: return (None, None) # TODO: this is disabled for now 276 277 if not self.have_data: /orange/build/lib.linux-i686-2.6/Orange/OrangeWidgets/Visualize Qt/OWNxCanvas3D.py: 14 15 class Node3D(orangeqt.Node3D): 16: # TODO: __slot__ 17 def __init__(self, index, x=None, y=None, z=None): 18 orangeqt.Node3D.__init__(self, index, 0, Qt.blue, 5) .. 426 427 def set_graph(self, graph, curve=None, items=None, links=None): 428: # TODO: clear previous nodes and edges? 429 430 if graph is None: ... 520 def fragviz_callback(self, a, b, mds, mds_refresh, components, progress_callback): 521 """Refresh the UI when running MDS on network components.""" 522: # TODO 523 if not self.mdsStep % mds_refresh: 524 rotationOnly = False /orange/build/lib.linux-i686-2.6/Orange/OrangeWidgets/Visualize Qt/OWScatterPlot3D.py: 58 def nicenum(x, round): 59 if x <= 0.: 60: return x # TODO: what to do in such cases? 61 expv = floor(log10(x)) 62 f = x / pow(10., expv) .. 81 range = nicenum(max_value-min_value, False) 82 d = nicenum(range / float(num_ticks-1), True) 83: if d <= 0.: # TODO 84 return numpy.arange(min_value, max_value, (max_value-min_value)/num_ticks), 1 85 plot_min = floor(min_value / d) * d .. 278 glMultMatrixd(numpy.array(self.model.data(), dtype=float)) 279 280: # TODO: line stipple with shaders? 281 self.qglColor(self._theme.axis_values_color) 282 glEnable(GL_LINE_STIPPLE) ... 456 cam_in_space = self.camera * self.camera_distance 457 458: # TODO: the code below is horrible and should be simplified 459 planes = [self.axis_plane_xy, self.axis_plane_yz, 460 self.axis_plane_xy_back, self.axis_plane_yz_right] ... 814 return 815 816: selected = None#selected = self.plot.get_selected_indices() # TODO: crash 817 if selected == None or len(selected) != len(self.data): 818 return /orange/build/lib.linux-i686-2.6/Orange/OrangeWidgets/plot/owaxis.py: 166 else: 167 title_pos = title_pos - (v.p2() - v.p1())*offset 168: ## TODO: Move it according to self.label_pos 169 self.title_item.setVisible(self.show_title) 170 self.title_item.setRotation(-self.graph_line.angle()) /orange/build/lib.linux-i686-2.6/Orange/OrangeWidgets/plot/owopenglrenderer.py: 84 glBufferData(GL_ARRAY_BUFFER, data, usage) 85 86: vertex_size = sum(attribute[0]*4 for attribute in format_description) # TODO: sizeof(type) 87 self._num_vertices = len(data) / (vertex_size / 4) 88 current_size = 0 .. 102 103 def __del__(self): 104: # TODO 105 pass 106 /orange/build/lib.linux-i686-2.6/Orange/OrangeWidgets/plot/owplot.py: 883 884 def removeAllSelections(self): 885: ## TODO 886 pass 887 ... 932 self.title_item = QGraphicsTextItem(self.mainTitle, scene=self.scene()) 933 title_size = self.title_item.boundingRect().size() 934: ## TODO: Check if the title is too big 935 self.title_item.setPos( graph_rect.width()/2 - title_size.width()/2, self.title_margin/2 - title_size.height()/2 ) 936 graph_rect.setTop(graph_rect.top() + self.title_margin) ... 1112 1113 def update_filled_symbols(self): 1114: ## TODO: Implement this in Curve.cpp 1115 pass 1116 .... 1445 r |= QRectF(axis.data_line.p1(), axis.data_line.p2()) 1446 ## We leave a 5% margin on each side so the graph doesn't look overcrowded 1447: ## TODO: Perhaps change this from a fixed percentage to always round to a round number 1448 dx = r.width()/20.0 1449 dy = r.height()/20.0 /orange/build/lib.linux-i686-2.6/Orange/OrangeWidgets/plot/owplot3d.py: 108 glDisable(GL_DEPTH_TEST) 109 glDisable(GL_BLEND) 110: offset = QPointF(0, 15) # TODO 111 112 for category in self.items: ... 353 glDepthFunc(GL_LESS) 354 glEnable(GL_DEPTH_TEST) 355: glEnable(GL_LINE_SMOOTH) # TODO 356 glDisable(GL_CULL_FACE) 357 glEnable(GL_MULTISAMPLE) 358 359: # TODO: check hardware for OpenGL 3.x+ support 360 361 self.renderer = OWOpenGLRenderer() ... 655 label = example[self.label_index] 656 x, y, z = self.map_to_plot(QVector3D(x, y, z)) 657: # TODO 658 #if isinstance(label, str): 659 #self.renderText(x,y,z, label, font=self._theme.labels_font) ... 820 self.generating_program.setUniformValue('num_colors', len(colors)) 821 self.generating_program.setUniformValue('num_symbols_used', num_symbols_used) 822: # TODO: colors is list of QColor 823 glUniform3fv(glGetUniformLocation(self.generating_program.programId(), 'colors'), 824 len(colors), numpy.array(colors, 'f').ravel()) ... 1247 1248 if __name__ == "__main__": 1249: # TODO 1250 pass 1251 /orange/build/lib.linux-i686-2.6/Orange/classification/rules.py: 724 725 # compute extreme distributions 726: # TODO: why evd and evd_this???? 727 if self.rule_finder.evaluator.optimismReduction > 0 and not self.evd: 728 self.evd_this = self.evd_creator.computeEVD(examples, weight_id, target_class=0, progress=progress) /orange/build/lib.linux-i686-2.6/Orange/classification/tree.py: 1394 1395 """ 1396: TODO C++ aliases 1397 1398 SplitConstructor.discrete/continuous_split_constructor -> SplitConstructor.discrete /orange/build/lib.linux-i686-2.6/Orange/classification/svm/__init__.py: 443 return classifier 444 445: #TODO: Unified way to get attr weights for linear SVMs. 446 447 def get_linear_svm_weights(classifier, sum=True): /orange/build/lib.linux-i686-2.6/Orange/clustering/consensus.py: 52 addones(c, cluster) 53 54: #TODO what to do if two samples did not appear at all? 55 #numpy prints a warning and sets "nan" 56 print appear /orange/build/lib.linux-i686-2.6/Orange/clustering/mixture.py: 227 diff = self.data - means[j] 228 diff = numpy.asmatrix(diff) 229: for i in range(len(self.data)): # TODO: speed up 230 cov += self.probs[i, j] * diff[i].T * diff[i] 231 ... 369 means = mixture.means[:, axis] 370 371: covariances = [cov[axis,:][:, axis] for cov in mixture.covariances] # TODO: Need the whole marginal distribution. 372 373 gmm = GMModel(weights, means, covariances) /orange/build/lib.linux-i686-2.6/Orange/data/io.py: 596 file = as_open_file(file, "rb") 597 snifer = csv.Sniffer() 598: sample = file.read(5 * 2 ** 20) # max 5MB sample TODO: What if this is not enough. Try with a bigger sample 599 dialect = snifer.sniff(sample) 600 ... 712 # Process undefined variables now that we can deduce their type 713 for ind, var_def in undefined_vars: 714: values = var_def.values - set(["?", ""]) # TODO: Other unknown strings? 715 values = sorted(values) 716 if isinstance(var_def, _disc_placeholder): ... 835 [("m", v) for v in metas]: 836 837: labels = ["{0}={1}".format(*t) for t in var.attributes.items()] # TODO escape spaces 838 var_attr_cells.append(" ".join([spec] if spec else [] + labels)) 839 ... 988 989 """ 990: prefix, filename = prefixed_name.split(":", 1) #TODO: windows drive letters. 991 paths = search_paths(prefix) 992 if paths: /orange/build/lib.linux-i686-2.6/Orange/ensemble/boosting.py: 136 votes[int(c(instance))] += e 137 index = Orange.misc.selection.select_best_index(votes) 138: # TODO 139 value = Orange.data.Value(self.class_var, index) 140 if result_type == orange.GetValue: /orange/build/lib.linux-i686-2.6/Orange/ensemble/forest.py: 392 Return a number of instances which are classified correctly. 393 """ 394: #TODO How to accomodate regression? 395 return sum(1 for el in oob if el.getclass() == classifier(el)) 396 ... 407 ex[attr] = oob[perm[index]][attr] 408 return ex 409: #TODO How to accomodate regression? 410 return sum(1 for i in range(len(oob)) if oob[i].getclass() == classifier(shuffle_ex(i))) 411 /orange/build/lib.linux-i686-2.6/Orange/feature/scoring.py: 88 """ 89 import numpy 90: from orngContingency import Entropy #TODO: Move to new hierarchy 91 if attr in data.domain: # if we receive attr as string we have to convert to variable 92 attr = data.domain[attr] /orange/build/lib.linux-i686-2.6/Orange/misc/addons.py: 873 add-on's directory. 874 """ 875: #TODO This might be redefined in orngConfiguration. 876 return os.path.join(self.directory, "doc") 877 ... 1527 if refresh: 1528 for r in available_repositories: 1529: #TODO: # Should show some progress (and enable cancellation) 1530 try: 1531 r.refreshdata(force=False) /orange/build/lib.linux-i686-2.6/Orange/misc/environ.py: 256 257 # Create the directories if missing 258: # TODO: This are not needed if using orange without the GUI 259 260 _directories_to_create = ["application_dir", "orange_settings_dir", /orange/build/lib.linux-i686-2.6/Orange/misc/testing.py: 462 s = pickle.dumps(self.measure) 463 measure = pickle.loads(s) 464: # TODO: make sure measure computes the same scores as measure 465 466 /orange/build/lib.linux-i686-2.6/Orange/multitarget/tree.py: 85 # Types of classes allowed 86 self.handles_discrete = True 87: ## TODO: for discrete classes with >2 values entropy should be used 88 ## instead of variance 89 self.handles_continuous = True /orange/build/lib.linux-i686-2.6/Orange/network/network.py: 164 return G 165 166: ### TODO: OVERRIDE METHODS THAT CHANGE GRAPH STRUCTURE, add warning prints 167 168 def items_vars(self): ... 206 G.set_items(items) 207 return G 208: # TODO: _links 209 210 __doc__ += _get_doc(nx.Graph.__doc__) /orange/build/lib.linux-i686-2.6/Orange/orng/orngProjectionPursuit.py: 44 self.dim = dim 45 if type(data) == orange.ExampleTable: 46: self.dataNP = data.toNumpy()[0] # TODO: check if conversion of discrete values works ok 47 else: 48 self.dataNP = data /orange/build/lib.linux-i686-2.6/Orange/projection/linear.py: 1: #TODO: eliminate create_pls_projection (transform into a class) 2: #TODO: Projector as a preprocessor 3 4 import Orange . 310 if not attr_indices: return 311 312: if self.implementation == FAST_IMPLEMENTATION and not hasattr(self, '_use_3D'): # TODO 313 return self.optimize_fast_separation(steps, single_step, distances) 314 /orange/build/lib.linux-i686-2.6/Orange/projection/mds.py: 157 ravg = numpy.sum(d, axis=1)/(self.n+0.0) # row sum 158 tavg = numpy.sum(cavg)/(self.n+0.0) # total sum 159: # TODO: optimize 160 for i in xrange(self.n): 161 for j in xrange(self.k): /orange/build/lib.linux-i686-2.6/Orange/regression/earth.py: 140 (default: 0.001). 141 :type thresh: float 142: :param min_span: TODO. 143 :param new_var_penalty: Penalty for introducing a new variable 144 in the model during the forward pass (default: 0). ... 982 if attr is not None and data is not None: 983 self.__init__(**kwargs) 984: # TODO: Should raise a warning, about caching 985 return self.__call__(attr, data, weight_id) 986 elif not attr and not data: ... 1050 if attr is not None and data is not None: 1051 self.__init__(**kwargs) 1052: # TODO: Should raise a warning, about caching 1053 return self.__call__(attr, data, weight_id) 1054 elif not attr and not data: .... 1158 # 1159 # bx_used = bx[:, best_set] 1160: # subsets, rss_per_subset = subsets_selection_xtx(bx_used, y) # TODO: Use leaps like library 1161 # gcv_per_subset = [gcv(rss, bx.shape[0], i + self.penalty * (i - 1) / 2.0) \ 1162 # for i, rss in enumerate(rss_per_subset, 1)] /orange/build/lib.linux-i686-2.6/Orange/regression/linear.py: 261 else: 262 cov = pinv(dot(dot(X.T, W), X) + self.ridge_lambda * numpy.eye(m)) 263: # TODO: find inferential properties of the estimators 264 compute_stats = False 265 D = dot(dot(cov, X.T), W) /orange/build/lib.linux-i686-2.6/Orange/testing/unit/tests/test_bayes.py: 1 from Orange.misc import testing 2 3: # TODO: test different prob estimators 4 @testing.datasets_driven(datasets=testing.CLASSIFICATION_DATASETS) 5 class TestNaiveBayes(testing.LearnerTestCase): /orange/build/lib.linux-i686-2.6/Orange/testing/unit/tests/test_io.py: 20 def test_io_on(self, name): 21 table = Orange.data.Table(name) 22: for ext in ["tab", "svm", "arff"]: # TODO: add R, and C50 23 filename = name + "." + ext 24 try: /orange/build/lib.linux-i686-2.6/Orange/testing/unit/tests/test_measures.py: 20 21 22: # TODO: Relevance, Cost 23 24 @datasets_driven(datasets=testing.CLASSIFICATION_DATASETS, /orange/build/lib.linux-i686-2.6/Orange/testing/unit/tests/test_tree.py: 8 from Orange.regression import tree as rtree 9 from Orange.feature import scoring 10: # TODO: test different split_constructors, descenders, measures, stop criteria... 11 12 @datasets_driven(datasets=testing.CLASSIFICATION_DATASETS) /orange/docs/extend-widgets/rst/OrangeWidgets.plot.rst: 14 OrangeWidgets.plot.owpoint 15 OrangeWidgets.plot.owlegend 16: .. OrangeWidgets.plot.owaxis TODO: add file 17 /orange/docs/reference/rst/Orange.classification.tree.rst: 1397 1398 """ 1399: TODO C++ aliases 1400 1401 SplitConstructor.discrete/continuous_split_constructor -> SplitConstructor.discrete /orange/docs/reference/rst/Orange.feature.descriptor.rst: 238 and can be used as a descriptor for attributes that contain arbitrary Python 239 values. Since this is an advanced topic, PythonVariables are described on a 240: separate page. !!TODO!! 241 242 /orange/docs/reference/rst/Orange.feature.scoring.rst: 202 classification cost for approximately 0.083 per instance. 203 204: .. comment opposite error - is this term correct? TODO 205 206 .. index:: /orange/docs/reference/rst/code/tree3.py: 4 # Category: modelling 5 # Uses: iris.tab 6: # Referenced: TODO 7 8 import Orange /orange/docs/reference/rst/code/tree_c45.py: 3 # Classes: C45Learner, C45Classifier 4 # Uses: iris 5: # Referenced: TODO 6 7 import Orange /orange/install-scripts/addon-pack/pack-addons.sh: 8 # first, so the contents must be a SVN checkout. 9 # The packing only occurs if the addon.txt has been changed! 10: # TODO: Pack the binary parts too! 11 # 12 /orange/install-scripts/mac/bundle-build-hg.sh: 55 ./bundle-inject-pypi.sh distribute-0.6.24 http://pypi.python.org/packages/source/d/distribute/distribute-0.6.24.tar.gz $REPOS_DIR ${TMP_BUNDLE_DIR}/Orange.app 56 57: # TODO: from here on we could use easy_install to install pip and then use that 58 echo "Installing suds library" 59 echo "+++++++++++++++++++++++" /orange/install-scripts/mac/bundle-daily-build-hg.sh: 27 28 29: # TODO: Should be called only on a daily build server and not if building locally 30 /Users/ailabc/mount-dirs.sh 31 /orange/install-scripts/mac/bundle-daily-build.sh: 171 fi 172 173: # TODO: Should be called only on a daily build server and not if building locally 174 /Users/ailabc/mount-dirs.sh 175 ... 290 fi 291 292: # TODO: Should be called only on a daily build server and not if building locally 293 /Users/ailabc/mount-dirs.sh 294 /orange/install-scripts/mac/fink-daily-build-packages.sh: 185 fink $FINK_ARGS cleanup --all 186 187: # TODO: Should be called only on a daily build server and not if building locally 188 /Users/ailabc/mount-dirs.sh 189 /orange/install-scripts/mac/fink-daily-build.sh: 367 fink $FINK_ARGS cleanup --all 368 369: # TODO: Should be called only on a daily build server and not if building locally 370 /Users/ailabc/mount-dirs.sh 371 /orange/install-scripts/mac/fink/matplotlib-py.info: 96 << 97 License: OSI-Approved 98: DocFiles: README.txt license/*LICENSE* TODO INTERACTIVE INSTALL CHANGELOG KNOWN_BUGS 99 # API_CHANGES 100 Description: Pure python 2D plotting with a Matlab syntax /orange/install-scripts/mac/fink/orange-bioinformatics-gui-svn-py.info: 103 now run: 104 105: $PYTHON TODO/PATH/TO/SCRIPT.py 106 EOMSG 107 << /orange/install-scripts/mac/fink/orange-gui-hg-py.info: 131 132 # Register dataset path 133: # TODO: this should be done by setup.py install and using global orangerc.cfg file 134 echo "datasetsPath=\"%p/share/doc/orange-svn-py%type_pkg[python]/datasets/\"" > %i/lib/python%type_raw[python]/site-packages/Orange/orng/orngConfiguration.py 135 /orange/install-scripts/orngServer/orngServerFilesServer.py: 329 shutil.copyfileobj(data.file, fupl, 1024*8) #copy with buffer 330 fupl.close() 331: #print "transfer successful?" #TODO check this - MD5? 332 333: #TODO is there any difference in those files? 334 335 fupl = open(fi.fname + ".uploading", 'rb') /orange/source/orange/earth.cpp: 1 // This code is derived from code in the Rational Fortran file dmarss.r which is 2 // part of the R and S mda package by Hastie and Tibshirani. 3: // Comments containing "TODO" mark known issues 4 // 5 // See the R earth documentation for descriptions of the principal data structures. . 75 - Changed EvalSubsetsUsingXtX to return an error code if lin. dep. terms in bx 76 77: - TODO: Move global vars inside the functions using them (most are local) 78 */ 79 .. 702 // values of inverse(bx'bx). We assume that R is created from a full rank X. 703 // 704: // TODO This could be simplified 705 706 static void CalcDiags( ... 1558 RssDelta /= NewVarAdjust; 1559 1560: // TODO HastieTibs code had an extra test here, seems unnecessary 1561 // !(iCase > 0 && x_(ix0,iPred) == x_(xOrder_(iCase-1,iPred),iPred)) 1562 .... 1612 1613 // init bxOrth[,nTerms] and bxOrthMean[nTerms] for the candidate term 1614: // TODO look into *pIsNewForm handling here, it's confusing 1615 1616 InitBxOrthCol(bxOrth, bxOrthCenteredT, bxOrthMean, pIsNewForm, .... 1646 // This function now selects a predictor, and a knot for that predictor. 1647 // 1648: // TODO These functions have a ridiculous number of parameters, I know. 1649 // 1650: // TODO A note on the comparison against ALMOST_ZERO below: 1651 // It's not a clean solution but seems to work ok. 1652 // It was added after we saw different results on different .... 2159 // increment nTerms by 2 but don't set the flag in FullSet. 2160 // 2161: // TODO feature: add option to prescale x and y 2162 2163 static void ForwardPass( .... 2814 //----------------------------------------------------------------------------- 2815 // print a string representing the earth expresssion, one term per line 2816: // TODO spacing is not quite right and is overly complicated 2817 2818 #if STANDALONE .... 3070 } 3071 3072: // TODO: Check for classVar, assert all attributes are continuous 3073 3074 // num_preds = 1; .... 3212 std::string TEarthClassifier::format_earth(){ 3213 FormatEarth(_best_set, _dirs, _cuts, _betas, num_preds, 1, num_terms, max_terms, 3, 0.0); 3214: // TODO: FormatEarth to a string. 3215 return ""; 3216 } /orange/source/orange/hclust.cpp: 753 mapping.begin() + right_left.last); 754 755: // TODO: precompute the scores for m and k in an array and use a simpler 756 // comparison function 757 std::sort(m_ordered.begin(), m_ordered.end(), CompareByScores(M, left, u)); ... 863 } 864 if (callback) 865: // TODO: count the number of already processed nodes. 866 callback->operator()(0.0, PHierarchicalCluster(&cluster)); 867 } /orange/source/orange/logfit.cpp: 141 beta_se=mlnew TAttributedFloatList(enum_attributes); 142 143: //TODO: obstaja konstruktor, ki pretvori iz navadnega arraya? 144 for (i=0; ipush_back(O.beta[i]); /orange/source/orange/logistic.cpp: 29 {} 30 31: // TODO: najdi pametno mesto za naslednji dve funkciji 32 // compute waldZ statistic from beta and beta_se 33 PAttributedFloatList TLogRegLearner::computeWaldZ(PAttributedFloatList &beta, PAttributedFloatList &beta_se) .. 53 } 54 double p = exp(-0.5*zt); 55: // TODO: PI, kje najdes to konstano 56 p *= sqrt(2*zt/3.141592); 57 58 double t=p; 59 int a=3; 60: // TODO: poglej kaj je to 0.0000...1 ? 61 for (; t>0.0000000001*p; a=a+2) { 62 t*=zt/a; /orange/source/orange/logistic.hpp: 34 #include "transval.hpp" 35 36: // TODO: add other includings 37 38 /orange/source/orangeom/graph_layout.cpp: 98 { 99 vector neighbours; 100: /* network->getNeighbours(i, neighbours); TODO: FIX! */ 101 102 QueueVertex *vertex = new QueueVertex(); ... 665 links[0].push_back(nodes_map[u]); 666 links[1].push_back(nodes_map[v]); 667: weights.push_back(1); // TODO: compute weight 668 nLinks++; 669 } /orange/source/orangeom/network.cpp: 394 nodes[i]->parent->childs.erase(it); 395 396: // TODO: erase meta-nodes with 1 or 0 childs 397 } 398 } /orange/source/orangeqt/canvas3d.cpp: 287 { 288 //setToolTip(tooltip); 289: //TODO 290 } 291 /orange/source/orangeqt/networkcurve.cpp: 508 { 509 m_arrows = arrows; 510: // TODO: Update the QGraphicsItem element, add arrows 511 } 512 ... 549 if (m_show_component_distances) 550 { 551: // TODO: move code from Python to C++ 552 } 553 } /orange/source/orangeqt/point.cpp: 389 QPixmap image(QSize(size, size)); 390 391: // TODO: Create fils with actual images, preferably SVG so they are scalable 392 // image.load(filename); 393 return image; /orange/source/orangeqt/types.sip: 461 PyTuple_SET_ITEM(t, 2, PyFloat_FromDouble((double)(sipCpp->third))); 462 463: // TODO: any DECREF needed? 464 465 return t; ... 469 if (sipIsErr == NULL) 470 { 471: // TODO 472 return 1; 473 } 218 matches across 126 files